X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/90b793eb07dc190eeb1144a1da079de760d17c36..ebd170a764ab9660adee464588cda1801c7986b4:/projects/stargazer/plugins/CMakeLists.txt diff --git a/projects/stargazer/plugins/CMakeLists.txt b/projects/stargazer/plugins/CMakeLists.txt index c30f92cf..40e18dec 100644 --- a/projects/stargazer/plugins/CMakeLists.txt +++ b/projects/stargazer/plugins/CMakeLists.txt @@ -11,6 +11,19 @@ if ( BUILD_MOD_AO ) endif () endif ( BUILD_MOD_AO ) +if ( BUILD_MOD_RADIUS ) + add_library ( mod_radius MODULE other/radius/radius.cpp ) + target_link_libraries ( mod_radius scriptexecuter logger common ) + set_target_properties ( mod_radius PROPERTIES PREFIX "" ) + + if ( CLANG_TIDY_EXE ) + set_target_properties ( mod_radius PROPERTIES CXX_CLANG_TIDY "${DO_CLANG_TIDY}" ) + endif () + if ( INCLUDE_WHAT_YOU_USE_EXE ) + set_target_properties ( mod_radius PROPERTIES CXX_INCLUDE_WHAT_YOU_USE "${DO_INCLUDE_WHAT_YOU_USE}" ) + endif () +endif ( BUILD_MOD_RADIUS ) + if ( BUILD_MOD_IA ) add_library ( mod_auth_ia MODULE authorization/inetaccess/inetaccess.cpp ) target_link_libraries ( mod_auth_ia scriptexecuter crypto logger common ) @@ -138,7 +151,12 @@ if ( BUILD_MOD_SGCONFIG ) endif ( BUILD_MOD_SGCONFIG ) if ( BUILD_MOD_RPCCONFIG ) - find_package ( XMLRPC REQUIRED c++ abyss-server ) + find_package ( XMLRPC 1.58.0 REQUIRED c++2 abyss-server ) + try_compile ( XMLRPC_C_NO_AUTO_PTR ${CMAKE_CURRENT_BINARY_DIR} "${PROJECT_SOURCE_DIR}/checks/xmlrpc-c-auto_ptr.cpp" CMAKE_FLAGS -DINCLUDE_DIRECTORIES=${XMLRPC_INCLUDE_DIRS} LINK_LIBRARIES ${XMLRPC_LIBRARIES} OUTPUT_VARIABLE TRY_COMPILE_OUTPUT ) + if ( NOT XMLRPC_C_NO_AUTO_PTR ) + message ( WARNING ${TRY_COMPILE_OUTPUT} ) + message ( FATAL_ERROR "Your version of XMLRPC-C library can not be used with C++17. Try upgrading to at least 1.58.0." ) + endif () include_directories ( ${XMLRPC_INCLUDE_DIRS} ) add_library ( mod_conf_rpc MODULE configuration/rpcconfig/rpcconfig.cpp configuration/rpcconfig/user_helper.cpp @@ -148,8 +166,11 @@ if ( BUILD_MOD_RPCCONFIG ) configuration/rpcconfig/tariffs_methods.cpp configuration/rpcconfig/admins_methods.cpp configuration/rpcconfig/messages_methods.cpp ) - target_link_libraries ( mod_conf_rpc scriptexecuter logger common ${XMLRPC_LIBRARIES} ) + target_link_libraries ( mod_conf_rpc scriptexecuter logger common ${XMLRPC_LIBRARIES} ) set_target_properties ( mod_conf_rpc PROPERTIES PREFIX "" ) + if ( ${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" ) + set_target_properties ( mod_conf_rpc PROPERTIES LINK_FLAGS "-undefined dynamic_lookup" ) + endif ( ${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" ) if ( CLANG_TIDY_EXE ) set_target_properties ( mod_conf_rpc PROPERTIES CXX_CLANG_TIDY "${DO_CLANG_TIDY}" ) @@ -219,26 +240,26 @@ if ( BUILD_MOD_STORE_FILES ) endif () endif ( BUILD_MOD_STORE_FILES ) -#if ( BUILD_MOD_STORE_FIREBIRD ) -# find_package ( FBClient REQUIRED ) -# add_library ( mod_store_firebird MODULE store/firebird/firebird_store.cpp -# store/firebird/firebird_store_admins.cpp -# store/firebird/firebird_store_corporations.cpp -# store/firebird/firebird_store_messages.cpp -# store/firebird/firebird_store_services.cpp -# store/firebird/firebird_store_tariffs.cpp -# store/firebird/firebird_store_users.cpp -# store/firebird/firebird_store_utils.cpp ) -# target_link_libraries ( mod_store_firebird crypto common logger ibpp FBClient::FBClient ) -# set_target_properties ( mod_store_firebird PROPERTIES PREFIX "" ) -# -# if ( CLANG_TIDY_EXE ) -# set_target_properties ( mod_store_firebird PROPERTIES CXX_CLANG_TIDY "${DO_CLANG_TIDY}" ) -# endif () -# if ( INCLUDE_WHAT_YOU_USE_EXE ) -# set_target_properties ( mod_store_firebird PROPERTIES CXX_INCLUDE_WHAT_YOU_USE "${DO_INCLUDE_WHAT_YOU_USE}" ) -# endif () -#endif ( BUILD_MOD_STORE_FIREBIRD ) +if ( BUILD_MOD_STORE_FIREBIRD ) + find_package ( FBClient REQUIRED ) + add_library ( mod_store_firebird MODULE store/firebird/firebird_store.cpp + store/firebird/firebird_store_admins.cpp + store/firebird/firebird_store_corporations.cpp + store/firebird/firebird_store_messages.cpp + store/firebird/firebird_store_services.cpp + store/firebird/firebird_store_tariffs.cpp + store/firebird/firebird_store_users.cpp + store/firebird/firebird_store_utils.cpp ) + target_link_libraries ( mod_store_firebird crypto common logger ibpp FBClient::FBClient ) + set_target_properties ( mod_store_firebird PROPERTIES PREFIX "" ) + + if ( CLANG_TIDY_EXE ) + set_target_properties ( mod_store_firebird PROPERTIES CXX_CLANG_TIDY "${DO_CLANG_TIDY}" ) + endif () + if ( INCLUDE_WHAT_YOU_USE_EXE ) + set_target_properties ( mod_store_firebird PROPERTIES CXX_INCLUDE_WHAT_YOU_USE "${DO_INCLUDE_WHAT_YOU_USE}" ) + endif () +endif ( BUILD_MOD_STORE_FIREBIRD ) if ( BUILD_MOD_STORE_MYSQL ) find_package ( MySQLConnector REQUIRED ) @@ -267,6 +288,9 @@ if ( BUILD_MOD_STORE_POSTGRESQL ) store/postgresql/postgresql_store_utils.cpp ) target_link_libraries ( mod_store_postgresql crypto logger common ${PostgreSQL_LIBRARIES} ) set_target_properties ( mod_store_postgresql PROPERTIES PREFIX "" ) + if ( ${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" ) + set_target_properties ( mod_store_postgresql PROPERTIES LINK_FLAGS "-undefined dynamic_lookup" ) + endif ( ${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" ) if ( CLANG_TIDY_EXE ) set_target_properties ( mod_store_postgresql PROPERTIES CXX_CLANG_TIDY "${DO_CLANG_TIDY}" )