#
message(STATUS "compiler is ${CMAKE_CXX_COMPILER_ID}" )
+add_definitions(${Boost_LIB_DIAGNOSTIC_DEFINITIONS})
if( CMAKE_CXX_COMPILER_ID STREQUAL "GNU" )
add_definitions( -ftemplate-depth=300 )
# we use gcc to test for C++03 compatibility
- add_definitions( std=c++03 )
+ add_definitions( -std=c++03 )
message(STATUS "compiler is g++ c++03")
set(COMPILER_SUPPORTS_CXX11 FALSE)
elseif( CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" )
# end special note for Xcode
############################
+set(Boost_DEBUG true)
+set(Boost_DETAILED_FAILURE_MSG true)
+set(Boost_FOUND true)
+
find_package(Boost REQUIRED COMPONENTS system filesystem)
+include(CheckIncludeFileCXX)
+
+message(STATUS "Boost_FOUND is ${Boost_FOUND}")
if(Boost_FOUND)
+ message(STATUS "Boost Found!")
message(STATUS "Boost is ${BOOST_ROOT}")
message(STATUS "Boost directories found at ${Boost_INCLUDE_DIRS}")
message(STATUS "Boost libraries found at ${Boost_LIBRARY_DIRS}")
+ message(STATUS "Boost libraries prefix is ${Boost_LIB_PREFIX}")
message(STATUS "Boost component libraries to be linked are ${Boost_LIBRARIES}")
message(STATUS "Boost version found is ${Boost_VERSION}")
- include_directories("../include" "${Boost_INCLUDE_DIRS}")
- link_directories("${Boost_LIBRARY_DIRS}")
-elseif()
- message("Boost NOT Found!")
+ #include_directories("../include" "${Boost_INCLUDE_DIRS}")
+ #link_directories("${Boost_LIBRARY_DIRS}")
+else()
+ message(STATUS "Boost NOT Found!")
endif()
if(Boost_USE_STATIC_LIBS)
- message(STATUS "Building static libraries")
+ message(STATUS "Use static libraries")
set(LINK_TYPE "STATIC")
else()
message(STATUS "Building shared libraries")
add_definitions( "-DBOOST_ALL_DYN_LINK=1")
add_definitions( "-DBOOST_ALL_NO_LIB=1")
add_definitions( "-DBOOST_LIB_DIAGNOSTICS=1")
+ set(CMAKE_CXX_VISIBILITY_PRESET hidden)
+ set(VISIBILITY_INLINES_HIDDEN)
endif()
-set(CMAKE_CXX_VISIBILITY_PRESET hidden)
-set(VISIBILITY_INLINES_HIDDEN)
###########################
# library builds
../src/extended_type_info.cpp
../src/polymorphic_iarchive.cpp
../src/polymorphic_oarchive.cpp
- ../src/singleton.cpp
../src/stl_port.cpp
../src/text_iarchive.cpp
../src/text_oarchive.cpp
../src/basic_xml_grammar.ipp # doesn't show up in "Source Files" in Xcode"'
)
-# target_compile_options(serialization PRIVATE -fvisibility=hidden -fvisibility-inlines-hidden )
-
add_library(wserialization ${LINK_TYPE}
../src/codecvt_null.cpp
../src/basic_text_wiprimitive.cpp
../src/basic_xml_grammar.ipp # doesn't show up in "Source Files" in Xcode"'
)
-#target_compile_options(wserialization PRIVATE -fvisibility=hidden -fvisibility-inlines-hidden )
-
# end library build
###########################
enable_testing()
-# serialization(test_dll_exported dll_polymorphic_derived2_lib)
+serialization_test(test_dll_exported polymorphic_derived2 polymorphic_base)
+
# serialization(test_dll_simple dll_a_lib)
# compile test_dll_plugin.cpp
# Running the following test requires that the test know the directory
serialization_test(test_iterators)
serialization_test(test_iterators_base64)
serialization_test(test_inclusion)
+serialization_test(test_inclusion2)
serialization_test(test_smart_cast)
-serialization_test(test_utf8_codecvt )
serialization_test(test_codecvt_null ../src/codecvt_null)
+serialization_test(test_strong_typedef)
archive_test(test_native_array A)
archive_test(test_boost_array A)
archive_test(test_shared_ptr_132)
archive_test(test_simple_class A)
archive_test(test_simple_class_ptr A)
+CHECK_INCLUDE_FILE_CXX(slist SLIST_FOUND)
+if(SLIST_FOUND)
+ message(STATUS "slist header found")
+ archive_test(test_slist A)
+ archive_test(test_slist_ptr A)
+else()
+ message(STATUS "slist header NOT found")
+endif()
archive_test(test_stack A)
archive_test(test_split)
archive_test(test_tracking)
archive_test(test_set_boost_unordered A)
if(COMPILER_SUPPORTS_CXX11)
archive_test(test_set_unordered A)
-elseif()
- archive_test(test_set_hashed A)
+else()
+ CHECK_INCLUDE_FILE_CXX(hash_set HASH_SET_FOUND)
+ if(HASH_SET_FOUND)
+ archive_test(test_set_hashed A)
+ endif()
endif()
if(COMPILER_SUPPORTS_CXX11)
archive_test(test_map_unordered A)
-elseif()
- archive_test(test_map_hashed A)
+else()
+ CHECK_INCLUDE_FILE_CXX(hash_map HASH_MAP_FOUND)
+ if(HASH_MAP_FOUND)
+ archive_test(test_map_hashed A)
+ endif()
endif()
polymorphic_archive_test(test_polymorphic test_polymorphic_A A)