1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
|
PREFIX ?= /usr
prefix ?= $(PREFIX)
ifeq ($(prefix),/usr)
sysconfdir ?= /etc
localstatedir ?= /var
else
sysconfdir ?= $(prefix)/etc
localstatedir ?= $(prefix)/var
endif
exec_prefix ?= $(prefix)
bindir ?= $(exec_prefix)/bin
datarootdir ?= $(prefix)/share
docdir ?= $(datarootdir)/doc/$(PACKAGE)
mandir ?= $(datarootdir)/man
libdir ?= $(exec_prefix)/lib
INSTALL ?= install
INSTALL_DATA = $(INSTALL) -m 644
INSTALL_PROGRAM = $(INSTALL) -m 755
MKDIR = mkdir -m 755
SYMLINK ?= ln -s
ETCDIR = $(sysconfdir)/$(PACKAGE)
DATADIR = $(datarootdir)/$(PACKAGE)
PYTHONDIR ?= $(datarootdir)/pyshared
PYTHON ?= python
PYTHONLIBDIR ?= $(shell $(PYTHON) -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib()")
build: user-build
user-build user-install::
install: install-dirs install-bin install-config install-doc install-man install-data install-python user-install
install-dirs:
for item in $(DIRS); do \
$(INSTALL) -d $(DESTDIR)$$item; \
done
install-bin:
[ -z "$(BIN)" ] || $(INSTALL) -d $(DESTDIR)$(bindir)
for item in $(BIN); do \
$(INSTALL_PROGRAM) -D $$item $(DESTDIR)$(bindir)/$$(basename $$item); \
done
install-config:
[ -z "$(ETC)" ] || $(INSTALL) -d $(DESTDIR)$(ETCDIR)
for item in $(ETC); do \
$(INSTALL_DATA) -D $$item $(DESTDIR)$(ETCDIR)/$$(basename $$item); \
done
install-doc:
[ -z "$(DOC)" ] || $(INSTALL) -d $(DESTDIR)$(docdir)
for item in $(DOC); do \
$(INSTALL_DATA) -D $$item $(DESTDIR)$(docdir)/$$(basename $$item); \
done
install-man:
[ -z "$(MANPAGES)" ] || $(INSTALL) -d $(DESTDIR)$(mandir)
for item in $(MANPAGES); do \
$(INSTALL_DATA) -D $$item $(DESTDIR)$(mandir)/man$${item##*.}/$$item; \
done
install-data:
[ -z "$(DATA)" ] || $(INSTALL) -d $(DESTDIR)$(DATADIR)
for item in $(DATA); do \
$(INSTALL_DATA) -D $$item $(DESTDIR)$(DATADIR)/$$item; \
done
install-python:
[ -z "$(PYTHONSCRIPTS)" ] || $(INSTALL) -d $(DESTDIR)$(PYTHONDIR)
[ -z "$(PYTHONLIBDIR)" ] || $(MKDIR) -p $(DESTDIR)$(PYTHONLIBDIR)
for pkg in $(PYTHONPKGS); do \
$(MKDIR) -p $(DESTDIR)$(PYTHONDIR)/$$pkg; \
for item in $$(find $$pkg/*); do \
$(INSTALL_DATA) -D $$item $(DESTDIR)$(PYTHONDIR)/$$item; \
done; \
[ -z "$(PYTHONLIBDIR)" ] || for item in $$(find $$pkg/*) ; do \
$(MKDIR) -p $(DESTDIR)$(PYTHONLIBDIR)/$${item%/*}; \
$(SYMLINK) $(PYTHONDIR)/$$item $(DESTDIR)$(PYTHONLIBDIR)/$$item; \
done; \
done
.PHONY: build user-build install install-dirs install-bin install-config install-doc install-man install-data install-python user-install
|