SparrowEngine/CMakeLists.txt
2015-10-09 19:10:16 +02:00

115 lines
2.0 KiB
CMake

project(SparrowEngine)
cmake_minimum_required(VERSION 2.8)
find_package(OpenGL REQUIRED)
if(WIN32)
set(SYSTEM_LIB_PATH "win32")
set(GLEW_LIB_NAME "glew32")
else(WIN32)
set(SYSTEM_LIB_PATH "linux")
set(GLEW_LIB_NAME "GLEW")
endif(WIN32)
set(LIB_SRC_LIST
engine.cpp
scene.cpp
resourcemanager.cpp
cameranode.cpp
)
set(LIBRARY_NAME ${PROJECT_NAME})
set(EXECUTABLE_NAME "test${PROJECT_NAME}")
set(DEPENDENCIES_ROOT ${PROJECT_SOURCE_DIR}/../cpp_dependencies)
set(INCLUDE_ROOT ${DEPENDENCIES_ROOT}/include)
set(LIB_ROOT ${DEPENDENCIES_ROOT}/lib/${SYSTEM_LIB_PATH})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LIB_ROOT}) #for SHARED
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIB_ROOT}) #for STATIC
add_library(${LIBRARY_NAME} STATIC ${LIB_SRC_LIST})
add_executable(${EXECUTABLE_NAME} main.cpp)
add_definitions(-std=c++11)
include_directories(
${INCLUDE_ROOT}
${INCLUDE_ROOT}/bullet
${PROJECT_SOURCE_DIR}/../sparrowinput
${PROJECT_SOURCE_DIR}/../sparrowrenderer
)
find_library(SFML_LIBRARY_WINDOW
NAMES
sfml-window
PATHS
${LIB_ROOT}
)
find_library(SFML_LIBRARY_SYSTEM
NAMES
sfml-system
PATHS
${LIB_ROOT}
)
find_library(SPARROW_RENDERER_LIBRARY
NAMES
SparrowRenderer
PATHS
${LIB_ROOT}
)
find_library(SPARROW_INPUT_LIBRARY
NAMES
SparrowInput
PATHS
${LIB_ROOT}
)
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}
)
find_library(GLEW_LIBRARY
NAMES
${GLEW_LIB_NAME}
PATHS
${LIB_ROOT}
)
target_link_libraries(
${LIBRARY_NAME}
${SFML_LIBRARY_WINDOW}
${SFML_LIBRARY_SYSTEM}
${SPARROW_INPUT_LIBRARY}
${SPARROW_RENDERER_LIBRARY}
${BULLET_COLLISION_LIBRARY}
${BULLET_DYNAMICS_LIBRARY}
${LINEAR_MATH_LIBRARY}
${GLEW_LIBRARY}
${OPENGL_LIBRARIES}
)
target_link_libraries(
${EXECUTABLE_NAME}
${LIBRARY_NAME}
)