From c2d72e1155580b1509c236f67f82485f59ce6d52 Mon Sep 17 00:00:00 2001 From: Fred Gleason Date: Mon, 31 May 2021 14:53:47 -0400 Subject: [PATCH] 2021-05-31 Fred Gleason * Modified the build system to suppress installation of usermode support components on non-RedHat-ish platforms. Signed-off-by: Fred Gleason --- .gitignore | 1 + ChangeLog | 3 +++ configure.ac | 5 ++++ xdg/Makefile.am | 43 ++++++++++++++++++-------------- xdg/install_usermode.sh.in | 51 ++++++++++++++++++++++++++++++++++++++ 5 files changed, 84 insertions(+), 19 deletions(-) create mode 100755 xdg/install_usermode.sh.in diff --git a/.gitignore b/.gitignore index 855e5c62..fd1a2b06 100644 --- a/.gitignore +++ b/.gitignore @@ -185,6 +185,7 @@ utils/rdselect_helper/rdprofile.cpp utils/rdselect_helper/rdprofile.h utils/rdselect_helper/rdselect_helper utils/sas_shim/sas_shim +xdg/install_usermode.sh xdg/rdalsaconfig-root-consolehelper xdg/rddbconfig-root-consolehelper xdg/rivendell-opsguide-html.desktop diff --git a/ChangeLog b/ChangeLog index 3fa0becd..f21dfaa1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -21745,3 +21745,6 @@ 2021-05-31 Fred Gleason * Fixed a regression in 'rivendell.spec.in' that broke the 'make rpm' target. +2021-05-31 Fred Gleason + * Modified the build system to suppress installation of usermode + support components on non-RedHat-ish platforms. diff --git a/configure.ac b/configure.ac index f2e9359a..6d5ec837 100644 --- a/configure.ac +++ b/configure.ac @@ -162,6 +162,7 @@ case "$ar_distro_id" in AC_SUBST(MYSQL_PKG,"mysql-server") AC_SUBST(QT_MYSQL_PKG,"libqt5sql5-mysql") AC_SUBST(DOC_PATH,"/usr/share/doc/rivendell") + AC_SUBST(HAVE_USERMODE,"no") AC_SUBST(RDALSACONFIG_DESKTOP_FILE,"rivendell-rdalsaconfig-sudo.desktop") AC_SUBST(RDDBCONFIG_DESKTOP_FILE,"rivendell-rddbconfig-sudo.desktop") ;; @@ -184,6 +185,7 @@ case "$ar_distro_id" in AC_SUBST(MYSQL_PKG,"mariadb") AC_SUBST(QT_MYSQL_PKG,"qt5-qtbase-mysql") AC_SUBST(DOC_PATH,"/usr/share/doc/rivendell-$PACKAGE_VERSION") + AC_SUBST(HAVE_USERMODE,"yes") AC_SUBST(RDALSACONFIG_DESKTOP_FILE,"rivendell-rdalsaconfig-root.desktop") AC_SUBST(RDDBCONFIG_DESKTOP_FILE,"rivendell-rddbconfig-root.desktop") ;; @@ -197,6 +199,7 @@ case "$ar_distro_id" in AC_SUBST(MYSQL_PKG,"mysql") AC_SUBST(QT_MYSQL_PKG,"qt-mysql") AC_SUBST(DOC_PATH,"/usr/share/doc/rivendell") + AC_SUBST(HAVE_USERMODE,"no") AC_SUBST(RDALSACONFIG_DESKTOP_FILE,"rivendell-rdalsaconfig.desktop") AC_SUBST(RDDBCONFIG_DESKTOP_FILE,"rivendell-rddbconfig.desktop") ;; @@ -617,6 +620,7 @@ AC_CONFIG_FILES([rivendell.spec \ utils/rdsoftkeys/Makefile \ utils/rmlsend/Makefile \ xdg/Makefile \ + xdg/install_usermode.sh \ xdg/rdalsaconfig-root-consolehelper \ xdg/rddbconfig-root-consolehelper \ build_debs.sh \ @@ -624,6 +628,7 @@ AC_CONFIG_FILES([rivendell.spec \ AC_OUTPUT() chmod 755 helpers/install_python.sh +chmod 755 xdg/install_usermode.sh chmod 755 build_debs.sh # diff --git a/xdg/Makefile.am b/xdg/Makefile.am index b1e82d72..9cb58e6b 100644 --- a/xdg/Makefile.am +++ b/xdg/Makefile.am @@ -37,36 +37,40 @@ install-exec-am: cp rivendell-rdpanel.desktop $(DESTDIR)@prefix@/share/applications/ cp rivendell-rdsoftkeys.desktop $(DESTDIR)@prefix@/share/applications/ cp rivendell-rmlsend.desktop $(DESTDIR)@prefix@/share/applications/ - mkdir -p $(DESTDIR)@prefix@/share/desktop-directories cp *.directory $(DESTDIR)@prefix@/share/desktop-directories/ mkdir -p $(DESTDIR)/etc/xdg/menus/applications-merged cp *.menu $(DESTDIR)/etc/xdg/menus/applications-merged/ - mkdir -p $(DESTDIR)/etc/pam.d - cp rdalsaconfig-root-pam $(DESTDIR)/etc/pam.d/rdalsaconfig-root - cp rddbconfig-root-pam $(DESTDIR)/etc/pam.d/rddbconfig-root - mkdir -p $(DESTDIR)/etc/security/console.apps - cp rdalsaconfig-root-consolehelper $(DESTDIR)/etc/security/console.apps/rdalsaconfig-root - cp rddbconfig-root-consolehelper $(DESTDIR)/etc/security/console.apps/rddbconfig-root cp @RDALSACONFIG_DESKTOP_FILE@ $(DESTDIR)@prefix@/share/applications/rivendell-rdalsaconfig.desktop cp @RDDBCONFIG_DESKTOP_FILE@ $(DESTDIR)@prefix@/share/applications/rivendell-rddbconfig.desktop - rm -f $(DESTDIR)$(prefix)/bin/rdalsaconfig-root - ln -s /usr/bin/consolehelper $(DESTDIR)$(prefix)/bin/rdalsaconfig-root - rm -f $(DESTDIR)$(prefix)/bin/rddbconfig-root - ln -s /usr/bin/consolehelper $(DESTDIR)$(prefix)/bin/rddbconfig-root + ./install_usermode.sh install $(DESTDIR) $(prefix) + +# mkdir -p $(DESTDIR)/etc/pam.d +# cp rdalsaconfig-root-pam $(DESTDIR)/etc/pam.d/rdalsaconfig-root +# cp rddbconfig-root-pam $(DESTDIR)/etc/pam.d/rddbconfig-root +# mkdir -p $(DESTDIR)/etc/security/console.apps +# cp rdalsaconfig-root-consolehelper $(DESTDIR)/etc/security/console.apps/rdalsaconfig-root +# cp rddbconfig-root-consolehelper $(DESTDIR)/etc/security/console.apps/rddbconfig-root +# rm -f $(DESTDIR)$(prefix)/bin/rdalsaconfig-root +# ln -s /usr/bin/consolehelper $(DESTDIR)$(prefix)/bin/rdalsaconfig-root +# rm -f $(DESTDIR)$(prefix)/bin/rddbconfig-root +# ln -s /usr/bin/consolehelper $(DESTDIR)$(prefix)/bin/rddbconfig-root uninstall-local: rm -f $(DESTDIR)@prefix@/share/applications/rivendell-*.desktop rm -f $(DESTDIR)@prefix@/share/desktop-directories/rivendell-*.directory rm -f $(DESTDIR)/etc/xdg/menus/applications-merged/rivendell-*.menu - rm -f $(DESTDIR)/etc/pam.d/rdalsaconfig-root - rm -f $(DESTDIR)/etc/security/console.apps/rdalsaconfig-root - rm -f $(DESTDIR)$(prefix)/bin/rdalsaconfig-root - rm -f $(DESTDIR)/etc/pam.d/rddbconfig-root - rm -f $(DESTDIR)/etc/security/console.apps/rddbconfig-root - rm -f $(DESTDIR)$(prefix)/bin/rddbconfig-root + ./install_usermode.sh uninstall $(DESTDIR) $(prefix) -EXTRA_DIST = rdalsaconfig-root-consolehelper.in\ +# rm -f $(DESTDIR)/etc/pam.d/rdalsaconfig-root +# rm -f $(DESTDIR)/etc/security/console.apps/rdalsaconfig-root +# rm -f $(DESTDIR)$(prefix)/bin/rdalsaconfig-root +# rm -f $(DESTDIR)/etc/pam.d/rddbconfig-root +# rm -f $(DESTDIR)/etc/security/console.apps/rddbconfig-root +# rm -f $(DESTDIR)$(prefix)/bin/rddbconfig-root + +EXTRA_DIST = install_usermode.sh.in\ + rdalsaconfig-root-consolehelper.in\ rdalsaconfig-root-pam\ rddbconfig-root-consolehelper.in\ rddbconfig-root-pam\ @@ -98,7 +102,8 @@ EXTRA_DIST = rdalsaconfig-root-consolehelper.in\ rivendell-utilities.directory CLEANFILES = *~ -DISTCLEANFILES = rdalsaconfig-root-consolehelper\ +DISTCLEANFILES = install_usermod.sh\ + rdalsaconfig-root-consolehelper\ rddbconfig-root-consolehelper MAINTAINERCLEANFILES = *~\ Makefile.in diff --git a/xdg/install_usermode.sh.in b/xdg/install_usermode.sh.in new file mode 100755 index 00000000..1026dde2 --- /dev/null +++ b/xdg/install_usermode.sh.in @@ -0,0 +1,51 @@ +#!/bin/sh + +# install_usermode.sh +# +# Install support files for usermode wrapper +# +# (C) Copyright 2021 Fred Gleason +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation. +# +# 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., 675 Mass Ave, Cambridge, MA 02139, USA. +# + +ACTION=$1 +DESTDIR=$2 +PREFIX=$3 + +if test "@HAVE_USERMODE@" != "yes" ; then + exit 0 +fi + +if test "$ACTION" = "install" ; then + mkdir -p $DESTDIR/etc/pam.d + cp rdalsaconfig-root-pam $DESTDIR/etc/pam.d/rdalsaconfig-root + cp rddbconfig-root-pam $DESTDIR/etc/pam.d/rddbconfig-root + mkdir -p $DESTDIR/etc/security/console.apps + cp rdalsaconfig-root-consolehelper $DESTDIR/etc/security/console.apps/rdalsaconfig-root + cp rddbconfig-root-consolehelper $DESTDIR/etc/security/console.apps/rddbconfig-root + rm -f $DESTDIR$PREFIX/bin/rdalsaconfig-root + ln -s /usr/bin/consolehelper $DESTDIR$PREFIX/bin/rdalsaconfig-root + rm -f $DESTDIR$PREFIX/bin/rddbconfig-root + ln -s /usr/bin/consolehelper $DESTDIR$PREFIX/bin/rddbconfig-root +fi + +if test "$ACTION" = "uninstall" ; then + rm -f $DESTDIR/etc/pam.d/rdalsaconfig-root + rm -f $DESTDIR/etc/security/console.apps/rdalsaconfig-root + rm -f $DESTDIR$prefix/bin/rdalsaconfig-root + rm -f $DESTDIR/etc/pam.d/rddbconfig-root + rm -f $DESTDIR/etc/security/console.apps/rddbconfig-root +fi +