aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/mecab/CMakeLists.txt
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/mecab/CMakeLists.txt
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/mecab/CMakeLists.txt')
-rw-r--r--vcpkg/ports/mecab/CMakeLists.txt67
1 files changed, 67 insertions, 0 deletions
diff --git a/vcpkg/ports/mecab/CMakeLists.txt b/vcpkg/ports/mecab/CMakeLists.txt
new file mode 100644
index 0000000..9ebf42e
--- /dev/null
+++ b/vcpkg/ports/mecab/CMakeLists.txt
@@ -0,0 +1,67 @@
+cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
+
+PROJECT(mecab VERSION 1.0)
+
+file(GLOB SOURCE_FILE
+ "*.cpp"
+ "*.c"
+)
+file(GLOB HEADERS_FILE
+ "*.h"
+)
+
+message(STATUS "current cmake path: ${CMAKE_CURRENT_SOURCE_DIR}")
+list(REMOVE_ITEM SOURCE_FILE ${CMAKE_CURRENT_SOURCE_DIR}/mecab-cost-train.cpp)
+list(REMOVE_ITEM SOURCE_FILE ${CMAKE_CURRENT_SOURCE_DIR}/mecab-dict-gen.cpp)
+list(REMOVE_ITEM SOURCE_FILE ${CMAKE_CURRENT_SOURCE_DIR}/mecab-dict-index.cpp)
+list(REMOVE_ITEM SOURCE_FILE ${CMAKE_CURRENT_SOURCE_DIR}/mecab-system-eval.cpp)
+list(REMOVE_ITEM SOURCE_FILE ${CMAKE_CURRENT_SOURCE_DIR}/mecab-test-gen.cpp)
+#list(REMOVE_ITEM SOURCE_FILE "mecab-cost-train.cpp" "mecab-dict-gen.cpp" "mecab-dict-index.cpp" "mecab-system-eval.cpp" "mecab-test-gen.cpp")
+
+add_library (mecab ${SOURCE_FILE})
+target_include_directories(mecab PUBLIC
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
+ $<INSTALL_INTERFACE:include>)
+
+if(UNIX)
+ target_compile_definitions(mecab PUBLIC -DHAVE_UNISTD_H -DHAVE_FCNTL_H -DHAVE_STDINT_H -DHAVE_SYS_TYPES_H -DHAVE_SYS_STAT_H -DHAVE_DIRENT_H -DDIC_VERSION=102 -DVERSION="@VERSION@" -DPACKAGE="mecab" -DMECAB_DEFAULT_RC="./mecabrc")
+endif(UNIX)
+if(WIN32)
+ target_compile_definitions(mecab PUBLIC -D_CRT_SECURE_NO_DEPRECATE -DMECAB_USE_THREAD -DDLL_EXPORT -DHAVE_GETENV -DHAVE_WINDOWS_H -DDIC_VERSION=102 -DVERSION="@VERSION@" -DPACKAGE="mecab" -DUNICODE -D_UNICODE -DMECAB_DEFAULT_RC="mecabrc")
+endif(WIN32)
+
+
+include (GNUInstallDirs)
+include(CMakePackageConfigHelpers)
+
+set (mecab_CMAKE_DIR share/mecab CACHE STRING "Installation dir")
+set (targets_export_name mecabTargets CACHE INTERNAL "")
+
+install(TARGETS mecab
+ EXPORT ${targets_export_name}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+)
+
+install(FILES ${HEADERS_FILE} DESTINATION include/mecab CONFIGURATIONS Release)
+
+install(EXPORT ${targets_export_name}
+ NAMESPACE mecab::
+ DESTINATION ${mecab_CMAKE_DIR})
+
+configure_package_config_file(
+ "${PROJECT_SOURCE_DIR}/Config.cmake.in"
+ "${PROJECT_BINARY_DIR}/mecabConfig.cmake"
+ INSTALL_DESTINATION ${mecab_CMAKE_DIR})
+
+
+write_basic_package_version_file(
+ ${PROJECT_BINARY_DIR}/mecabConfigVersion.cmake
+ VERSION ${PROJECT_VERSION}
+ COMPATIBILITY SameMajorVersion )
+
+install(FILES
+ ${PROJECT_BINARY_DIR}/mecabConfig.cmake
+ ${PROJECT_BINARY_DIR}/mecabConfigVersion.cmake
+ DESTINATION ${mecab_CMAKE_DIR})