You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

438 lines
14 KiB

  1. # -*- indent-tabs-mode: nil -*-
  2. #
  3. # Copyright(C) 2012-2015 Kouhei Sutou <kou@clear-code.com>
  4. # Copyright(C) 2013 Kentoku SHIBA
  5. #
  6. # This library is free software; you can redistribute it and/or
  7. # modify it under the terms of the GNU Lesser General Public
  8. # License as published by the Free Software Foundation; either
  9. # version 2.1 of the License, or (at your option) any later version.
  10. #
  11. # This library is distributed in the hope that it will be useful,
  12. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  14. # Lesser General Public License for more details.
  15. #
  16. # You should have received a copy of the GNU Lesser General Public
  17. # License along with this library; if not, write to the Free Software
  18. # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA
  19. project(mroonga)
  20. if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}")
  21. set(MRN_BUNDLED FALSE)
  22. else()
  23. set(MRN_BUNDLED TRUE)
  24. endif()
  25. include(TestBigEndian)
  26. test_big_endian(BIG_ENDIAN)
  27. if(BIG_ENDIAN)
  28. set(MRN_BIG_ENDIAN_NOT_SUPPORTED_MESSAGE
  29. "Mroonga doesn't support on big-endian")
  30. if(MRN_BUNDLED)
  31. message(STATUS ${MRN_BIG_ENDIAN_NOT_SUPPORTED_MESSAGE})
  32. return()
  33. else()
  34. message(FATAL_ERROR ${MRN_BIG_ENDIAN_NOT_SUPPORTED_MESSAGE})
  35. endif()
  36. endif()
  37. if(MSVC)
  38. if(MSVC_VERSION LESS 1800)
  39. set(MRN_OLD_MSVC_MESSAGE "Mroonga supports only MSVC 2013 or later")
  40. if(MRN_BUNDLED)
  41. message(STATUS ${MRN_OLD_MSVC_MESSAGE})
  42. return()
  43. else()
  44. message(FATAL_ERROR ${MRN_OLD_MSVC_MESSAGE})
  45. endif()
  46. endif()
  47. endif()
  48. if(MRN_BUNDLED)
  49. if(WITHOUT_MROONGA OR
  50. WITHOUT_MROONGA_STORAGE_ENGINE OR
  51. "${PLUGIN_MROONGA}" STREQUAL "NO")
  52. return()
  53. endif()
  54. if(WITHOUT_DYNAMIC_PLUGINS)
  55. if(NOT (PLUGIN_MROONGA STREQUAL STATIC))
  56. return()
  57. endif()
  58. endif()
  59. endif()
  60. set(MRN_BUNDLED_GROONGA_RELATIVE_DIR "vendor/groonga")
  61. set(MRN_BUNDLED_GROONGA_DIR
  62. "${CMAKE_CURRENT_SOURCE_DIR}/${MRN_BUNDLED_GROONGA_RELATIVE_DIR}")
  63. if(EXISTS "${MRN_BUNDLED_GROONGA_DIR}")
  64. set(MRN_GROONGA_BUNDLED TRUE)
  65. if(MSVC)
  66. # Bundled Mroonga does not support MSVC yet
  67. return()
  68. endif()
  69. else()
  70. set(MRN_GROONGA_BUNDLED FALSE)
  71. endif()
  72. set(MRN_PLUGIN_SUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX})
  73. if(MRN_BUNDLED)
  74. set(MRN_SOURCE_DIR ${CMAKE_SOURCE_DIR}/storage/mroonga)
  75. else()
  76. set(MRN_SOURCE_DIR ${CMAKE_SOURCE_DIR})
  77. endif()
  78. file(READ ${MRN_SOURCE_DIR}/version_full MRN_VERSION)
  79. file(READ ${MRN_SOURCE_DIR}/version_major MRN_VERSION_MAJOR)
  80. file(READ ${MRN_SOURCE_DIR}/version_minor MRN_VERSION_MINOR)
  81. file(READ ${MRN_SOURCE_DIR}/version_micro MRN_VERSION_MICRO)
  82. file(READ ${MRN_SOURCE_DIR}/version_in_hex MRN_VERSION_IN_HEX)
  83. file(READ ${MRN_SOURCE_DIR}/plugin_version MRN_PLUGIN_VERSION)
  84. if(MRN_GROONGA_BUNDLED)
  85. option(MRN_GROONGA_EMBED
  86. "Embed libgroonga"
  87. ON)
  88. if(MRN_GROONGA_EMBED)
  89. set(GRN_EMBED ON)
  90. endif()
  91. set(MRN_BUNDLED_GROONGA_NORMALIZER_MYSQL_DIR
  92. "${MRN_BUNDLED_GROONGA_DIR}/vendor/plugins/groonga-normalizer-mysql")
  93. option(MRN_GROONGA_NORMALIZER_MYSQL_EMBED
  94. "Embed groonga-normalizer-mysql Groonga plugin"
  95. ON)
  96. if(EXISTS ${MRN_BUNDLED_GROONGA_NORMALIZER_MYSQL_DIR})
  97. set(GROONGA_NORMALIZER_MYSQL_FOUND ON)
  98. else()
  99. set(GROONGA_NORMALIZER_MYSQL_FOUND OFF)
  100. set(MRN_GROONGA_NORMALIZER_MYSQL_EMBED OFF)
  101. endif()
  102. if(MRN_GROONGA_NORMALIZER_MYSQL_EMBED)
  103. set(GROONGA_NORMALIZER_MYSQL_EMBED ON)
  104. endif()
  105. set(GRN_WITH_LZ4 "yes")
  106. set(LIBLZ4_FOUND TRUE)
  107. set(LZ4_LIBS "" CACHE STRING "" FORCE)
  108. add_subdirectory("${MRN_BUNDLED_GROONGA_RELATIVE_DIR}")
  109. else()
  110. set(MRN_GROONGA_EMBED OFF)
  111. file(READ ${MRN_SOURCE_DIR}/required_groonga_version REQUIRED_GROONGA_VERSION)
  112. string(STRIP "${REQUIRED_GROONGA_VERSION}" REQUIRED_GROONGA_VERSION)
  113. file(READ
  114. ${MRN_SOURCE_DIR}/required_groonga_normalizer_mysql_version
  115. REQUIRED_GROONGA_NORMALIZER_MYSQL_VERSION)
  116. string(STRIP
  117. "${REQUIRED_GROONGA_NORMALIZER_MYSQL_VERSION}"
  118. REQUIRED_GROONGA_NORMALIZER_MYSQL_VERSION)
  119. endif()
  120. set(MRN_PACKAGE_STRING "${PROJECT_NAME} ${MRN_VERSION}")
  121. include(CheckCCompilerFlag)
  122. include(CheckCXXCompilerFlag)
  123. include(${MRN_SOURCE_DIR}/build/cmake_modules/ReadFileList.cmake)
  124. set(MRN_C_COMPILE_FLAGS "")
  125. set(MRN_CXX_COMPILE_FLAGS "")
  126. if(MRN_BUNDLED)
  127. set(MRN_RELATIVE_DIR_PREFIX "${MRN_SOURCE_DIR}/")
  128. else()
  129. set(MRN_RELATIVE_DIR_PREFIX "")
  130. endif()
  131. read_file_list(${CMAKE_CURRENT_SOURCE_DIR}/sources.am MRN_SOURCES)
  132. read_file_list(${CMAKE_CURRENT_SOURCE_DIR}/lib/libmrn_no_mysql_sources.am
  133. LIBMRN_NO_MYSQL_SOURCES)
  134. string(REGEX REPLACE "([^;]+)" "${MRN_RELATIVE_DIR_PREFIX}lib/\\1"
  135. LIBMRN_NO_MYSQL_SOURCES "${LIBMRN_NO_MYSQL_SOURCES}")
  136. read_file_list(${CMAKE_CURRENT_SOURCE_DIR}/lib/libmrn_need_mysql_sources.am
  137. LIBMRN_NEED_MYSQL_SOURCES)
  138. string(REGEX REPLACE "([^;]+)" "${MRN_RELATIVE_DIR_PREFIX}lib/\\1"
  139. LIBMRN_NEED_MYSQL_SOURCES "${LIBMRN_NEED_MYSQL_SOURCES}")
  140. read_file_list(${CMAKE_CURRENT_SOURCE_DIR}/udf/sources.am MRN_UDF_SOURCES)
  141. string(REGEX REPLACE "([^;]+)" "${MRN_RELATIVE_DIR_PREFIX}udf/\\1"
  142. MRN_UDF_SOURCES "${MRN_UDF_SOURCES}")
  143. if(MRN_BUNDLED)
  144. set(MYSQL_SOURCE_DIR ${CMAKE_SOURCE_DIR})
  145. set(MYSQL_BUILD_DIR ${MYSQL_SOURCE_DIR})
  146. set(MYSQL_CONFIG ${CMAKE_SOURCE_DIR}/scripts/mysql_config)
  147. else()
  148. set(MYSQL_SOURCE_DIR "/PATH/TO/MYSQL/SOURCE/DIRECTORY/"
  149. CACHE PATH "MySQL source directory")
  150. if(NOT EXISTS ${MYSQL_SOURCE_DIR})
  151. message(FATAL_ERROR
  152. "MySQL source directory (MYSQL_SOURCE_DIR) doesn't exist: <${MYSQL_SOURCE_DIR}>")
  153. endif()
  154. set(MYSQL_BUILD_DIR ${MYSQL_SOURCE_DIR} CACHE PATH "MySQL build directory")
  155. set(MYSQL_CONFIG "mysql_config" CACHE PATH "mysql-config command path")
  156. endif()
  157. find_path(MYSQL_CONFIG "${MYSQL_CONFIG}")
  158. if(EXISTS "${MYSQL_SOURCE_DIR}/storage/maria")
  159. set(MYSQL_VARIANT "MariaDB")
  160. else()
  161. set(MYSQL_VARIANT "MySQL")
  162. endif()
  163. set(MYSQL_REGEX_INCLUDE_DIR "${MYSQL_SOURCE_DIR}/regex")
  164. if(EXISTS "${MYSQL_SOURCE_DIR}/extra/rapidjson")
  165. set(MYSQL_RAPIDJSON_INCLUDE_DIR "${MYSQL_SOURCE_DIR}/extra/rapidjson/include")
  166. else()
  167. set(MYSQL_RAPIDJSON_INCLUDE_DIR)
  168. endif()
  169. if(EXISTS "${MYSQL_SOURCE_DIR}/libbinlogevents")
  170. set(MYSQL_LIBBINLOGEVENTS_EXPORT_DIR
  171. "${MYSQL_SOURCE_DIR}/libbinlogevents/export")
  172. set(MYSQL_LIBBINLOGEVENTS_INCLUDE_DIR
  173. "${MYSQL_BUILD_DIR}/libbinlogevents/include"
  174. "${MYSQL_SOURCE_DIR}/libbinlogevents/include")
  175. else()
  176. set(MYSQL_LIBBINLOGEVENTS_EXPORT_DIR)
  177. set(MYSQL_LIBBINLOGEVENTS_INCLUDE_DIR)
  178. endif()
  179. set(MYSQL_INCLUDE_DIRS
  180. "${MYSQL_BUILD_DIR}/include"
  181. "${MYSQL_SOURCE_DIR}/sql"
  182. "${MYSQL_SOURCE_DIR}/include"
  183. "${MYSQL_REGEX_INCLUDE_DIR}"
  184. "${MYSQL_RAPIDJSON_INCLUDE_DIR}"
  185. "${MYSQL_LIBBINLOGEVENTS_EXPORT_DIR}"
  186. "${MYSQL_LIBBINLOGEVENTS_INCLUDE_DIR}")
  187. if(MRN_BUNDLED)
  188. set(MYSQL_PLUGIN_DIR "${INSTALL_PLUGINDIR}")
  189. set(MYSQL_SERVICES_LIB_DIR "${MYSQL_BUILD_DIR}/libservices")
  190. set(MYSQL_CFLAGS "${CMAKE_C_FLAGS}")
  191. set(MYSQL_VERSION "${MYSQL_BASE_VERSION}")
  192. else()
  193. macro(SET_MYSQL_CONFIG_VALUE OPTION VARIABLE)
  194. if(NOT ${VARIABLE})
  195. execute_process(COMMAND "${MYSQL_CONFIG}" ${OPTION}
  196. OUTPUT_VARIABLE MYSQL_CONFIG_OUTPUT)
  197. string(STRIP ${MYSQL_CONFIG_OUTPUT} ${VARIABLE})
  198. endif()
  199. endmacro()
  200. set_mysql_config_value("--plugindir" MYSQL_PLUGIN_DIR)
  201. set_mysql_config_value("--variable=pkglibdir" MYSQL_PKG_LIB_DIR)
  202. set(MYSQL_BUILD_LIBSERVICES_DIR "${MYSQL_BUILD_DIR}/libservices")
  203. if(EXISTS "${MYSQL_BUILD_LIBSERVICES_DIR}/libmysqlservices.a")
  204. set(MYSQL_SERVICES_LIB_DIR "${MYSQL_BUILD_LIBSERVICES_DIR}")
  205. else()
  206. set(MYSQL_SERVICES_LIB_DIR "${MYSQL_PKG_LIB_DIR}")
  207. endif()
  208. set_mysql_config_value("--cflags" MYSQL_CFLAGS)
  209. set_mysql_config_value("--version" MYSQL_VERSION)
  210. endif()
  211. if(${MYSQL_VERSION} VERSION_LESS "5.5.0")
  212. message(FATAL_ERROR
  213. "Mroonga doesn't support MySQL < 5.5.0: <${MYSQL_VERSION}>")
  214. return()
  215. endif()
  216. if(${MYSQL_VERSION} VERSION_GREATER "10.0.0" AND
  217. ${MYSQL_VERSION} VERSION_LESS "10.0.9")
  218. message(FATAL_ERROR
  219. "Mroonga doesn't support MariaDB 10.0.0-10.0.8: <${MYSQL_VERSION}>")
  220. return()
  221. endif()
  222. if(MRN_GROONGA_BUNDLED)
  223. set(GROONGA_INCLUDE_DIRS "${MRN_BUNDLED_GROONGA_DIR}/include")
  224. set(GROONGA_LIBRARY_DIRS "${MRN_BUNDLED_GROONGA_DIR}/lib")
  225. set(GROONGA_LIBRARIES "libgroonga")
  226. set(MRN_LIBRARY_DIRS ${GROONGA_LIBRARY_DIRS})
  227. set(MRN_LIBRARIES ${GROONGA_LIBRARIES})
  228. if(MRN_GROONGA_NORMALIZER_MYSQL_EMBED)
  229. set(MRN_LIBRARY_DIRS
  230. ${MRN_LIBRARY_DIRS}
  231. "${MRN_BUNDLED_GROONGA_NORMALIZER_MYSQL_DIR}/normalizers")
  232. set(MRN_LIBRARIES ${MRN_LIBRARIES} mysql_normalizer)
  233. endif()
  234. else()
  235. include(FindPkgConfig)
  236. pkg_check_modules(GROONGA REQUIRED "groonga >= ${REQUIRED_GROONGA_VERSION}")
  237. pkg_check_modules(GROONGA_NORMALIZER_MYSQL
  238. "groonga-normalizer-mysql >= ${REQUIRED_GROONGA_NORMALIZER_MYSQL_VERSION}")
  239. set(MRN_LIBRARY_DIRS
  240. ${MRN_LIBRARY_DIRS}
  241. ${GROONGA_LIBRARY_DIRS})
  242. set(MRN_LIBRARIES ${GROONGA_LIBRARIES})
  243. endif()
  244. include_directories(
  245. "${PROJECT_BINARY_DIR}"
  246. "${PROJECT_SOURCE_DIR}"
  247. "${PROJECT_SOURCE_DIR}/lib"
  248. ${MYSQL_INCLUDE_DIRS}
  249. ${GROONGA_INCLUDE_DIRS})
  250. if(WIN32)
  251. set(MYSQL_LIBRARY_DIRS
  252. "${MYSQL_BUILD_DIR}/lib"
  253. "${MYSQL_BUILD_DIR}/libmysqld")
  254. else()
  255. set(MYSQL_LIBRARY_DIRS
  256. "${MYSQL_SERVICES_LIB_DIR}")
  257. endif()
  258. link_directories(
  259. ${MRN_LIBRARY_DIRS}
  260. ${MYSQL_LIBRARY_DIRS})
  261. set(MRN_ALL_SOURCES
  262. ${MRN_SOURCES}
  263. ${MRN_UDF_SOURCES}
  264. ${LIBMRN_NO_MYSQL_SOURCES}
  265. ${LIBMRN_NEED_MYSQL_SOURCES})
  266. if(MRN_BUNDLED)
  267. mysql_add_plugin(mroonga
  268. ${MRN_ALL_SOURCES}
  269. STORAGE_ENGINE MODULE_ONLY
  270. LINK_LIBRARIES ${MRN_LIBRARIES})
  271. if(NOT TARGET mroonga)
  272. return()
  273. endif()
  274. else()
  275. add_library(mroonga MODULE ${MRN_ALL_SOURCES})
  276. set(MYSQL_LIBRARIES "mysqlservices")
  277. target_link_libraries(mroonga ${GROONGA_LIBRARIES} ${MYSQL_LIBRARIES})
  278. option(WITH_DEBUG "Enable debug options" OFF)
  279. if(WITH_DEBUG)
  280. set_property(TARGET mroonga APPEND PROPERTY
  281. COMPILE_DEFINITIONS "SAFE_MUTEX")
  282. if(CMAKE_COMPILER_IS_GNUCXX)
  283. set(MRN_C_COMPILE_FLAGS "${MRN_C_COMPILE_FLAGS} -g3 -O0")
  284. set(MRN_CXX_COMPILE_FLAGS "${MRN_CXX_COMPILE_FLAGS} -g3 -O0")
  285. endif()
  286. else()
  287. set_property(TARGET mroonga APPEND PROPERTY
  288. COMPILE_DEFINITIONS "DBUG_OFF")
  289. endif()
  290. option(WITH_DEBUG_FULL "Enable full debug options" OFF)
  291. if(WITH_DEBUG_FULL)
  292. set_property(TARGET mroonga APPEND PROPERTY
  293. COMPILE_DEFINITIONS "SAFE_MUTEX" "SAFEMALLOC")
  294. endif()
  295. option(DISABLE_FAST_MUTEXES "Force disabling fast mutex" OFF)
  296. if(DISABLE_FAST_MUTEXES)
  297. set_property(TARGET mroonga APPEND PROPERTY
  298. COMPILE_DEFINITIONS "FORCE_FAST_MUTEX_DISABLED=1")
  299. endif()
  300. option(WITH_FAST_MUTEXES "Enable fast mutex" OFF)
  301. if(WITH_FAST_MUTEXES)
  302. set_property(TARGET mroonga APPEND PROPERTY
  303. COMPILE_DEFINITIONS "MY_PTHREAD_FASTMUTEX")
  304. endif()
  305. if(CMAKE_COMPILER_IS_GNUCXX)
  306. MY_CHECK_AND_SET_COMPILER_FLAG("-Wall")
  307. MY_CHECK_AND_SET_COMPILER_FLAG("-Wextra")
  308. MY_CHECK_AND_SET_COMPILER_FLAG("-Wno-unused-parameter")
  309. MY_CHECK_AND_SET_COMPILER_FLAG("-Wno-strict-aliasing")
  310. MY_CHECK_AND_SET_COMPILER_FLAG("-Wno-deprecated")
  311. MY_CHECK_AND_SET_COMPILER_FLAG("-fno-exceptions")
  312. MY_CHECK_AND_SET_COMPILER_FLAG("-felide-constructors")
  313. MY_CHECK_AND_SET_COMPILER_FLAG("-Wno-implicit-fallthrough")
  314. endif()
  315. set_source_files_properties(${MRN_SOURCES} PROPERTIES
  316. COMPILE_FLAGS "${MYSQL_CFLAGS} ${MRN_CXX_COMPILE_FLAGS}")
  317. set_source_files_properties(${LIBMRN_NEED_MYSQL_SOURCES} PROPERTIES
  318. COMPILE_FLAGS "${MYSQL_CFLAGS} ${MRN_CXX_COMPILE_FLAGS}")
  319. set_source_files_properties(${MRN_UDF_SOURCES} PROPERTIES
  320. COMPILE_FLAGS "${MRN_CXX_COMPILE_FLAGS}")
  321. set_source_files_properties(${LIBMRN_NO_MYSQL_SOURCES} PROPERTIES
  322. COMPILE_FLAGS "${MRN_CXX_COMPILE_FLAGS}")
  323. set_property(TARGET mroonga APPEND PROPERTY
  324. COMPILE_DEFINITIONS "MYSQL_DYNAMIC_PLUGIN")
  325. set_target_properties(mroonga PROPERTIES
  326. PREFIX ""
  327. OUTPUT_NAME "ha_mroonga")
  328. install(TARGETS mroonga DESTINATION "${MYSQL_PLUGIN_DIR}")
  329. endif()
  330. option(MRN_BUILD_FOR_EMBEDDED_SERVER
  331. "Whether to build Mroonga for embedded server or not. You can't use Mroonga built for embedded server with non embedded server."
  332. OFF)
  333. if(MRN_BUILD_FOR_EMBEDDED_SERVER)
  334. set_property(TARGET mroonga APPEND PROPERTY
  335. COMPILE_DEFINITIONS "EMBEDDED_LIBRARY")
  336. endif()
  337. if(GROONGA_NORMALIZER_MYSQL_FOUND)
  338. set_property(TARGET mroonga APPEND PROPERTY
  339. COMPILE_DEFINITIONS "WITH_GROONGA_NORMALIZER_MYSQL=1")
  340. if(MRN_GROONGA_NORMALIZER_MYSQL_EMBED)
  341. set_property(TARGET mroonga APPEND PROPERTY
  342. COMPILE_DEFINITIONS "MRN_GROONGA_NORMALIZER_MYSQL_EMBEDDED")
  343. else()
  344. set_property(TARGET mroonga APPEND PROPERTY
  345. COMPILE_DEFINITIONS "GROONGA_NORMALIZER_MYSQL_PLUGIN_NAME=\"normalizers/mysql\"")
  346. endif()
  347. endif()
  348. if(MRN_GROONGA_EMBED)
  349. set_property(TARGET mroonga APPEND PROPERTY
  350. COMPILE_DEFINITIONS "MRN_GROONGA_EMBEDDED")
  351. endif()
  352. set(MRN_DEFAULT_PARSER "" CACHE STRING
  353. "The default fulltext parser (Deprecated. Use MRN_DEFAULT_TOKENIZER instead.)")
  354. set(MRN_DEFAULT_TOKENIZER "" CACHE STRING
  355. "The default tokenizer for fulltext index")
  356. if(NOT ${MRN_DEFAULT_TOKENIZER} STREQUAL "")
  357. set_property(TARGET mroonga APPEND PROPERTY
  358. COMPILE_DEFINITIONS "MRN_DEFAULT_TOKENIZER=\"${MRN_DEFAULT_TOKENIZER}\"")
  359. elseif(NOT ${MRN_DEFAULT_PARSER} STREQUAL "")
  360. set_property(TARGET mroonga APPEND PROPERTY
  361. COMPILE_DEFINITIONS "MRN_DEFAULT_TOKENIZER=\"${MRN_DEFAULT_PARSER}\"")
  362. endif()
  363. configure_file(
  364. "${PROJECT_SOURCE_DIR}/mrn_version.h.in"
  365. "${PROJECT_BINARY_DIR}/mrn_version.h")
  366. configure_file(
  367. "${PROJECT_SOURCE_DIR}/config.sh.in"
  368. "${PROJECT_BINARY_DIR}/config.sh")
  369. set(MRN_TEST_SUITE_DIR "${CMAKE_SOURCE_DIR}/mysql-test/suite/mroonga")
  370. if(NOT EXISTS "${MRN_TEST_SUITE_DIR}")
  371. set(MRN_TEST_SUITE_DIR "${PROJECT_SOURCE_DIR}/mysql-test/mroonga")
  372. endif()
  373. configure_file(
  374. "${PROJECT_SOURCE_DIR}/data/install.sql.in"
  375. "${PROJECT_BINARY_DIR}/data/install.sql")
  376. if(MRN_BUNDLED)
  377. set(MRN_DATA_DIR "${INSTALL_MYSQLSHAREDIR}/${PROJECT_NAME}")
  378. else()
  379. set(MRN_DATA_DIR "share/${PROJECT_NAME}")
  380. endif()
  381. install(FILES
  382. "${PROJECT_SOURCE_DIR}/AUTHORS"
  383. "${PROJECT_SOURCE_DIR}/COPYING"
  384. "${PROJECT_BINARY_DIR}/data/install.sql"
  385. "${PROJECT_SOURCE_DIR}/data/uninstall.sql"
  386. DESTINATION "${MRN_DATA_DIR}/")