aboutsummaryrefslogtreecommitdiff
path: root/contrib/iostream3/test
diff options
context:
space:
mode:
authorXin LI <delphij@FreeBSD.org>2026-03-13 23:48:36 +0000
committerXin LI <delphij@FreeBSD.org>2026-03-13 23:48:36 +0000
commit280d433d4c13f3b31722d446ec868053887caf06 (patch)
tree7ba0c0678315c114dcef41857e7710f6b3e31bc5 /contrib/iostream3/test
parentf4695a30267c5d31987c7bc3eda906f55a8761be (diff)
Diffstat (limited to 'contrib/iostream3/test')
-rw-r--r--contrib/iostream3/test/CMakeLists.txt191
-rw-r--r--contrib/iostream3/test/add_subdirectory_exclude_test.cmake.in27
-rw-r--r--contrib/iostream3/test/add_subdirectory_test.cmake.in25
-rw-r--r--contrib/iostream3/test/find_package_no_components_test.cmake.in24
-rw-r--r--contrib/iostream3/test/find_package_test.cmake.in24
-rw-r--r--contrib/iostream3/test/find_package_wrong_components_test.cmake.in24
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)