diff --git a/doc/devel/make-devel.sh.in b/doc/devel/make-devel.sh.in index 1556cfe4b2..25324da640 100755 --- a/doc/devel/make-devel.sh.in +++ b/doc/devel/make-devel.sh.in @@ -2,6 +2,9 @@ set -euv +root_path=$(cd "$(dirname "${0}")/.." && pwd) +cd "${root_path}" + mkdir -p @builddir@/html (cat Doxyfile; echo PROJECT_NUMBER=@PACKAGE_VERSION@) | doxygen - > @builddir@/html/doxygen.log 2> @builddir@/html/doxygen-error.log diff --git a/doc/devel/meson.build b/doc/devel/meson.build index 639c29b5f3..d7e6bdfff8 100644 --- a/doc/devel/meson.build +++ b/doc/devel/meson.build @@ -12,4 +12,4 @@ make_devel = configure_file( output: 'make-devel.sh', configuration: make_devel_conf_data, ) -run_target('devel', command: [CD_AND_RUN, current_source_dir, make_devel]) +run_target('devel', command: make_devel) diff --git a/meson.build b/meson.build index a3dee9b030..c8e6771416 100644 --- a/meson.build +++ b/meson.build @@ -48,13 +48,14 @@ SBINDIR = get_option('sbindir') SYSCONFDIR = get_option('sysconfdir') DATABASE_SCRIPTS_DIR = TOP_BUILD_DIR / 'src/share/database/scripts' -DHCP_DATA_DIR = LOCALSTATEDIR / 'run/kea' DEFAULT_HOOKS_PATH = PREFIX / LIBDIR / 'kea/hooks' KEA_ADMIN_BUILT = TOP_BUILD_DIR / 'src/bin/lfc/kea-admin' KEA_ADMIN_INSTALLED = PREFIX / SBINDIR / 'kea-admin' KEA_LFC_BUILT = TOP_BUILD_DIR / 'src/bin/lfc/kea-lfc' KEA_LFC_INSTALLED = PREFIX / SBINDIR / 'kea-lfc' LEGAL_LOG_DIR = PREFIX / LOCALSTATEDIR / 'lib/kea' +RUNSTATEDIR = LOCALSTATEDIR / 'run/kea' +RUNSTATEDIR_INSTALLED = PREFIX / RUNSTATEDIR TEST_CA_DIR = TOP_SOURCE_DIR / 'src/lib/asiolink/testutils/ca' #### Build Options @@ -465,7 +466,7 @@ conf_data.set('EXTENDED_VERSION', f'"@PROJECT_VERSION@ (@extended_version@)"') if PROJECT_VERSION.split('.')[1].to_int() % 2 == 0 package_version_type = 'stable' else - package_version_type = 'stable' + package_version_type = 'development' endif conf_data.set('PACKAGE_VERSION_TYPE', f'"@package_version_type@"') @@ -898,8 +899,7 @@ top_docs = [ 'platforms.rst', ] install_data(top_docs, install_dir: DATADIR / 'doc/kea') -# No builtin option for 'var/run'. -install_emptydir(LOCALSTATEDIR / 'run/kea') +install_emptydir(RUNSTATEDIR) # Print the setup report. message(run_command(['cat', CONFIG_REPORT], check: true).stdout()) diff --git a/src/bin/admin/meson.build b/src/bin/admin/meson.build index 6ba28e8db5..0c6e0bded9 100644 --- a/src/bin/admin/meson.build +++ b/src/bin/admin/meson.build @@ -1,7 +1,7 @@ kea_admin_conf_data = configuration_data() kea_admin_conf_data.set('prefix', PREFIX) kea_admin_conf_data.set('exec_prefix', '${prefix}') -kea_admin_conf_data.set('datarootdir', '${prefix}/@DATADIR@') +kea_admin_conf_data.set('datarootdir', f'${prefix}/@DATADIR@') kea_admin_conf_data.set('PACKAGE', 'kea') kea_admin_conf_data.set('PACKAGE_NAME', 'kea') kea_admin_conf_data.set('PACKAGE_VERSION', PROJECT_VERSION) diff --git a/src/bin/keactrl/meson.build b/src/bin/keactrl/meson.build index 4b17a79b89..56bd805ed0 100644 --- a/src/bin/keactrl/meson.build +++ b/src/bin/keactrl/meson.build @@ -26,39 +26,38 @@ configure_file( configuration: keactrl_conf_data, install_dir: SBINDIR, ) -path_replacer = TOP_BUILD_DIR / 'tools/path_replacer.sh' configure_file( input: 'kea-dhcp4.conf.pre', output: 'kea-dhcp4.conf', - command: [path_replacer, '@INPUT@', '@OUTPUT@'], + command: [PATH_REPLACER, '@INPUT@', '@OUTPUT@'], install: true, install_dir: kea_configfiles_destdir, ) configure_file( input: 'kea-dhcp6.conf.pre', output: 'kea-dhcp6.conf', - command: [path_replacer, '@INPUT@', '@OUTPUT@'], + command: [PATH_REPLACER, '@INPUT@', '@OUTPUT@'], install: true, install_dir: kea_configfiles_destdir, ) configure_file( input: 'kea-dhcp-ddns.conf.pre', output: 'kea-dhcp-ddns.conf', - command: [path_replacer, '@INPUT@', '@OUTPUT@'], + command: [PATH_REPLACER, '@INPUT@', '@OUTPUT@'], install: true, install_dir: kea_configfiles_destdir, ) configure_file( input: 'kea-ctrl-agent.conf.pre', output: 'kea-ctrl-agent.conf', - command: [path_replacer, '@INPUT@', '@OUTPUT@'], + command: [PATH_REPLACER, '@INPUT@', '@OUTPUT@'], install: true, install_dir: kea_configfiles_destdir, ) configure_file( input: 'kea-netconf.conf.pre', output: 'kea-netconf.conf', - command: [path_replacer, '@INPUT@', '@OUTPUT@'], + command: [PATH_REPLACER, '@INPUT@', '@OUTPUT@'], install: NETCONF_DEP.found(), install_dir: kea_configfiles_destdir, ) diff --git a/src/lib/dhcpsrv/meson.build b/src/lib/dhcpsrv/meson.build index 8d4b1ab470..d26ee0b70f 100644 --- a/src/lib/dhcpsrv/meson.build +++ b/src/lib/dhcpsrv/meson.build @@ -92,7 +92,7 @@ kea_dhcpsrv_lib = shared_library( 'kea-dhcpsrv', sources, cpp_args: [ - f'-DDHCP_DATA_DIR="@PREFIX@/@DHCP_DATA_DIR@"', + f'-DDHCP_DATA_DIR="@RUNSTATEDIR_INSTALLED@"', f'-DKEA_LFC_EXECUTABLE="@KEA_LFC_INSTALLED@"', ], dependencies: [CRYPTO_DEP], diff --git a/src/lib/log/interprocess/meson.build b/src/lib/log/interprocess/meson.build index f4232d68f2..c34fb6fe59 100644 --- a/src/lib/log/interprocess/meson.build +++ b/src/lib/log/interprocess/meson.build @@ -2,7 +2,7 @@ kea_log_interprocess_lib = shared_library( 'kea-log-interprocess', 'interprocess_sync_file.cc', 'interprocess_sync_null.cc', - cpp_args: [f'-DLOCKFILE_DIR="@PREFIX@/@LOCALSTATEDIR@/run/kea"'], + cpp_args: [f'-DLOCKFILE_DIR="@RUNSTATEDIR_INSTALLED@"'], include_directories: [include_directories('.')] + INCLUDES, install: true, install_dir: LIBDIR, diff --git a/src/lib/process/meson.build b/src/lib/process/meson.build index e1e029522b..6c0916005e 100644 --- a/src/lib/process/meson.build +++ b/src/lib/process/meson.build @@ -12,7 +12,7 @@ kea_process_lib = shared_library( 'log_parser.cc', 'process_messages.cc', 'redact_config.cc', - cpp_args: [f'-DPIDFILE_DIR="@PREFIX@/@LOCALSTATEDIR@/run/kea"'], + cpp_args: [f'-DPIDFILE_DIR="@RUNSTATEDIR_INSTALLED@"'], dependencies: [GTEST_DEP], include_directories: [include_directories('.')] + INCLUDES, install: true, diff --git a/src/lib/process/tests/meson.build b/src/lib/process/tests/meson.build index af4a206d75..6b4c95bf1c 100644 --- a/src/lib/process/tests/meson.build +++ b/src/lib/process/tests/meson.build @@ -25,7 +25,7 @@ kea_process_tests = executable( cpp_args: [ f'-DTEST_DATA_BUILDDIR="@current_build_dir@"', f'-DTEST_SCRIPT_SH="@current_build_dir@/process_test.sh"', - f'-DPIDFILE_DIR="@PREFIX@/@LOCALSTATEDIR@/run/kea"', + f'-DPIDFILE_DIR="@RUNSTATEDIR_INSTALLED@"', ], include_directories: [include_directories('.')] + INCLUDES, link_with: [kea_util_unittests_lib, libs_testutils] + LIBS_BUILT_SO_FAR, diff --git a/tools/meson.build b/tools/meson.build index ee58776e98..64184d7312 100644 --- a/tools/meson.build +++ b/tools/meson.build @@ -15,7 +15,7 @@ if AWK.found() else tools_conf_data.set('AWK', 'awk') endif -configure_file( +PATH_REPLACER = configure_file( input: 'path_replacer.sh.in', output: 'path_replacer.sh', configuration: tools_conf_data, diff --git a/tools/path_replacer.sh.in b/tools/path_replacer.sh.in old mode 100644 new mode 100755 index deb1264f94..468f2b6581 --- a/tools/path_replacer.sh.in +++ b/tools/path_replacer.sh.in @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright (C) 2014-2020 Internet Systems Consortium, Inc. ("ISC") +# Copyright (C) 2014-2025 Internet Systems Consortium, Inc. ("ISC") # # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this