X-Git-Url: https://git.grml.org/?a=blobdiff_plain;f=packer%2FMakefile;h=9d60c353eecc3c5b3e02e4b32a1a93656e29c24a;hb=HEAD;hp=88ca57886c4d5bb5349492e5617041bb35661990;hpb=762d9ef1fc884dfc0ee1923a22cbadb3c5a3b053;p=grml-debootstrap.git diff --git a/packer/Makefile b/packer/Makefile index 88ca578..8a79a1e 100644 --- a/packer/Makefile +++ b/packer/Makefile @@ -1,9 +1,49 @@ -compile: fake-uname.so +GRML_DEBOOTSTRAP_VERSION=latest +GRML_DEBOOTSTRAP_LOCAL_PATH=$(shell pwd)/local_dir -fake-uname.so: - gcc -shared -fPIC -ldl fake-uname.c -o fake-uname.so +CFLAGS ?= -ggdb -O2 -Wall -Wextra -Wno-unused-parameter +CFLAGS += -fPIC -fvisibility=hidden +LDLIBS ?= +LDLIBS += -ldl -packer: fake-uname.so - packer build debian64_wheezy.json +PLUGIN = fake-uname.so -.PHONY: compile packer +$(PLUGIN): fake-uname.c + $(CC) $(CFLAGS) $(LDFLAGS) $< $(LDLIBS) -o $@ -shared + +UNAME_CHECK = LD_PRELOAD="$(CURDIR)/$(PLUGIN)" uname + +check: $(PLUGIN) + echo "$(UNAME_CHECK)" + test "0.0.0" = "$(shell $(UNAME_CHECK) -r)" + test "1.2.3" = "$(shell UTS_RELEASE="1.2.3" $(UNAME_CHECK) -r)" + +install: + cd .. && make DESTDIR=packer/local_dir install + +clean: + $(RM) *.o *.so + rm -rf local_dir + +# Debian 12 +bookworm: clean fake-uname.so install + packer build -var debian_version=$@ -var grml_debootstrap_version=$(GRML_DEBOOTSTRAP_VERSION) -var grml_debootstrap_local_path=$(GRML_DEBOOTSTRAP_LOCAL_PATH) debian64.json + +# Debian 11 +bullseye: clean fake-uname.so install + packer build -var debian_version=$@ -var grml_debootstrap_version=$(GRML_DEBOOTSTRAP_VERSION) -var grml_debootstrap_local_path=$(GRML_DEBOOTSTRAP_LOCAL_PATH) debian64.json + +# Debian 10 +buster: clean fake-uname.so install + packer build -var debian_version=$@ -var grml_debootstrap_version=$(GRML_DEBOOTSTRAP_VERSION) -var grml_debootstrap_local_path=$(GRML_DEBOOTSTRAP_LOCAL_PATH) debian64.json + +# Debian 9 +stretch: clean fake-uname.so install + packer build -var debian_version=$@ -var grml_debootstrap_version=$(GRML_DEBOOTSTRAP_VERSION) -var grml_debootstrap_local_path=$(GRML_DEBOOTSTRAP_LOCAL_PATH) debian64.json + +# Debian 8 +jessie: clean fake-uname.so install + packer build -var debian_version=$@ -var grml_debootstrap_version=$(GRML_DEBOOTSTRAP_VERSION) -var grml_debootstrap_local_path=$(GRML_DEBOOTSTRAP_LOCAL_PATH) debian64.json + +.PHONY: compile bullseye buster stretch jessie +.NOTPARALLEL: