diff options
author | Yun-Chih Chen <yunchih@csie.ntu.edu.tw> | 2016-03-15 21:44:20 +0800 |
---|---|---|
committer | Ting-Wei Lan <lantw44@gmail.com> | 2016-06-17 18:29:35 +0800 |
commit | 9f8b695866c239e271c26a9ce808f03386c287e9 (patch) | |
tree | d780ab2897765fefe35e50bc86ef0fea2618349a | |
parent | 81cdd1753a4079f506213ea30bb368688ad1ffba (diff) | |
download | wspkg-9f8b695866c239e271c26a9ce808f03386c287e9.tar.gz wspkg-9f8b695866c239e271c26a9ce808f03386c287e9.tar.zst wspkg-9f8b695866c239e271c26a9ce808f03386c287e9.zip |
arch: Add simple PKGBUILD creation support
-rw-r--r-- | arch/arch-defaults.mk | 5 | ||||
-rwxr-xr-x | arch/arch.deps.sh | 14 | ||||
-rw-r--r-- | arch/arch.mk | 24 |
3 files changed, 43 insertions, 0 deletions
diff --git a/arch/arch-defaults.mk b/arch/arch-defaults.mk new file mode 100644 index 0000000..46ad9fe --- /dev/null +++ b/arch/arch-defaults.mk @@ -0,0 +1,5 @@ +# vim: set ts=8 sts=8 sw=8 ft=make: +# Default settings for Arch Linux + +ARCH_IN_PKGBUILD_IN= $(INDIR)/$(NAME).pkgbuild.in +ARCH_OUT_PKGBUILD= $(OUTDIR)/PKGBUILD diff --git a/arch/arch.deps.sh b/arch/arch.deps.sh new file mode 100755 index 0000000..35b3984 --- /dev/null +++ b/arch/arch.deps.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +list_file="$1" +: ${list_file:="arch.list"} + +loop_first=1 +for pkg in `cat "${list_file}"`; do + if [ "${loop_first}" = "1" ]; then + printf "'%s'" "${pkg}" + else + printf " '%s'" "${pkg}" + fi + loop_first=0 +done diff --git a/arch/arch.mk b/arch/arch.mk new file mode 100644 index 0000000..8b9e54f --- /dev/null +++ b/arch/arch.mk @@ -0,0 +1,24 @@ +# vim: set ts=8 sts=8 sw=8 ft=make: +# Create PKBUILD for Archlinux + +arch: $(ARCH_OUT_PKGBUILD) + +# arch.pkgbuild.in + arch.list -> PKGBUILD +pkgbuild_script = $(BACKENDDIR)/arch.deps.sh +pkgbuild_deps = \ + $(pkgbuild_script) \ + $(ARCH_IN_pkgbuild_IN) \ + $(WSPKG_OUT_LIST) + +$(ARCH_OUT_PKGBUILD): $(pkgbuild_deps) + $(AT_GEN)sed \ + -e "s|@NAME@|$(NAME)|g" \ + -e "s|@PKGNAME@|$(PKGNAME)|g" \ + -e "s|@TODAY@|`date '+%Y.%m.%d'`|g" \ + -e "s|@DEPS@|`$(pkgbuild_script) $(WSPKG_OUT_LIST)`|g" \ + $(ARCH_IN_PKGBUILD_IN) > $(ARCH_OUT_PKGBUILD) $(RM_IF_FAIL) + +arch-show: + @echo "-- PKGBUILD file" + @echo "I: ARCH_IN_PKGBUILD_IN (PKDBUILD file template) = $(ARCH_IN_PKGBUILD_IN)" + @echo "O: ARCH_OUT_PKGBUILD (generated PKDBUILD file) = $(ARCH_OUT_PKGBUILD)" |