diff options
-rw-r--r-- | .gitignore | 4 | ||||
-rwxr-xr-x | Makefile | 48 | ||||
-rw-r--r-- | alpine-mini.conf.mk | 1 | ||||
-rw-r--r-- | alpine-vserver.conf.mk | 1 | ||||
-rw-r--r-- | alpine.conf.mk | 2 | ||||
-rw-r--r-- | current | 1 | ||||
-rw-r--r-- | previous | 1 |
7 files changed, 50 insertions, 8 deletions
@@ -1,3 +1,5 @@ isotmp.* *.iso - +*.sha1 +*.pkgdiff +*.xdelta @@ -28,6 +28,7 @@ find_apk = $(addprefix $(ISO_PKGDIR)/,$(call find_apk_file,$(1))) # get apk does not support wildcards get_apk = $(addsuffix .apk,$(shell apk fetch --simulate $(APK_OPTS) $(1) 2>&1 | sed 's:^Downloading :$(ISO_PKGDIR)/:')) +expand_apk = $(shell apk search --quiet $(APK_OPTS) $(1) | sort | uniq) KERNEL_FLAVOR ?= grsec KERNEL_PKGNAME ?= linux-$(KERNEL_FLAVOR) @@ -45,7 +46,7 @@ STRACE_APK := $(call get_apk,strace) APKS_FILTER ?= | grep -v -- '-dev$$' | grep -v 'sources' APKS ?= '*' -APK_FILES := $(call find_apk,$(APKS)) +APK_FILES := $(call get_apk,$(call expand_apk,$(APKS))) all: isofs @@ -237,6 +238,7 @@ $(ISO_KERNEL): $(MODLOOP_DIRSTAMP) @rm -f $(ISO_DIR)/boot/$(KERNEL_NAME) @ln -s vmlinuz-$(MODLOOP_KERNEL_RELEASE) $@ @rm -rf $(ISO_DIR)/.[A-Z]* $(ISO_DIR)/.[a-z]* $(ISO_DIR)/lib + @touch $@ $(ISOFS_DIRSTAMP): $(MODLOOP) $(INITFS) $(ISOLINUX_CFG) $(ISOLINUX_BIN) $(ISO_KERNEL) $(ISO_REPOS_DIRSTAMP) $(SYSLINUX_CFG) @echo "$(ALPINE_NAME)-$(ALPINE_RELEASE) $(BUILD_DATE)" \ @@ -270,6 +272,30 @@ $(ISO_SHA1): $(ISO) @sha1sum $(ISO) > $@ || rm -f $@ # +# .pkgdiff +# +previous := $(shell cat previous) +release_diff := $(previous)-$(ALPINE_RELEASE) +PREV_ISO := $(ALPINE_NAME)-$(previous)-$(ALPINE_ARCH).iso +pkgdiff := $(ALPINE_NAME)-$(release_diff).pkgdiff +$(pkgdiff): cmp-apks-iso previous $(PREV_ISO) $(ISO) + @echo "==> Generating $@" + @./cmp-apks-iso $(PREV_ISO) $(ISO) > $@ + +diff: $(pkgdiff) + + +# +# xdelta +# +xdelta := $(ALPINE_NAME)-$(release_diff).xdelta +$(xdelta): $(PREV_ISO) $(ISO) + @echo "==> Generating $@" + @xdelta3 -f -e -s $(PREV_ISO) $(ISO) $@ + +xdelta: $(xdelta) + +# # USB image # USBIMG := $(ALPINE_NAME)-$(ALPINE_RELEASE)-$(ALPINE_ARCH).img @@ -296,7 +322,23 @@ $(ALPINE_NAME).img: $(USBIMG) img: $(ALPINE_NAME).img -sha1: $(ISO_SHA1) $(USBIMG_SHA1) +sha1: $(ISO_SHA1) -release: $(ISO_SHA1) +profiles := $(wildcard *.conf.mk) +current := $(shell cat current) + +all-release: current previous $(profiles) + @echo "*" + @echo "* Making $(current) releases" + @echo "*" + @echo + @for i in $(profiles); do\ + p=$${i%.conf.mk}; \ + echo "*";\ + echo "* Release $$p $(current)"; \ + echo "*"; \ + rm -rf isotmp.$$p; \ + fakeroot $(MAKE) ALPINE_RELEASE=$(current) \ + PROFILE=$$p sha1 diff xdelta || break; \ + done diff --git a/alpine-mini.conf.mk b/alpine-mini.conf.mk index b49b8bb..59fbe70 100644 --- a/alpine-mini.conf.mk +++ b/alpine-mini.conf.mk @@ -1,5 +1,4 @@ ALPINE_NAME := alpine-mini -ALPINE_RELEASE := 1.10.0 MODLOOP_EXTRA := KERNEL_FLAVOR := grsec diff --git a/alpine-vserver.conf.mk b/alpine-vserver.conf.mk index 9467939..2f74fc6 100644 --- a/alpine-vserver.conf.mk +++ b/alpine-vserver.conf.mk @@ -1,5 +1,4 @@ ALPINE_NAME := alpine-vserver -ALPINE_RELEASE := 1.10.0 KERNEL_FLAVOR := vserver MODLOOP_EXTRA := dahdi-linux-vserver diff --git a/alpine.conf.mk b/alpine.conf.mk index 68fc848..bcb8ff7 100644 --- a/alpine.conf.mk +++ b/alpine.conf.mk @@ -1,5 +1,3 @@ ALPINE_NAME := alpine -ALPINE_RELEASE := 1.10.0 KERNEL_FLAVOR := grsec - @@ -0,0 +1 @@ +1.10.0 diff --git a/previous b/previous new file mode 100644 index 0000000..85f1b9a --- /dev/null +++ b/previous @@ -0,0 +1 @@ +1.10_rc3 |