mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-05-02 08:57:44 +00:00
hopefully it'll build properly on windows/linux
This commit is contained in:
parent
10d32a0e36
commit
75202b0782
3 changed files with 25 additions and 22 deletions
|
@ -4,8 +4,9 @@ project (Sapphire)
|
||||||
|
|
||||||
set(CMAKE_BINARY_DIR ${CMAKE_SOURCE_DIR}/bin)
|
set(CMAKE_BINARY_DIR ${CMAKE_SOURCE_DIR}/bin)
|
||||||
|
|
||||||
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR})
|
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/bin)
|
||||||
set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR})
|
set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
|
||||||
|
set(EXECUTABLE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
|
||||||
|
|
||||||
set(PROJECT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/include)
|
set(PROJECT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/include)
|
||||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake)
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake)
|
||||||
|
|
|
@ -10,13 +10,11 @@
|
||||||
<Scripts>
|
<Scripts>
|
||||||
<!-- where compiled scripts are placed -->
|
<!-- where compiled scripts are placed -->
|
||||||
<Path>./compiledscripts/</Path>
|
<Path>./compiledscripts/</Path>
|
||||||
<!-- path relative to the path above, stores where scripts are when loaded -->
|
|
||||||
<CachePath>./cache/</CachePath>
|
|
||||||
|
|
||||||
<HotSwap>
|
<HotSwap>
|
||||||
<Enabled>1</Enabled>
|
<Enabled>1</Enabled>
|
||||||
<BuildDir>../cmake-build-debug/</BuildDir>
|
<BuildDir>../cmake-build-debug/</BuildDir>
|
||||||
<BuildCmd>nmake %1%</BuildCmd>
|
<BuildCmd>make %1%</BuildCmd>
|
||||||
</HotSwap>
|
</HotSwap>
|
||||||
</Scripts>
|
</Scripts>
|
||||||
|
|
||||||
|
|
|
@ -11,33 +11,37 @@ if(MSVC)
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Yc${CMAKE_CURRENT_SOURCE_DIR}/ScriptObject.h /FI${CMAKE_CURRENT_SOURCE_DIR}/ScriptObject.h")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Yc${CMAKE_CURRENT_SOURCE_DIR}/ScriptObject.h /FI${CMAKE_CURRENT_SOURCE_DIR}/ScriptObject.h")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
message( "exec: ${EXECUTABLE_OUTPUT_DIRECTORY}" )
|
||||||
|
|
||||||
|
set( SCRIPT_LIB_DIR "${EXECUTABLE_OUTPUT_DIRECTORY}/compiledscripts/" )
|
||||||
|
set( EXECUTABLE_OUTPUT_PATH "${SCRIPT_LIB_DIR}")
|
||||||
|
set( LIBRARY_OUTPUT_PATH "${SCRIPT_LIB_DIR}")
|
||||||
|
set( RUNTIME_OUTPUT_DIRECTORY "${SCRIPT_LIB_DIR}")
|
||||||
|
|
||||||
foreach(_sourcefile ${SCRIPT_FILES})
|
foreach(_sourcefile ${SCRIPT_FILES})
|
||||||
get_filename_component(_file "${_sourcefile}" NAME_WE)
|
get_filename_component(_file "${_sourcefile}" NAME_WE)
|
||||||
add_library("${_file}" MODULE "${_sourcefile}" "${SCRIPT_INCLUDE_FILES}")
|
add_library("${_file}" MODULE "${_sourcefile}" "${SCRIPT_INCLUDE_FILES}")
|
||||||
|
|
||||||
target_link_libraries("${_file}" server_zone)
|
|
||||||
|
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set_source_files_properties("${_file}" PROPERTIES
|
set_source_files_properties("${_file}" PROPERTIES
|
||||||
COMPILE_FLAGS "/Yc${CMAKE_CURRENT_SOURCE_DIR}/ScriptObject.h"
|
COMPILE_FLAGS "/Yc${CMAKE_CURRENT_SOURCE_DIR}/ScriptObject.h"
|
||||||
)
|
)
|
||||||
|
set_target_properties(${_file} PROPERTIES
|
||||||
|
CXX_STANDARD 14
|
||||||
|
CXX_STANDARD_REQUIRED ON
|
||||||
|
CXX_EXTENSIONS ON
|
||||||
|
LIBRARY_OUTPUT_DIRECTORY_DEBUG "${SCRIPT_LIB_DIR}"
|
||||||
|
LIBRARY_OUTPUT_DIRECTORY_RELEASE "${SCRIPT_LIB_DIR}"
|
||||||
|
LIBRARY_OUTPUT_DIRECTORY_RELWITHDEBINFO "${SCRIPT_LIB_DIR}"
|
||||||
|
LIBRARY_OUTPUT_DIRECTORY_MINSIZEREL "${SCRIPT_LIB_DIR}"
|
||||||
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set_target_properties("${_file}" PROPERTIES
|
target_link_libraries("${_file}" server_zone)
|
||||||
CXX_STANDARD 14
|
|
||||||
CXX_STANDARD_REQUIRED ON
|
|
||||||
CXX_EXTENSIONS ON
|
|
||||||
LIBRARY_OUTPUT_DIRECTORY "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/"
|
|
||||||
LIBRARY_OUTPUT_DIRECTORY_DEBUG "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/"
|
|
||||||
LIBRARY_OUTPUT_DIRECTORY_RELEASE "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/"
|
|
||||||
LIBRARY_OUTPUT_DIRECTORY_RELWITHDEBINFO "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/"
|
|
||||||
LIBRARY_OUTPUT_DIRECTORY_MINSIZEREL "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/"
|
|
||||||
ARCHIVE_OUTPUT_DIRECTORY "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/"
|
|
||||||
)
|
|
||||||
|
|
||||||
add_custom_command(TARGET "${_file}" POST_BUILD
|
add_custom_command(TARGET "${_file}" POST_BUILD
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/${_file}.exp"
|
COMMAND ${CMAKE_COMMAND} -E remove "${SCRIPT_LIB_DIR}/${_file}.exp"
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/${_file}.lib"
|
COMMAND ${CMAKE_COMMAND} -E remove "${SCRIPT_LIB_DIR}/${_file}.lib"
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove "${EXECUTABLE_OUTPUT_PATH}/compiledscripts/${_file}.ilk"
|
COMMAND ${CMAKE_COMMAND} -E remove "${SCRIPT_LIB_DIR}/${_file}.ilk"
|
||||||
)
|
)
|
||||||
endforeach(_sourcefile ${SCRIPT_FILES})
|
endforeach(_sourcefile ${SCRIPT_FILES})
|
Loading…
Add table
Reference in a new issue