summaryrefslogtreecommitdiff
path: root/src/login/CMakeLists.txt
diff options
context:
space:
mode:
authorflaviojs <flaviojs@54d463be-8e91-2dee-dedb-b68131a5f0ec>2011-06-29 12:26:51 +0000
committerflaviojs <flaviojs@54d463be-8e91-2dee-dedb-b68131a5f0ec>2011-06-29 12:26:51 +0000
commitdd73c6ea546a8828653cdce38a52f575cbdd3b96 (patch)
tree7c388def15aaf5e09e73f563ffa39c72d7c28c2f /src/login/CMakeLists.txt
parenta9492cf82f696af37f3258e19d7767f705708e63 (diff)
downloadhercules-dd73c6ea546a8828653cdce38a52f575cbdd3b96.tar.gz
hercules-dd73c6ea546a8828653cdce38a52f575cbdd3b96.tar.bz2
hercules-dd73c6ea546a8828653cdce38a52f575cbdd3b96.tar.xz
hercules-dd73c6ea546a8828653cdce38a52f575cbdd3b96.zip
* Added experimental support for CMake. (for now: basic build, no extras, only tested with VS10 and cygwin)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14872 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/login/CMakeLists.txt')
-rw-r--r--src/login/CMakeLists.txt103
1 files changed, 103 insertions, 0 deletions
diff --git a/src/login/CMakeLists.txt b/src/login/CMakeLists.txt
new file mode 100644
index 000000000..88d137507
--- /dev/null
+++ b/src/login/CMakeLists.txt
@@ -0,0 +1,103 @@
+
+# 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
+ "login.c"
+ )
+set( LOGIN_TXT_SOURCES
+ "account_txt.c"
+ "ipban_txt.c"
+ "loginlog_txt.c"
+ )
+set( LOGIN_SQL_SOURCES
+ "account_sql.c"
+ "ipban_sql.c"
+ "loginlog_sql.c"
+ )
+
+
+#
+# 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} )
+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} )
+include_directories( ${INCLUDE_DIRS} )
+add_executable( login-server ${SOURCE_FILES} )
+target_link_libraries( login-server ${LIBRARIES} )
+set_target_properties( login-server PROPERTIES COMPILE_DEFINITIONS "${DEFINITIONS}" )
+if( INSTALL_RUN_DATA )
+ install( TARGETS login-server DESTINATION ${CMAKE_INSTALL_PREFIX} )
+endif()
+message ( STATUS "Creating target login-server - done" )
+else()
+message ( STATUS "Skipping target login-server (requires ZLIB)" )
+endif()
+
+
+# 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} )
+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} )
+include_directories( ${INCLUDE_DIRS} )
+add_executable( login-server_sql ${SOURCE_FILES} )
+target_link_libraries( login-server_sql ${LIBRARIES} )
+set_target_properties( login-server_sql PROPERTIES COMPILE_DEFINITIONS "${DEFINITIONS}" )
+if( INSTALL_RUN_DATA )
+ install( TARGETS login-server_sql DESTINATION ${CMAKE_INSTALL_PREFIX} )
+endif()
+message ( STATUS "Creating target login-server_sql - done" )
+else()
+message ( STATUS "Skipping target login-server_sql (requires ZLIB and MYSQL)" )
+endif()