diff options
| author | Xin LI <delphij@FreeBSD.org> | 2026-03-13 23:48:36 +0000 |
|---|---|---|
| committer | Xin LI <delphij@FreeBSD.org> | 2026-03-13 23:48:36 +0000 |
| commit | 280d433d4c13f3b31722d446ec868053887caf06 (patch) | |
| tree | 7ba0c0678315c114dcef41857e7710f6b3e31bc5 /contrib/iostream3/test | |
| parent | f4695a30267c5d31987c7bc3eda906f55a8761be (diff) | |
Diffstat (limited to 'contrib/iostream3/test')
6 files changed, 315 insertions, 0 deletions
diff --git a/contrib/iostream3/test/CMakeLists.txt b/contrib/iostream3/test/CMakeLists.txt new file mode 100644 index 000000000000..a36333de8a8b --- /dev/null +++ b/contrib/iostream3/test/CMakeLists.txt @@ -0,0 +1,191 @@ +# if we are built from with zlib, use this path's) +if(DEFINED ZLIB_BUILD_IOSTREAM3) + set(WORK_DIR ${zlib_BINARY_DIR}) + set(inst_setup zlib_install) +else(DEFINED ZLIB_BUILD_IOSTREAM3) + set(WORK_DIR ${iostreamV3_BINARY_DIR}) + set(inst_setup zlib_iostream3_install) + set(ZLIB_ARG "-DZLIB_DIR=${ZLIB_DIR}") + + add_test( + NAME zlib_iostream3_install + COMMAND ${CMAKE_COMMAND} --install ${iostreamV3_BINARY_DIR} --prefix + ${CMAKE_CURRENT_BINARY_DIR}/test_install --config $<CONFIG> + WORKING_DIRECTORY ${iostreamV3_BINARY_DIR}) + + set_tests_properties(zlib_iostream3_install + PROPERTIES + FIXTURES_SETUP zlib_iostream3_install) +endif(DEFINED ZLIB_BUILD_IOSTREAM3) + +file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test) +file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_test) +file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_exclude_test) + +configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/find_package_test.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test/CMakeLists.txt @ONLY) + +configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/add_subdirectory_test.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_test/CMakeLists.txt @ONLY) + +configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/add_subdirectory_exclude_test.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_exclude_test/CMakeLists.txt + @ONLY) + +configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/find_package_no_components_test.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}/findpackage_no_components_test/CMakeLists.txt + @ONLY) + +configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/find_package_wrong_components_test.cmake.in + ${CMAKE_CURRENT_BINARY_DIR}/findpackage_wrong_components_test/CMakeLists.txt + @ONLY) + +# CMAKE_GENERATOR_PLATFORM doesn't work in the if +set(GENERATOR ${CMAKE_GENERATOR_PLATFORM}) + +if(GENERATOR) + set(PLATFORM "-A ${GENERATOR}") +endif(GENERATOR) + +# +# findpackage_test +# +add_test( + NAME zlib_iostream3_find_package_configure + COMMAND + ${CMAKE_COMMAND} + ${PLATFORM} + -B${CMAKE_CURRENT_BINARY_DIR}/findpackage_test_build + -DCMAKE_BUILD_TYPE=$<CONFIG> + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} + -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} + -DCMAKE_INSTALL_PREFIX=${WORK_DIR}/test/test_install ${ZLIB_ARG} + --fresh + -G "${CMAKE_GENERATOR}" + -S${CMAKE_CURRENT_BINARY_DIR}/findpackage_test) + +add_test( + NAME zlib_iostream3_find_package_build + COMMAND ${CMAKE_COMMAND} --build . --config $<CONFIG> + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/findpackage_test_build) + +set_tests_properties(zlib_iostream3_find_package_configure + PROPERTIES + FIXTURES_REQUIRED ${inst_setup} + FIXTURES_SETUP iostream3_fp_config) + +set_tests_properties(zlib_iostream3_find_package_build + PROPERTIES + FIXTURES_REQUIRED iostream3_fp_config) + +# +# add_subdirectory_test +# +add_test( + NAME zlib_iostream3_add_subdirectory_configure + COMMAND + ${CMAKE_COMMAND} + ${PLATFORM} + -B${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_test_build + -DCMAKE_BUILD_TYPE=$<CONFIG> + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} + -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} + -DCMAKE_INSTALL_PREFIX=${WORK_DIR}/test/test_install + ${ZLIB_ARG} + --fresh + -G "${CMAKE_GENERATOR}" + -S${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_test) + +add_test( + NAME zlib_iostream3_add_subdirectory_build + COMMAND ${CMAKE_COMMAND} --build . --config $<CONFIG> + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_test_build) + +set_tests_properties(zlib_iostream3_add_subdirectory_configure + PROPERTIES + FIXTURES_REQUIRED ${inst_setup} + FIXTURES_SETUP iostream3as_config) + +set_tests_properties(zlib_iostream3_add_subdirectory_build + PROPERTIES + FIXTURES_REQUIRED iostream3_as_config) + +# +# add_subdirectory_exclude_test +# +add_test( + NAME zlib_iostream3_add_subdirectory_exclude_configure + COMMAND + ${CMAKE_COMMAND} ${PLATFORM} + -B${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_exclude_test_build + -DCMAKE_BUILD_TYPE=$<CONFIG> -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} + -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} + -DCMAKE_INSTALL_PREFIX=${WORK_DIR}/test/test_install ${ZLIB_ARG} + --fresh + -G "${CMAKE_GENERATOR}" + -S${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_exclude_test) + +add_test( + NAME zlib_iostream3_add_subdirectory_exclude_build + COMMAND ${CMAKE_COMMAND} --build . --config $<CONFIG> + WORKING_DIRECTORY + ${CMAKE_CURRENT_BINARY_DIR}/add_subdirectory_exclude_test_build) + +set_tests_properties(zlib_iostream3_add_subdirectory_exclude_configure + PROPERTIES + FIXTURES_REQUIRED ${inst_setup} + FIXTURES_SETUP iostream3_asx_config) + +set_tests_properties(zlib_iostream3_add_subdirectory_exclude_build + PROPERTIES + FIXTURES_REQUIRED iostream3_asx_config) + +# +# findpackage_no_components_test +# +add_test( + NAME zlib_iostream3_find_package_no_components_configure + COMMAND + ${CMAKE_COMMAND} ${PLATFORM} + -B${CMAKE_CURRENT_BINARY_DIR}/findpackage_no_components_test_build + -DCMAKE_BUILD_TYPE=$<CONFIG> -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} + -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} + -DCMAKE_INSTALL_PREFIX=${WORK_DIR}/test/test_install ${ZLIB_ARG} + --fresh + -G "${CMAKE_GENERATOR}" + -S${CMAKE_CURRENT_BINARY_DIR}/findpackage_no_components_test) + +set_tests_properties(zlib_iostream3_find_package_no_components_configure + PROPERTIES + FIXTURES_REQUIRED ${inst_setup}) + +if(NOT ZLIB_IOSTREAM3_BUILD_SHARED OR NOT ZLIB_IOSTREAM3_BUILD_STATIC) + set_tests_properties(zlib_iostream3_find_package_no_components_configure + PROPERTIES + WILL_FAIL TRUE) +endif(NOT ZLIB_IOSTREAM3_BUILD_SHARED OR NOT ZLIB_IOSTREAM3_BUILD_STATIC) + +# +# findpackage_no_components_test +# +add_test( + NAME zlib_iostream3_find_package_wrong_components_configure + COMMAND + ${CMAKE_COMMAND} ${PLATFORM} + -B${CMAKE_CURRENT_BINARY_DIR}/findpackage_wrong_components_test_build + -DCMAKE_BUILD_TYPE=$<CONFIG> -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} + -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} + -DCMAKE_INSTALL_PREFIX=${WORK_DIR}/test/test_install ${ZLIB_ARG} + --fresh + -G "${CMAKE_GENERATOR}" + -S${CMAKE_CURRENT_BINARY_DIR}/findpackage_wrong_components_test) + +set_tests_properties(zlib_iostream3_find_package_wrong_components_configure + PROPERTIES + FIXTURES_REQUIRED ${inst_setup} + WILL_FAIL TRUE) diff --git a/contrib/iostream3/test/add_subdirectory_exclude_test.cmake.in b/contrib/iostream3/test/add_subdirectory_exclude_test.cmake.in new file mode 100644 index 000000000000..efc9cd8b8642 --- /dev/null +++ b/contrib/iostream3/test/add_subdirectory_exclude_test.cmake.in @@ -0,0 +1,27 @@ +cmake_minimum_required(VERSION 3.12...3.31) + +project( + iostream_add_subdirectory_exclude + LANGUAGES CXX + VERSION @iostreamV3_VERSION@) + +option(ZLIB_IOSTREAM3_BUILD_SHARED "" @ZLIB_IOSTREAM3_BUILD_SHARED@) +option(ZLIB_IOSTREAM3_BUILD_STATIC "" @ZLIB_IOSTREAM3_BUILD_STATIC@) +option(ZLIB_IOSTREAM3_BUILD_TESTING "" OFF) + +add_subdirectory(@iostreamV3_SOURCE_DIR@ + ${CMAKE_CURRENT_BINARY_DIR}/iostream3 + EXCLUDE_FROM_ALL) + +set(IOSTREAM_SRCS + @iostreamV3_SOURCE_DIR@/test.cc) + +if(ZLIB_IOSTREAM3_BUILD_SHARED) + add_executable(test_example ${IOSTREAM_SRCS}) + target_link_libraries(test_example IOSTREAMV3::IOSTREAMV3) +endif(ZLIB_IOSTREAM3_BUILD_SHARED) + +if(ZLIB_IOSTREAM3_BUILD_STATIC) + add_executable(test_example_static ${IOSTREAM_SRCS}) + target_link_libraries(test_example_static IOSTREAMV3::IOSTREAMV3STATIC) +endif(ZLIB_IOSTREAM3_BUILD_STATIC) diff --git a/contrib/iostream3/test/add_subdirectory_test.cmake.in b/contrib/iostream3/test/add_subdirectory_test.cmake.in new file mode 100644 index 000000000000..26bc23842085 --- /dev/null +++ b/contrib/iostream3/test/add_subdirectory_test.cmake.in @@ -0,0 +1,25 @@ +cmake_minimum_required(VERSION 3.12...3.31) + +project( + iostream_add_subdirectory + LANGUAGES CXX + VERSION @iostreamV3_VERSION@) + +option(ZLIB_IOSTREAM3_BUILD_SHARED "" @ZLIB_IOSTREAM3_BUILD_SHARED@) +option(ZLIB_IOSTREAM3_BUILD_STATIC "" @ZLIB_IOSTREAM3_BUILD_STATIC@) +option(ZLIB_IOSTREAM3_BUILD_TESTING "" OFF) + +add_subdirectory(@iostreamV3_SOURCE_DIR@ ${CMAKE_CURRENT_BINARY_DIR}/iostream3) + +set(IOSTREAM_SRCS + @iostreamV3_SOURCE_DIR@/test.cc) + +if(ZLIB_IOSTREAM3_BUILD_SHARED) + add_executable(test_example ${IOSTREAM_SRCS}) + target_link_libraries(test_example IOSTREAMV3::IOSTREAMV3) +endif(ZLIB_IOSTREAM3_BUILD_SHARED) + +if(ZLIB_IOSTREAM3_BUILD_STATIC) + add_executable(test_example_static ${IOSTREAM_SRCS}) + target_link_libraries(test_example_static IOSTREAMV3::IOSTREAMV3STATIC) +endif(ZLIB_IOSTREAM3_BUILD_STATIC) diff --git a/contrib/iostream3/test/find_package_no_components_test.cmake.in b/contrib/iostream3/test/find_package_no_components_test.cmake.in new file mode 100644 index 000000000000..0bfe69405c6f --- /dev/null +++ b/contrib/iostream3/test/find_package_no_components_test.cmake.in @@ -0,0 +1,24 @@ +cmake_minimum_required(VERSION 3.12...3.31) + +project( + iostream_find_package_no_components + LANGUAGES CXX + VERSION @iostreamV3_VERSION@) + +option(ZLIB_IOSTREAM3_BUILD_SHARED "" @ZLIB_IOSTREAM3_BUILD_SHARED@) +option(ZLIB_IOSTREAM3_BUILD_STATIC "" @ZLIB_IOSTREAM3_BUILD_STATIC@) + +find_package(iostreamv3 REQUIRED CONFIG) + +set(IOSTREAM_SRCS + @iostreamV3_SOURCE_DIR@/test.cc) + +if(ZLIB_IOSTREAM3_BUILD_SHARED) + add_executable(test_example ${IOSTREAM_SRCS}) + target_link_libraries(test_example IOSTREAMV3::IOSTREAMV3) +endif(ZLIB_IOSTREAM3_BUILD_SHARED) + +if(ZLIB_IOSTREAM3_BUILD_STATIC) + add_executable(test_example_static ${IOSTREAM_SRCS}) + target_link_libraries(test_example_static IOSTREAMV3::IOSTREAMV3STATIC) +endif(ZLIB_IOSTREAM3_BUILD_STATIC) diff --git a/contrib/iostream3/test/find_package_test.cmake.in b/contrib/iostream3/test/find_package_test.cmake.in new file mode 100644 index 000000000000..9b668788b381 --- /dev/null +++ b/contrib/iostream3/test/find_package_test.cmake.in @@ -0,0 +1,24 @@ +cmake_minimum_required(VERSION 3.12...3.31) + +project( + iostream_find_package + LANGUAGES CXX + VERSION @iostreamV3_VERSION@) + +option(ZLIB_IOSTREAM_BUILD_SHARED "" @ZLIB_IOSTREAM_BUILD_SHARED@) +option(ZLIB_IOSTREAM_BUILD_STATIC "" @ZLIB_IOSTREAM_BUILD_STATIC@) + +set(IOSTREAM_SRCS + @iostreamV3_SOURCE_DIR@/test.cc) + +if(ZLIB_IOSTREAM_BUILD_SHARED) + find_package(iostreamv3 REQUIRED COMPONENTS shared CONFIG) + add_executable(test_example ${IOSTREAM_SRCS}) + target_link_libraries(test_example IOSTREAMV3::IOSTREAMV3) +endif(ZLIB_IOSTREAM_BUILD_SHARED) + +if(ZLIB_IOSTREAM_BUILD_STATIC) + find_package(iostreamv3 REQUIRED COMPONENTS static CONFIG) + add_executable(test_example_static ${IOSTREAM_SRCS}) + target_link_libraries(test_example_static IOSTREAMV3::IOSTREAMV3STATIC) +endif(ZLIB_IOSTREAM_BUILD_STATIC) diff --git a/contrib/iostream3/test/find_package_wrong_components_test.cmake.in b/contrib/iostream3/test/find_package_wrong_components_test.cmake.in new file mode 100644 index 000000000000..6c8a570f9909 --- /dev/null +++ b/contrib/iostream3/test/find_package_wrong_components_test.cmake.in @@ -0,0 +1,24 @@ +cmake_minimum_required(VERSION 3.12...3.31) + +project( + iostream_find_package + LANGUAGES CXX + VERSION @iostreamV3_VERSION@) + +option(ZLIB_IOSTREAM_BUILD_SHARED "" @ZLIB_IOSTREAM_BUILD_SHARED@) +option(ZLIB_IOSTREAM_BUILD_STATIC "" @ZLIB_IOSTREAM_BUILD_STATIC@) + +find_package(iostreamv3 REQUIRED COMPONENTS wrongCONFIG) + +set(IOSTREAM_SRCS + @iostreamV3_SOURCE_DIR@/test.cc) + +if(ZLIB_IOSTREAM_BUILD_SHARED) + add_executable(test_example ${IOSTREAM_SRCS}) + target_link_libraries(test_example IOSTREAMV3::IOSTREAMV3) +endif(ZLIB_IOSTREAM_BUILD_SHARED) + +if(ZLIB_IOSTREAM_BUILD_STATIC) + add_executable(test_example_static ${PUFF_SRCS}) + target_link_libraries(test_example_static IOSTREAMV3::IOSTREAMV3STATIC) +endif(ZLIB_IOSTREAM_BUILD_STATIC) |
