aboutsummaryrefslogtreecommitdiff
path: root/third-party/cmake/UnibiliumCMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'third-party/cmake/UnibiliumCMakeLists.txt')
-rw-r--r--third-party/cmake/UnibiliumCMakeLists.txt27
1 files changed, 27 insertions, 0 deletions
diff --git a/third-party/cmake/UnibiliumCMakeLists.txt b/third-party/cmake/UnibiliumCMakeLists.txt
new file mode 100644
index 0000000000..3c419654c4
--- /dev/null
+++ b/third-party/cmake/UnibiliumCMakeLists.txt
@@ -0,0 +1,27 @@
+cmake_minimum_required(VERSION 2.8.7)
+project(unibilium LANGUAGES C)
+
+file(GLOB SRC_FILES ${PROJECT_SOURCE_DIR}/*.c)
+add_library(unibilium ${SRC_FILES})
+set_target_properties(unibilium PROPERTIES PUBLIC_HEADER ${PROJECT_SOURCE_DIR}/unibilium.h
+ VERSION "${VERSION_MAJOR}.${VERSION_MINOR}")
+
+if(NOT WIN32)
+ execute_process(COMMAND "shell ncursesw6-config --terminfo-dirs 2>/dev/null || \
+ ncurses6-config --terminfo-dirs 2>/dev/null || \
+ ncursesw5-config --terminfo-dirs 2>/dev/null || \
+ ncurses5-config --terminfo-dirs 2>/dev/null || \
+ echo '/etc/terminfo:/lib/terminfo:/usr/share/terminfo:/usr/lib/terminfo:/usr/local/share/terminfo:/usr/local/lib/terminfo'"
+ OUTPUT_VARIABLE TERMINFO_DIRS)
+endif()
+target_compile_definitions(unibilium PUBLIC TERMINFO_DIRS ${TERMINFO_DIRS})
+
+if(MSVC)
+ target_include_directories(unibilium PUBLIC ${PROJECT_SOURCE_DIR}/msvc-compat)
+endif()
+
+include(GNUInstallDirs)
+install(TARGETS unibilium
+ PUBLIC_HEADER
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})