X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=win%2FCMakeLists.txt;h=96e558c8b63b57365ba893b4b0c5fb06fd6ae4a1;hb=35b70631f0532a5828b04a8e0c02092a285f331a;hp=7be08a3fcd43f2c18d4dea2f508347af1dd863ef;hpb=fc4fc43ec232407b38d7ca182cb92c5cac4287aa;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/win/CMakeLists.txt b/win/CMakeLists.txt index 7be08a3fc..96e558c8b 100644 --- a/win/CMakeLists.txt +++ b/win/CMakeLists.txt @@ -2,25 +2,28 @@ cmake_minimum_required(VERSION 2.8) project(InspIRCd CXX) -set(CONF_PATH "conf" CACHE PATH "Configuration file path") -set(MODULE_PATH "modules" CACHE PATH "Module path") -set(DATA_PATH "data" CACHE PATH "Data path") -set(LOG_PATH "logs" CACHE PATH "Log file path") +set(CONFIG_DIR "conf" CACHE PATH "Configuration file path") +set(MODULE_DIR "modules" CACHE PATH "Module path") +set(DATA_DIR "data" CACHE PATH "Data path") +set(LOG_DIR "logs" CACHE PATH "Log file path") set(EXTRA_INCLUDES "" CACHE PATH "Extra include paths") set(EXTRA_LIBS "" CACHE PATH "Extra library paths") set(INSPIRCD_BASE "${CMAKE_CURRENT_SOURCE_DIR}/../") +# Build with multiple processes +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP") + # Use our own NSIS template set(CMAKE_MODULE_PATH "${INSPIRCD_BASE}/win") # Grab version info from version.sh file(STRINGS "${INSPIRCD_BASE}/src/version.sh" VERSIONSH) -string(REGEX REPLACE ".*InspIRCd-([0-9]*).*" "\\1" MAJOR_VERSION "${VERSIONSH}") -string(REGEX REPLACE ".*InspIRCd-[0-9]*\\.([0-9]*).*" "\\1" MINOR_VERSION "${VERSIONSH}") -string(REGEX REPLACE ".*InspIRCd-[0-9]*\\.[0-9]*\\.([0-9]*).*" "\\1" PATCH_VERSION "${VERSIONSH}") -set(FULL_VERSION "${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}") +string(REGEX REPLACE ".*InspIRCd-([0-9]*).*" "\\1" VERSION_MAJOR "${VERSIONSH}") +string(REGEX REPLACE ".*InspIRCd-[0-9]*\\.([0-9]*).*" "\\1" VERSION_MINOR "${VERSIONSH}") +string(REGEX REPLACE ".*InspIRCd-[0-9]*\\.[0-9]*\\.([0-9]*).*" "\\1" VERSION_PATCH "${VERSIONSH}") +string(REGEX REPLACE ".*InspIRCd-([^\"]+).*" "\\1" VERSION_FULL "${VERSIONSH}") if(MSVC) # Without /SAFESEH:NO old libraries compiled with VS 2010 or older won't link correctly to VS2012 (eg, extra module libs) @@ -41,7 +44,6 @@ endif(MSVC) file(GLOB INSPIRCD_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${INSPIRCD_BASE}/win/inspircd_win32wrapper.cpp" "${INSPIRCD_BASE}/win/win32service.cpp" "${INSPIRCD_BASE}/src/*.cpp" -"${INSPIRCD_BASE}/src/modes/*.cpp" "${INSPIRCD_BASE}/src/socketengines/socketengine_select.cpp" "${INSPIRCD_BASE}/src/threadengines/threadengine_win32.cpp") list(SORT INSPIRCD_SOURCES) @@ -56,8 +58,7 @@ if(MSVC) endif(MSVC) configure_file("${INSPIRCD_BASE}/win/inspircd.rc.cmake" "${INSPIRCD_BASE}/win/inspircd.rc") -configure_file("${INSPIRCD_BASE}/win/inspircd_version.h.cmake" "${INSPIRCD_BASE}/win/inspircd_version.h") -configure_file("${INSPIRCD_BASE}/win/inspircd_config.h.cmake" "${INSPIRCD_BASE}/win/inspircd_config.h") +configure_file("${INSPIRCD_BASE}/make/template/config.h" "${INSPIRCD_BASE}/include/config.h") add_executable(inspircd ${INSPIRCD_SOURCES} "${INSPIRCD_BASE}/win/inspircd.rc") target_link_libraries(inspircd win32_memory) @@ -79,10 +80,10 @@ file(GLOB_RECURSE EXAMPLE_LOCALES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${INSPIR install(FILES ${EXAMPLE_LOCALES} DESTINATION locales) # Create an empty data and logs directory and install them -file(MAKE_DIRECTORY ${DATA_PATH}) -install(DIRECTORY ${DATA_PATH} DESTINATION .) -file(MAKE_DIRECTORY ${LOG_PATH}) -install(DIRECTORY ${LOG_PATH} DESTINATION .) +file(MAKE_DIRECTORY ${DATA_DIR}) +install(DIRECTORY ${DATA_DIR} DESTINATION .) +file(MAKE_DIRECTORY ${LOG_DIR}) +install(DIRECTORY ${LOG_DIR} DESTINATION .) if(EXISTS "${CMAKE_ROOT}/Modules/CPack.cmake") set(CMAKE_INSTALL_SYSTEM_RUNTIME_DESTINATION ".") # place runtime libraries next to InspIRCd binary @@ -90,10 +91,10 @@ if(EXISTS "${CMAKE_ROOT}/Modules/CPack.cmake") set(CPACK_PACKAGE_NAME "InspIRCd IRC Daemon") set(CPACK_PACKAGE_VENDOR "InspIRCd Development Team") - set(CPACK_PACKAGE_VERSION_MAJOR ${MAJOR_VERSION}) - set(CPACK_PACKAGE_VERSION_MINOR ${MINOR_VERSION}) - set(CPACK_PACKAGE_VERSION_PATCH ${PATCH_VERSION}) - set(CPACK_PACKAGE_FILE_NAME "InspIRCd-${FULL_VERSION}") + set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR}) + set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR}) + set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH}) + set(CPACK_PACKAGE_FILE_NAME "InspIRCd-${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}") set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/../docs/COPYING") set(CPACK_GENERATOR "NSIS")