| allow systemd path to be defined by configure option. |
| |
| The configure probes the host for systemd path information. |
| |
| Upstream-Status: Inappropriate [Embedded] |
| |
| Signed-off-by: Armin Kuster <akuster@mvista.com> |
| |
| Index: ipmiutil-3.0.5/configure.ac |
| =================================================================== |
| --- ipmiutil-3.0.5.orig/configure.ac |
| +++ ipmiutil-3.0.5/configure.ac |
| @@ -149,7 +149,6 @@ CROSS_LFLAGS="" |
| CROSS_CFLAGS="" |
| LIBSENSORS="" |
| SAM2OBJ="isensor2.o ievents2.o" |
| -SYSTEMD_DIR=/usr/share/ipmiutil |
| |
| AC_ARG_ENABLE([useflags], |
| [ --enable-useflags include environment CFLAGS and LDFLAGS.], |
| @@ -200,29 +199,42 @@ AC_ARG_ENABLE([gpl], |
| |
| dnl Does this Linux have systemd enabled? Otherwise use sysv init. |
| AC_ARG_ENABLE([systemd], |
| - [ --enable-systemd enable systemd service type=notify support and %_unitdir [[default=disabled]]],) |
| -if test "x$enable_systemd" = "xyes"; then |
| - GPL_CFLAGS="$GPL_CFLAGS -DENABLE_SYSTEMD" |
| - # if systemd enabled, install service scripts in unitdir |
| - which rpm >/dev/null 2>&1 |
| - if test $? -eq 0 ; then |
| - SYSTEMD_DIR=`rpm --eval "%{_unitdir}"` |
| - else |
| - SYSTEMD_DIR=/usr/share/ipmiutil |
| - fi |
| + [ --enable-systemd[=systemddir] install systemd unit file. If 'yes' |
| + probe the system for unit directory. |
| + If a path is specified, assume that |
| + is a valid install path. [[default=disabled]]],) |
| +# Check whether --enable-systemd was given. |
| +if test "${enable_systemd+set}" = set; then : |
| + withval=$enable_systemd; if test "$withval" = yes; then |
| + GPL_CFLAGS="$GPL_CFLAGS -DENABLE_SYSTEMD" |
| + if test -z "$systemddir"; then |
| + { $as_echo "$as_me:${as_lineno-$LINENO}: checking location of the systemd unit files directory" >&5 |
| + $as_echo_n "checking location of the systemd unit files directory... " >&6; } |
| + _rpmdir = "" |
| + which rpm >/dev/null 2>&1 |
| + if test $? -eq 0 ; then |
| + _rpmdir = `rpm --eval "%{_unitdir}"` |
| + fi |
| + for systemd_d in ${datadir}/usr/share/ipmiutil ${_rpmdir} /usr/share/ipmiutil; do |
| + if test -z "$systemddir"; then |
| + if test -d "$systemd_d"; then |
| + systemddir="$systemd_d" |
| + fi |
| + fi |
| + done |
| + fi |
| + if test -n "$systemddir"; then |
| + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $systemddir" >&5 |
| + $as_echo "$systemddir" >&6; } |
| + else |
| + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 |
| + $as_echo "not found" >&6; } |
| + fi |
| else |
| - # otherwise install the systemd service scripts in the data dir |
| - SYSTEMD_DIR=/usr/share/ipmiutil |
| - if test "x$sysname" != "xDarwin" ; then |
| - if test "x$os" != "xhpux" ; then |
| - # MacOS and HP-UX: 'which' command returns 0 always |
| - which rpm >/dev/null 2>&1 |
| - if test $? -eq 0 ; then |
| - datad=`rpm --eval "%{_datadir}"` |
| - SYSTEMD_DIR=${datad}/ipmiutil |
| - fi |
| - fi |
| - fi |
| + if test "$withval" != no; then |
| + systemddir=$withval |
| + fi |
| +fi |
| fi |
| |
| dnl start main logic |
| @@ -528,7 +540,7 @@ AC_SUBST(INS_LIB) |
| AC_SUBST(SUBDIR_S) |
| AC_SUBST(CROSS_CFLAGS) |
| AC_SUBST(CROSS_LFLAGS) |
| -AC_SUBST(SYSTEMD_DIR) |
| +AC_SUBST(systemddir) |
| AC_SUBST(SHR_LINK) |
| AC_SUBST(pkgconfigdir) |
| |
| Index: ipmiutil-3.0.5/scripts/Makefile.am |
| =================================================================== |
| --- ipmiutil-3.0.5.orig/scripts/Makefile.am |
| +++ ipmiutil-3.0.5/scripts/Makefile.am |
| @@ -17,7 +17,8 @@ cronto = ${DESTDIR}${etcdir}/cron.daily |
| sbinto = ${DESTDIR}${sbindir} |
| varto = ${DESTDIR}/var/lib/ipmiutil |
| initto = ${DESTDIR}@INIT_DIR@ |
| -sysdto = ${DESTDIR}@SYSTEMD_DIR@ |
| +sysdto = ${DESTDIR}@systemddir@ |
| +systemddir = @systemddir@ |
| sysvinit = ${datato} |
| sbinfls = ialarms ihealth ifru igetevent ireset icmd isol ilan isensor isel iserial iwdt iconfig ipicmg ifirewall ifwum ihpm iuser |
| |
| @@ -47,10 +48,14 @@ install: |
| ${INSTALL_SCRIPT_SH} ipmi_port.sh ${sysvinit}/ipmi_port |
| ${INSTALL_SCRIPT_SH} ipmi_info ${sysvinit}/ipmi_info |
| ${INSTALL_SCRIPT_SH} checksel ${datato} |
| - ${INSTALL_DATA_SH} ipmiutil_wdt.service ${sysdto} |
| - ${INSTALL_DATA_SH} ipmiutil_asy.service ${sysdto} |
| - ${INSTALL_DATA_SH} ipmiutil_evt.service ${sysdto} |
| - ${INSTALL_DATA_SH} ipmi_port.service ${sysdto} |
| + |
| + if [ ! -z "${systemddir}" ]; then \ |
| + $(MKDIR) ${sysdto}; \ |
| + ${INSTALL_DATA_SH} ipmiutil_wdt.service ${sysdto}; \ |
| + ${INSTALL_DATA_SH} ipmiutil_asy.service ${sysdto}; \ |
| + ${INSTALL_DATA_SH} ipmiutil_evt.service ${sysdto}; \ |
| + ${INSTALL_DATA_SH} ipmi_port.service ${sysdto}; \ |
| + fi |
| ${INSTALL_SCRIPT_SH} ipmiutil.env ${datato} |
| ${INSTALL_SCRIPT_SH} ipmiutil.pre ${datato} |
| ${INSTALL_SCRIPT_SH} ipmiutil.setup ${datato} |