summaryrefslogtreecommitdiff
path: root/src/stage2/patches/libcap.patch
blob: 2399e50e6f00bcbaabef6264dd2c2edc236c1177 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
--- a/PKGBUILD	2018-02-16 19:41:56.996792407 +0100
+++ b/PKGBUILD	2018-02-16 20:17:25.900329276 +0100
@@ -10,18 +10,22 @@ pkgdesc='POSIX 1003.1e capabilities'
 arch=('i686' 'x86_64')
 url='http://sites.google.com/site/fullycapable/'
 license=('GPL2')
-depends=('glibc' 'attr')
+depends=('glibc' 'attr' 'pam' 'unixodbc' 'linux-api-headers')
 makedepends=('linux-api-headers')
-source=(https://kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-$pkgver.tar.xz)
-md5sums=('6666b839e5d46c2ad33fc8aa2ceb5f77')
+source=(https://kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-$pkgver.tar.xz
+        libcap-2.25-gperf.patch)
+md5sums=('6666b839e5d46c2ad33fc8aa2ceb5f77'
+         '03198e18adb059f9d666d2069ff9e9a7')
 
 prepare() {
   cd $pkgname-$pkgver
+  patch -Np1 -i "$srcdir"/libcap-2.25-gperf.patch
   sed -i "/SBINDIR/s#sbin#bin#" Make.Rules
 }
 
 build() {
-  make -C $pkgname-$pkgver KERNEL_HEADERS=/usr/include
+  make -C $pkgname-$pkgver KERNEL_HEADERS=@SYSROOT@/usr/include \
+    BUILD_CC=gcc BUILD_CFLAGS="" CC=@CHOST@-gcc AR=@CHOST@-ar RANLIB=@CHOST@-ranlib
 }
 
 package() {
--- /dev/null	2018-01-19 16:58:13.730539592 +0100
+++ b/libcap-2.25-gperf.patch	2018-02-16 20:15:03.278753235 +0100
@@ -0,0 +1,12 @@
+diff -uNr libcap-2.25.ORIG/libcap/Makefile libcap-2.25/libcap/Makefile
+--- libcap-2.25.ORIG/libcap/Makefile	2017-02-01 09:58:34.966642226 +0000
++++ libcap-2.25/libcap/Makefile	2017-02-01 10:01:49.943651936 +0000
+@@ -44,7 +44,7 @@
+ 	./_makenames > cap_names.h
+ 
+ $(GPERF_OUTPUT): cap_names.list.h
+-	perl -e 'print "struct __cap_token_s { const char *name; int index; };\n%{\nconst struct __cap_token_s *__cap_lookup_name(const char *, unsigned int);\n%}\n%%\n"; while ($$l = <>) { $$l =~ s/[\{\"]//g; $$l =~ s/\}.*// ; print $$l; }' < $< | gperf --ignore-case --language=ANSI-C --readonly --null-strings --global-table --hash-function-name=__cap_hash_name --lookup-function-name="__cap_lookup_name" -c -t -m20 $(INDENT) > $@
++	perl -e 'print "struct __cap_token_s { const char *name; int index; };\n%%\n"; while ($$l = <>) { $$l =~ s/[\{\"]//g; $$l =~ s/\}.*// ; print $$l; }' < $< | gperf --ignore-case --language=ANSI-C --includes --readonly --null-strings --global-table --hash-function-name=__cap_hash_name --lookup-function-name="__cap_lookup_name" -c -t -m20 $(INDENT) > $@
+ 
+ cap_names.list.h: Makefile $(KERNEL_HEADERS)/linux/capability.h
+ 	@echo "=> making $@ from $(KERNEL_HEADERS)/linux/capability.h"