[A] Add test for add_subdirectory
This commit is contained in:
parent
90265dd628
commit
594cbe83c7
14
.travis.yml
14
.travis.yml
@ -271,6 +271,20 @@ script:
|
|||||||
- rm -rf _install_foo
|
- rm -rf _install_foo
|
||||||
- cd ../../build
|
- cd ../../build
|
||||||
|
|
||||||
|
# Test subdirectory
|
||||||
|
- cd ..
|
||||||
|
- rm -r build/*
|
||||||
|
- mkdir build
|
||||||
|
- ln -s `pwd` tests/add_subdirectory_tests/libfort
|
||||||
|
- cd tests/add_subdirectory_tests/
|
||||||
|
- cmake -H. -B_build -DCMAKE_C_STANDARD=99 -DCMAKE_CXX_STANDARD=11 -DCMAKE_INSTALL_PREFIX=./_install_foo
|
||||||
|
- cmake --build _build -- -j3
|
||||||
|
- ./_build/foo-app
|
||||||
|
- cmake --build _build -- install
|
||||||
|
- rm -rf _build
|
||||||
|
- rm -rf _install_foo
|
||||||
|
- cd ../../build
|
||||||
|
|
||||||
# Build for coveralls (should be the last)
|
# Build for coveralls (should be the last)
|
||||||
- |
|
- |
|
||||||
if [ "${CC}" = 'gcc' ]; then
|
if [ "${CC}" = 'gcc' ]; then
|
||||||
|
43
tests/add_subdirectory_tests/CMakeLists.txt
Normal file
43
tests/add_subdirectory_tests/CMakeLists.txt
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.0)
|
||||||
|
|
||||||
|
project(foo)
|
||||||
|
|
||||||
|
add_subdirectory(libfort)
|
||||||
|
|
||||||
|
# Create target that depend on libfort and check they'll compile ok
|
||||||
|
add_executable(foo-app
|
||||||
|
foo-app.cpp)
|
||||||
|
target_link_libraries(foo-app
|
||||||
|
PRIVATE fort
|
||||||
|
)
|
||||||
|
|
||||||
|
add_library(foo-lib
|
||||||
|
foo-lib.cpp)
|
||||||
|
target_link_libraries(foo-lib
|
||||||
|
PRIVATE fort)
|
||||||
|
|
||||||
|
add_library(foo-lib-shared SHARED
|
||||||
|
foo-lib.cpp)
|
||||||
|
target_link_libraries(foo-lib-shared
|
||||||
|
PRIVATE fort)
|
||||||
|
|
||||||
|
include(GNUInstallDirs)
|
||||||
|
install(
|
||||||
|
TARGETS foo-lib foo-lib-shared
|
||||||
|
EXPORT ${PROJECT_NAME}-targets
|
||||||
|
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||||
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||||
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||||
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
include(CMakePackageConfigHelpers)
|
||||||
|
|
||||||
|
install(
|
||||||
|
EXPORT ${PROJECT_NAME}-targets
|
||||||
|
FILE ${PROJECT_NAME}-targets.cmake
|
||||||
|
NAMESPACE ${PROJECT_NAME}::
|
||||||
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
|
||||||
|
)
|
||||||
|
|
16
tests/add_subdirectory_tests/foo-app.cpp
Normal file
16
tests/add_subdirectory_tests/foo-app.cpp
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#include <iostream>
|
||||||
|
|
||||||
|
#include "fort.hpp"
|
||||||
|
|
||||||
|
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
fort::char_table table;
|
||||||
|
table << fort::header
|
||||||
|
<< "N" << "Driver" << "Time" << "Avg Speed" << fort::endr
|
||||||
|
<< "1" << "Ricciardo" << "1:25.945" << "47.362" << fort::endr
|
||||||
|
<< "2" << "Hamilton" << "1:26.373" << "35.02" << fort::endr
|
||||||
|
<< "3" << "Verstappen" << "1:26.469" << "29.78" << fort::endr;
|
||||||
|
|
||||||
|
std::cout << table.to_string() << std::endl;
|
||||||
|
}
|
13
tests/add_subdirectory_tests/foo-lib.cpp
Normal file
13
tests/add_subdirectory_tests/foo-lib.cpp
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
#include "fort.hpp"
|
||||||
|
|
||||||
|
std::string print_string()
|
||||||
|
{
|
||||||
|
fort::char_table table;
|
||||||
|
table << fort::header
|
||||||
|
<< "N" << "Driver" << "Time" << "Avg Speed" << fort::endr
|
||||||
|
<< "1" << "Ricciardo" << "1:25.945" << "47.362" << fort::endr
|
||||||
|
<< "2" << "Hamilton" << "1:26.373" << "35.02" << fort::endr
|
||||||
|
<< "3" << "Verstappen" << "1:26.469" << "29.78" << fort::endr;
|
||||||
|
|
||||||
|
return table.to_string();
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user