first commit
This commit is contained in:
commit
96746c5f7c
6
.gitignore
vendored
Normal file
6
.gitignore
vendored
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
Modules/*
|
||||||
|
test/CMakeFiles/*
|
||||||
|
cmake_install.cmake
|
||||||
|
Makefile
|
||||||
|
CMakeCache.txt
|
||||||
|
|
123
template.cmake
Normal file
123
template.cmake
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
#detect system
|
||||||
|
|
||||||
|
if(${CMAKE_DEBUG_TYPE} MATCHES "Debug")
|
||||||
|
set(LIB_FOLDER "libDebug")
|
||||||
|
else()
|
||||||
|
set(LIB_FOLDER "libRelease")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(WIN32)
|
||||||
|
set(LIB_FOLDER ${LIB_FOLDER}/win32)
|
||||||
|
elseif(UNIX)
|
||||||
|
if(${CMAKE_SYSTEM_VERSION} MATCHES "i686")
|
||||||
|
set(LIB_FOLDER ${LIB_FOLDER}/i686)
|
||||||
|
elseif(${CMAKE_SYSTEM_VERSION} MATCHES "x86_64")
|
||||||
|
set(LIB_FOLDER ${LIB_FOLDER}/x86_64)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#set dependencies paths
|
||||||
|
set(DEPENDENCIES_ROOT ${PROJECT_SOURCE_DIR}/../cpp_dependencies)
|
||||||
|
set(INCLUDE_ROOT ${DEPENDENCIES_ROOT}/include)
|
||||||
|
set(LIB_ROOT ${DEPENDENCIES_ROOT}/${LIB_FOLDER})
|
||||||
|
|
||||||
|
message(${LIB_ROOT})
|
||||||
|
|
||||||
|
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LIB_ROOT}) #for SHARED
|
||||||
|
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIB_ROOT}) #for STATIC
|
||||||
|
|
||||||
|
#create library and executable
|
||||||
|
if(IS_LIBRARY)
|
||||||
|
set(LIBRARY_NAME ${PROJECT_NAME})
|
||||||
|
set(EXECUTABLE_NAME "test${PROJECT_NAME}")
|
||||||
|
add_library(${LIBRARY_NAME} STATIC ${LIB_SRC_LIST})
|
||||||
|
else()
|
||||||
|
set(EXECUTABLE_NAME "${PROJECT_NAME}")
|
||||||
|
endif()
|
||||||
|
add_executable(${EXECUTABLE_NAME} ${EXEC_SRC_LIST})
|
||||||
|
|
||||||
|
add_definitions(-std=c++11)
|
||||||
|
|
||||||
|
include_directories(
|
||||||
|
${INCLUDE_ROOT}
|
||||||
|
)
|
||||||
|
|
||||||
|
#find libraries
|
||||||
|
set(DEP_LIST "")
|
||||||
|
|
||||||
|
if(USE_SFML)
|
||||||
|
find_library(SFML_LIBRARY_WINDOW
|
||||||
|
NAMES
|
||||||
|
sfml-window
|
||||||
|
PATHS
|
||||||
|
${LIB_ROOT}
|
||||||
|
)
|
||||||
|
|
||||||
|
find_library(SFML_LIBRARY_SYSTEM
|
||||||
|
NAMES
|
||||||
|
sfml-system
|
||||||
|
PATHS
|
||||||
|
${LIB_ROOT}
|
||||||
|
)
|
||||||
|
LIST(APPEND DEP_LIST SFML_LIBRARY_WINDOW SFML_LIBRARY_SYSTEM)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(USE_RENDERER)
|
||||||
|
find_library(SPARROW_RENDERER_LIBRARY
|
||||||
|
NAMES
|
||||||
|
sparrowrenderer
|
||||||
|
PATHS
|
||||||
|
${LIB_ROOT}
|
||||||
|
)
|
||||||
|
LIST(APPEND DEP_LIST SPARROW_RENDERER_LIBRARY)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(USE_INPUT)
|
||||||
|
find_library(SPARROW_INPUT_LIBRARY
|
||||||
|
NAMES
|
||||||
|
SparrowInput
|
||||||
|
PATHS
|
||||||
|
${LIB_ROOT}
|
||||||
|
)
|
||||||
|
LIST(APPEND DEP_LIST SPARROW_INPUT_LIBRARY)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(USE_BULLET)
|
||||||
|
find_library(BULLET_COLLISION_LIBRARY
|
||||||
|
NAMES
|
||||||
|
BulletCollision
|
||||||
|
PATHS
|
||||||
|
${LIB_ROOT}
|
||||||
|
)
|
||||||
|
|
||||||
|
find_library(BULLET_DYNAMICS_LIBRARY
|
||||||
|
NAMES
|
||||||
|
BulletDynamics
|
||||||
|
PATHS
|
||||||
|
${LIB_ROOT}
|
||||||
|
)
|
||||||
|
|
||||||
|
find_library(LINEAR_MATH_LIBRARY
|
||||||
|
NAMES
|
||||||
|
LinearMath
|
||||||
|
PATHS
|
||||||
|
${LIB_ROOT}
|
||||||
|
)
|
||||||
|
LIST(APPEND DEP_LIST BULLET_COLLISION_LIBRARY BULLET_DYNAMICS_LIBRARY LINEAR_MATH_LIBRARY)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(IS_LIBRARY)
|
||||||
|
target_link_libraries(
|
||||||
|
${LIBRARY_NAME}
|
||||||
|
${DEP_LIST}
|
||||||
|
|
||||||
|
target_link_libraries(
|
||||||
|
${EXECUTABLE_NAME}
|
||||||
|
${LIBRARY_NAME}
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
target_link_libraries(
|
||||||
|
${EXECUTABLE_NAME}
|
||||||
|
${DEP_LIST}
|
||||||
|
)
|
||||||
|
endif()
|
3
test/CMakeLists.txt
Normal file
3
test/CMakeLists.txt
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.0)
|
||||||
|
|
||||||
|
include(test.cmake)
|
34
test/test.cmake
Normal file
34
test/test.cmake
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
if(WIN32)
|
||||||
|
set(LIB_DEBUG_FOLDER "libDebug/win32")
|
||||||
|
set(LIB_RELEASE_FOLDER "libRelease/win32")
|
||||||
|
elseif(UNIX)
|
||||||
|
if(${CMAKE_SYSTEM_VERSION} MATCHES "i686")
|
||||||
|
set(LIB_DEBUG_FOLDER "libDebug/i686")
|
||||||
|
set(LIB_RELEASE_FOLDER "libRelease/i686")
|
||||||
|
elseif(${CMAKE_SYSTEM_VERSION} MATCHES "x86_64")
|
||||||
|
set(LIB_DEBUG_FOLDER "libDebug/x86_64")
|
||||||
|
set(LIB_RELEASE_FOLDER "libRelease/x86_64")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
#set dependencies paths
|
||||||
|
set(DEPENDENCIES_ROOT ${PROJECT_SOURCE_DIR}/../cpp_dependencies)
|
||||||
|
set(INCLUDE_ROOT ${DEPENDENCIES_ROOT}/include)
|
||||||
|
|
||||||
|
|
||||||
|
if(${CMAKE_DEBUG_TYPE} MATCHES "Debug")
|
||||||
|
list(APPEND LIB_PATHS ${DEPENDENCIES_ROOT}/${LIB_DEBUG_FOLDER})
|
||||||
|
list(APPEND LIB_PATHS "\n" ${DEPENDENCIES_ROOT}/${LIB_RELEASE_FOLDER})
|
||||||
|
else()
|
||||||
|
list(APPEND LIB_PATHS ${DEPENDENCIES_ROOT}/${LIB_RELEASE_FOLDER})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
find_library(SFML_LIBRARY_WINDOW
|
||||||
|
NAMES
|
||||||
|
sfml-window
|
||||||
|
PATHS
|
||||||
|
${LIB_PATHS}
|
||||||
|
)
|
||||||
|
|
||||||
|
message(${SFML_LIBRARY_WINDOW})
|
Loading…
x
Reference in New Issue
Block a user