aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordundargoc <33953936+dundargoc@users.noreply.github.com>2022-11-05 22:07:25 +0100
committerGitHub <noreply@github.com>2022-11-05 22:07:25 +0100
commit8765c7e28863b7750cec8b0fb89ce78c18b3af65 (patch)
tree9dad7a5a6662239118fd6cc2ffb2ce2d090a240f
parentd5dd7573f32411746867b935b8db2165d14018ec (diff)
parent45c8679493c628353f6672e940c9ae4fd27dfe84 (diff)
downloadrneovim-8765c7e28863b7750cec8b0fb89ce78c18b3af65.tar.gz
rneovim-8765c7e28863b7750cec8b0fb89ce78c18b3af65.tar.bz2
rneovim-8765c7e28863b7750cec8b0fb89ce78c18b3af65.zip
Merge pull request #20732 from dundargoc/build/default-cmake-args
build: refactor cmake files
-rw-r--r--cmake.deps/cmake/BuildGettext.cmake20
-rw-r--r--cmake.deps/cmake/BuildLibiconv.cmake16
-rw-r--r--cmake.deps/cmake/BuildMsgpack.cmake9
-rw-r--r--cmake.deps/cmake/GettextCMakeLists.txt2
-rw-r--r--cmake.deps/cmake/LibiconvCMakeLists.txt2
-rw-r--r--cmake.deps/cmake/LibvtermCMakeLists.txt2
-rw-r--r--cmake.deps/cmake/TreesitterCMakeLists.txt2
-rw-r--r--cmake.deps/cmake/TreesitterParserCMakeLists.txt2
-rw-r--r--cmake.deps/cmake/UnibiliumCMakeLists.txt2
-rw-r--r--cmake.deps/cmake/libtermkeyCMakeLists.txt2
-rw-r--r--cmake/GenerateVersion.cmake2
11 files changed, 35 insertions, 26 deletions
diff --git a/cmake.deps/cmake/BuildGettext.cmake b/cmake.deps/cmake/BuildGettext.cmake
index aecd5da626..4ba1f46d2e 100644
--- a/cmake.deps/cmake/BuildGettext.cmake
+++ b/cmake.deps/cmake/BuildGettext.cmake
@@ -7,18 +7,16 @@ if(MSVC)
URL_HASH SHA256=${GETTEXT_SHA256}
DOWNLOAD_NO_PROGRESS TRUE
DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/gettext
- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E copy
+ PATCH_COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/cmake/GettextCMakeLists.txt
- ${DEPS_BUILD_DIR}/src/gettext/CMakeLists.txt
- COMMAND ${CMAKE_COMMAND} ${DEPS_BUILD_DIR}/src/gettext
- -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
- ${BUILD_TYPE_STRING}
- -DCMAKE_GENERATOR=${CMAKE_GENERATOR}
- -DCMAKE_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM}
- -DLIBICONV_INCLUDE_DIRS=${DEPS_INSTALL_DIR}/include
- -DLIBICONV_LIBRARIES=${DEPS_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}libcharset${CMAKE_STATIC_LIBRARY_SUFFIX}$<SEMICOLON>${DEPS_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}libiconv${CMAKE_STATIC_LIBRARY_SUFFIX}
- BUILD_COMMAND ${CMAKE_COMMAND} --build . --config $<CONFIG>
- INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config $<CONFIG>)
+ ${DEPS_BUILD_DIR}/src/gettext/CMakeLists.txt
+ CMAKE_ARGS
+ -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
+ ${BUILD_TYPE_STRING}
+ -DCMAKE_GENERATOR=${CMAKE_GENERATOR}
+ -DCMAKE_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM}
+ -DLIBICONV_INCLUDE_DIRS=${DEPS_INSTALL_DIR}/include
+ -DLIBICONV_LIBRARIES=${DEPS_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}libcharset${CMAKE_STATIC_LIBRARY_SUFFIX}$<SEMICOLON>${DEPS_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}libiconv${CMAKE_STATIC_LIBRARY_SUFFIX})
else()
message(FATAL_ERROR "Trying to build gettext in an unsupported system ${CMAKE_SYSTEM_NAME}/${CMAKE_C_COMPILER_ID}")
endif()
diff --git a/cmake.deps/cmake/BuildLibiconv.cmake b/cmake.deps/cmake/BuildLibiconv.cmake
index 26d9b02e77..382aae3df7 100644
--- a/cmake.deps/cmake/BuildLibiconv.cmake
+++ b/cmake.deps/cmake/BuildLibiconv.cmake
@@ -7,16 +7,14 @@ if(MSVC)
URL_HASH SHA256=${LIBICONV_SHA256}
DOWNLOAD_NO_PROGRESS TRUE
DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/libiconv
- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E copy
+ PATCH_COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_CURRENT_SOURCE_DIR}/cmake/LibiconvCMakeLists.txt
- ${DEPS_BUILD_DIR}/src/libiconv/CMakeLists.txt
- COMMAND ${CMAKE_COMMAND} ${DEPS_BUILD_DIR}/src/libiconv
- -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
- ${BUILD_TYPE_STRING}
- -DCMAKE_GENERATOR=${CMAKE_GENERATOR}
- -DCMAKE_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM}
- BUILD_COMMAND ${CMAKE_COMMAND} --build . --config $<CONFIG>
- INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config $<CONFIG>)
+ ${DEPS_BUILD_DIR}/src/libiconv/CMakeLists.txt
+ CMAKE_ARGS
+ -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
+ ${BUILD_TYPE_STRING}
+ -DCMAKE_GENERATOR=${CMAKE_GENERATOR}
+ -DCMAKE_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM})
else()
message(FATAL_ERROR "Trying to build libiconv in an unsupported system ${CMAKE_SYSTEM_NAME}/${CMAKE_C_COMPILER_ID}")
endif()
diff --git a/cmake.deps/cmake/BuildMsgpack.cmake b/cmake.deps/cmake/BuildMsgpack.cmake
index b59d98159d..3197ec45a1 100644
--- a/cmake.deps/cmake/BuildMsgpack.cmake
+++ b/cmake.deps/cmake/BuildMsgpack.cmake
@@ -1,4 +1,4 @@
-set(MSGPACK_CONFIGURE_COMMAND ${CMAKE_COMMAND} ${DEPS_BUILD_DIR}/src/msgpack
+set(MSGPACK_CMAKE_ARGS
-DMSGPACK_BUILD_TESTS=OFF
-DMSGPACK_BUILD_EXAMPLES=OFF
-DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
@@ -8,8 +8,7 @@ set(MSGPACK_CONFIGURE_COMMAND ${CMAKE_COMMAND} ${DEPS_BUILD_DIR}/src/msgpack
-DCMAKE_GENERATOR=${CMAKE_GENERATOR})
if(MSVC)
- # Same as Unix without fPIC
- set(MSGPACK_CONFIGURE_COMMAND ${CMAKE_COMMAND} ${DEPS_BUILD_DIR}/src/msgpack
+ set(MSGPACK_CMAKE_ARGS
-DMSGPACK_BUILD_TESTS=OFF
-DMSGPACK_BUILD_EXAMPLES=OFF
-DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
@@ -29,9 +28,7 @@ ExternalProject_Add(msgpack
URL_HASH SHA256=${MSGPACK_SHA256}
DOWNLOAD_NO_PROGRESS TRUE
DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/msgpack
- CONFIGURE_COMMAND "${MSGPACK_CONFIGURE_COMMAND}"
- BUILD_COMMAND ${CMAKE_COMMAND} --build . --config $<CONFIG>
- INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config $<CONFIG>
+ CMAKE_ARGS "${MSGPACK_CMAKE_ARGS}"
LIST_SEPARATOR |)
list(APPEND THIRD_PARTY_DEPS msgpack)
diff --git a/cmake.deps/cmake/GettextCMakeLists.txt b/cmake.deps/cmake/GettextCMakeLists.txt
index d9f251897d..26f060ec08 100644
--- a/cmake.deps/cmake/GettextCMakeLists.txt
+++ b/cmake.deps/cmake/GettextCMakeLists.txt
@@ -327,3 +327,5 @@ install(TARGETS libintl msgmerge msgfmt xgettext
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+
+# vim: set ft=cmake:
diff --git a/cmake.deps/cmake/LibiconvCMakeLists.txt b/cmake.deps/cmake/LibiconvCMakeLists.txt
index b4ba6b5d7e..f6a23db864 100644
--- a/cmake.deps/cmake/LibiconvCMakeLists.txt
+++ b/cmake.deps/cmake/LibiconvCMakeLists.txt
@@ -95,3 +95,5 @@ install(TARGETS libcharset libiconv iconv
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+
+# vim: set ft=cmake:
diff --git a/cmake.deps/cmake/LibvtermCMakeLists.txt b/cmake.deps/cmake/LibvtermCMakeLists.txt
index d7ec9eacad..079ad28ba0 100644
--- a/cmake.deps/cmake/LibvtermCMakeLists.txt
+++ b/cmake.deps/cmake/LibvtermCMakeLists.txt
@@ -82,3 +82,5 @@ if(Perl_FOUND)
DEPENDS ${header_path} ${perl_header_path})
endforeach()
endif()
+
+# vim: set ft=cmake:
diff --git a/cmake.deps/cmake/TreesitterCMakeLists.txt b/cmake.deps/cmake/TreesitterCMakeLists.txt
index e20b47dd74..69372bd2b0 100644
--- a/cmake.deps/cmake/TreesitterCMakeLists.txt
+++ b/cmake.deps/cmake/TreesitterCMakeLists.txt
@@ -19,3 +19,5 @@ install(FILES
include(GNUInstallDirs)
install(TARGETS tree-sitter
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
+
+# vim: set ft=cmake:
diff --git a/cmake.deps/cmake/TreesitterParserCMakeLists.txt b/cmake.deps/cmake/TreesitterParserCMakeLists.txt
index be07f00a37..44e4ef160f 100644
--- a/cmake.deps/cmake/TreesitterParserCMakeLists.txt
+++ b/cmake.deps/cmake/TreesitterParserCMakeLists.txt
@@ -19,3 +19,5 @@ set_target_properties(
include_directories(src)
install(TARGETS parser LIBRARY DESTINATION lib/nvim/parser)
+
+# vim: set ft=cmake:
diff --git a/cmake.deps/cmake/UnibiliumCMakeLists.txt b/cmake.deps/cmake/UnibiliumCMakeLists.txt
index 9112b416fa..0a5d8481a7 100644
--- a/cmake.deps/cmake/UnibiliumCMakeLists.txt
+++ b/cmake.deps/cmake/UnibiliumCMakeLists.txt
@@ -23,3 +23,5 @@ install(TARGETS unibilium
PUBLIC_HEADER
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+
+# vim: set ft=cmake:
diff --git a/cmake.deps/cmake/libtermkeyCMakeLists.txt b/cmake.deps/cmake/libtermkeyCMakeLists.txt
index 6c02b7549d..b419d38d7b 100644
--- a/cmake.deps/cmake/libtermkeyCMakeLists.txt
+++ b/cmake.deps/cmake/libtermkeyCMakeLists.txt
@@ -32,3 +32,5 @@ foreach(f ${TESTSOURCES})
target_link_libraries("test_${t}" termkey)
add_test("${t}" "test_${t}")
endforeach()
+
+# vim: set ft=cmake:
diff --git a/cmake/GenerateVersion.cmake b/cmake/GenerateVersion.cmake
index d2a711fdf9..7ce6ee430e 100644
--- a/cmake/GenerateVersion.cmake
+++ b/cmake/GenerateVersion.cmake
@@ -16,7 +16,9 @@ endif()
# `git describe` annotates the most recent tagged release; for pre-release
# builds we append that to the dev version.
if(NVIM_VERSION_PRERELEASE)
+ # Extract pre-release info: "v0.8.0-145-g0f9113907" => "145-g0f9113907"
string(REGEX REPLACE "^v[0-9]+.[0-9]+.[0-9]+-" "" NVIM_VERSION_GIT "${GIT_TAG}")
+ # Replace "-" with "+": "145-g0f9113907" => "145+g0f9113907"
string(REGEX REPLACE "^([0-9]+)-([a-z0-9]+)" "\\1+\\2" NVIM_VERSION_GIT "${NVIM_VERSION_GIT}")
set(NVIM_VERSION "${NVIM_VERSION}-${NVIM_VERSION_GIT}")
endif()