summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile22
1 files changed, 14 insertions, 8 deletions
diff --git a/Makefile b/Makefile
index 6eeb052..ecdf89a 100644
--- a/Makefile
+++ b/Makefile
@@ -1,16 +1,22 @@
+SHELL = /bin/bash
+
all: config.db
+.PHONY: all
+
+clean:
+ rm -f -- $(filter-out $(pkgfiles),$(wildcard *.pkg.tar.xz))
+.PHONY: clean
-pkgbuilds = $(wildcard *.PKGBUILD)
-$(foreach e,$(shell grep -e ^pkgver= -e ^pkgrel= -e ^pkgname= -- $(pkgbuilds)|sed 's/\.PKGBUILD:/./'),$(eval $e))
-$(foreach p,$(patsubst %.PKGBUILD,%,$(pkgbuilds)), \
- $(eval pkgfiles += $($p.pkgname)-$($p.pkgver)-$($p.pkgrel)-any.pkg.tar.xz) \
- $(eval $($p.pkgname)-$($p.pkgver)-$($p.pkgrel)-any.pkg.tar.xz: $p.PKGBUILD) )
+pkgbuilds = $(sort $(wildcard *.PKGBUILD))
+$(foreach p,$(pkgbuilds), $(eval $(shell BUILDFILE=$(abspath $p); . "$$BUILDFILE"; echo $(patsubst %.PKGBUILD,%,$p).pkgfile=$$pkgname-$$pkgver-$$pkgrel-any.pkg.tar.xz)))
+$(foreach p,$(patsubst %.PKGBUILD,%,$(pkgbuilds)), \
+ $(eval pkgfiles += $($p.pkgfile)) \
+ $(eval $($p.pkgfile): $p.PKGBUILD) )
-%.pkg.tar.xz:
- makepkg -d -f -p $<
+%.pkg.tar.xz: common.sh
+ makepkg -d -p $(filter %.PKGBUILD,$^)
%.db %.db.tar.gz %.files %.files.tar.gz: .var.pkgfiles $(pkgfiles)
- find $^ -newer $*.db
rm -f $*.db $*.db.tar.gz $*.files $*.files.tar.gz
repo-add $*.db.tar.gz $(filter %.pkg.tar.xz,$^)
touch --no-create --no-dereference $*.db $*.db.tar.gz $*.files $*.files.tar.gz