All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Fixes for build/install system
@ 2009-03-31 12:22 Christoph Egger
  2009-03-31 16:11 ` Ian Jackson
       [not found] ` <200904221037.00833.Christoph.Egger@amd.com>
  0 siblings, 2 replies; 17+ messages in thread
From: Christoph Egger @ 2009-03-31 12:22 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson, Keir Fraser

[-- Attachment #1: Type: text/plain, Size: 701 bytes --]


Hi,

Attached patches get rid of hardcoded install path,
fixes wrong install paths and replaces mkdir -p with $(INSTALL_DIR).
All in all, a command like PREFIX="/usr/local" gmake dist
now installs everything into dist/install/usr/local
instead of dist/install/usr

The xen_build.diff is for xen tree,
xen_build_ioemu.diff is for ioemu git tree.

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>

-- 
---to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Karl-Hammerschmidt-Str. 34, 85609 Dornach b. Muenchen
Geschaeftsfuehrer: Jochen Polster, Thomas M. McCoy, Giuliano Meroni
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632

[-- Attachment #2: xen_build_ioemu.diff --]
[-- Type: text/x-diff, Size: 3836 bytes --]

diff --git a/Makefile b/Makefile
index c395e77..c3c6f33 100644
--- a/Makefile
+++ b/Makefile
@@ -46,10 +46,11 @@ $(filter %-user,$(SUBDIR_RULES)): libqemu_user.a
 
 recurse-all: $(SUBDIR_RULES)
 
-tapdisk-ioemu: CPPFLAGS += -I$(XEN_ROOT)/tools/libxc
-tapdisk-ioemu: CPPFLAGS += -I$(XEN_ROOT)/tools/blktap/lib
-tapdisk-ioemu: CPPFLAGS += -I$(XEN_ROOT)/tools/xenstore
-tapdisk-ioemu: CPPFLAGS += -I$(XEN_ROOT)/tools/include
+CPPFLAGS += -I$(XEN_ROOT)/tools/libxc
+CPPFLAGS += -I$(XEN_ROOT)/tools/blktap/lib
+CPPFLAGS += -I$(XEN_ROOT)/tools/xenstore
+CPPFLAGS += -I$(XEN_ROOT)/tools/include
+
 tapdisk-ioemu: tapdisk-ioemu.c cutils.c block.c block-raw.c block-cow.c block-qcow.c aes.c block-vmdk.c block-cloop.c block-dmg.c block-bochs.c block-vpc.c block-vvfat.c block-qcow2.c hw/xen_blktap.c osdep.c
 	$(CC) -DQEMU_TOOL $(CFLAGS) $(CPPFLAGS) $(BASE_CFLAGS) $(LDFLAGS) $(BASE_LDFLAGS) -o $@ $^ -lz $(LIBS)
 
@@ -230,28 +231,28 @@ BLOBS=
 endif
 
 install-doc: $(DOCS)
-	mkdir -p "$(DESTDIR)$(docdir)"
+	$(INSTALL_DIR) "$(DESTDIR)$(docdir)"
 	$(INSTALL) -m 644 qemu-doc.html  qemu-tech.html "$(DESTDIR)$(docdir)"
 ifndef CONFIG_WIN32
-	mkdir -p "$(DESTDIR)$(mandir)/man1"
-	$(INSTALL) -m 644 qemu.1 qemu-img.1 "$(DESTDIR)$(mandir)/man1"
-	mkdir -p "$(DESTDIR)$(mandir)/man8"
-	$(INSTALL) -m 644 qemu-nbd.8 "$(DESTDIR)$(mandir)/man8"
+	$(INSTALL_DIR) "$(DESTDIR)$(MAN1DIR)"
+	$(INSTALL) -m 644 qemu.1 qemu-img.1 "$(DESTDIR)$(MAN1DIR)"
+	$(INSTALL_DIR) "$(DESTDIR)$(MAN8DIR)"
+	$(INSTALL) -m 644 qemu-nbd.8 "$(DESTDIR)$(MAN8DIR)"
 endif
 
 install: all $(if $(BUILD_DOCS),install-doc)
-	mkdir -p "$(DESTDIR)$(bindir)"
+	$(INSTALL_DIR) "$(DESTDIR)$(bindir)"
 ifneq ($(TOOLS),)
 	$(INSTALL) -m 755 -s $(TOOLS) "$(DESTDIR)$(bindir)"
 endif
 ifneq ($(BLOBS),)
-	mkdir -p "$(DESTDIR)$(datadir)"
+	$(INSTALL_DIR) "$(DESTDIR)$(datadir)"
 	set -e; for x in $(BLOBS); do \
 		$(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x "$(DESTDIR)$(datadir)"; \
 	done
 endif
 ifndef CONFIG_WIN32
-	mkdir -p "$(DESTDIR)$(datadir)/keymaps"
+	$(INSTALL_DIR) "$(DESTDIR)$(datadir)/keymaps"
 	set -e; for x in $(KEYMAPS); do \
 		$(INSTALL) -m 644 $(SRC_PATH)/keymaps/$$x "$(DESTDIR)$(datadir)/keymaps"; \
 	done
diff --git a/xen-config.mak b/xen-config.mak
index 6210619..40984bc 100644
--- a/xen-config.mak
+++ b/xen-config.mak
@@ -8,4 +8,4 @@ CONFIG_SOFTMMU=yes
 
 CFLAGS += -I$(QEMU_ROOT)/hw
 
-bindir = ${prefix}/${LIBLEAFDIR}/xen/bin
+bindir = ${LIBEXEC}
diff --git a/xen-setup b/xen-setup
index 8ca0019..76b1f02 100755
--- a/xen-setup
+++ b/xen-setup
@@ -9,7 +9,7 @@ rm -f config-host.mak
 
 if test -f config-host.h; then mv config-host.h config-host.h~; fi
 
-./configure --disable-gfx-check --disable-curses --disable-slirp "$@" --prefix=/usr
+./configure --disable-gfx-check --disable-curses --disable-slirp "$@" --prefix=$(PREFIX)
 
 target=i386-dm
 
diff --git a/xen-setup-stubdom b/xen-setup-stubdom
index 835e505..eb62ed5 100755
--- a/xen-setup-stubdom
+++ b/xen-setup-stubdom
@@ -21,7 +21,7 @@ TARGET_CPPFLAGS += $TARGET_CPPFLAGS -DCONFIG_STUBDOM -D__XEN_TOOLS__
 TARGET_CFLAGS= $TARGET_CFLAGS
 TARGET_LDFLAGS= $TARGET_LDFLAGS
 
-bindir = \${prefix}/\${LIBLEAFDIR}/xen/bin
+bindir = \${LIBEXEC}
 END
 mv -f $target/config.mak.new $target/config.mak
 #----------
@@ -31,7 +31,7 @@ ln -sf ../i386-dm/hookslib.mak $target/
 
 #----------
 cat <<END >config-host.h.new
-#define CONFIG_QEMU_SHAREDIR "/usr/share/xen/qemu"
+#define CONFIG_QEMU_SHAREDIR "$(SHAREDIR)/xen/qemu"
 #define HOST_I386 1
 #define HOST_LONG_BITS 32
 #define HAVE_BYTESWAP_H 1
@@ -48,9 +48,9 @@ cat <<END >config-host.mak.new
 CONFIG_STUBDOM=yes
 prefix=/usr
 bindir=\${prefix}/bin
-mandir=\${prefix}/share/man
-datadir=\${prefix}/share/qemu
-docdir=\${prefix}/share/doc/qemu
+mandir=\$(MANDIR)
+datadir=\$(SHAREDIR)/qemu
+docdir=\$(SHAREDIR)/doc/qemu
 MAKE=make
 INSTALL=install
 CC=gcc

[-- Attachment #3: xen_build.diff --]
[-- Type: text/x-diff, Size: 3500 bytes --]

diff -r f2cf89a4e762 Config.mk
--- a/Config.mk	Tue Mar 31 12:06:57 2009 +0100
+++ b/Config.mk	Tue Mar 31 14:12:27 2009 +0200
@@ -19,8 +19,6 @@ HOSTCFLAGS += -fno-strict-aliasing
 
 DISTDIR     ?= $(XEN_ROOT)/dist
 DESTDIR     ?= /
-DOCDIR      ?= /usr/share/doc/xen
-MANDIR      ?= /usr/share/man
 
 # Allow phony attribute to be listed as dependency rather than fake target
 .PHONY: .phony
@@ -28,6 +26,10 @@ MANDIR      ?= /usr/share/man
 include $(XEN_ROOT)/config/$(XEN_OS).mk
 include $(XEN_ROOT)/config/$(XEN_TARGET_ARCH).mk
 
+SHAREDIR    ?= $(PREFIX)/share
+DOCDIR      ?= $(SHAREDIR)/doc/xen
+MANDIR      ?= $(SHAREDIR)/man
+
 ifneq ($(EXTRA_PREFIX),)
 EXTRA_INCLUDES += $(EXTRA_PREFIX)/include
 EXTRA_LIB += $(EXTRA_PREFIX)/$(LIBLEAFDIR)
diff -r f2cf89a4e762 config/StdGNU.mk
--- a/config/StdGNU.mk	Tue Mar 31 12:06:57 2009 +0100
+++ b/config/StdGNU.mk	Tue Mar 31 14:12:27 2009 +0200
@@ -31,7 +31,8 @@ LIBDIR = $(PREFIX)/$(LIBLEAFDIR)
 LIBDIR_x86_32 = $(PREFIX)/$(LIBLEAFDIR_x86_32)
 LIBDIR_x86_64 = $(PREFIX)/$(LIBLEAFDIR_x86_64)
 LIBEXEC = $(LIBDIR_x86_32)/xen/bin
-MANDIR = $(PREFIX)/share/man
+SHAREDIR = $(PREFIX)/share
+MANDIR = $(SHAREDIR)/man
 MAN1DIR = $(MANDIR)/man1
 MAN8DIR = $(MANDIR)/man8
 SBINDIR = $(PREFIX)/sbin
diff -r f2cf89a4e762 tools/pygrub/Makefile
--- a/tools/pygrub/Makefile	Tue Mar 31 12:06:57 2009 +0100
+++ b/tools/pygrub/Makefile	Tue Mar 31 14:12:27 2009 +0200
@@ -12,7 +12,7 @@ build:
 ifndef XEN_PYTHON_NATIVE_INSTALL
 install: LIBPATH=$(shell PYTHONPATH=../python/xen/util python -c "import auxbin; print auxbin.libpath()")
 install: all
-	CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py install --home="$(DESTDIR)/usr" --prefix="" --install-lib="$(DESTDIR)$(LIBPATH)/python"
+	CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py install --home="$(DESTDIR)$(PREFIX)" --prefix="" --install-lib="$(DESTDIR)$(LIBDIR)/python"
 	$(INSTALL_DIR) $(DESTDIR)/var/run/xend/boot
 else
 install: all
diff -r f2cf89a4e762 tools/python/Makefile
--- a/tools/python/Makefile	Tue Mar 31 12:06:57 2009 +0100
+++ b/tools/python/Makefile	Tue Mar 31 14:12:27 2009 +0200
@@ -12,7 +12,7 @@ PODIR := xen/xm/messages
 POTFILE := $(PODIR)/xen-xm.pot
 I18NSRCFILES = $(shell find xen/xm/ -name '*.py')
 CATALOGS = $(patsubst %,xen/xm/messages/%.mo,$(LINGUAS))
-NLSDIR = /usr/share/locale
+NLSDIR = $(SHAREDIR)/locale
 
 .PHONY: build buildpy
 buildpy: 
@@ -57,19 +57,19 @@ refresh-po: $(POTFILE)
 ifndef XEN_PYTHON_NATIVE_INSTALL
 install: LIBPATH=$(shell PYTHONPATH=xen/util python -c "import auxbin; print auxbin.libpath()")
 install: install-messages install-dtd
-	CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py install --home="$(DESTDIR)/usr" --prefix="" --force --install-lib="$(DESTDIR)$(LIBPATH)/python"
+	CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py install --home="$(DESTDIR)$(PREFIX)" --prefix="" --force --install-lib="$(DESTDIR)$(LIBDIR)/python"
 else
 install: install-messages install-dtd
 	CC="$(CC)" CFLAGS="$(CFLAGS)" python setup.py install --root="$(DESTDIR)" --force
 endif
 
 install-dtd: all
-	$(INSTALL_DIR) $(DESTDIR)/usr/share/xen
-	$(INSTALL_DATA) xen/xm/create.dtd $(DESTDIR)/usr/share/xen
+	$(INSTALL_DIR) $(DESTDIR)$(DOCDIR)
+	$(INSTALL_DATA) xen/xm/create.dtd $(DESTDIR)$(DOCDIR)
 
 install-messages: all
 	set -e; if which $(MSGFMT) >/dev/null ; then \
-		mkdir -p $(DESTDIR)$(NLSDIR); \
+		$(INSTALL_DIR) $(DESTDIR)$(NLSDIR); \
 		for l in $(LINGUAS); do \
 			$(INSTALL_DIR) $(DESTDIR)$(NLSDIR)/$$l; \
 			$(INSTALL_DIR) $(DESTDIR)$(NLSDIR)/$$l/LC_MESSAGES; \

[-- Attachment #4: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply related	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2009-05-08 16:13 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-31 12:22 [PATCH] Fixes for build/install system Christoph Egger
2009-03-31 16:11 ` Ian Jackson
2009-04-01  7:44   ` Christoph Egger
     [not found] ` <200904221037.00833.Christoph.Egger@amd.com>
     [not found]   ` <18927.13912.58144.792099@mariner.uk.xensource.com>
2009-04-22 15:46     ` [PATCH] ioemu: " Christoph Egger
2009-04-23 15:43       ` Ian Jackson
2009-04-23 15:54         ` Christoph Egger
2009-04-23 17:19           ` Ian Jackson
2009-04-24  6:34             ` Christoph Egger
2009-04-29 15:30               ` Ian Jackson
2009-05-04  9:42                 ` Christoph Egger
2009-05-05 14:00                   ` Ian Jackson
2009-05-05 14:15                     ` Christoph Egger
2009-05-05 14:28                       ` Ian Jackson
2009-05-05 15:25                         ` Christoph Egger
2009-05-05 17:22                           ` Ian Jackson
2009-05-08  9:29                             ` Christoph Egger
2009-05-08 16:13                               ` Ian Jackson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.