diff options
Diffstat (limited to 'src/login')
-rw-r--r-- | src/login/CMakeLists.txt | 38 | ||||
-rw-r--r-- | src/login/sql/CMakeLists.txt | 46 | ||||
-rw-r--r-- | src/login/txt/CMakeLists.txt | 46 |
3 files changed, 55 insertions, 75 deletions
diff --git a/src/login/CMakeLists.txt b/src/login/CMakeLists.txt index 82390ebd8..afa4e5f20 100644 --- a/src/login/CMakeLists.txt +++ b/src/login/CMakeLists.txt @@ -2,43 +2,7 @@ # # setup # -set( MT19937AR_SOURCES - "${MT19937AR_SOURCE_DIR}/mt19937ar.c" - ) -set( COMMON_SOURCES - "${COMMON_SOURCE_DIR}/core.c" - "${COMMON_SOURCE_DIR}/db.c" - "${COMMON_SOURCE_DIR}/ers.c" -# "${COMMON_SOURCE_DIR}/grfio.c" - "${COMMON_SOURCE_DIR}/lock.c" - "${COMMON_SOURCE_DIR}/malloc.c" -# "${COMMON_SOURCE_DIR}/mapindex.c" - "${COMMON_SOURCE_DIR}/md5calc.c" -# "${COMMON_SOURCE_DIR}/nullpo.c" - "${COMMON_SOURCE_DIR}/plugins.c" - "${COMMON_SOURCE_DIR}/random.c" - "${COMMON_SOURCE_DIR}/showmsg.c" - "${COMMON_SOURCE_DIR}/socket.c" - "${COMMON_SOURCE_DIR}/strlib.c" - "${COMMON_SOURCE_DIR}/timer.c" - "${COMMON_SOURCE_DIR}/utils.c" - ) -set( COMMON_SQL_SOURCES - "${COMMON_SOURCE_DIR}/sql.c" - ) -set( LOGIN_SOURCES - "${CMAKE_CURRENT_SOURCE_DIR}/login.c" - ) -set( LOGIN_TXT_SOURCES - "${CMAKE_CURRENT_SOURCE_DIR}/account_txt.c" - "${CMAKE_CURRENT_SOURCE_DIR}/ipban_txt.c" - "${CMAKE_CURRENT_SOURCE_DIR}/loginlog_txt.c" - ) -set( LOGIN_SQL_SOURCES - "${CMAKE_CURRENT_SOURCE_DIR}/account_sql.c" - "${CMAKE_CURRENT_SOURCE_DIR}/ipban_sql.c" - "${CMAKE_CURRENT_SOURCE_DIR}/loginlog_sql.c" - ) +set( LOGIN_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR} ) # diff --git a/src/login/sql/CMakeLists.txt b/src/login/sql/CMakeLists.txt index 3cecb8840..50bf256e2 100644 --- a/src/login/sql/CMakeLists.txt +++ b/src/login/sql/CMakeLists.txt @@ -2,33 +2,41 @@ # # login sql # -if( USE_ZLIB AND USE_MYSQL ) -message ( STATUS "Creating target login-server_sql" ) -set( LIBRARIES ${GLOBAL_LIBRARIES} ${ZLIB_LIBRARIES} ${MYSQL_LIBRARIES} ) -set( INCLUDE_DIRS ${GLOBAL_INCLUDE_DIRS} ${MT19937AR_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIRS} ${MYSQL_INCLUDE_DIRS} ${COMMON_INCLUDE_DIRS} ) +if( HAVE_common_sql ) +message( STATUS "Creating target login-server_sql" ) +set( SQL_LOGIN_HEADERS + "${LOGIN_SOURCE_DIR}/account.h" + "${LOGIN_SOURCE_DIR}/ipban.h" + "${LOGIN_SOURCE_DIR}/login.h" + "${LOGIN_SOURCE_DIR}/loginlog.h" + ) +set( SQL_LOGIN_SOURCES + "${LOGIN_SOURCE_DIR}/account_sql.c" + "${LOGIN_SOURCE_DIR}/ipban_sql.c" + "${LOGIN_SOURCE_DIR}/login.c" + "${LOGIN_SOURCE_DIR}/loginlog_sql.c" + ) +set( DEPENDENCIES common_sql ) +set( LIBRARIES ${GLOBAL_LIBRARIES} ) +set( INCLUDE_DIRS ${GLOBAL_INCLUDE_DIRS} ) set( DEFINITIONS ${GLOBAL_DEFINITIONS} WITH_SQL ) -if( PACKETVER ) - message( STATUS "Using PACKETVER=${PACKETVER}" ) - list( APPEND DEFINITIONS PACKETVER=${PACKETVER} ) -endif() -if( WIN32 ) - list( APPEND LIBRARIES "oldnames.lib" "ws2_32.lib" ) - list( APPEND INCLUDE_DIRS ${MSINTTYPES_INCLUDE_DIRS} ) -endif() -set( SOURCE_FILES ${MT19937AR_SOURCES} ${COMMON_SOURCES} ${COMMON_SQL_SOURCES} ${LOGIN_SOURCES} ${LOGIN_SQL_SOURCES} ) -source_group( 3rdparty FILES ${MT19937AR_SOURCES} ) -source_group( common FILES ${COMMON_SOURCES} ${COMMON_SQL_SOURCES} ) -source_group( login FILES ${LOGIN_SOURCES} ${LOGIN_SQL_SOURCES} ) +set( SOURCE_FILES ${COMMON_BASE_HEADERS} ${COMMON_SQL_HEADERS} ${SQL_LOGIN_HEADERS} ${SQL_LOGIN_SOURCES} ) +source_group( common FILES ${COMMON_BASE_HEADERS} ${COMMON_SQL_HEADERS} ) +source_group( login FILES ${SQL_LOGIN_HEADERS} ${SQL_LOGIN_SOURCES} ) include_directories( ${INCLUDE_DIRS} ) add_executable( login-server_sql ${SOURCE_FILES} ) -target_link_libraries( login-server_sql ${LIBRARIES} ) +add_dependencies( login-server_sql ${DEPENDENCIES} ) +target_link_libraries( login-server_sql ${LIBRARIES} ${DEPENDENCIES} ) set_target_properties( login-server_sql PROPERTIES COMPILE_DEFINITIONS "${DEFINITIONS}" ) if( INSTALL_RUN_DATA ) install( TARGETS login-server_sql DESTINATION ${CMAKE_INSTALL_PREFIX} COMPONENT "login-server_sql" ) endif() -message ( STATUS "Creating target login-server_sql - done" ) +message( STATUS "Creating target login-server_sql - done" ) +set( HAVE_login-server_sql ON CACHE BOOL "login-server_sql target is available" ) +mark_as_advanced( HAVE_login-server_sql ) else() -message ( STATUS "Skipping target login-server_sql (requires ZLIB and MYSQL)" ) +message( STATUS "Skipping target login-server_sql (requires common_sql)" ) +unset( HAVE_login-server_sql CACHE ) endif() diff --git a/src/login/txt/CMakeLists.txt b/src/login/txt/CMakeLists.txt index 0c567f9e2..dff7d322c 100644 --- a/src/login/txt/CMakeLists.txt +++ b/src/login/txt/CMakeLists.txt @@ -2,33 +2,41 @@ # # login txt # -if( USE_ZLIB ) -message ( STATUS "Creating target login-server" ) -set( LIBRARIES ${GLOBAL_LIBRARIES} ${ZLIB_LIBRARIES} ) -set( INCLUDE_DIRS ${GLOBAL_INCLUDE_DIRS} ${MT19937AR_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIRS} ${COMMON_INCLUDE_DIRS} ) +if( HAVE_common_base ) +message( STATUS "Creating target login-server" ) +set( TXT_LOGIN_HEADERS + "${LOGIN_SOURCE_DIR}/account.h" + "${LOGIN_SOURCE_DIR}/ipban.h" + "${LOGIN_SOURCE_DIR}/login.h" + "${LOGIN_SOURCE_DIR}/loginlog.h" + ) +set( TXT_LOGIN_SOURCES + "${LOGIN_SOURCE_DIR}/account_txt.c" + "${LOGIN_SOURCE_DIR}/ipban_txt.c" + "${LOGIN_SOURCE_DIR}/login.c" + "${LOGIN_SOURCE_DIR}/loginlog_txt.c" + ) +set( DEPENDENCIES common_base ) +set( LIBRARIES ${GLOBAL_LIBRARIES} ) +set( INCLUDE_DIRS ${GLOBAL_INCLUDE_DIRS} ) set( DEFINITIONS ${GLOBAL_DEFINITIONS} WITH_TXT ) -if( PACKETVER ) - message( STATUS "Using PACKETVER=${PACKETVER}" ) - list( APPEND DEFINITIONS PACKETVER=${PACKETVER} ) -endif() -if( WIN32 ) - list( APPEND LIBRARIES "oldnames.lib" "ws2_32.lib" ) - list( APPEND INCLUDE_DIRS ${MSINTTYPES_INCLUDE_DIRS} ) -endif() -set( SOURCE_FILES ${MT19937AR_SOURCES} ${COMMON_SOURCES} ${LOGIN_SOURCES} ${LOGIN_TXT_SOURCES} ) -source_group( 3rdparty FILES ${MT19937AR_SOURCES} ) -source_group( common FILES ${COMMON_SOURCES} ) -source_group( login FILES ${LOGIN_SOURCES} ${LOGIN_TXT_SOURCES} ) +set( SOURCE_FILES ${COMMON_BASE_HEADERS} ${TXT_LOGIN_HEADERS} ${TXT_LOGIN_SOURCES} ) +source_group( common FILES ${COMMON_BASE_HEADERS} ) +source_group( login FILES ${TXT_LOGIN_HEADERS} ${TXT_LOGIN_SOURCES} ) include_directories( ${INCLUDE_DIRS} ) add_executable( login-server ${SOURCE_FILES} ) -target_link_libraries( login-server ${LIBRARIES} ) +add_dependencies( login-server ${DEPENDENCIES} ) +target_link_libraries( login-server ${LIBRARIES} ${DEPENDENCIES} ) set_target_properties( login-server PROPERTIES COMPILE_DEFINITIONS "${DEFINITIONS}" ) if( INSTALL_RUN_DATA ) install( TARGETS login-server DESTINATION ${CMAKE_INSTALL_PREFIX} COMPONENT "login-server" ) endif() -message ( STATUS "Creating target login-server - done" ) +message( STATUS "Creating target login-server - done" ) +set( HAVE_login-server ON CACHE BOOL "login-server target is available" ) +mark_as_advanced( HAVE_login-server ) else() -message ( STATUS "Skipping target login-server (requires ZLIB)" ) +message( STATUS "Skipping target login-server (requires common_base)" ) +unset( HAVE_login-server CACHE ) endif() |