diff --git a/ap_tools/Makefile b/ap_tools/Makefile index 77fe4c3b..a79624a0 100644 --- a/ap_tools/Makefile +++ b/ap_tools/Makefile @@ -1,8 +1,11 @@ include ../common.mak -MDEVCTL_DIR = /etc/mdevctl.d/ -MDEVCTL_SCRIPTS = /etc/mdevctl.d/scripts.d/ -MDEVCTL_CALLOUTS = /etc/mdevctl.d/scripts.d/callouts/ +MDEVCTL_DIR = /usr/lib/mdevctl/ +MDEVCTL_SCRIPTS = /usr/lib/mdevctl/scripts.d/ +MDEVCTL_CALLOUTS = /usr/lib/mdevctl/scripts.d/callouts/ +MDEVCTL_DEP_DIR = /etc/mdevctl.d/ +MDEVCTL_DEP_SCRIPTS = /etc/mdevctl.d/scripts.d/ +MDEVCTL_DEP_CALLOUTS = /etc/mdevctl.d/scripts.d/callouts/ libs = $(rootdir)/libap/libap.a \ $(rootdir)/libutil/libutil.a @@ -32,6 +35,17 @@ install: all fi; \ $(INSTALL) -g $(GROUP) -o $(OWNER) -m 755 ap-check \ $(DESTDIR)$(MDEVCTL_CALLOUTS) + @if [ ! -d $(DESTDIR)$(MDEVCTL_DEP_CALLOUTS) ]; then \ + mkdir -p $(DESTDIR)$(MDEVCTL_DEP_CALLOUTS); \ + chown $(OWNER).$(GROUP) $(DESTDIR)$(MDEVCTL_DEP_DIR); \ + chown $(OWNER).$(GROUP) $(DESTDIR)$(MDEVCTL_DEP_SCRIPTS); \ + chown $(OWNER).$(GROUP) $(DESTDIR)$(MDEVCTL_DEP_CALLOUTS); \ + chmod 755 $(DESTDIR)$(MDEVCTL_DEP_DIR); \ + chmod 755 $(DESTDIR)$(MDEVCTL_DEP_SCRIPTS); \ + chmod 755 $(DESTDIR)$(MDEVCTL_DEP_CALLOUTS); \ + fi; \ + $(INSTALL) -g $(GROUP) -o $(OWNER) -m 755 ap-check.sh \ + $(DESTDIR)$(MDEVCTL_DEP_CALLOUTS) endif clean: diff --git a/ap_tools/ap-check.sh b/ap_tools/ap-check.sh new file mode 100644 index 00000000..d8a4e779 --- /dev/null +++ b/ap_tools/ap-check.sh @@ -0,0 +1,15 @@ +#!/bin/sh +# +# ap-check.sh - Wrapper script for 'ap-check' binary +# +# mdevctl has deprecated the /etc/mdevctl.d/scripts.d/callouts/ location in +# newer releases. This wrapper ensures that mdevctl 1.2.0 and older can +# still access 'ap-check' for now, and will be removed at a later time. +# +# Copyright 2022 IBM Corp. +# +# s390-tools is free software; you can redistribute it and/or modify +# it under the terms of the MIT license. See LICENSE for details. +# + +[ -e /usr/lib/mdevctl/scripts.d/callouts/ap-check ] && /usr/lib/mdevctl/scripts.d/callouts/ap-check "$@"