Message ID | 20230911163846.27197-37-mwilck@suse.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Delegated to: | christophe varoqui |
Headers | show |
Series | multipath-tools: user-friendly names rework | expand |
On Mon, Sep 11, 2023 at 06:38:45PM +0200, mwilck@suse.com wrote: > From: Martin Wilck <mwilck@suse.com> > > Add some logic to Makefile.inc that leads to the same result > for "prefix=" and "prefix=/", or "prefix=/usr" and "prefix=/usr/". > The logic does not work for multiple trailing slashes. It applies > to all XYZ_prefix variables in Makefile.inc. > Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com> > Signed-off-by: Martin Wilck <mwilck@suse.com> > --- > Makefile.inc | 35 ++++++++++++++++++++++------------- > 1 file changed, 22 insertions(+), 13 deletions(-) > > diff --git a/Makefile.inc b/Makefile.inc > index 79e521e..6e384e6 100644 > --- a/Makefile.inc > +++ b/Makefile.inc > @@ -43,22 +43,31 @@ etc_prefix := $(prefix) > # Note: some systemd installations use separate "prefix" and "rootprefix". > # In this case, override only unitdir to use systemd's "rootprefix" instead of $(systemd_prefix) > systemd_prefix := /usr > -unitdir := $(systemd_prefix)/lib/systemd/system > -tmpfilesdir := $(systemd_prefix)/lib/tmpfiles.d > -modulesloaddir := $(systemd_prefix)/lib/modules-load.d > -libudevdir := $(systemd_prefix)/lib/udev > + > +# Make sure all prefix variables end in "/" > +append-slash = $(1)$(if $(filter %/,$(1)),,/) > +override prefix := $(call append-slash,$(prefix)) > +override exec_prefix := $(call append-slash,$(exec_prefix)) > +override usr_prefix := $(call append-slash,$(usr_prefix)) > +override etc_prefix := $(call append-slash,$(etc_prefix)) > +override systemd_prefix := $(call append-slash,$(systemd_prefix)) > + > +unitdir := $(systemd_prefix)lib/systemd/system > +tmpfilesdir := $(systemd_prefix)lib/tmpfiles.d > +modulesloaddir := $(systemd_prefix)lib/modules-load.d > +libudevdir := $(systemd_prefix)lib/udev > udevrulesdir := $(libudevdir)/rules.d > -bindir := $(exec_prefix)/sbin > -mandir := $(usr_prefix)/share/man > +bindir := $(exec_prefix)sbin > +mandir := $(usr_prefix)share/man > LIB := $(if $(shell test -d /lib64 && echo 1),lib64,lib) > -syslibdir := $(prefix)/$(LIB) > -usrlibdir := $(usr_prefix)/$(LIB) > -includedir := $(usr_prefix)/include > +syslibdir := $(prefix)$(LIB) > +usrlibdir := $(usr_prefix)$(LIB) > +includedir := $(usr_prefix)include > pkgconfdir := $(usrlibdir)/pkgconfig > -plugindir := $(prefix)/$(LIB)/multipath > -configdir := $(etc_prefix)/etc/multipath/conf.d > -configfile := $(etc_prefix)/etc/multipath.conf > -statedir := $(etc_prefix)/etc/multipath > +plugindir := $(prefix)$(LIB)/multipath > +configdir := $(etc_prefix)etc/multipath/conf.d > +configfile := $(etc_prefix)etc/multipath.conf > +statedir := $(etc_prefix)etc/multipath > runtimedir := $(if $(shell test -L /var/run -o ! -d /var/run && echo 1),/run,/var/run) > devmapper_incdir := $(or $(shell $(PKG_CONFIG) --variable=includedir devmapper),/usr/include) > libudev_incdir := $(or $(shell $(PKG_CONFIG) --variable=includedir libudev),/usr/include) > -- > 2.42.0 -- dm-devel mailing list dm-devel@redhat.com https://listman.redhat.com/mailman/listinfo/dm-devel
diff --git a/Makefile.inc b/Makefile.inc index 79e521e..6e384e6 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -43,22 +43,31 @@ etc_prefix := $(prefix) # Note: some systemd installations use separate "prefix" and "rootprefix". # In this case, override only unitdir to use systemd's "rootprefix" instead of $(systemd_prefix) systemd_prefix := /usr -unitdir := $(systemd_prefix)/lib/systemd/system -tmpfilesdir := $(systemd_prefix)/lib/tmpfiles.d -modulesloaddir := $(systemd_prefix)/lib/modules-load.d -libudevdir := $(systemd_prefix)/lib/udev + +# Make sure all prefix variables end in "/" +append-slash = $(1)$(if $(filter %/,$(1)),,/) +override prefix := $(call append-slash,$(prefix)) +override exec_prefix := $(call append-slash,$(exec_prefix)) +override usr_prefix := $(call append-slash,$(usr_prefix)) +override etc_prefix := $(call append-slash,$(etc_prefix)) +override systemd_prefix := $(call append-slash,$(systemd_prefix)) + +unitdir := $(systemd_prefix)lib/systemd/system +tmpfilesdir := $(systemd_prefix)lib/tmpfiles.d +modulesloaddir := $(systemd_prefix)lib/modules-load.d +libudevdir := $(systemd_prefix)lib/udev udevrulesdir := $(libudevdir)/rules.d -bindir := $(exec_prefix)/sbin -mandir := $(usr_prefix)/share/man +bindir := $(exec_prefix)sbin +mandir := $(usr_prefix)share/man LIB := $(if $(shell test -d /lib64 && echo 1),lib64,lib) -syslibdir := $(prefix)/$(LIB) -usrlibdir := $(usr_prefix)/$(LIB) -includedir := $(usr_prefix)/include +syslibdir := $(prefix)$(LIB) +usrlibdir := $(usr_prefix)$(LIB) +includedir := $(usr_prefix)include pkgconfdir := $(usrlibdir)/pkgconfig -plugindir := $(prefix)/$(LIB)/multipath -configdir := $(etc_prefix)/etc/multipath/conf.d -configfile := $(etc_prefix)/etc/multipath.conf -statedir := $(etc_prefix)/etc/multipath +plugindir := $(prefix)$(LIB)/multipath +configdir := $(etc_prefix)etc/multipath/conf.d +configfile := $(etc_prefix)etc/multipath.conf +statedir := $(etc_prefix)etc/multipath runtimedir := $(if $(shell test -L /var/run -o ! -d /var/run && echo 1),/run,/var/run) devmapper_incdir := $(or $(shell $(PKG_CONFIG) --variable=includedir devmapper),/usr/include) libudev_incdir := $(or $(shell $(PKG_CONFIG) --variable=includedir libudev),/usr/include)