Browse Source

add new package libcap

Waldemar Brodkorb 11 years ago
parent
commit
b0e929f4d5

+ 29 - 0
package/libcap/Makefile

@@ -0,0 +1,29 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=		libcap
+PKG_VERSION:=		2.22
+PKG_RELEASE:=		1
+PKG_MD5SUM:=		ce64058bdb3f086ddbfca8ce6c919845
+PKG_DESCR:=		capabilities library
+PKG_SECTION:=		libs
+PKG_URL:=		http://www.friedhoff.org/posixfilecaps.html
+PKG_SITES:=		http://openadk.org/distfiles/
+PKG_OPTS:=		dev
+
+DISTFILES:=             ${PKG_NAME}-${PKG_VERSION}.tar.bz2
+
+include $(TOPDIR)/mk/package.mk
+
+$(eval $(call PKG_template,LIBCAP,libcap,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
+
+CONFIG_STYLE:=		manual
+
+libcap-install:
+	$(INSTALL_DIR) $(IDIR_LIBCAP)/usr/lib
+	$(CP) $(WRKINST)/usr/lib/libcap*.so* \
+		$(IDIR_LIBCAP)/usr/lib
+
+include ${TOPDIR}/mk/pkg-bottom.mk

+ 57 - 0
package/libcap/patches/patch-Make_Rules

@@ -0,0 +1,57 @@
+--- libcap-2.22.orig/Make.Rules	2011-07-25 04:18:23.000000000 +0200
++++ libcap-2.22/Make.Rules	2013-10-28 11:38:54.000000000 +0100
+@@ -12,10 +12,6 @@ FAKEROOT=$(DESTDIR)
+ # These choices are motivated by the fact that getcap and setcap are
+ # administrative operations that could be needed to recover a system.
+ 
+-ifndef lib
+-lib=$(shell ldd /usr/bin/ld|fgrep ld-linux|cut -d/ -f2)
+-endif
+-
+ ifdef prefix
+ exec_prefix=$(prefix)
+ lib_prefix=$(exec_prefix)
+@@ -23,7 +19,7 @@ inc_prefix=$(lib_prefix)
+ man_prefix=$(prefix)/share
+ else
+ prefix=/usr
+-exec_prefix=
++exec_prefix=/usr
+ lib_prefix=$(exec_prefix)
+ inc_prefix=$(prefix)
+ man_prefix=$(prefix)/share
+@@ -34,7 +30,7 @@ endif
+ MANDIR=$(FAKEROOT)$(man_prefix)/man
+ SBINDIR=$(FAKEROOT)$(exec_prefix)/sbin
+ INCDIR=$(FAKEROOT)$(inc_prefix)/include
+-LIBDIR=$(FAKEROOT)$(lib_prefix)/$(lib)
++LIBDIR=$(FAKEROOT)$(lib_prefix)/lib
+ 
+ # common defines for libcap
+ LIBTITLE=libcap
+@@ -47,8 +43,9 @@ MINOR=22
+ KERNEL_HEADERS := $(topdir)/libcap/include
+ IPATH += -fPIC -I$(topdir)/libcap/include -I$(KERNEL_HEADERS)
+ 
+-CC := gcc
+-CFLAGS := -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
++CC ?= gcc
++CFLAGS ?= -O2 
++CFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
+ BUILD_CC := $(CC)
+ BUILD_CFLAGS := $(CFLAGS) $(IPATH)
+ AR := ar
+@@ -64,11 +61,11 @@ LDFLAGS := #-g
+ SYSTEM_HEADERS = /usr/include
+ INCS=$(topdir)/libcap/include/sys/capability.h
+ LDFLAGS += -L$(topdir)/libcap
+-CFLAGS += -Dlinux $(WARNINGS) $(DEBUG)
++CFLAGS += -Dlinux $(WARNINGS)
+ PAM_CAP := $(shell if [ -f /usr/include/security/pam_modules.h ]; then echo yes ; else echo no ; fi)
+ INDENT := $(shell if [ -n "$(which indent 2>/dev/null)" ]; then echo "| indent -kr" ; fi)
+ DYNAMIC := $(shell if [ ! -d "$(topdir)/.git" ]; then echo yes; fi)
+-LIBATTR := yes
++LIBATTR := no
+ 
+ # When installing setcap, set its inheritable bit to be able to place
+ # capabilities on files. It can be used in conjunction with pam_cap

+ 11 - 0
package/libcap/patches/patch-libcap_Makefile

@@ -0,0 +1,11 @@
+--- libcap-2.22.orig/libcap/Makefile	2010-08-09 00:26:04.000000000 +0200
++++ libcap-2.22/libcap/Makefile	2013-10-28 10:46:10.000000000 +0100
+@@ -33,7 +33,7 @@ INCLUDE_GPERF_OUTPUT = -include $(GPERF_
+ endif
+ 
+ _makenames: _makenames.c cap_names.list.h
+-	$(BUILD_CC) $(BUILD_CFLAGS) $< -o $@
++	$(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $< -o $@
+ 
+ cap_names.h: _makenames
+ 	./_makenames > cap_names.h

+ 11 - 0
package/libcap/patches/patch-libcap__makenames_c

@@ -0,0 +1,11 @@
+--- libcap-2.22.orig/libcap/_makenames.c	2008-12-04 08:03:12.000000000 +0100
++++ libcap-2.22/libcap/_makenames.c	2013-10-28 10:54:58.000000000 +0100
+@@ -7,7 +7,7 @@
+ 
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <sys/capability.h>
++#include "include/sys/capability.h"
+ 
+ /*
+  * #include 'sed' generated array