set(LIBRARY_NAME shared) set(SRC_GRP_AUTH Auth/AuthCrypt.cpp Auth/AuthCrypt.h Auth/BigNumber.cpp Auth/BigNumber.h Auth/HMACSHA1.cpp Auth/HMACSHA1.h Auth/md5.h Auth/SARC4.cpp Auth/SARC4.h Auth/Sha1.cpp Auth/Sha1.h ) set(SRC_GRP_CONFIG Config/Config.cpp Config/Config.h ) set(SRC_GRP_DATABASE Database/Database.cpp Database/Database.h Database/DatabaseEnv.h Database/DatabaseImpl.h Database/DatabaseMysql.cpp Database/DatabaseMysql.h Database/DatabasePostgre.cpp Database/DatabasePostgre.h Database/Field.cpp Database/Field.h Database/PGSQLDelayThread.h Database/QueryResult.h Database/QueryResultMysql.cpp Database/QueryResultMysql.h Database/QueryResultPostgre.cpp Database/QueryResultPostgre.h Database/SqlDelayThread.cpp Database/SqlDelayThread.h Database/SqlOperations.cpp Database/SqlOperations.h Database/SqlPreparedStatement.cpp Database/SqlPreparedStatement.h Database/SQLStorage.cpp Database/SQLStorage.h Database/SQLStorageImpl.h ) set(SRC_GRP_DATABASE_DBC Database/DB2FileLoader.cpp Database/DB2FileLoader.h Database/DB2Store.h Database/DBCFileLoader.cpp Database/DBCFileLoader.h Database/DBCStore.h ) set(SRC_GRP_LOG Log.cpp Log.h ) set(SRC_GRP_UTIL ByteBuffer.cpp ByteBuffer.h Errors.h # dep/include/mersennetwister/MersenneTwister.h is part of this group in the VC 2012 file but it is not part of src/shared, so it is omitted here ProgressBar.cpp ProgressBar.h Timer.h Util.cpp Util.h WorldPacket.h ) set(LIBRARY_SRCS ${SRC_GRP_AUTH} ${SRC_GRP_CONFIG} ${SRC_GRP_DATABASE} ${SRC_GRP_DATABASE_DBC} ${SRC_GRP_LOG} ${SRC_GRP_UTIL} Common.cpp Common.h LockedQueue.h revision_nr.h revision_sql.h SystemConfig.h Threading.cpp Threading.h ) source_group("Auth" FILES ${SRC_GRP_AUTH} ) source_group("Config" FILES ${SRC_GRP_CONFIG} ) source_group("Database" FILES ${SRC_GRP_DATABASE} ) source_group("Database\\DataStores" FILES ${SRC_GRP_DATABASE_DBC} ) source_group("Log" FILES ${SRC_GRP_LOG} ) source_group("Util" FILES ${SRC_GRP_UTIL} ) # OS specific files if(WIN32) set(LIBRARY_SRCS ${LIBRARY_SRCS} WheatyExceptionReport.cpp WheatyExceptionReport.h ServiceWin32.cpp ServiceWin32.h ) else() set(LIBRARY_SRCS ${LIBRARY_SRCS} PosixDaemon.cpp PosixDaemon.h ) endif() include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/dep/include ${CMAKE_SOURCE_DIR}/src/framework ${CMAKE_BINARY_DIR} ${ACE_INCLUDE_DIR} ${MYSQL_INCLUDE_DIR} ) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/SystemConfig.h.in ${CMAKE_CURRENT_BINARY_DIR}/SystemConfig.h) add_library(${LIBRARY_NAME} STATIC ${LIBRARY_SRCS} ) add_dependencies(${LIBRARY_NAME} revision.h) if(NOT ACE_USE_EXTERNAL) add_dependencies(${LIBRARY_NAME} ACE_Project) endif()