aboutsummaryrefslogtreecommitdiffstats
path: root/buildconfigs/mk.netbsd-2.0-xenU
diff options
context:
space:
mode:
Diffstat (limited to 'buildconfigs/mk.netbsd-2.0-xenU')
-rw-r--r--buildconfigs/mk.netbsd-2.0-xenU35
1 files changed, 24 insertions, 11 deletions
diff --git a/buildconfigs/mk.netbsd-2.0-xenU b/buildconfigs/mk.netbsd-2.0-xenU
index d41bb39f57..f5f34c0eb1 100644
--- a/buildconfigs/mk.netbsd-2.0-xenU
+++ b/buildconfigs/mk.netbsd-2.0-xenU
@@ -1,5 +1,16 @@
NETBSD_RELEASE ?= 2.0
+
+EXTRAVERSION = xenU
+
+FULLVERSION = $(NETBSD_VER)-$(EXTRAVERSION)
+
+NETBSD_DIR = netbsd-$(FULLVERSION)
+
+.PHONY: build clean mrproper mkpatch
+
+include buildconfigs/Rules.mk
+
NETBSD_VER ?= $(shell ( /bin/ls -ld netbsd-$(NETBSD_RELEASE)*-xen-sparse ) 2>/dev/null | \
sed -e 's!^.*netbsd-\(.\+\)-xen-sparse!\1!' )
NETBSD_CVSSNAP ?= 20040906
@@ -11,13 +22,19 @@ NETBSD_TOOLS_SRC ?= $(firstword $(foreach dir,$(subst :, ,$(NETBSD_SRC_PATH)),\
NETBSD_TREES := netbsd-$(NETBSD_VER)-xenU
-pristine-netbsd-src:
+build: $(NETBSD_DIR) netbsd-$(EXTRAVERSION)
+
+netbsd-$(NETBSD_VER)-xen-kernel-$(NETBSD_CVSSNAP).tar.bz2:
ifeq ($(NETBSD_SRC),)
@echo "Cannot find netbsd-$(NETBSD_VER)-xen-kernel-$(NETBSD_CVSSNAP).tar.gz in path $(NETBSD_SRC_PATH)"
@wget http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/netbsd-$(NETBSD_VER)-xen-kernel-$(NETBSD_CVSSNAP).tar.bz2 -O./netbsd-$(NETBSD_VER)-xen-kernel-$(NETBSD_CVSSNAP).tar.bz2
NETBSD_SRC := ./netbsd-$(NETBSD_VER)-xen-kernel-$(NETBSD_CVSSNAP).tar.bz2
endif
+pristine-netbsd-$(NETBSD_VER): $(NETBSD_SRC)
+ rm -rf tmp-netbsd-$(NETBSD_VER) $@ && mkdir -p tmp-netbsd-$(NETBSD_VER) && tar -C tmp-netbsd-$(NETBSD_VER) -jxf $(NETBSD_SRC) && mv tmp-netbsd-$(NETBSD_VER)/* $@
+ touch $@ # update timestamp to avoid rebuild
+
pristine-netbsd-tools-src:
ifeq ($(NETBSD_TOOLS_SRC),)
@echo "Cannot find netbsd-$(NETBSD_VER)-tools.tar.gz in path $(NETBSD_SRC_PATH)"
@@ -30,14 +47,12 @@ netbsd-tools: pristine-netbsd-tools-src
echo extract $(NETBSD_TOOLS_SRC); \
tar -jxf $(NETBSD_TOOLS_SRC); }
-mk-netbsd-trees: netbsd-tools pristine-netbsd-src
- $(RM) -rf $(NETBSD_TREES)
- echo $(NETBSD_SRC) | grep -q bz2 && \
- tar -jxf $(NETBSD_SRC) || tar -zxf $(NETBSD_SRC)
- mv netbsd-$(NETBSD_VER)-xen-kernel-$(NETBSD_CVSSNAP) \
- netbsd-$(NETBSD_VER)-xenU
+$(NETBSD_DIR): netbsd-tools pristine-netbsd-$(NETBSD_VER)
+ $(RM) -rf $(NETBSD_DIR)
+ cp -al pristine-netbsd-$(NETBSD_VER) $(NETBSD_DIR)
+ # Apply arch-xen patches
( cd netbsd-$(NETBSD_VER)-xen-sparse ; \
- ./mkbuildtree ../netbsd-$(NETBSD_VER)-xenU )
+ ./mkbuildtree ../$(NETBSD_DIR) )
# build the specified netbsd tree
NBDIR = $(subst netbsd-,netbsd-$(NETBSD_VER)-,$@)
@@ -46,7 +61,5 @@ netbsd-xen%:
$(MAKE) -C $(NBDIR) netbsd
$(MAKE) -C $(NBDIR) INSTALL_PATH=$(INSTALL_DIR) INSTALL_NAME=boot/netbsd-$(NETBSD_VER)-$(subst netbsd-,,$@) install
-build: $(NETBSD_TREES)
-
delete:
- rm -rf $(NETBSD_TREES) \ No newline at end of file
+ rm -rf $(NETBSD_TREES)