summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
blob: 2e023784962182b6fe9eeaac0f0d76433426fe35 (plain)
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
cmake_minimum_required(VERSION 3.2)
project(honeysuckle
  VERSION 1.0.0
  DESCRIPTION "A C library to make writing lua bindings simple")

find_package(Lua51 REQUIRED)
include_directories(${LUA_INCLUDE_DIR})

# build and link the library
add_library(honeysuckle src/honeysuckle.c)
set_target_properties(honeysuckle PROPERTIES CMAKE_C_FLAGS "-Wall -Wextra -Werror -Wfatal-errors -Wpedantic")
target_link_libraries(honeysuckle ${LUA_LIBRARIES})
set_target_properties(honeysuckle PROPERTIES
  VERSION ${PROJECT_VERSION}
  PUBLIC_HEADER src/honeysuckle.h)

# optionally build the tests
add_executable(test EXCLUDE_FROM_ALL src/test.c)
target_link_libraries(test ${LUA_LIBRARIES} honeysuckle)

include(GNUInstallDirs)

install(TARGETS honeysuckle
  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
  PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})