mirror of
https://github.com/nzp-team/fteqw.git
synced 2024-11-23 04:11:53 +00:00
Update cmake rules.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5263 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
20be3f8161
commit
e143173e21
1 changed files with 33 additions and 7 deletions
|
@ -1,7 +1,7 @@
|
|||
#Note: this file was made primarily to support msvc and its project file incompatibilities nightmare.
|
||||
|
||||
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 3.0)
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 3.9)
|
||||
PROJECT(fteqw)
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
|
@ -14,7 +14,7 @@ INCLUDE_DIRECTORIES(
|
|||
)
|
||||
|
||||
EXECUTE_PROCESS(COMMAND
|
||||
"echo" hello world
|
||||
"svnversion"
|
||||
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
|
||||
OUTPUT_VARIABLE FTE_REVISON
|
||||
ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
|
@ -31,7 +31,11 @@ set(CMAKE_CXX_VISIBILITY_PRESET hidden)
|
|||
set(CMAKE_C_VISIBILITY_PRESET hidden)
|
||||
|
||||
#use LTO where possible. reportedly requires cmake 3.9 to actually work
|
||||
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
|
||||
INCLUDE(CheckIPOSupported)
|
||||
check_ipo_supported(RESULT result)
|
||||
IF(result)
|
||||
SET(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE)
|
||||
ENDIF()
|
||||
|
||||
IF(${WIN32})
|
||||
INCLUDE_DIRECTORIES(engine/libs engine/libs/freetype2/include)
|
||||
|
@ -79,12 +83,13 @@ IF(${WIN32})
|
|||
engine/server/sv_sys_win.c
|
||||
)
|
||||
ELSEIF(${UNIX}) #linux(ish)
|
||||
#openbsd will have issues with snd_linux.c
|
||||
FIND_PACKAGE(Freetype REQUIRED)
|
||||
|
||||
INCLUDE_DIRECTORIES( ${FREETYPE_INCLUDE_DIRS} )
|
||||
|
||||
SET(FTE_DEFINES GLQUAKE;VKQUAKE;DYNAMIC_LIBPNG;DYNAMIC_LIBJPEG;DYNAMIC_SDL;MULTITHREAD;stricmp=strcasecmp;strnicmp=strncasecmp)
|
||||
SET(FTE_LIBS z m dl pthread ${SDL2_LIBRARIES})
|
||||
SET(FTE_LIBS z m ${CMAKE_DL_LIBS} pthread ${SDL2_LIBRARIES})
|
||||
SET(FTE_ARCH_FILES
|
||||
engine/client/sys_linux.c
|
||||
engine/common/sys_linux_threads.c
|
||||
|
@ -103,13 +108,34 @@ ELSEIF(${UNIX}) #linux(ish)
|
|||
# engine/gl/gl_vidwayland.c
|
||||
)
|
||||
|
||||
#openbsd uses a libossaudio library for all the oss stuff, use that to ensure that we still get sound
|
||||
FIND_LIBRARY(
|
||||
OSSAUDIO_LIBRARY
|
||||
NAMES ossaudio
|
||||
)
|
||||
IF(OSSAUDIO_LIBRARY)
|
||||
SET(FTE_LIBS ${FTE_LIBS} ${OSSAUDIO_LIBRARY})
|
||||
ENDIF()
|
||||
|
||||
#on linux, use wayland.
|
||||
FIND_LIBRARY(
|
||||
WAYLAND_CLIENT_LIBRARY
|
||||
NAMES wayland-client libwayland-client
|
||||
)
|
||||
IF(WAYLAND_CLIENT_LIBRARY)
|
||||
SET(FTE_DEFINES ${FTE_DEFINES};WAYLANDQUAKE;USE_EGL)
|
||||
SET(FTE_ARCH_FILES ${FTE_ARCH_FILES}
|
||||
engine/gl/gl_vidwayland.c
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
SET(FTESV_DEFINES stricmp=strcasecmp;strnicmp=strncasecmp)
|
||||
SET(FTESV_ARCH_FILES
|
||||
engine/server/sv_sys_unix.c
|
||||
engine/common/sys_linux_threads.c
|
||||
engine/common/net_ssl_gnutls.c
|
||||
)
|
||||
SET(FTESV_LIBS z m dl)
|
||||
SET(FTESV_LIBS z m ${CMAKE_DL_LIBS})
|
||||
ELSEIF(1) #SDL
|
||||
FIND_PACKAGE(Freetype REQUIRED)
|
||||
# INCLUDE_DIRECTORIES(engine/libs engine/libs/freetype2/include)
|
||||
|
@ -123,7 +149,7 @@ ELSEIF(1) #SDL
|
|||
|
||||
#SDL2.0.7 supports vulkan, so lets use it.
|
||||
SET(FTE_DEFINES GLQUAKE;VKQUAKE;FTE_SDL;DYNAMIC_LIBPNG;DYNAMIC_LIBJPEG;stricmp=strcasecmp;strnicmp=strncasecmp)
|
||||
SET(FTE_LIBS z m dl ${SDL2_LIBRARIES})
|
||||
SET(FTE_LIBS z m ${CMAKE_DL_LIBS} ${SDL2_LIBRARIES})
|
||||
SET(FTE_ARCH_FILES
|
||||
engine/client/sys_sdl.c
|
||||
engine/client/snd_al.c
|
||||
|
@ -134,7 +160,7 @@ ELSEIF(1) #SDL
|
|||
)
|
||||
|
||||
SET(FTESV_DEFINES FTE_SDL;stricmp=strcasecmp;strnicmp=strncasecmp)
|
||||
SET(FTESV_LIBS z m dl ${SDL2_LIBRARIES})
|
||||
SET(FTESV_LIBS z m ${CMAKE_DL_LIBS} ${SDL2_LIBRARIES})
|
||||
|
||||
IF(WIN32)
|
||||
SET(FTE_LIBS ${FTE_LIBS} wsock32 gdi32 ole32)
|
||||
|
|
Loading…
Reference in a new issue