CMake is a special little snowflake ☃

This commit is contained in:
Felix Kaaman 2015-03-03 12:58:49 +01:00
parent 63444dd4d0
commit 7083dbb2c8
4 changed files with 39 additions and 31 deletions

View File

@ -1,5 +1,5 @@
#/CMakeLists.txt
cmake_minimum_required (VERSION 2.8)
cmake_minimum_required (VERSION 2.8.4)
project (iceball)
#set(CMAKE_BINARY_DIR build)
@ -24,11 +24,39 @@ if (WIN32)
if (MSVC)
set_source_files_properties(filename.c PROPERTIES LANGUAGE CXX )
endif (MSVC)
LINK_DIRECTORIES(../winlibs)
include_directories(winlibs/glew)
include_directories(winlibs/lua)
include_directories(winlibs/SDL)
include_directories(winlibs/zlib)
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/winlibs")
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/winlibs/glew")
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/winlibs/lua")
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/winlibs/SDL")
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/winlibs/zlib")
link_directories("${CMAKE_CURRENT_SOURCE_DIR}/winlibs")
endif (WIN32)
# here be sackit
link_directories("${CMAKE_CURRENT_SOURCE_DIR}/xlibinc")
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/xlibinc")
# find the hidden treasures
find_package(ENet REQUIRED)
find_package(PNG REQUIRED)
find_package(SDL REQUIRED)
find_package(zlib REQUIRED)
find_package(Lua REQUIRED)
find_package(GLEW REQUIRED)
find_package(OpenGL REQUIRED)
# include the outcasts
include_directories(
${PNG_INCLUDE_DIRS}
${ENet_INCLUDE_DIRS}
${SACKIT_INCLUDE_DIR}
${ZLIB_INCLUDE_DIRS}
${GLEW_INCLUDE_DIRS}
${SDL_INCLUDE_DIR}
${LUA_INCLUDE_DIR}
)
add_subdirectory(src)

View File

@ -19,6 +19,7 @@ FIND_PATH(ENet_INCLUDE_DIRS enet/enet.h
$ENV{ENETDIR}
/usr/local
/usr
"${CMAKE_CURRENT_SOURCE_DIR}/winlibs"
PATH_SUFFIXES include
)
@ -28,6 +29,7 @@ FIND_LIBRARY(ENet_LIBRARY
$ENV{ENETDIR}
/usr/local
/usr
"${CMAKE_CURRENT_SOURCE_DIR}/winlibs"
PATH_SUFFIXES lib
)

View File

@ -21,6 +21,7 @@ FIND_PATH(LUA_INCLUDE_DIR lua.h
/opt/local
/opt/csw
/opt
"${CMAKE_CURRENT_SOURCE_DIR}/winlibs"
)
FIND_LIBRARY(LUA_LIBRARY
@ -37,6 +38,7 @@ FIND_LIBRARY(LUA_LIBRARY
/opt/local
/opt/csw
/opt
"${CMAKE_CURRENT_SOURCE_DIR}/winlibs"
)
if(LUA_LIBRARY)

View File

@ -10,30 +10,6 @@ set(SOFT_FILES softgm/render.c softgm/render_img.c)
source_group(softgm FILES ${SOFT_FILES})
source_group(lua FILES ${LUA_FILES})
# look for required libraries
find_package(ENet REQUIRED)
find_package(PNG REQUIRED)
find_package(SDL REQUIRED)
find_package(zlib REQUIRED)
find_package(Lua REQUIRED)
find_package(GLEW REQUIRED)
find_package(OpenGL REQUIRED)
# here be sackit
link_directories("${CMAKE_CURRENT_SOURCE_DIR}/../xlibinc")
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/../xlibinc")
# include
include_directories(
${PNG_INCLUDE_DIRS}
${ENet_INCLUDE_DIRS}
${SACKIT_INCLUDE_DIR}
${ZLIB_INCLUDE_DIRS}
${GLEW_INCLUDE_DIRS}
${SDL_INCLUDE_DIR}
${LUA_INCLUDE_DIR}
)
# iceball target
add_executable(iceball ${MAIN_FILES} ${LUA_FILES} ${GL_FILES})
target_link_libraries(iceball ${PNG_LIBRARIES} ${ENet_LIBRARIES} sackit ${LUA_LIBRARIES} ${SDL_LIBRARY} ${OPENGL_LIBRARIES} ${GLEW_LIBRARIES})
@ -41,5 +17,5 @@ set_target_properties(iceball PROPERTIES COMPILE_DEFINITIONS "USE_OPENGL")
# iceball-dedi target
add_executable(iceball-dedi EXCLUDE_FROM_ALL ${MAIN_FILES} ${LUA_FILES})
target_link_libraries(iceball-dedi ${PNG_LIBRARIES} ${ENet_LIBRARIES} ${LUA_LIBRARIES} ${SDL_LIBRARY} ${SDL_LIBRARY})
target_link_libraries(iceball-dedi ${PNG_LIBRARIES} ${ENet_LIBRARIES} ${LUA_LIBRARIES} ${SDL_LIBRARY})
set_target_properties(iceball-dedi PROPERTIES COMPILE_DEFINITIONS "DEDI")