Skip to content

Commit

Permalink
Remove wget from Makefiles (#48)
Browse files Browse the repository at this point in the history
Ensure that every file that is downloaded from network will be verified. All
files are downloaded from main Makefile, verified and then placed in correct
directory by xen.spec. wget calls from Makefiles are removed by patch.
  • Loading branch information
marmarek committed May 12, 2011
1 parent 78823a3 commit dcd6c0a
Show file tree
Hide file tree
Showing 11 changed files with 187 additions and 5 deletions.
22 changes: 18 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -59,14 +59,28 @@ PCIUTILS_SIGN_SUFF := .sign
ZLIB_FILE := zlib-1.2.3.tar.gz
ZLIB_URL := http://downloads.sourceforge.net/project/libpng/zlib/1.2.3/$(ZLIB_FILE)

OCAML_FILE := ocaml-3.11.0.tar.gz
OCAML_URL := http://caml.inria.fr/pub/distrib/ocaml-3.11/$(OCAML_FILE)

GC_FILE = gc.tar.gz
GC_URL := http://xenbits.xensource.com/xen-extfiles/$(GC_FILE)

VTPM_FILE := tpm_emulator-0.5.1.tar.gz
VTPM_URL := http://download.berlios.de/tpm-emulator/$(VTPM_FILE)

TBOOT_FILE := tboot-20090330.tar.gz
TBOOT_URL := http://xenbits.xensource.com/xen-extfiles/tboot-20090330.tar.gz

URL := $(SRC_BASEURL)/$(SRC_FILE)
URL_SIGN := $(SRC_BASEURL)/$(SIGN_FILE)

get-sources: $(SRC_FILE) $(SIGN_FILE) $(GRUB_FILE) $(GRUB_FILE)$(GRUB_SIGN_SUFF) $(LWIP_FILE) $(LWIP_FILE)$(LWIP_SIGN_SUFF) $(NEWLIB_FILE) $(PCIUTILS_FILE) $(PCIUTILS_FILE)$(PCIUTILS_SIGN_SUFF) $(ZLIB_FILE)
ALL_FILES := $(SRC_FILE) $(SIGN_FILE) $(GRUB_FILE) $(GRUB_FILE)$(GRUB_SIGN_SUFF) $(LWIP_FILE) $(LWIP_FILE)$(LWIP_SIGN_SUFF) $(NEWLIB_FILE) $(PCIUTILS_FILE) $(PCIUTILS_FILE)$(PCIUTILS_SIGN_SUFF) $(ZLIB_FILE) $(OCAML_FILE) $(GC_FILE) $(VTPM_FILE) $(TBOOT_FILE)

get-sources: $(ALL_FILES)

$(SRC_FILE) $(SIGN_FILE) $(GRUB_FILE) $(GRUB_FILE)$(GRUB_SIGN_SUFF) $(LWIP_FILE) $(LWIP_FILE)$(LWIP_SIGN_SUFF) $(NEWLIB_FILE) $(PCIUTILS_FILE) $(PCIUTILS_FILE)$(PCIUTILS_SIGN_SUFF) $(ZLIB_FILE):
$(ALL_FILES):
@echo -n "Downloading sources... "
@wget -c $(URL) $(URL_SIGN) $(GRUB_URL) $(GRUB_URL)$(GRUB_SIGN_SUFF) $(LWIP_URL) $(LWIP_URL)$(LWIP_SIGN_SUFF) $(NEWLIB_URL) $(PCIUTILS_URL) $(PCIUTILS_URL)$(PCIUTILS_SIGN_SUFF) $(ZLIB_URL)
@wget -c $(URL) $(URL_SIGN) $(GRUB_URL) $(GRUB_URL)$(GRUB_SIGN_SUFF) $(LWIP_URL) $(LWIP_URL)$(LWIP_SIGN_SUFF) $(NEWLIB_URL) $(PCIUTILS_URL) $(PCIUTILS_URL)$(PCIUTILS_SIGN_SUFF) $(ZLIB_URL) $(OCAML_URL) $(GC_URL) $(VTPM_URL) $(TBOOT_URL)
@echo "OK."

verify-sources: verify-sources-sig verify-sources-sign verify-sources-sum
Expand All @@ -77,7 +91,7 @@ verify-sources-sig: $(SRC_FILE) $(GRUB_FILE) $(LWIP_FILE)
verify-sources-sign: $(PCIUTILS_FILE)
@for f in $^; do echo "Checking gpg sig of $$f..."; gpg --verify $$f.sign $$f; done

verify-sources-sum: $(NEWLIB_FILE) $(ZLIB_FILE)
verify-sources-sum: $(NEWLIB_FILE) $(ZLIB_FILE) $(OCAML_FILE) $(GC_FILE) $(VTPM_FILE) $(TBOOT_FILE)
@for f in $^; do md5sum -c $$f.md5sum; done
@for f in $^; do sha1sum -c $$f.sha1sum; done

Expand Down
1 change: 1 addition & 0 deletions gc.tar.gz.md5sum
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
418d38bd9c66398386a372ec0435250e gc.tar.gz
1 change: 1 addition & 0 deletions gc.tar.gz.sha1sum
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
6d5def5ba5d29292ba9c76f04df3ec06d3ab3278 gc.tar.gz
1 change: 1 addition & 0 deletions ocaml-3.11.0.tar.gz.md5sum
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
be152066bdf09761ddf1c31291e5cb90 ocaml-3.11.0.tar.gz
1 change: 1 addition & 0 deletions ocaml-3.11.0.tar.gz.sha1sum
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
4e9cd02f15a2334086c1538d1478ec6a99c911c8 ocaml-3.11.0.tar.gz
1 change: 1 addition & 0 deletions tboot-20090330.tar.gz.md5sum
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
64b9691df2ea3c144811b89c7e396cfe tboot-20090330.tar.gz
1 change: 1 addition & 0 deletions tboot-20090330.tar.gz.sha1sum
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
e78e288d1638fc3d33195ccf97e58cd308d56cb2 tboot-20090330.tar.gz
1 change: 1 addition & 0 deletions tpm_emulator-0.5.1.tar.gz.md5sum
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
27e5a9af9ff70de9b4acfb8fff777737 tpm_emulator-0.5.1.tar.gz
1 change: 1 addition & 0 deletions tpm_emulator-0.5.1.tar.gz.sha1sum
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
446a28a580612f27ba286de2ddc65a5178d73bf7 tpm_emulator-0.5.1.tar.gz
150 changes: 150 additions & 0 deletions xen-no-downloads.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
diff -ru xen-4.1.0.orig/Makefile xen-4.1.0/Makefile
--- xen-4.1.0.orig/Makefile 2011-03-25 11:42:47.000000000 +0100
+++ xen-4.1.0/Makefile 2011-05-12 16:43:57.998690847 +0200
@@ -272,7 +272,3 @@

tboot/Makefile: tboot/$(TBOOT_TARFILE)
[ -e tboot/Makefile ] || tar -xzf tboot/$(TBOOT_TARFILE) -C tboot/ --strip-components 1
-
-tboot/$(TBOOT_TARFILE):
- mkdir -p tboot
- wget -O tboot/$(TBOOT_TARFILE) $(TBOOT_BASE_URL)/$(TBOOT_TARFILE)
diff -ru xen-4.1.0.orig/stubdom/Makefile xen-4.1.0/stubdom/Makefile
--- xen-4.1.0.orig/stubdom/Makefile 2011-03-25 11:42:49.000000000 +0100
+++ xen-4.1.0/stubdom/Makefile 2011-05-12 16:43:57.998690847 +0200
@@ -31,8 +31,6 @@
OCAML_URL?=http://caml.inria.fr/pub/distrib/ocaml-3.11
OCAML_VERSION=3.11.0

-WGET=wget -c
-
GNU_TARGET_ARCH:=$(XEN_TARGET_ARCH)
ifeq ($(XEN_TARGET_ARCH),x86_32)
GNU_TARGET_ARCH:=i686
@@ -94,9 +92,6 @@
# Cross-newlib
##############

-newlib-$(NEWLIB_VERSION).tar.gz:
- $(WGET) $(NEWLIB_URL)/$@
-
newlib-$(NEWLIB_VERSION): newlib-$(NEWLIB_VERSION).tar.gz
tar xzf $<
patch -d $@ -p0 < newlib.patch
@@ -120,9 +115,6 @@
# Cross-zlib
############

-zlib-$(ZLIB_VERSION).tar.gz:
- $(WGET) $(ZLIB_URL)/$@
-
zlib-$(XEN_TARGET_ARCH): zlib-$(ZLIB_VERSION).tar.gz
tar xzf $<
mv zlib-$(ZLIB_VERSION) $@
@@ -140,9 +132,6 @@
# Cross-libpci
##############

-pciutils-$(LIBPCI_VERSION).tar.bz2:
- $(WGET) $(LIBPCI_URL)/$@
-
pciutils-$(XEN_TARGET_ARCH): pciutils-$(LIBPCI_VERSION).tar.bz2
tar xjf $<
mv pciutils-$(LIBPCI_VERSION) $@
@@ -168,9 +157,6 @@
# lwIP
######

-lwip-$(LWIP_VERSION).tar.gz:
- $(WGET) $(LWIP_URL)/$@
-
lwip-$(XEN_TARGET_ARCH): lwip-$(LWIP_VERSION).tar.gz
tar xzf $<
mv lwip $@
@@ -184,9 +170,6 @@
CAMLLIB = $(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf/lib/ocaml
OCAML_STAMPFILE=$(CAMLLIB)/.dirstamp

-ocaml-$(OCAML_VERSION).tar.gz:
- $(WGET) $(OCAML_URL)/$@
-
ocaml-$(XEN_TARGET_ARCH)/.dirstamp: ocaml-$(OCAML_VERSION).tar.gz ocaml.patch
tar xzf $<
cd ocaml-$(OCAML_VERSION) && patch -p0 < ../ocaml.patch
@@ -320,9 +303,6 @@
# Grub
######

-grub-$(GRUB_VERSION).tar.gz:
- $(WGET) $(GRUB_URL)/$@
-
grub-upstream: grub-$(GRUB_VERSION).tar.gz
tar xzf $<
mv grub-$(GRUB_VERSION) $@
diff -ru xen-4.1.0.orig/tools/firmware/etherboot/Makefile xen-4.1.0/tools/firmware/etherboot/Makefile
--- xen-4.1.0.orig/tools/firmware/etherboot/Makefile 2011-03-25 11:42:50.000000000 +0100
+++ xen-4.1.0/tools/firmware/etherboot/Makefile 2011-05-12 16:46:42.405730483 +0200
@@ -34,15 +34,6 @@
$(MAKE) NO_WERROR=1 $@.new
mv -f $@.new $@

-$T:
- if ! wget -O _$T $(IPXE_TARBALL_URL); then \
- $(GIT) clone $(IPXE_GIT_URL) $D.git; \
- (cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
- $(IPXE_GIT_TAG) | gzip >../_$T); \
- rm -rf $D.git; \
- fi
- mv _$T $T
-
$D/src/arch/i386/Makefile: $T Config
rm -rf $D
gzip -dc $T | tar xf -
diff -ru xen-4.1.0.orig/tools/vnet/Makefile xen-4.1.0/tools/vnet/Makefile
--- xen-4.1.0.orig/tools/vnet/Makefile 2011-03-25 11:42:52.000000000 +0100
+++ xen-4.1.0/tools/vnet/Makefile 2011-05-12 16:43:57.998690847 +0200
@@ -16,10 +16,6 @@
.PHONY: all
all: compile

-gc.tar.gz:
- #wget http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/$@
- wget $(XEN_EXTFILES_URL)/$@
-
.PHONY: gc
gc: gc.tar.gz
tar xfz gc.tar.gz
diff -ru xen-4.1.0.orig/tools/vtpm/Makefile xen-4.1.0/tools/vtpm/Makefile
--- xen-4.1.0.orig/tools/vtpm/Makefile 2011-03-25 11:42:53.000000000 +0100
+++ xen-4.1.0/tools/vtpm/Makefile 2011-05-12 16:43:58.002803897 +0200
@@ -39,10 +39,6 @@
rm -f $(TPM_EMULATOR_TARFILE) tpm_emulator.patch.old vtpm.patch.old
rm -rf $(TPM_EMULATOR_DIR) $(VTPM_DIR) $(ORIG_DIR)

-# Download Swiss emulator
-$(TPM_EMULATOR_TARFILE):
- wget http://download.berlios.de/tpm-emulator/$(TPM_EMULATOR_TARFILE)
-
# Create vtpm dirs
$(VTPM_DIR)/tpmd/tpmd: $(TPM_EMULATOR_TARFILE) vtpm-0.5.1.patch
rm -rf $(VTPM_DIR)
diff -ru xen-4.1.0.orig1/buildconfigs/src.tarball xen-4.1.0/buildconfigs/src.tarball
--- xen-4.1.0.orig1/buildconfigs/src.tarball 2011-03-25 11:42:47.000000000 +0100
+++ xen-4.1.0/buildconfigs/src.tarball 2011-05-12 17:28:31.906486192 +0200
@@ -3,8 +3,6 @@

LINUX_SRCDIR ?= linux-$(LINUX_VER)

-KETCHUP ?= python buildconfigs/ketchup
-
vpath linux-%.tar.bz2 $(LINUX_SRC_PATH)

# download a pristine Linux kernel tarball if there isn't one in LINUX_SRC_PATH
@@ -13,7 +11,3 @@
false wget $(XEN_LINUX_MIRROR)/$@ -O./$@

# XXX create a pristine tree for diff -Nurp convenience
-
-%/.valid-src: $(__XEN_LINUX_UPDATE)
- $(KETCHUP) -d $(@D) $(LINUX_VER)
- touch $@ # update timestamp to avoid rebuild
12 changes: 11 additions & 1 deletion xen.spec
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ Source12: zlib-1.2.3.tar.gz
Source13: pciutils-2.2.9.tar.bz2
Source14: grub-0.97.tar.gz
Source15: ipxe-git-v1.0.0.tar.gz
Source16: ocaml-3.11.0.tar.gz
Source17: gc.tar.gz
Source18: tpm_emulator-0.5.1.tar.gz
Source19: tboot-20090330.tar.gz
# init.d bits
Source20: init.xenstored
Source21: init.xenconsoled
Expand All @@ -45,6 +49,7 @@ Patch26: localgcc46fix.patch
Patch28: pygrubfix.patch

Patch100: xen-configure-xend.patch
Patch101: xen-no-downloads.patch

BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: transfig libidn-devel zlib-devel texi2html SDL-devel curl-devel
Expand Down Expand Up @@ -177,12 +182,17 @@ to build the xen packages.
%patch28 -p1

%patch100 -p1
%patch101 -p1

# stubdom sources
cp -v %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} stubdom
cp -v %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} %{SOURCE16} stubdom
cp -v %{PATCH23} stubdom/grub.patches/99grub-ext4-support.patch
cp -v %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz
cp -v %{SOURCE17} tools/vnet/
cp -v %{SOURCE18} tools/vtpm/

mkdir -p tboot
cp -v %{SOURCE19} tboot/

%build
export XEN_VENDORVERSION="-%{release}"
Expand Down

0 comments on commit dcd6c0a

Please sign in to comment.