On Fri, 2023-11-10 at 14:53 -0500, Benjamin Marzinski wrote: > The current build system, with nothing overridden, will install the > man > pages in /share/man, which AFAIK isn't correct for any distribution. > > Signed-off-by: Benjamin Marzinski <bmarzins@xxxxxxxxxx> > --- > Makefile.inc | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/Makefile.inc b/Makefile.inc > index a20e2cec..ed40b449 100644 > --- a/Makefile.inc > +++ b/Makefile.inc > @@ -60,7 +60,7 @@ 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 > +mandir := /usr/share/man > LIB := $(if $(shell test -d /lib64 && echo 1),lib64,lib) > syslibdir := $(prefix)$(LIB) > usrlibdir := $(usr_prefix)$(LIB) Hm. You are right for the default case, but the current code works correctly for prefix=/usr/local, for example. Also, I don't like using no hard-coded values for the secondary paths like "mandir" and "bindir". What about this instead? diff --git a/Makefile.inc b/Makefile.inc index a20e2ce..6b45430 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -36,7 +36,7 @@ prefix := # Prefix for binaries exec_prefix := $(prefix) # Prefix for non-essential libraries (libdmmp) -usr_prefix := $(prefix) +usr_prefix := $(if $(prefix),$(prefix),/usr) # Prefix for configfuration files (multipath.conf) etc_prefix := $(prefix) # Where to install systemd-related files. systemd is usually installed under /usr This will put the man pages under /usr/man is prefix is empty (the default case) and under $(prefix)/man otherwise (i.e. /usr/man if prefix=/usr). Thanks, Martin