Merge remote-tracking branch 'origin/master' into cooking
[xonotic/gmqcc.git] / distro / archlinux / this / Makefile
1 BASEDIR := ../../../
2 PREFIX  := /usr
3 HEADER  := $(BASEDIR)/gmqcc.h
4 MAJOR   := $(shell sed -n -e '/GMQCC_VERSION_MAJOR/{s/.* .* //;p;q;}' $(HEADER))
5 MINOR   := $(shell sed -n -e '/GMQCC_VERSION_MINOR/{s/.* .* //;p;q;}' $(HEADER))
6 PATCH   := $(shell sed -n -e '/GMQCC_VERSION_PATCH/{s/.* .* //;p;q;}' $(HEADER))
7 PKGREL  := 1
8 SUFFIX  ?= archlinux
9 CARCH   := $(shell uname -m)
10 PKGDIR  := gmqcc-$(MAJOR).$(MINOR).$(PATCH)-$(PKGREL)-$(CARCH)-$(SUFFIX)
11 TARCOMP := -J
12 PKG     := $(PKGDIR).pkg.tar.xz
13 PKGINFO := $(PKGDIR)/.PKGINFO
14 DESTDIR := distro/archlinux/this
15 CFLAGS  :=
16
17 LIBC_DEPEND := glibc
18
19 base:
20         $(MAKE) -C $(BASEDIR) clean
21         CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" \
22           $(MAKE) -C $(BASEDIR) "DESTDIR=$(DESTDIR)/$(PKGDIR)" "PREFIX=$(PREFIX)" strip install
23         @echo "pkgname = gmqcc" > $(PKGINFO)
24         @echo "pkgver = $(MAJOR).$(MINOR).$(PATCH)-$(PKGREL)" >> $(PKGINFO)
25         @echo "pkgdesc = An Improved Quake C Compiler" >> $(PKGINFO)
26         @echo "url = https://github.com/graphitemaster/gmqcc.git" >> $(PKGINFO)
27         @echo "builddate = `date -u \"+%s\"`" >> $(PKGINFO)
28         @echo "packager = Unknown Packager" >> $(PKGINFO)
29         @echo "size = `du -sk $(PKGDIR) | awk '{print $$1 * 1024}'`" >> $(PKGINFO)
30         @echo "arch = $(CARCH)" >> $(PKGINFO)
31         @echo "license = MIT" >> $(PKGINFO)
32         @echo "conflict = gmqcc" >> $(PKGINFO)
33         @echo "depend = $(LIBC_DEPEND)" >> $(PKGINFO)
34         @echo "makepkgopt = strip" >> $(PKGINFO)
35         @echo "makepkgopt = docs" >> $(PKGINFO)
36         @echo "makepkgopt = libtool" >> $(PKGINFO)
37         @echo "makepkgopt = emptydirs" >> $(PKGINFO)
38         @echo "makepkgopt = zipman" >> $(PKGINFO)
39         @echo "makepkgopt = purge" >> $(PKGINFO)
40         @echo "makepkgopt = !upx" >> $(PKGINFO)
41         @bsdtar -C $(PKGDIR) -czf $(PKGDIR)/.MTREE \
42             --format=mtree \
43             --options='!all,use-set,type,uid,gid,mode,time,size,md5,sha256,link' \
44             .PKGINFO usr/ 2>&1 >/dev/null
45         @bsdtar $(TARCOMP) -cvf $(PKG) -C $(PKGDIR)/ .PKGINFO .MTREE usr/ 2>&1 >/dev/null
46         @rm -rf $(PKGDIR)
47
48 clean:
49         $(MAKE) -C $(BASEDIR) clean
50         @rm -f *.pkg.tar.xz
51
52 all: base