src/Makefile: make install locations configurable
This allows following the distribution policies for where these things should be placed. Defaults stay as they were.
This commit is contained in:
parent
bd17b7d538
commit
d4f2faf68c
53
src/Makefile
53
src/Makefile
@ -77,7 +77,14 @@ else
|
||||
INSTALL_DATA = install -m 644
|
||||
endif
|
||||
INSTALL_DIR = install -m 755 -d
|
||||
MANDIR = /usr/share/man
|
||||
|
||||
ROOT ?=
|
||||
base_bindir ?= /bin
|
||||
base_sbindir ?= /sbin
|
||||
bindir ?= /usr/bin
|
||||
sysconfdir ?= /etc
|
||||
includedir ?= /usr/include
|
||||
mandir ?= /usr/share/man
|
||||
|
||||
ifeq ($(WITH_SELINUX),yes)
|
||||
SELINUX_DEF = -DWITH_SELINUX
|
||||
@ -191,45 +198,45 @@ clobber: cleanobjs
|
||||
distclean: clobber
|
||||
|
||||
install: all
|
||||
$(INSTALL_DIR) $(ROOT)/bin/ $(ROOT)/sbin/
|
||||
$(INSTALL_DIR) $(ROOT)/usr/bin/
|
||||
$(INSTALL_DIR) $(ROOT)$(base_bindir)/ $(ROOT)$(base_sbindir)/
|
||||
$(INSTALL_DIR) $(ROOT)$(bindir)/
|
||||
for i in $(BIN); do \
|
||||
$(INSTALL_EXEC) $$i $(ROOT)/bin/ ; \
|
||||
$(INSTALL_EXEC) $$i $(ROOT)$(base_bindir)/ ; \
|
||||
done
|
||||
for i in $(SBIN); do \
|
||||
$(INSTALL_EXEC) $$i $(ROOT)/sbin/ ; \
|
||||
$(INSTALL_EXEC) $$i $(ROOT)$(base_sbindir)/ ; \
|
||||
done
|
||||
for i in $(USRBIN); do \
|
||||
$(INSTALL_EXEC) $$i $(ROOT)/usr/bin/ ; \
|
||||
$(INSTALL_EXEC) $$i $(ROOT)$(bindir)/ ; \
|
||||
done
|
||||
# $(INSTALL_DIR) $(ROOT)/etc/
|
||||
$(INSTALL_DIR) $(ROOT)/etc/inittab.d
|
||||
# $(INSTALL_EXEC) ../doc/initscript.sample $(ROOT)/etc/
|
||||
ln -sf halt $(ROOT)/sbin/reboot
|
||||
ln -sf halt $(ROOT)/sbin/poweroff
|
||||
ln -sf init $(ROOT)/sbin/telinit
|
||||
ln -sf /sbin/killall5 $(ROOT)/bin/pidof
|
||||
if [ ! -f $(ROOT)/usr/bin/lastb ]; then \
|
||||
ln -sf last $(ROOT)/usr/bin/lastb; \
|
||||
ln -sf halt $(ROOT)$(base_sbindir)/reboot
|
||||
ln -sf halt $(ROOT)$(base_sbindir)/poweroff
|
||||
ln -sf init $(ROOT)$(base_sbindir)/telinit
|
||||
ln -sf $(base_sbindir)/killall5 $(ROOT)$(base_bindir)/pidof
|
||||
if [ ! -f $(ROOT)$(bindir)/lastb ]; then \
|
||||
ln -sf last $(ROOT)$(bindir)/lastb; \
|
||||
fi
|
||||
$(INSTALL_DIR) $(ROOT)/usr/include/
|
||||
$(INSTALL_DATA) initreq.h $(ROOT)/usr/include/
|
||||
$(INSTALL_DIR) $(ROOT)$(includedir)/
|
||||
$(INSTALL_DATA) initreq.h $(ROOT)$(includedir)/
|
||||
for lang in '' $(patsubst ../man/po/%.po,%,$(wildcard ../man/po/??.po)); do \
|
||||
$(INSTALL_DIR) $(ROOT)$(MANDIR)/man1/$$lang; \
|
||||
$(INSTALL_DIR) $(ROOT)$(MANDIR)/man5/$$lang; \
|
||||
$(INSTALL_DIR) $(ROOT)$(MANDIR)/man8/$$lang; \
|
||||
$(INSTALL_DIR) $(ROOT)$(mandir)/man1/$$lang; \
|
||||
$(INSTALL_DIR) $(ROOT)$(mandir)/man5/$$lang; \
|
||||
$(INSTALL_DIR) $(ROOT)$(mandir)/man8/$$lang; \
|
||||
done
|
||||
for man in $(MAN1) $(subst ../man/,,$(foreach man,$(MAN1),$(wildcard ../man/??/$(man)))); do \
|
||||
$(INSTALL_DATA) ../man/$$man $(ROOT)$(MANDIR)/man1/$$man; \
|
||||
sed -i "1{ $(MANDB); }" $(ROOT)$(MANDIR)/man1/$$man ; \
|
||||
$(INSTALL_DATA) ../man/$$man $(ROOT)$(mandir)/man1/$$man; \
|
||||
sed -i "1{ $(MANDB); }" $(ROOT)$(mandir)/man1/$$man ; \
|
||||
done
|
||||
for man in $(MAN5) $(subst ../man/,,$(foreach man,$(MAN5),$(wildcard ../man/??/$(man)))); do \
|
||||
$(INSTALL_DATA) ../man/$$man $(ROOT)$(MANDIR)/man5/$$man; \
|
||||
sed -i "1{ $(MANDB); }" $(ROOT)$(MANDIR)/man5/$$man ; \
|
||||
$(INSTALL_DATA) ../man/$$man $(ROOT)$(mandir)/man5/$$man; \
|
||||
sed -i "1{ $(MANDB); }" $(ROOT)$(mandir)/man5/$$man ; \
|
||||
done
|
||||
for man in $(MAN8) $(subst ../man/,,$(foreach man,$(MAN8),$(wildcard ../man/??/$(man)))); do \
|
||||
$(INSTALL_DATA) ../man/$$man $(ROOT)$(MANDIR)/man8/$$man; \
|
||||
sed -i "1{ $(MANDB); }" $(ROOT)$(MANDIR)/man8/$$man ; \
|
||||
$(INSTALL_DATA) ../man/$$man $(ROOT)$(mandir)/man8/$$man; \
|
||||
sed -i "1{ $(MANDB); }" $(ROOT)$(mandir)/man8/$$man ; \
|
||||
done
|
||||
ifeq ($(ROOT),)
|
||||
#
|
||||
|
Loading…
Reference in New Issue
Block a user