summaryrefslogtreecommitdiff
path: root/src/map/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/map/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/map/CMakeLists.txt')
-rw-r--r--src/map/CMakeLists.txt140
1 files changed, 140 insertions, 0 deletions
diff --git a/src/map/CMakeLists.txt b/src/map/CMakeLists.txt
new file mode 100644
index 000000000..e5589a30e
--- /dev/null
+++ b/src/map/CMakeLists.txt
@@ -0,0 +1,140 @@
+
+# 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( MAP_SOURCES
+ "atcommand.c"
+ "battle.c"
+ "battleground.c"
+ "buyingstore.c"
+ "chat.c"
+ "chrif.c"
+ "clif.c"
+ "date.c"
+ "duel.c"
+ "guild.c"
+ "homunculus.c"
+ "instance.c"
+ "intif.c"
+ "itemdb.c"
+ "log.c"
+ "mail.c"
+ "map.c"
+ "mercenary.c"
+ "mob.c"
+ "npc.c"
+ "npc_chat.c"
+ "party.c"
+ "path.c"
+ "pc.c"
+ "pet.c"
+ "quest.c"
+ "script.c"
+ "searchstore.c"
+ "skill.c"
+ "status.c"
+ "storage.c"
+ "trade.c"
+ "unit.c"
+ "vending.c"
+ )
+set( MAP_TXT_SOURCES
+ "mapreg_txt.c"
+ )
+set( MAP_SQL_SOURCES
+ "mapreg_sql.c"
+ )
+
+
+# map txt
+if( USE_ZLIB )
+message ( STATUS "Creating target map-server" )
+set( LIBRARIES ${GLOBAL_LIBRARIES} ${ZLIB_LIBRARIES} )
+set( INCLUDE_DIRS ${GLOBAL_INCLUDE_DIRS} ${MT19937AR_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIRS} )
+set( DEFINITIONS ${GLOBAL_DEFINITIONS} TXT_ONLY )
+if( USE_PCRE )
+ message( STATUS "Using PCRE" )
+ list( APPEND LIBRARIES ${PCRE_LIBRARIES} )
+ list( APPEND INCLUDE_DIRS ${PCRE_INCLUDE_DIRS} )
+endif()
+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} ${MAP_SOURCES} ${MAP_TXT_SOURCES} )
+source_group( 3rdparty FILES ${MT19937AR_SOURCES} )
+source_group( common FILES ${COMMON_SOURCES} )
+source_group( map FILES ${MAP_SOURCES} ${MAP_TXT_SOURCES} )
+include_directories( ${INCLUDE_DIRS} )
+add_executable( map-server ${SOURCE_FILES} )
+target_link_libraries( map-server ${LIBRARIES} )
+set_target_properties( map-server PROPERTIES COMPILE_DEFINITIONS "${DEFINITIONS}" )
+if( INSTALL_RUN_DATA )
+ install( TARGETS map-server DESTINATION ${CMAKE_INSTALL_PREFIX} )
+endif()
+message ( STATUS "Creating target map-server - done" )
+else()
+message ( STATUS "Skipping target map-server (requires ZLIB; optional PCRE)" )
+endif()
+
+
+# map sql
+if( USE_ZLIB AND USE_MYSQL )
+message ( STATUS "Creating target map-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} )
+if( USE_PCRE )
+ message( STATUS "Using PCRE" )
+ list( APPEND LIBRARIES ${PCRE_LIBRARIES} )
+ list( APPEND INCLUDE_DIRS ${PCRE_INCLUDE_DIRS} )
+endif()
+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} ${MAP_SOURCES} ${MAP_SQL_SOURCES} )
+source_group( 3rdparty FILES ${MT19937AR_SOURCES} )
+source_group( common FILES ${COMMON_SOURCES} ${COMMON_SQL_SOURCES} )
+source_group( map FILES ${MAP_SOURCES} ${MAP_SQL_SOURCES} )
+include_directories( ${INCLUDE_DIRS} )
+add_executable( map-server_sql ${SOURCE_FILES} )
+target_link_libraries( map-server_sql ${LIBRARIES} )
+set_target_properties( map-server_sql PROPERTIES COMPILE_DEFINITIONS "${DEFINITIONS}" )
+if( INSTALL_RUN_DATA )
+ install( TARGETS map-server_sql DESTINATION ${CMAKE_INSTALL_PREFIX} )
+endif()
+message ( STATUS "Creating target map-server_sql - done" )
+else()
+message ( STATUS "Skipping target map-server_sql (requires ZLIB and MYSQL; optional PCRE)" )
+endif()