mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
bitkeeper revision 1.1159.223.26 (41f2cdb6LNpheOtPoAKEUn-czlZFig)
Description: use DESTDIR correctly Standard makefiles always attempt to install to the root(/). Setting DESTDIR is the normal way to install to an alternative location. Setting prefix has the possibility of breaking programs, as the prefix may have been embedded inside a compiled binary. From: Adam Heath <doogie@brainfood.com> Signed-off-by: ian.pratt@cl.cam.ac.uk
This commit is contained in:
1 parent
84a280c892
commit
d2f5d53621
16 files changed
+77
-71
No files matched your search
@@ -2,8 +2,9 @@
|
||||
# Grand Unified Makefile for Xen.
|
||||
#
|
||||
|
||||
DIST_DIR ?= $(shell pwd)/dist
|
||||
INSTALL_DIR ?= $(DIST_DIR)/install
|
||||
DIST_DIR := $(CURDIR)/dist
|
||||
DESTDIR := $(DIST_DIR)/install
|
||||
|
||||
INSTALL := install
|
||||
INSTALL_DIR := $(INSTALL) -d -m0755
|
||||
INSTALL_DATA := $(INSTALL) -m0644
|
||||
@@ -18,7 +19,7 @@ ALLSPARSETREES = $(patsubst %-xen-sparse,%,$(wildcard *-xen-sparse))
|
||||
XKERNELS := $(foreach kernel, $(KERNELS), $(patsubst buildconfigs/mk.%,%,$(wildcard buildconfigs/mk.$(kernel))) )
|
||||
|
||||
|
||||
export INSTALL_DIR
|
||||
export DESTDIR
|
||||
|
||||
include buildconfigs/Rules.mk
|
||||
|
||||
@@ -56,10 +57,10 @@ dist: xen.dist tools.dist kernels docs.install
|
||||
$(INSTALL_PROG) tools/check/chk tools/check/check_* $(DIST_DIR)/check
|
||||
|
||||
xen:
|
||||
$(MAKE) prefix=$(INSTALL_DIR) dist=yes -C xen install
|
||||
$(MAKE) dist=yes -C xen install
|
||||
|
||||
tools:
|
||||
$(MAKE) prefix=$(INSTALL_DIR) dist=yes -C tools install
|
||||
$(MAKE) dist=yes -C tools install
|
||||
|
||||
kernels: $(addsuffix -build,$(XKERNELS))
|
||||
|
||||
|
||||
@@ -15,9 +15,9 @@ include buildconfigs/Rules.mk
|
||||
build: $(LINUX_DIR)/include/linux/autoconf.h
|
||||
if grep "^CONFIG_MODULES=" $(LINUX_DIR)/.config ; then \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen modules ; \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_MOD_PATH=$(INSTALL_DIR) modules_install ; \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_MOD_PATH=$(DESTDIR) modules_install ; \
|
||||
fi
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_PATH=$(INSTALL_DIR) install
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_PATH=$(DESTDIR) install
|
||||
|
||||
patches/tmp/ebtables.diff:
|
||||
mkdir -p patches/tmp
|
||||
|
||||
@@ -15,9 +15,9 @@ include buildconfigs/Rules.mk
|
||||
build: $(LINUX_DIR)/include/linux/autoconf.h
|
||||
if grep "^CONFIG_MODULES=" $(LINUX_DIR)/.config ; then \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen modules ; \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_MOD_PATH=$(INSTALL_DIR) modules_install ; \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_MOD_PATH=$(DESTDIR) modules_install ; \
|
||||
fi
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_PATH=$(INSTALL_DIR) install
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_PATH=$(DESTDIR) install
|
||||
|
||||
$(LINUX_DIR)/include/linux/autoconf.h: pristine-linux-$(LINUX_VER)
|
||||
rm -rf $(LINUX_DIR)
|
||||
|
||||
@@ -15,9 +15,9 @@ include buildconfigs/Rules.mk
|
||||
build: $(LINUX_DIR)/include/linux/autoconf.h
|
||||
if grep "^CONFIG_MODULES=" $(LINUX_DIR)/.config ; then \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen modules ; \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_MOD_PATH=$(INSTALL_DIR) modules_install ; \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_MOD_PATH=$(DESTDIR) modules_install ; \
|
||||
fi
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_PATH=$(INSTALL_DIR) install
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_PATH=$(DESTDIR) install
|
||||
|
||||
$(LINUX_DIR)/include/linux/autoconf.h: pristine-linux-$(LINUX_VER)
|
||||
rm -rf $(LINUX_DIR)
|
||||
|
||||
@@ -15,9 +15,9 @@ include buildconfigs/Rules.mk
|
||||
build: $(LINUX_DIR)/include/linux/autoconf.h
|
||||
if grep "^CONFIG_MODULES=" $(LINUX_DIR)/.config ; then \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen modules ; \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_MOD_PATH=$(INSTALL_DIR) modules_install ; \
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_MOD_PATH=$(DESTDIR) modules_install ; \
|
||||
fi
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_PATH=$(INSTALL_DIR) install
|
||||
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_PATH=$(DESTDIR) install
|
||||
|
||||
$(LINUX_DIR)/include/linux/autoconf.h: pristine-linux-$(LINUX_VER)
|
||||
rm -rf $(LINUX_DIR)
|
||||
|
||||
+7
-6
@@ -11,7 +11,8 @@ TGIF := tgif
|
||||
LATEX2HTML := latex2html
|
||||
|
||||
package = xen
|
||||
docdir = /usr/share/doc
|
||||
prefix = /usr
|
||||
docdir = $(prefix)/share/doc
|
||||
pkgdocdir = $(docdir)/$(package)
|
||||
|
||||
DOC_TEX := $(wildcard src/*.tex)
|
||||
@@ -37,11 +38,11 @@ clean:
|
||||
rm -rf $(GFX) ps pdf html
|
||||
|
||||
install: all
|
||||
rm -rf $(prefix)$(pkgdocdir)
|
||||
$(INSTALL_DIR) $(prefix)$(pkgdocdir)
|
||||
cp -dR ps $(prefix)$(pkgdocdir)
|
||||
cp -dR pdf $(prefix)$(pkgdocdir)
|
||||
cp -dR html $(prefix)$(pkgdocdir)
|
||||
rm -rf $(DESTDIR)$(pkgdocdir)
|
||||
$(INSTALL_DIR) $(DESTDIR)$(pkgdocdir)
|
||||
cp -dR ps $(DESTDIR)$(pkgdocdir)
|
||||
cp -dR pdf $(DESTDIR)$(pkgdocdir)
|
||||
cp -dR html $(DESTDIR)$(pkgdocdir)
|
||||
|
||||
pdf/%.pdf: ps/%.ps
|
||||
$(INSTALL_DIR) $(@D)
|
||||
|
||||
+10
-10
@@ -25,23 +25,23 @@ all:
|
||||
install: all install-initd install-configs install-scripts
|
||||
|
||||
install-initd:
|
||||
$(INSTALL_DIR) $(prefix)/etc/init.d
|
||||
$(INSTALL_PROG) $(XEND_INITD) $(prefix)/etc/init.d
|
||||
$(INSTALL_PROG) $(XENDOMAINS_INITD) $(prefix)/etc/init.d
|
||||
$(INSTALL_DIR) $(DESTDIR)/etc/init.d
|
||||
$(INSTALL_PROG) $(XEND_INITD) $(DESTDIR)/etc/init.d
|
||||
$(INSTALL_PROG) $(XENDOMAINS_INITD) $(DESTDIR)/etc/init.d
|
||||
|
||||
install-configs:
|
||||
$(INSTALL_DIR) $(prefix)$(XEN_CONFIG_DIR)
|
||||
$(INSTALL_DIR) $(prefix)$(XEN_CONFIG_DIR)/auto
|
||||
$(INSTALL_DIR) $(DESTDIR)$(XEN_CONFIG_DIR)
|
||||
$(INSTALL_DIR) $(DESTDIR)$(XEN_CONFIG_DIR)/auto
|
||||
for i in $(XEN_CONFIGS); \
|
||||
do [ -a $(prefix)/$(XEN_CONFIG_DIR)/$$i ] || \
|
||||
$(INSTALL_DATA) $$i $(prefix)$(XEN_CONFIG_DIR); \
|
||||
do [ -a $(DESTDIR)/$(XEN_CONFIG_DIR)/$$i ] || \
|
||||
$(INSTALL_DATA) $$i $(DESTDIR)$(XEN_CONFIG_DIR); \
|
||||
done
|
||||
|
||||
install-scripts:
|
||||
$(INSTALL_DIR) $(prefix)$(XEN_SCRIPT_DIR)
|
||||
$(INSTALL_DIR) $(DESTDIR)$(XEN_SCRIPT_DIR)
|
||||
for i in $(XEN_SCRIPTS); \
|
||||
do [ -a $(prefix)/$()/$$i ] || \
|
||||
$(INSTALL_PROG) $$i $(prefix)$(XEN_SCRIPT_DIR); \
|
||||
do [ -a $(DESTDIR)/$()/$$i ] || \
|
||||
$(INSTALL_PROG) $$i $(DESTDIR)$(XEN_SCRIPT_DIR); \
|
||||
done
|
||||
|
||||
clean:
|
||||
@@ -68,12 +68,12 @@ mk-symlinks:
|
||||
ln -sf ../../$(LINUX_ROOT)/include/asm-xen/linux-public/*.h . )
|
||||
|
||||
install: all
|
||||
$(INSTALL_DIR) $(prefix)/usr/lib
|
||||
$(INSTALL_DIR) $(prefix)/usr/include
|
||||
$(INSTALL_PROG) $(LIB) $(prefix)/usr/lib
|
||||
ln -sf $(LIB_NAME).so.$(MAJOR).$(MINOR) $(prefix)/usr/lib/$(LIB_NAME).so.$(MAJOR)
|
||||
ln -sf $(LIB_NAME).so.$(MAJOR) $(prefix)/usr/lib/$(LIB_NAME).so
|
||||
$(INSTALL_DATA) xc.h $(prefix)/usr/include
|
||||
$(INSTALL_DIR) $(DESTDIR)/usr/lib
|
||||
$(INSTALL_DIR) $(DESTDIR)/usr/include
|
||||
$(INSTALL_PROG) $(LIB) $(DESTDIR)/usr/lib
|
||||
ln -sf $(LIB_NAME).so.$(MAJOR).$(MINOR) $(DESTDIR)/usr/lib/$(LIB_NAME).so.$(MAJOR)
|
||||
ln -sf $(LIB_NAME).so.$(MAJOR) $(DESTDIR)/usr/lib/$(LIB_NAME).so
|
||||
$(INSTALL_DATA) xc.h $(DESTDIR)/usr/include
|
||||
|
||||
clean:
|
||||
rm -rf *.a *.so *.o *.opic *.rpm $(LIB) *~ $(DEPS) xen
|
||||
|
||||
@@ -72,10 +72,10 @@ check-for-zlib:
|
||||
fi
|
||||
|
||||
install: all
|
||||
$(INSTALL_DIR) -p $(prefix)/usr/lib
|
||||
$(INSTALL_PROG) $(LIB) $(prefix)/usr/lib
|
||||
ln -sf $(LIB_NAME).so.$(MAJOR).$(MINOR) $(prefix)/usr/lib/$(LIB_NAME).so.$(MAJOR)
|
||||
ln -sf $(LIB_NAME).so.$(MAJOR) $(prefix)/usr/lib/$(LIB_NAME).so
|
||||
$(INSTALL_DIR) -p $(DESTDIR)/usr/lib
|
||||
$(INSTALL_PROG) $(LIB) $(DESTDIR)/usr/lib
|
||||
ln -sf $(LIB_NAME).so.$(MAJOR).$(MINOR) $(DESTDIR)/usr/lib/$(LIB_NAME).so.$(MAJOR)
|
||||
ln -sf $(LIB_NAME).so.$(MAJOR) $(DESTDIR)/usr/lib/$(LIB_NAME).so
|
||||
|
||||
clean:
|
||||
$(RM) *.a *.so *.so.* *.o *.opic *.rpm
|
||||
|
||||
+4
-4
@@ -23,10 +23,10 @@ all: $(TARGETS)
|
||||
$(MAKE) -C miniterm
|
||||
|
||||
install: all
|
||||
$(INSTALL_DIR) $(prefix)/usr/bin
|
||||
$(INSTALL_DIR) $(prefix)/usr/sbin
|
||||
$(INSTALL_PROG) $(INSTALL_BIN) $(prefix)/usr/bin
|
||||
$(INSTALL_PROG) $(INSTALL_SBIN) $(prefix)/usr/sbin
|
||||
$(INSTALL_DIR) $(DESTDIR)/usr/bin
|
||||
$(INSTALL_DIR) $(DESTDIR)/usr/sbin
|
||||
$(INSTALL_PROG) $(INSTALL_BIN) $(DESTDIR)/usr/bin
|
||||
$(INSTALL_PROG) $(INSTALL_SBIN) $(DESTDIR)/usr/sbin
|
||||
$(MAKE) -C miniterm install
|
||||
|
||||
clean:
|
||||
|
||||
@@ -9,8 +9,8 @@ TARGET = miniterm
|
||||
all: $(TARGET)
|
||||
|
||||
install: all
|
||||
$(INSTALL_DIR) $(prefix)/usr/bin
|
||||
$(INSTALL_PROG) $(TARGET) $(prefix)/usr/bin
|
||||
$(INSTALL_DIR) $(DESTDIR)/usr/bin
|
||||
$(INSTALL_PROG) $(TARGET) $(DESTDIR)/usr/bin
|
||||
|
||||
clean:
|
||||
$(RM) *.o $(TARGET) *~
|
||||
@@ -3,7 +3,11 @@ all:
|
||||
python setup.py build
|
||||
|
||||
install: all
|
||||
python setup.py install --home="$(prefix)/usr"
|
||||
if [ "$(DESTDIR)" = "" ]; then \
|
||||
python setup.py install; \
|
||||
else \
|
||||
python setup.py install --root="$(DESTDIR)"; \
|
||||
fi
|
||||
|
||||
clean:
|
||||
rm -rf build *.pyc *.pyo *.o *.a *~
|
||||
+7
-7
@@ -1,4 +1,4 @@
|
||||
sv_insdir := $(prefix)/var/lib/xen/sv
|
||||
sv_insdir := /var/lib/xen/sv
|
||||
INSTALL = install
|
||||
INSTALL_DIR = $(INSTALL) -d -m0755
|
||||
INSTALL_DATA = $(INSTALL) -m0644
|
||||
@@ -17,16 +17,16 @@ IMAGES += next.png previous.png finish.png
|
||||
|
||||
install:
|
||||
# copy XenSV Main.rpy file
|
||||
@$(INSTALL_DIR) $(sv_insdir)
|
||||
@$(INSTALL_DATA) Main.rpy $(sv_insdir)
|
||||
@$(INSTALL_DIR) $(DESTDIR)$(sv_insdir)
|
||||
@$(INSTALL_DATA) Main.rpy $(DESTDIR)$(sv_insdir)
|
||||
|
||||
# copy XenSV images
|
||||
@($(INSTALL_DIR) $(sv_insdir)/images
|
||||
@(cd images && $(INSTALL_DATA) $(IMAGES) $(sv_insdir)/images)
|
||||
@$(INSTALL_DIR) $(DESTDIR)$(sv_insdir)/images
|
||||
@(cd images && $(INSTALL_DATA) $(IMAGES) $(DESTDIR)$(sv_insdir)/images)
|
||||
|
||||
# copy XenSV stylesheet
|
||||
@$(INSTALL_DIR) $(sv_insdir)/inc
|
||||
@$(INSTALL_DATA) inc/style.css inc/script.js $(sv_insdir)/inc
|
||||
@$(INSTALL_DIR) $(DESTDIR)$(sv_insdir)/inc
|
||||
@$(INSTALL_DATA) inc/style.css inc/script.js $(DESTDIR)$(sv_insdir)/inc
|
||||
|
||||
clean:
|
||||
|
||||
@@ -24,12 +24,12 @@ MAN8 = $(wildcard *.8)
|
||||
all: $(BIN)
|
||||
|
||||
install: all
|
||||
$(INSTALL_DIR) $(prefix)/usr/bin
|
||||
$(INSTALL_DIR) $(prefix)/usr/man/man1
|
||||
$(INSTALL_DIR) $(prefix)/usr/man/man8
|
||||
$(INSTALL_PROG) $(BIN) $(SCRIPTS) $(prefix)/usr/bin
|
||||
$(INSTALL_DATA) $(MAN1) $(prefix)/usr/man/man1
|
||||
$(INSTALL_DATA) $(MAN8) $(prefix)/usr/man/man8
|
||||
$(INSTALL_DIR) $(DESTDIR)/usr/bin
|
||||
$(INSTALL_DIR) $(DESTDIR)/usr/man/man1
|
||||
$(INSTALL_DIR) $(DESTDIR)/usr/man/man8
|
||||
$(INSTALL_PROG) $(BIN) $(SCRIPTS) $(DESTDIR)/usr/bin
|
||||
$(INSTALL_DATA) $(MAN1) $(DESTDIR)/usr/man/man1
|
||||
$(INSTALL_DATA) $(MAN8) $(DESTDIR)/usr/man/man8
|
||||
|
||||
clean:
|
||||
$(RM) *.a *.so *.o *.rpm $(BIN)
|
||||
|
||||
+2
-2
@@ -72,8 +72,8 @@ xfrd: $(XFRD_PROG_OBJ)
|
||||
|
||||
.PHONY: install
|
||||
install: xfrd
|
||||
$(INSTALL_DIR) $(prefix)/$(XFRD_INSTALL_DIR)
|
||||
$(INSTALL_PROG) xfrd $(prefix)/$(XFRD_INSTALL_DIR)
|
||||
$(INSTALL_DIR) $(DESTDIR)/$(XFRD_INSTALL_DIR)
|
||||
$(INSTALL_PROG) xfrd $(DESTDIR)/$(XFRD_INSTALL_DIR)
|
||||
|
||||
.PHONY: libutil
|
||||
libutil: $(UTIL_LIB)
|
||||
|
||||
+10
-10
@@ -8,7 +8,8 @@ export XEN_VERSION = 2
|
||||
export XEN_SUBVERSION = 0
|
||||
export XEN_EXTRAVERSION = ""
|
||||
|
||||
export BASEDIR := $(shell pwd)
|
||||
export BASEDIR := $(CURDIR)
|
||||
DESTDIR := $(CURDIR)/../dist/install
|
||||
|
||||
include Rules.mk
|
||||
|
||||
@@ -21,16 +22,15 @@ debug:
|
||||
objdump -D -S $(TARGET)-syms > $(TARGET).s
|
||||
|
||||
install: $(TARGET).gz
|
||||
$(INSTALL_DIR) $(prefix)/boot
|
||||
$(INSTALL_DATA) $(TARGET).gz $(prefix)/boot
|
||||
$(INSTALL_DATA) $(TARGET)-syms $(prefix)/boot
|
||||
$(INSTALL_DIR) $(prefix)/usr/include/xen/io
|
||||
$(INSTALL_DATA) include/public/*.h $(prefix)/usr/include/xen
|
||||
$(INSTALL_DATA) include/public/io/*.h $(prefix)/usr/include/xen/io
|
||||
$(INSTALL_DATA) include/public/COPYING $(prefix)/usr/include/xen
|
||||
$(INSTALL_DIR) $(DESTDIR)/boot
|
||||
$(INSTALL_DATA) $(TARGET).gz $(DESTDIR)/boot
|
||||
$(INSTALL_DATA) $(TARGET)-syms $(DESTDIR)/boot
|
||||
$(INSTALL_DIR) $(DESTDIR)/usr/include/xen/io
|
||||
$(INSTALL_DATA) include/public/*.h $(DESTDIR)/usr/include/xen
|
||||
$(INSTALL_DATA) include/public/io/*.h $(DESTDIR)/usr/include/xen/io
|
||||
$(INSTALL_DATA) include/public/COPYING $(DESTDIR)/usr/include/xen
|
||||
|
||||
dist: $(TARGET)
|
||||
$(MAKE) prefix=`pwd`/../dist/install dist=yes install
|
||||
dist: install
|
||||
|
||||
clean: tools.clean common.clean drivers.clean arch/$(TARGET_ARCH).clean
|
||||
rm -f include/asm *.o $(TARGET)* *~ core include/xen/compile.h
|
||||
|
||||