diff --git a/CMakeLists.txt b/CMakeLists.txt index 5f9fef065..e86fdb92b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -41,13 +41,34 @@ include(contrib/cmake/FindApache2.cmake) # OS Detection if(CMAKE_SYSTEM MATCHES "Windows") - add_definitions( -DPOCO_OS_FAMILY_WINDOWS) -else (CMAKE_SYSTEM MATCHES "Windows") - add_definitions( -DPOCO_OS_FAMILY_UNIX ) + add_definitions( -DPOCO_OS_FAMILY_WINDOWS -DPOCO_WIN32_UTF8) + set(SYSLIBS iphlpapi gdi32) endif(CMAKE_SYSTEM MATCHES "Windows") -# Standard 'must be' defines -add_definitions( -D_XOPEN_SOURCE=500 -D_REENTRANT -D_THREAD_SAFE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 ) +if (CMAKE_SYSTEM MATCHES "Linux") + add_definitions( -DPOCO_OS_FAMILY_UNIX ) + # Standard 'must be' defines + add_definitions( -D_XOPEN_SOURCE=500 -D_REENTRANT -D_THREAD_SAFE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 ) + set(SYSLIBS "pthread dl rt") +endif(CMAKE_SYSTEM MATCHES "Linux") + +if (CMAKE_SYSTEM MATCHES "SunOS") + add_definitions( -DPOCO_OS_FAMILY_UNIX ) + # Standard 'must be' defines + add_definitions( -D_XOPEN_SOURCE=500 -D_REENTRANT -D_THREAD_SAFE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 ) + set(SYSLIBS std15D pthread rt nsl dl) +endif(CMAKE_SYSTEM MATCHES "SunOS") + +if (CMAKE_COMPILER_IS_MINGW) + add_definitions(-DWC_NO_BEST_FIT_CHARS=0x400) + add_definitions(-mno-cygwin -D_WIN32 -DMINGW32 -DWINVER=0x500 -DODBCVER=0x0300 -DPOCO_THREAD_STACK_SIZE -DFoundation_Config_INCLUDED ) + link_directories(/usr/local/lib /usr/lib) + include_directories(/usr/local/include /usr/include) +endif (CMAKE_COMPILER_IS_MINGW) + +if (CMAKE_COMPILER_IS_CYGWIN) +# add_definitions(-DWC_NO_BEST_FIT_CHARS=0x400) +endif (CMAKE_COMPILER_IS_CYGWIN) add_subdirectory(CppUnit) add_subdirectory(Foundation) diff --git a/Data/MySQL/testsuite/CMakeLists.txt b/Data/MySQL/testsuite/CMakeLists.txt index 5ea40dbb2..f288c1ffb 100644 --- a/Data/MySQL/testsuite/CMakeLists.txt +++ b/Data/MySQL/testsuite/CMakeLists.txt @@ -15,5 +15,5 @@ set(TESTUNIT "${LIBNAME}-testrunner") add_executable( ${TESTUNIT} ${TEST_SRCS} ) set_target_properties( ${TESTUNIT} PROPERTIES COMPILE_FLAGS ${RELEASE_CXX_FLAGS} ) -target_link_libraries( ${TESTUNIT} PocoMySQL PocoData PocoFoundation CppUnit pthread) +target_link_libraries( ${TESTUNIT} PocoMySQL PocoData PocoFoundation CppUnit ) diff --git a/Data/SQLite/testsuite/CMakeLists.txt b/Data/SQLite/testsuite/CMakeLists.txt index c0869a586..88166a15b 100644 --- a/Data/SQLite/testsuite/CMakeLists.txt +++ b/Data/SQLite/testsuite/CMakeLists.txt @@ -14,5 +14,5 @@ set(TESTUNIT "${LIBNAME}-testrunner") add_executable( ${TESTUNIT} ${TEST_SRCS} ) set_target_properties( ${TESTUNIT} PROPERTIES COMPILE_FLAGS ${RELEASE_CXX_FLAGS} ) -target_link_libraries( ${TESTUNIT} PocoSQLite PocoData PocoFoundation CppUnit pthread) +target_link_libraries( ${TESTUNIT} PocoSQLite PocoData PocoFoundation CppUnit ) diff --git a/Data/testsuite/CMakeLists.txt b/Data/testsuite/CMakeLists.txt index 919ce280b..081d53bb1 100644 --- a/Data/testsuite/CMakeLists.txt +++ b/Data/testsuite/CMakeLists.txt @@ -21,5 +21,5 @@ set(TESTUNIT "${LIBNAME}-testrunner") add_executable( ${TESTUNIT} ${TEST_SRCS} ) set_target_properties( ${TESTUNIT} PROPERTIES COMPILE_FLAGS ${RELEASE_CXX_FLAGS} ) -target_link_libraries( ${TESTUNIT} PocoData PocoFoundation CppUnit pthread) +target_link_libraries( ${TESTUNIT} PocoData PocoFoundation CppUnit) diff --git a/Foundation/CMakeLists.txt b/Foundation/CMakeLists.txt index db7533c36..f6d3b1716 100644 --- a/Foundation/CMakeLists.txt +++ b/Foundation/CMakeLists.txt @@ -164,7 +164,6 @@ set( BASE_SRCS src/zutil.c ) - set(WIN_SRCS src/EventLogChannel.cpp src/WindowsConsoleChannel.cpp @@ -182,23 +181,19 @@ else (CMAKE_SYSTEM MATCHES "Windows") add_definitions( -DPCRE_STATIC) endif(CMAKE_SYSTEM MATCHES "Windows") -#add_library( PocoFoundation ${SRCS} ) -#set_target_properties( PocoFoundation PROPERTIES COMPILE_FLAGS ${RELEASE_CPPFLAGS} ) -#target_link_libraries( PocoFoundation pthread) - add_library( ${LIBNAME} ${LIB_MODE} ${SRCS} ) set_target_properties( ${LIBNAME} PROPERTIES COMPILE_FLAGS ${DEBUG_CXX_FLAGS} VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAME} dl rt) +target_link_libraries( ${LIBNAME} ${SYSLIBS}) add_library( ${LIBNAMED} ${LIB_MODE} ${SRCS} ) set_target_properties( ${LIBNAMED} PROPERTIES COMPILE_FLAGS "${RELEASE_CXX_FLAGS}" VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAMED} dl rt) +target_link_libraries( ${LIBNAMED} ${SYSLIBS}) install( DIRECTORY include/Poco diff --git a/Foundation/samples/StringTokenizer/CMakeLists.txt b/Foundation/samples/StringTokenizer/CMakeLists.txt index d3deda456..90c5c0716 100644 --- a/Foundation/samples/StringTokenizer/CMakeLists.txt +++ b/Foundation/samples/StringTokenizer/CMakeLists.txt @@ -1,4 +1,4 @@ -set(SAMPLE_NAME "String>Tokenizer") +set(SAMPLE_NAME "StringTokenizer") set(LOCAL_SRCS "") aux_source_directory(src LOCAL_SRCS) diff --git a/Net/CMakeLists.txt b/Net/CMakeLists.txt index b74c9feea..905c25328 100644 --- a/Net/CMakeLists.txt +++ b/Net/CMakeLists.txt @@ -11,6 +11,7 @@ set( LIN_SRCS if(CMAKE_SYSTEM MATCHES "Windows") set(SRCS ${BASE_SRCS} ${WIN_SRCS}) + set(SYSLIBS ${SYSLIBS} ws2_32) else (CMAKE_SYSTEM MATCHES "Windows") set(SRCS ${BASE_SRCS} ${LIN_SRCS}) endif(CMAKE_SYSTEM MATCHES "Windows") @@ -24,14 +25,14 @@ set_target_properties( ${LIBNAME} PROPERTIES COMPILE_FLAGS ${DEBUG_CXX_FLAGS} VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAME} PocoFoundation) +target_link_libraries( ${LIBNAME} PocoFoundation ${SYSLIBS}) add_library( ${LIBNAMED} ${LIB_MODE} ${SRCS} ) set_target_properties( ${LIBNAMED} PROPERTIES COMPILE_FLAGS "${RELEASE_CXX_FLAGS}" VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAMED} PocoFoundationd) +target_link_libraries( ${LIBNAMED} PocoFoundationd ${SYSLIBS}) install( DIRECTORY include/Poco diff --git a/Net/testsuite/CMakeLists.txt b/Net/testsuite/CMakeLists.txt index 9825a4fcb..7db1e2cbb 100644 --- a/Net/testsuite/CMakeLists.txt +++ b/Net/testsuite/CMakeLists.txt @@ -65,5 +65,5 @@ set(TESTUNIT "${LIBNAME}-testrunner") add_executable( ${TESTUNIT} ${TEST_SRCS} ) set_target_properties( ${TESTUNIT} PROPERTIES COMPILE_FLAGS ${RELEASE_CXX_FLAGS} ) -target_link_libraries( ${TESTUNIT} PocoNet PocoUtil PocoXML PocoFoundation CppUnit pthread) +target_link_libraries( ${TESTUNIT} PocoNet PocoUtil PocoXML PocoFoundation CppUnit) diff --git a/NetSSL_OpenSSL/testsuite/CMakeLists.txt b/NetSSL_OpenSSL/testsuite/CMakeLists.txt index 6ede52301..ecf7c907d 100644 --- a/NetSSL_OpenSSL/testsuite/CMakeLists.txt +++ b/NetSSL_OpenSSL/testsuite/CMakeLists.txt @@ -21,5 +21,5 @@ set(TESTUNIT "${LIBNAME}-testrunner") add_executable( ${TESTUNIT} ${TEST_SRCS} ) set_target_properties( ${TESTUNIT} PROPERTIES COMPILE_FLAGS ${RELEASE_CXX_FLAGS} ) -target_link_libraries( ${TESTUNIT} PocoNetSSL PocoNet PocoUtil PocoXML PocoFoundation CppUnit pthread) +target_link_libraries( ${TESTUNIT} PocoNetSSL PocoNet PocoUtil PocoXML PocoFoundation CppUnit) diff --git a/Util/CMakeLists.txt b/Util/CMakeLists.txt index 9c5e5854a..69aaeb4c9 100644 --- a/Util/CMakeLists.txt +++ b/Util/CMakeLists.txt @@ -45,14 +45,14 @@ set_target_properties( ${LIBNAME} PROPERTIES COMPILE_FLAGS ${DEBUG_CXX_FLAGS} VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAME} ) +target_link_libraries( ${LIBNAME} PocoXML PocoFoundation) add_library( ${LIBNAMED} ${LIB_MODE} ${SRCS} ) set_target_properties( ${LIBNAMED} PROPERTIES COMPILE_FLAGS "${RELEASE_CXX_FLAGS}" VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAMED} ) +target_link_libraries( ${LIBNAMED} PocoXMLd PocoFoundationd ) install( DIRECTORY include/Poco diff --git a/Util/testsuite/CMakeLists.txt b/Util/testsuite/CMakeLists.txt index 791e5cc92..c03873b0d 100644 --- a/Util/testsuite/CMakeLists.txt +++ b/Util/testsuite/CMakeLists.txt @@ -32,4 +32,4 @@ set(TESTUNIT "${LIBNAME}-testrunner") add_executable( ${TESTUNIT} ${TEST_SRCS} ) set_target_properties( ${TESTUNIT} PROPERTIES COMPILE_FLAGS ${RELEASE_CXX_FLAGS} ) -target_link_libraries( ${TESTUNIT} PocoUtil PocoXML PocoFoundation CppUnit pthread) +target_link_libraries( ${TESTUNIT} PocoUtil PocoXML PocoFoundation CppUnit) diff --git a/WebWidgets/CMakeLists.txt b/WebWidgets/CMakeLists.txt index d60990d55..e69e7b7b6 100644 --- a/WebWidgets/CMakeLists.txt +++ b/WebWidgets/CMakeLists.txt @@ -9,14 +9,14 @@ set_target_properties( ${LIBNAME} PROPERTIES COMPILE_FLAGS ${DEBUG_CXX_FLAGS} VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAME} PocoFoundation ) +target_link_libraries( ${LIBNAME} PocoNet PocoUtil PocoXML PocoFoundation ) add_library( ${LIBNAMED} ${LIB_MODE} ${SRCS} ) set_target_properties( ${LIBNAMED} PROPERTIES COMPILE_FLAGS "${RELEASE_CXX_FLAGS}" VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAMED} PocoFoundationd ) +target_link_libraries( ${LIBNAMED} PocoNetd PocoUtild PocoXMLd PocoFoundationd ) install( DIRECTORY include/Poco diff --git a/WebWidgets/testsuite/CMakeLists.txt b/WebWidgets/testsuite/CMakeLists.txt index 5eaf4929b..d374bb889 100644 --- a/WebWidgets/testsuite/CMakeLists.txt +++ b/WebWidgets/testsuite/CMakeLists.txt @@ -14,5 +14,5 @@ set(TESTUNIT "${LIBNAME}-testrunner") add_executable( ${TESTUNIT} ${TEST_SRCS} ) set_target_properties( ${TESTUNIT} PROPERTIES COMPILE_FLAGS ${RELEASE_CXX_FLAGS} ) -target_link_libraries( ${TESTUNIT} PocoWebWidgets PocoNet PocoUtil PocoXML PocoFoundation CppUnit pthread) +target_link_libraries( ${TESTUNIT} PocoWebWidgets PocoNet PocoUtil PocoXML PocoFoundation CppUnit) diff --git a/XML/CMakeLists.txt b/XML/CMakeLists.txt index 3b5080f5e..c4cbaee9c 100644 --- a/XML/CMakeLists.txt +++ b/XML/CMakeLists.txt @@ -10,14 +10,14 @@ set_target_properties( ${LIBNAME} PROPERTIES COMPILE_FLAGS ${DEBUG_CXX_FLAGS} VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAME} ) +target_link_libraries( ${LIBNAME} PocoFoundation) add_library( ${LIBNAMED} ${LIB_MODE} ${SRCS} ) set_target_properties( ${LIBNAMED} PROPERTIES COMPILE_FLAGS "${RELEASE_CXX_FLAGS}" VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAMED} ) +target_link_libraries( ${LIBNAMED} PocoFoundationd) install( DIRECTORY include/Poco diff --git a/XML/testsuite/CMakeLists.txt b/XML/testsuite/CMakeLists.txt index cf02f6a3a..da7e360fe 100644 --- a/XML/testsuite/CMakeLists.txt +++ b/XML/testsuite/CMakeLists.txt @@ -32,5 +32,5 @@ set(TESTUNIT "${LIBNAME}-testrunner") add_executable( ${TESTUNIT} ${TEST_SRCS} ) set_target_properties( ${TESTUNIT} PROPERTIES COMPILE_FLAGS ${RELEASE_CXX_FLAGS} ) -target_link_libraries( ${TESTUNIT} PocoXML PocoFoundation CppUnit pthread) +target_link_libraries( ${TESTUNIT} PocoXML PocoFoundation CppUnit) diff --git a/Zip/CMakeLists.txt b/Zip/CMakeLists.txt index fa884e77e..98e25802f 100644 --- a/Zip/CMakeLists.txt +++ b/Zip/CMakeLists.txt @@ -8,14 +8,14 @@ set_target_properties( ${LIBNAME} PROPERTIES COMPILE_FLAGS ${DEBUG_CXX_FLAGS} VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAME} ) +target_link_libraries( ${LIBNAME} PocoUtil PocoXML PocoFoundation) add_library( ${LIBNAMED} ${LIB_MODE} ${SRCS} ) set_target_properties( ${LIBNAMED} PROPERTIES COMPILE_FLAGS "${RELEASE_CXX_FLAGS}" VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH} SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) -target_link_libraries( ${LIBNAMED} ) +target_link_libraries( ${LIBNAMED} PocoUtild PocoXMLd PocoFoundationd) install( DIRECTORY include/Poco diff --git a/Zip/testsuite/CMakeLists.txt b/Zip/testsuite/CMakeLists.txt index fe5f53a8d..c6844c21f 100644 --- a/Zip/testsuite/CMakeLists.txt +++ b/Zip/testsuite/CMakeLists.txt @@ -16,5 +16,5 @@ set(TESTUNIT "${LIBNAME}-testrunner") add_executable( ${TESTUNIT} ${TEST_SRCS} ) set_target_properties( ${TESTUNIT} PROPERTIES COMPILE_FLAGS ${RELEASE_CXX_FLAGS} ) -target_link_libraries( ${TESTUNIT} PocoZip PocoNet PocoFoundation CppUnit pthread) +target_link_libraries( ${TESTUNIT} PocoZip PocoNet PocoFoundation CppUnit ) diff --git a/contrib/cmake/FindMySQL.cmake b/contrib/cmake/FindMySQL.cmake index 62f5d76a8..c8a9b1b8c 100644 --- a/contrib/cmake/FindMySQL.cmake +++ b/contrib/cmake/FindMySQL.cmake @@ -51,5 +51,5 @@ if (MYSQL_INCLUDE_DIR AND MYSQL_LIB_DIR) include_directories(${MYSQL_INCLUDE_DIR}) link_directories(${MYSQL_LIB_DIR}) else (MYSQL_INCLUDE_DIR AND MYSQL_LIB_DIR) - message(STATUS "Cannot find MySQL, include directory: ${MYSQL_INCLUDE_DIR} library directory: ${MYSQL_LIB_DIR}") + message(STATUS "Couldn't find MySQL") endif (MYSQL_INCLUDE_DIR AND MYSQL_LIB_DIR)