-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
43 lines (31 loc) · 1.17 KB
/
CMakeLists.txt
File metadata and controls
43 lines (31 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
cmake_minimum_required(VERSION 2.8.9)
project (LuaCxx CXX)
set (LuaCxx_VERSION_MAJOR 1)
set (LuaCxx_VERSION_MINOR 0)
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
include(CheckCXX11Features)
find_package(Lua REQUIRED)
if (DEFINED CXX11_COMPILER_FLAGS)
add_definitions(${CXX11_COMPILER_FLAGS})
endif()
include_directories(${PROJECT_SOURCE_DIR} ${LUA_INCLUDE_DIRECTORY})
add_library(LuaCxx_static STATIC Lua.cc)
target_link_libraries(LuaCxx_static ${LUA_LIBRARY})
add_library(LuaCxx SHARED Lua.cc)
target_link_libraries(LuaCxx ${LUA_LIBRARY})
install(TARGETS LuaCxx_static LuaCxx
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
)
install(FILES "${PROJECT_SOURCE_DIR}/Lua.hh" DESTINATION include)
set (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE")
set (CPACK_PACKAGE_VERSION_MAJOR "${LuaCxx_VERSION_MAJOR}")
set (CPACK_PACKAGE_VERSION_MINOR "${LuaCxx_VERSION_MINOR}")
include (CPack)
include (CTest)
enable_testing()
set (CTEST_PROJECT_NAME "LuaCxx")
add_executable(LuaCxx_test main.cc)
target_link_libraries(LuaCxx_test LuaCxx_static)
add_test(NAME Test WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMAND LuaCxx_test)