From 069b94ac1400a90e283fc2a8e7ef574045a76f68 Mon Sep 17 00:00:00 2001 From: William Brown Date: Feb 25 2016 00:12:49 +0000 Subject: Ticket 47977 - Make systemd components depend on with-systemd Bug Description: The systemd unit files now depend on parts of the dirsrv code base that depends on with-systemd (see, sd_notify) As a result, it's possible to create a non-functional build of ds by building without "with-systemd" and then attempting to run it. The creates an issue where type=notify cannot be satisfied in the start up procedure. Fix Description: This makes all unit file components of systemd depend on with-systemd in order to be processed and used. https://fedorahosted.org/389/ticket/47977 Author: wibrown Review by: nhosoi (Thanks) --- diff --git a/Makefile.in b/Makefile.in index a2042b9..e7e7403 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1348,8 +1348,6 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ RPM_RELEASE = @RPM_RELEASE@ RPM_VERSION = @RPM_VERSION@ diff --git a/aclocal.m4 b/aclocal.m4 index 5b32a97..58e04a0 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -20,206 +20,6 @@ You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) -# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- -# serial 1 (pkg-config-0.24) -# -# Copyright © 2004 Scott James Remnant . -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# PKG_PROG_PKG_CONFIG([MIN-VERSION]) -# ---------------------------------- -AC_DEFUN([PKG_PROG_PKG_CONFIG], -[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) -m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) -m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) -AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) -AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) -AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) - -if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then - AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) -fi -if test -n "$PKG_CONFIG"; then - _pkg_min_version=m4_default([$1], [0.9.0]) - AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) - if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - PKG_CONFIG="" - fi -fi[]dnl -])# PKG_PROG_PKG_CONFIG - -# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -# -# Check to see whether a particular set of modules exists. Similar -# to PKG_CHECK_MODULES(), but does not set variables or print errors. -# -# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -# only at the first occurence in configure.ac, so if the first place -# it's called might be skipped (such as if it is within an "if", you -# have to call PKG_CHECK_EXISTS manually -# -------------------------------------------------------------- -AC_DEFUN([PKG_CHECK_EXISTS], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -if test -n "$PKG_CONFIG" && \ - AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then - m4_default([$2], [:]) -m4_ifvaln([$3], [else - $3])dnl -fi]) - -# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) -# --------------------------------------------- -m4_define([_PKG_CONFIG], -[if test -n "$$1"; then - pkg_cv_[]$1="$$1" - elif test -n "$PKG_CONFIG"; then - PKG_CHECK_EXISTS([$3], - [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes ], - [pkg_failed=yes]) - else - pkg_failed=untried -fi[]dnl -])# _PKG_CONFIG - -# _PKG_SHORT_ERRORS_SUPPORTED -# ----------------------------- -AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi[]dnl -])# _PKG_SHORT_ERRORS_SUPPORTED - - -# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -# [ACTION-IF-NOT-FOUND]) -# -# -# Note that if there is a possibility the first call to -# PKG_CHECK_MODULES might not happen, you should be sure to include an -# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac -# -# -# -------------------------------------------------------------- -AC_DEFUN([PKG_CHECK_MODULES], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl -AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl - -pkg_failed=no -AC_MSG_CHECKING([for $1]) - -_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) -_PKG_CONFIG([$1][_LIBS], [libs], [$2]) - -m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS -and $1[]_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details.]) - -if test $pkg_failed = yes; then - AC_MSG_RESULT([no]) - _PKG_SHORT_ERRORS_SUPPORTED - if test $_pkg_short_errors_supported = yes; then - $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` - else - $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD - - m4_default([$4], [AC_MSG_ERROR( -[Package requirements ($2) were not met: - -$$1_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -_PKG_TEXT])[]dnl - ]) -elif test $pkg_failed = untried; then - AC_MSG_RESULT([no]) - m4_default([$4], [AC_MSG_FAILURE( -[The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -_PKG_TEXT - -To get pkg-config, see .])[]dnl - ]) -else - $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS - $1[]_LIBS=$pkg_cv_[]$1[]_LIBS - AC_MSG_RESULT([yes]) - $3 -fi[]dnl -])# PKG_CHECK_MODULES - - -# PKG_INSTALLDIR(DIRECTORY) -# ------------------------- -# Substitutes the variable pkgconfigdir as the location where a module -# should install pkg-config .pc files. By default the directory is -# $libdir/pkgconfig, but the default can be changed by passing -# DIRECTORY. The user can override through the --with-pkgconfigdir -# parameter. -AC_DEFUN([PKG_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([pkgconfigdir], - [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, - [with_pkgconfigdir=]pkg_default) -AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -]) dnl PKG_INSTALLDIR - - -# PKG_NOARCH_INSTALLDIR(DIRECTORY) -# ------------------------- -# Substitutes the variable noarch_pkgconfigdir as the location where a -# module should install arch-independent pkg-config .pc files. By -# default the directory is $datadir/pkgconfig, but the default can be -# changed by passing DIRECTORY. The user can override through the -# --with-noarch-pkgconfigdir parameter. -AC_DEFUN([PKG_NOARCH_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([noarch-pkgconfigdir], - [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, - [with_noarch_pkgconfigdir=]pkg_default) -AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -]) dnl PKG_NOARCH_INSTALLDIR - # Copyright (C) 2002-2013 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation diff --git a/configure b/configure index 2a88f1a..142d91a 100755 --- a/configure +++ b/configure @@ -693,6 +693,11 @@ OPENLDAP_TRUE SELINUX_FALSE SELINUX_TRUE PACKAGE_BASE_VERSION +SYSTEMD_FALSE +SYSTEMD_TRUE +with_systemdgroupname +with_systemdsystemconfdir +with_systemdsystemunitdir with_selinux kerberos_libdir kerberos_lib @@ -701,8 +706,7 @@ KRB5_CONFIG_BIN NETSNMP_CONFIG ICU_CONFIG ldap_lib_ldif -SYSTEMD_FALSE -SYSTEMD_TRUE +PKG_CONFIG SOLARIS_FALSE SOLARIS_TRUE HPUX_FALSE @@ -736,12 +740,6 @@ schemadir propertydir sampledatadir configdir -with_systemdgroupname -with_systemdsystemconfdir -with_systemdsystemunitdir -PKG_CONFIG_LIBDIR -PKG_CONFIG_PATH -PKG_CONFIG with_tmpfiles_d with_fhs_opt enable_nunc_stans_FALSE @@ -933,9 +931,6 @@ with_fhs_opt with_tmpfiles_d with_perldir with_pythondir -with_systemdsystemunitdir -with_systemdsystemconfdir -with_systemdgroupname with_instconfigdir with_initddir with_nspr @@ -977,6 +972,9 @@ with_nunc_stans with_nunc_stans_inc with_nunc_stans_lib with_systemd +with_systemdsystemunitdir +with_systemdsystemconfdir +with_systemdgroupname ' ac_precious_vars='build_alias host_alias @@ -992,10 +990,7 @@ CFLAGS CCAS CCASFLAGS CPP -CXXCPP -PKG_CONFIG -PKG_CONFIG_PATH -PKG_CONFIG_LIBDIR' +CXXCPP' # Initialize some variables set by options. @@ -1668,18 +1663,6 @@ Optional Packages: --with-pythondir=PATH Directory for python) - --with-systemdsystemunitdir=PATH - Directory for systemd service files (default: - $with_systemdsystemunitdir) - - --with-systemdsystemconfdir=PATH - Directory for systemd service files (default: - $with_systemdsystemconfdir) - - --with-systemdgroupname=NAME - Name of group target for all instances (default: - $with_systemdgroupname) - --with-instconfigdir=/path Base directory for instance specific writable configuration directories (default @@ -1749,6 +1732,18 @@ Optional Packages: --with-nunc-stans-lib=PATH nunc-stans library directory --with-systemd Enable Systemd native integration. + --with-systemdsystemunitdir=PATH + Directory for systemd service files (default: + $with_systemdsystemunitdir) + + --with-systemdsystemconfdir=PATH + Directory for systemd service files (default: + $with_systemdsystemconfdir) + + --with-systemdgroupname=NAME + Name of group target for all instances (default: + $with_systemdgroupname) + Some influential environment variables: CXX C++ compiler command @@ -1764,11 +1759,6 @@ Some influential environment variables: CCASFLAGS assembler compiler flags (defaults to CFLAGS) CPP C preprocessor CXXCPP C++ preprocessor - PKG_CONFIG path to pkg-config utility - PKG_CONFIG_PATH - directories to add to pkg-config's search path - PKG_CONFIG_LIBDIR - path overriding pkg-config's built-in search path Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. @@ -18256,131 +18246,6 @@ $as_echo "$with_tmpfiles_d" >&6; } fi - - - - - - - -if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. -set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_PKG_CONFIG+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $PKG_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -PKG_CONFIG=$ac_cv_path_PKG_CONFIG -if test -n "$PKG_CONFIG"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 -$as_echo "$PKG_CONFIG" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_path_PKG_CONFIG"; then - ac_pt_PKG_CONFIG=$PKG_CONFIG - # Extract the first word of "pkg-config", so it can be a program name with args. -set dummy pkg-config; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : - $as_echo_n "(cached) " >&6 -else - case $ac_pt_PKG_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG -if test -n "$ac_pt_PKG_CONFIG"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 -$as_echo "$ac_pt_PKG_CONFIG" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_pt_PKG_CONFIG" = x; then - PKG_CONFIG="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - PKG_CONFIG=$ac_pt_PKG_CONFIG - fi -else - PKG_CONFIG="$ac_cv_path_PKG_CONFIG" -fi - -fi -if test -n "$PKG_CONFIG"; then - _pkg_min_version=0.9.0 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 -$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } - if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - PKG_CONFIG="" - fi -fi -if test -n "$PKG_CONFIG" ; then - default_systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd` - default_systemdsystemconfdir=`$PKG_CONFIG --variable=systemdsystemconfdir systemd` -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-perldir" >&5 $as_echo_n "checking for --with-perldir... " >&6; } @@ -18423,77 +18288,6 @@ else with_pythondir= fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-systemdsystemunitdir" >&5 -$as_echo_n "checking for --with-systemdsystemunitdir... " >&6; } - -# Check whether --with-systemdsystemunitdir was given. -if test "${with_systemdsystemunitdir+set}" = set; then : - withval=$with_systemdsystemunitdir; -fi - -if test "$with_systemdsystemunitdir" = yes ; then - if test -n "$default_systemdsystemunitdir" ; then - with_systemdsystemunitdir=$default_systemdsystemunitdir - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemunitdir" >&5 -$as_echo "$with_systemdsystemunitdir" >&6; } - else - as_fn_error $? "You must specify --with-systemdsystemconfdir=/full/path/to/systemd/system directory" "$LINENO" 5 - fi -elif test "$with_systemdsystemunitdir" = no ; then - with_systemdsystemunitdir= -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemunitdir" >&5 -$as_echo "$with_systemdsystemunitdir" >&6; } -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-systemdsystemconfdir" >&5 -$as_echo_n "checking for --with-systemdsystemconfdir... " >&6; } - -# Check whether --with-systemdsystemconfdir was given. -if test "${with_systemdsystemconfdir+set}" = set; then : - withval=$with_systemdsystemconfdir; -fi - -if test "$with_systemdsystemconfdir" = yes ; then - if test -n "$default_systemdsystemconfdir" ; then - with_systemdsystemconfdir=$default_systemdsystemconfdir - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemconfdir" >&5 -$as_echo "$with_systemdsystemconfdir" >&6; } - else - as_fn_error $? "You must specify --with-systemdsystemconfdir=/full/path/to/systemd/system directory" "$LINENO" 5 - fi -elif test "$with_systemdsystemconfdir" = no ; then - with_systemdsystemconfdir= -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemconfdir" >&5 -$as_echo "$with_systemdsystemconfdir" >&6; } -fi - - -if test -n "$with_systemdsystemunitdir" -o -n "$with_systemdsystemconfdir" ; then - if test -z "$with_systemdgroupname" ; then - with_systemdgroupname=$PACKAGE_NAME.target - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-systemdgroupname" >&5 -$as_echo_n "checking for --with-systemdgroupname... " >&6; } - -# Check whether --with-systemdgroupname was given. -if test "${with_systemdgroupname+set}" = set; then : - withval=$with_systemdgroupname; -fi - - if test "$with_systemdgroupname" = yes ; then - as_fn_error $? "You must specify --with-systemdgroupname=name.of.group" "$LINENO" 5 - elif test "$with_systemdgroupname" = no ; then - as_fn_error $? "You must specify --with-systemdgroupname=name.of.group" "$LINENO" 5 - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdgroupname" >&5 -$as_echo "$with_systemdgroupname" >&6; } - fi - -fi - @@ -18883,14 +18677,6 @@ else SOLARIS_FALSE= fi - if test -n "$with_systemdsystemunitdir" -o -n "$with_systemdsystemconfdir"; then - SYSTEMD_TRUE= - SYSTEMD_FALSE='#' -else - SYSTEMD_TRUE='#' - SYSTEMD_FALSE= -fi - # Check for library dependencies # BEGIN COPYRIGHT BLOCK @@ -21440,12 +21226,100 @@ $as_echo_n "checking for Systemd with pkg-config... " >&6; } systemd_lib=`$PKG_CONFIG --libs-only-l systemd libsystemd-journal libsystemd-daemon` systemd_defs="-DWITH_SYSTEMD" else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no Systemd pkg-config files" >&5 -$as_echo "no Systemd pkg-config files" >&6; } + as_fn_error $? "no Systemd / Journald pkg-config files" "$LINENO" 5 + fi + + # Check for the pkg config provided unit paths + if test -n "$PKG_CONFIG" ; then + default_systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd` + default_systemdsystemconfdir=`$PKG_CONFIG --variable=systemdsystemconfdir systemd` + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-systemdsystemunitdir" >&5 +$as_echo_n "checking for --with-systemdsystemunitdir... " >&6; } + +# Check whether --with-systemdsystemunitdir was given. +if test "${with_systemdsystemunitdir+set}" = set; then : + withval=$with_systemdsystemunitdir; +fi + + if test "$with_systemdsystemunitdir" = yes ; then + if test -n "$default_systemdsystemunitdir" ; then + with_systemdsystemunitdir=$default_systemdsystemunitdir + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemunitdir" >&5 +$as_echo "$with_systemdsystemunitdir" >&6; } + else + as_fn_error $? "You must specify --with-systemdsystemconfdir=/full/path/to/systemd/system directory" "$LINENO" 5 + fi + elif test "$with_systemdsystemunitdir" = no ; then + with_systemdsystemunitdir= + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemunitdir" >&5 +$as_echo "$with_systemdsystemunitdir" >&6; } + fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-systemdsystemconfdir" >&5 +$as_echo_n "checking for --with-systemdsystemconfdir... " >&6; } + +# Check whether --with-systemdsystemconfdir was given. +if test "${with_systemdsystemconfdir+set}" = set; then : + withval=$with_systemdsystemconfdir; +fi + + if test "$with_systemdsystemconfdir" = yes ; then + if test -n "$default_systemdsystemconfdir" ; then + with_systemdsystemconfdir=$default_systemdsystemconfdir + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemconfdir" >&5 +$as_echo "$with_systemdsystemconfdir" >&6; } + else + as_fn_error $? "You must specify --with-systemdsystemconfdir=/full/path/to/systemd/system directory" "$LINENO" 5 + fi + elif test "$with_systemdsystemconfdir" = no ; then + with_systemdsystemconfdir= + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdsystemconfdir" >&5 +$as_echo "$with_systemdsystemconfdir" >&6; } fi + + if test -n "$with_systemdsystemunitdir" -o -n "$with_systemdsystemconfdir" ; then + if test -z "$with_systemdgroupname" ; then + with_systemdgroupname=$PACKAGE_NAME.target + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-systemdgroupname" >&5 +$as_echo_n "checking for --with-systemdgroupname... " >&6; } + +# Check whether --with-systemdgroupname was given. +if test "${with_systemdgroupname+set}" = set; then : + withval=$with_systemdgroupname; fi + if test "$with_systemdgroupname" = yes ; then + as_fn_error $? "You must specify --with-systemdgroupname=name.of.group" "$LINENO" 5 + elif test "$with_systemdgroupname" = no ; then + as_fn_error $? "You must specify --with-systemdgroupname=name.of.group" "$LINENO" 5 + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemdgroupname" >&5 +$as_echo "$with_systemdgroupname" >&6; } + fi + + fi + + +fi +# End of with_systemd + + if test -n "$with_systemd"; then + SYSTEMD_TRUE= + SYSTEMD_FALSE='#' +else + SYSTEMD_TRUE='#' + SYSTEMD_FALSE= +fi + + + PACKAGE_BASE_VERSION=`echo $PACKAGE_VERSION | awk -F\. '{print $1"."$2}'` diff --git a/configure.ac b/configure.ac index 7f93b6a..b80a077 100644 --- a/configure.ac +++ b/configure.ac @@ -378,12 +378,6 @@ else fi AC_SUBST(with_tmpfiles_d) -PKG_PROG_PKG_CONFIG -if test -n "$PKG_CONFIG" ; then - default_systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd` - default_systemdsystemconfdir=`$PKG_CONFIG --variable=systemdsystemconfdir systemd` -fi - AC_MSG_CHECKING(for --with-perldir) AC_ARG_WITH([perldir], AS_HELP_STRING([--with-perldir=PATH], @@ -418,63 +412,6 @@ else with_pythondir= fi -AC_MSG_CHECKING(for --with-systemdsystemunitdir) -AC_ARG_WITH([systemdsystemunitdir], - AS_HELP_STRING([--with-systemdsystemunitdir=PATH], - [Directory for systemd service files (default: $with_systemdsystemunitdir)]) -) -if test "$with_systemdsystemunitdir" = yes ; then - if test -n "$default_systemdsystemunitdir" ; then - with_systemdsystemunitdir=$default_systemdsystemunitdir - AC_MSG_RESULT([$with_systemdsystemunitdir]) - else - AC_MSG_ERROR([You must specify --with-systemdsystemconfdir=/full/path/to/systemd/system directory]) - fi -elif test "$with_systemdsystemunitdir" = no ; then - with_systemdsystemunitdir= -else - AC_MSG_RESULT([$with_systemdsystemunitdir]) -fi -AC_SUBST(with_systemdsystemunitdir) - -AC_MSG_CHECKING(for --with-systemdsystemconfdir) -AC_ARG_WITH([systemdsystemconfdir], - AS_HELP_STRING([--with-systemdsystemconfdir=PATH], - [Directory for systemd service files (default: $with_systemdsystemconfdir)]) -) -if test "$with_systemdsystemconfdir" = yes ; then - if test -n "$default_systemdsystemconfdir" ; then - with_systemdsystemconfdir=$default_systemdsystemconfdir - AC_MSG_RESULT([$with_systemdsystemconfdir]) - else - AC_MSG_ERROR([You must specify --with-systemdsystemconfdir=/full/path/to/systemd/system directory]) - fi -elif test "$with_systemdsystemconfdir" = no ; then - with_systemdsystemconfdir= -else - AC_MSG_RESULT([$with_systemdsystemconfdir]) -fi -AC_SUBST(with_systemdsystemconfdir) - -if test -n "$with_systemdsystemunitdir" -o -n "$with_systemdsystemconfdir" ; then - if test -z "$with_systemdgroupname" ; then - with_systemdgroupname=$PACKAGE_NAME.target - fi - AC_MSG_CHECKING(for --with-systemdgroupname) - AC_ARG_WITH([systemdgroupname], - AS_HELP_STRING([--with-systemdgroupname=NAME], - [Name of group target for all instances (default: $with_systemdgroupname)]) - ) - if test "$with_systemdgroupname" = yes ; then - AC_MSG_ERROR([You must specify --with-systemdgroupname=name.of.group]) - elif test "$with_systemdgroupname" = no ; then - AC_MSG_ERROR([You must specify --with-systemdgroupname=name.of.group]) - else - AC_MSG_RESULT([$with_systemdgroupname]) - fi - AC_SUBST(with_systemdgroupname) -fi - AC_SUBST(configdir) AC_SUBST(sampledatadir) AC_SUBST(propertydir) @@ -701,7 +638,6 @@ AC_SUBST(initconfigdir) AM_CONDITIONAL([HPUX],[test "$platform" = "hpux"]) AM_CONDITIONAL([SOLARIS],[test "$platform" = "solaris"]) -AM_CONDITIONAL([SYSTEMD],[test -n "$with_systemdsystemunitdir" -o -n "$with_systemdsystemconfdir"]) # Check for library dependencies m4_include(m4/nspr.m4) diff --git a/m4/systemd.m4 b/m4/systemd.m4 index 1c62076..d91a9da 100644 --- a/m4/systemd.m4 +++ b/m4/systemd.m4 @@ -30,7 +30,75 @@ if test "$with_systemd" = yes; then systemd_lib=`$PKG_CONFIG --libs-only-l systemd libsystemd-journal libsystemd-daemon` systemd_defs="-DWITH_SYSTEMD" else - AC_MSG_ERROR([no Systemd pkg-config files]) + AC_MSG_ERROR([no Systemd / Journald pkg-config files]) fi + # Check for the pkg config provided unit paths + if test -n "$PKG_CONFIG" ; then + default_systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd` + default_systemdsystemconfdir=`$PKG_CONFIG --variable=systemdsystemconfdir systemd` + fi + + AC_MSG_CHECKING(for --with-systemdsystemunitdir) + AC_ARG_WITH([systemdsystemunitdir], + AS_HELP_STRING([--with-systemdsystemunitdir=PATH], + [Directory for systemd service files (default: $with_systemdsystemunitdir)]) + ) + if test "$with_systemdsystemunitdir" = yes ; then + if test -n "$default_systemdsystemunitdir" ; then + with_systemdsystemunitdir=$default_systemdsystemunitdir + AC_MSG_RESULT([$with_systemdsystemunitdir]) + else + AC_MSG_ERROR([You must specify --with-systemdsystemconfdir=/full/path/to/systemd/system directory]) + fi + elif test "$with_systemdsystemunitdir" = no ; then + with_systemdsystemunitdir= + else + AC_MSG_RESULT([$with_systemdsystemunitdir]) + fi + AC_SUBST(with_systemdsystemunitdir) + + AC_MSG_CHECKING(for --with-systemdsystemconfdir) + AC_ARG_WITH([systemdsystemconfdir], + AS_HELP_STRING([--with-systemdsystemconfdir=PATH], + [Directory for systemd service files (default: $with_systemdsystemconfdir)]) + ) + if test "$with_systemdsystemconfdir" = yes ; then + if test -n "$default_systemdsystemconfdir" ; then + with_systemdsystemconfdir=$default_systemdsystemconfdir + AC_MSG_RESULT([$with_systemdsystemconfdir]) + else + AC_MSG_ERROR([You must specify --with-systemdsystemconfdir=/full/path/to/systemd/system directory]) + fi + elif test "$with_systemdsystemconfdir" = no ; then + with_systemdsystemconfdir= + else + AC_MSG_RESULT([$with_systemdsystemconfdir]) + fi + AC_SUBST(with_systemdsystemconfdir) + + if test -n "$with_systemdsystemunitdir" -o -n "$with_systemdsystemconfdir" ; then + if test -z "$with_systemdgroupname" ; then + with_systemdgroupname=$PACKAGE_NAME.target + fi + AC_MSG_CHECKING(for --with-systemdgroupname) + AC_ARG_WITH([systemdgroupname], + AS_HELP_STRING([--with-systemdgroupname=NAME], + [Name of group target for all instances (default: $with_systemdgroupname)]) + ) + if test "$with_systemdgroupname" = yes ; then + AC_MSG_ERROR([You must specify --with-systemdgroupname=name.of.group]) + elif test "$with_systemdgroupname" = no ; then + AC_MSG_ERROR([You must specify --with-systemdgroupname=name.of.group]) + else + AC_MSG_RESULT([$with_systemdgroupname]) + fi + AC_SUBST(with_systemdgroupname) + fi + + fi +# End of with_systemd + +AM_CONDITIONAL([SYSTEMD],[test -n "$with_systemd"]) +