67 lines
1.7 KiB
Makefile
67 lines
1.7 KiB
Makefile
TODAY != date '+%Y%M%d'
|
|
|
|
VERSION := $(TODAY)-1
|
|
V_x86_64 := $(VERSION)_x86_64
|
|
V_i686 := $(VERSION)_i686
|
|
|
|
all:
|
|
@echo The following targets are available:
|
|
@echo ' $(MAKE) base-x86_64'
|
|
@echo ' $(MAKE) base-i686'
|
|
@echo ' $(MAKE) default (same as make base-x86_64)'
|
|
|
|
.PHONY: default
|
|
default: base-x86_64
|
|
|
|
# we should always regenerate this:
|
|
.PHONY: aab.conf aab.conf.x86_64 aab.conf.i686
|
|
aab.conf:
|
|
echo 'Name: archlinux-base' > aab.conf
|
|
echo 'Version: $(VERSION)' >> aab.conf
|
|
echo 'Section: system' >> aab.conf
|
|
echo 'Maintainer: Proxmox Support Team <support@proxmox.com>' >> aab.conf
|
|
echo 'Source: http://archlinux.cu.be/$$repo/os/$$arch' >> aab.conf
|
|
|
|
aab.conf.x86_64: aab.conf
|
|
echo 'Architecture: x86_64' >> aab.conf
|
|
aab.conf.i686: aab.conf
|
|
echo 'Architecture: i686' >> aab.conf
|
|
|
|
.PHONY: base-x86_64
|
|
base-x86_64: archlinux-base_$(V_x86_64).tar.gz
|
|
archlinux-base_$(V_x86_64).tar.gz: aab.conf.x86_64
|
|
echo 'Headline: ArchLinux base image.' >> aab.conf
|
|
$(MAKE) build-current
|
|
|
|
.PHONY: base-xi686
|
|
base-i686: archlinux-base_$(V_i686).tar.gz
|
|
archlinux-base_$(V_i686).tar.gz: aab.conf.i686
|
|
echo 'Headline: ArchLinux base image.' >> aab.conf
|
|
$(MAKE) build-current
|
|
|
|
.PHONY: build-current
|
|
build-current: check-all
|
|
./aab init
|
|
./aab bootstrap
|
|
./aab finalize
|
|
./aab clean
|
|
|
|
.PHONY: check-pacman
|
|
check-pacman:
|
|
@which pacman >/dev/null || (echo Dependency error:; echo 'Please install the arch-pacman package'; echo; false)
|
|
|
|
.PHONY: check-root
|
|
check-root:
|
|
@test 0 -eq "`id -u`" || (echo Permission error:; echo 'aab needs to be run as root'; echo; false)
|
|
|
|
.PHONY: check-all
|
|
check-all: check-pacman check-root
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
@./aab clean
|
|
|
|
.PHONY: distclean
|
|
distclean:
|
|
@./aab dist-clean
|