build: various build improvements

- remove "ran-" prefix from touch files as it's redundant since the
  they're already in the directory named `touches`.
- Include `contrib` when formatting with `make formatlua`.
- Use TARGET_FILE generator expression instead of assuming the
  executable location.
- reuse logic that determines whether to use lua or luajit.
- add translations to the `nvim` target.

Makefile improvements:
- rename variable `CMAKE_PRG` to `CMAKE` to make it more consistent with
  the builtin `MAKE` variable.
- stop propagating flags to generator. Users should use cmake for
  non-standard use cases.
- remove `+` prefix from targets. If the user for whatever reason wants
  to dry-run a target then they should be able to.
This commit is contained in:
dundargoc
2024-01-01 13:08:56 +01:00
committed by dundargoc
parent 32849d5667
commit ae3eed53d6
10 changed files with 53 additions and 73 deletions

View File

@@ -3,12 +3,12 @@ add_library(main_lib INTERFACE)
# Internally we need to make a distinction between "nvim without runtime files"
# (nvim_bin) and "nvim with runtime files" (nvim).
add_executable(nvim_bin EXCLUDE_FROM_ALL)
set_target_properties(nvim_bin PROPERTIES OUTPUT_NAME nvim)
set_target_properties(nvim_bin
PROPERTIES
EXPORT_COMPILE_COMMANDS ON
ENABLE_EXPORTS TRUE)
ENABLE_EXPORTS TRUE
OUTPUT_NAME nvim)
#-------------------------------------------------------------------------------
# Dependencies

View File

@@ -182,6 +182,7 @@ if(HAVE_WORKING_LIBINTL AND GETTEXT_FOUND AND XGETTEXT_PRG AND ICONV_PRG)
BuildMo(${LANGUAGE})
endforeach()
add_custom_target(nvim_translations ALL DEPENDS ${LANGUAGE_MO_FILES})
add_custom_target(nvim_translations DEPENDS ${LANGUAGE_MO_FILES})
add_custom_target(update-po DEPENDS ${UPDATE_PO_TARGETS})
add_dependencies(nvim nvim_translations)
endif()