summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWon-Kyu Park <wkpark@gmail.com>2023-02-27 00:30:55 +0900
committerWon-Kyu Park <wkpark@gmail.com>2023-02-27 00:34:40 +0900
commit7c2fb9216e72302134115c1483d4c3d2b1edd3a1 (patch)
tree9c698b281ed0ce4bcfa6ea40a02158cf5c715634
parent3db276b40c0b82f26d4d013d70d380d8baf173e0 (diff)
downloadlibhangul-7c2fb9216e72302134115c1483d4c3d2b1edd3a1.tar.gz
cmake: check glob.h and add config.h.cmake.in
-rw-r--r--CMakeLists.txt7
-rw-r--r--config.h.cmake.in1
-rw-r--r--configure.ac1
-rw-r--r--hangul/CMakeLists.txt5
4 files changed, 14 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8adbdb8..8aafe38 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -43,6 +43,7 @@ option(ENABLE_UNIT_TEST
include(CTest)
include(GNUInstallDirs)
+include(CheckIncludeFiles)
set(LIBHANGUL_INCLUDE_DIR "${CMAKE_INSTALL_INCLUDEDIR}/hangul-1.0")
set(LIBHANGUL_LIBRARY_DIR "${CMAKE_INSTALL_LIBDIR}")
@@ -56,6 +57,12 @@ if(BUILD_TESTING)
add_subdirectory(test EXCLUDE_FROM_ALL)
endif()
+check_include_files(glob.h HAVE_GLOB_H)
+configure_file(
+ "${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/config.h"
+)
+
include(CMakePackageConfigHelpers)
configure_package_config_file(hangul-config.cmake.in
"${CMAKE_CURRENT_BINARY_DIR}/hangul-config.cmake"
diff --git a/config.h.cmake.in b/config.h.cmake.in
new file mode 100644
index 0000000..6ef3caa
--- /dev/null
+++ b/config.h.cmake.in
@@ -0,0 +1 @@
+#cmakedefine HAVE_GLOB_H 1
diff --git a/configure.ac b/configure.ac
index f1e85b9..65d13b9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -41,6 +41,7 @@ AC_PROG_INSTALL
AC_HEADER_STDC
AC_CHECK_HEADERS([stdlib.h string.h limits.h])
AC_CHECK_HEADERS([langinfo.h])
+AC_CHECK_HEADERS([glob.h])
# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
diff --git a/hangul/CMakeLists.txt b/hangul/CMakeLists.txt
index 93f7fb4..14fde95 100644
--- a/hangul/CMakeLists.txt
+++ b/hangul/CMakeLists.txt
@@ -44,12 +44,17 @@ add_library(hangul
)
target_compile_definitions(hangul
+ PRIVATE -DHAVE_CONFIG_H
PRIVATE -DLOCALEDIR=\"${CMAKE_INSTALL_FULL_LOCALEDIR}\"
PRIVATE -DLIBHANGUL_DEFAULT_HANJA_DIC=\"${CMAKE_INSTALL_FULL_DATADIR}/${CMAKE_PROJECT_NAME}/hanja/hanja.txt\"
PRIVATE -DLIBHANGUL_DATA_DIR=\"${CMAKE_INSTALL_FULL_DATADIR}/${CMAKE_PROJECT_NAME}\"
PRIVATE -DTOP_SRCDIR=\"${CMAKE_SOURCE_DIR}\"
)
+target_include_directories(hangul
+ PRIVATE "${CMAKE_BINARY_DIR}"
+)
+
if(ENABLE_EXTERNAL_KEYBOARDS)
target_compile_definitions(hangul
PRIVATE -DENABLE_EXTERNAL_KEYBOARDS=1