2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-09-02 15:45:25 +00:00

Merge branch '2629-man-pages-aren-t-installed-when-building-9-17-x' into 'main'

Install man pages when sphinx-build tool is missing

Closes #2629

See merge request isc-projects/bind9!4945
This commit is contained in:
Michal Nowak
2021-05-25 09:34:11 +00:00
3 changed files with 36 additions and 7 deletions

View File

@@ -34,7 +34,7 @@ variables:
WITH_READLINE_LIBEDIT: "--with-readline=libedit"
WITH_READLINE_READLINE: "--with-readline=readline"
BIND_INSTALL_PATH: "${CI_PROJECT_DIR}/.local"
INSTALL_PATH: "${CI_PROJECT_DIR}/.local"
# In multithreaded unit tests, abort on the first failure
CMOCKA_TEST_ABORT: 1
@@ -233,7 +233,6 @@ stages:
--with-cmocka \
--with-libxml2 \
--with-json-c \
--prefix="${BIND_INSTALL_PATH}" \
$EXTRA_CONFIGURE \
|| (test -s config.log && cat config.log; exit 1)
@@ -274,8 +273,8 @@ stages:
- *configure
- *check_readline_setup
- make -j${BUILD_PARALLEL_JOBS:-1} -k all V=1
- test -z "${RUN_MAKE_INSTALL}" || make install
- test -z "${RUN_MAKE_INSTALL}" || sh util/check-make-install
- test -z "${RUN_MAKE_INSTALL}" || make DESTDIR="${INSTALL_PATH}" install
- test -z "${RUN_MAKE_INSTALL}" || DESTDIR="${INSTALL_PATH}" sh util/check-make-install
- if [[ "${CFLAGS}" == *"-fsanitize=address"* ]]; then ( ! grep -F AddressSanitizer config.log ); fi
- if test -z "${OUT_OF_TREE_WORKSPACE}" && test "$(git status --porcelain | grep -Ev '\?\?' | wc -l)" -gt "0"; then git status --short; exit 1; fi
after_script:
@@ -1420,10 +1419,10 @@ respdiff:
- *setup_interfaces
- *setup_softhsm
- make -j${BUILD_PARALLEL_JOBS:-1} -k all V=1
- make install
- make DESTDIR="${INSTALL_PATH}" install
- git clone --depth 1 https://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.isc.org/isc-private/bind-qa.git
- cd bind-qa/bind9/stress
- DIG="${BIND_INSTALL_PATH}/bin/dig" WORKSPACE="${CI_PROJECT_DIR}" bash stress.sh
- LD_LIBRARY_PATH="${INSTALL_PATH}/usr/local/lib" BIND_INSTALL_PATH="${INSTALL_PATH}/usr/local" WORKSPACE="${CI_PROJECT_DIR}" bash stress.sh
needs:
- job: autoreconf
artifacts: true

View File

@@ -4,6 +4,10 @@ if HAVE_PERL
SUBDIRS += misc
endif
# Do not change this line to "SUBDIRS = man" at the top of this file: in
# maintainer mode, the "man" subdirectory depends on the "misc" subdirectory.
SUBDIRS += man
if HAVE_SPHINX_BUILD
SUBDIRS += man arm
SUBDIRS += arm
endif HAVE_SPHINX_BUILD

View File

@@ -10,8 +10,10 @@
# information regarding copyright ownership.
abs_top_srcdir=@abs_top_srcdir@
abs_builddir=@abs_builddir@
prefix=@prefix@
includedir=@includedir@
install_dir="${DESTDIR}@prefix@"
headers_to_install() {
find "${abs_top_srcdir}/lib" -name "*.h" -or -name "*.h.in" |
@@ -31,4 +33,28 @@ for header in $(headers_to_install); do
fi
done
named_binary_path="${install_dir}/sbin/named"
if [ ! -x "${named_binary_path}" ]; then
echo "ERROR: ${named_binary_path} does not exist or is not executable"
status=1
fi
named_man_page_path="${install_dir}/share/man/man8/named.8"
if [ ! -f "${named_man_page_path}" ]; then
echo "ERROR: ${named_man_page_path} does not exist"
status=1
fi
if [ -n "${DESTDIR}" ]; then
for expected_subdir in bin etc include lib sbin share; do
echo "${install_dir}/${expected_subdir}" >> "${abs_builddir}/expected_dirs"
done
find "${install_dir}" -maxdepth 1 -mindepth 1 -type d | sort > "${abs_builddir}/existing_dirs"
if ! diff -u "${abs_builddir}/expected_dirs" "${abs_builddir}/existing_dirs"; then
echo "ERROR: Contents of DESTDIR do not match expectations"
status=1
fi
rm -f "${abs_builddir}/expected_dirs" "${abs_builddir}/existing_dirs"
fi
exit $status