2 # Copyright (C) 2011 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.xz
15 PKG_SOURCE_URL
:=@KERNEL
/linux
/libs
/security
/linux-privs
/libcap2
16 PKG_HASH
:=5048c849bdbbe24d2ca59463142cb279abec5edf3ab6731ab35a596bcf538a49
18 PKG_MAINTAINER
:=Paul Wassi
<p.wassi@gmx.at
>
19 PKG_LICENSE
:=GPL-2.0
-only
20 PKG_LICENSE_FILES
:=License
25 include $(INCLUDE_DIR
)/package.mk
26 include $(INCLUDE_DIR
)/kernel.mk
28 define Package
/libcap
/Default
29 TITLE
:=Linux capabilities library
32 URL
:=https
://www.kernel.org
/pub
/linux
/libs
/security
/linux-privs
/libcap2
/
35 define Package
/libcap
/description
/Default
40 $(call Package
/libcap
/Default
)
44 define Package
/libcap-bin
45 $(call Package
/libcap
/Default
)
50 define Package
/libcap-bin
/description
51 $(call Package
/libcap
/description
/Default
)
53 This package contains the libcap utilities.
56 define Package
/libcap-bin
/config
58 config PACKAGE_libcap-bin-capsh-shell
68 BUILD_CFLAGS
="$(FPIC) -I$(PKG_BUILD_DIR)/libcap/include" \
69 CFLAGS
="$(TARGET_CFLAGS)" \
70 LD
="$(TARGET_CC) -Wl,-x -shared" \
71 LDFLAGS
="$(TARGET_LDFLAGS)" \
79 ifneq ($(CONFIG_PACKAGE_libcap-bin-capsh-shell
),)
80 TARGET_CFLAGS
+= -DSHELL
='\"$(CONFIG_PACKAGE_libcap-bin-capsh-shell)\"'
83 TARGET_CFLAGS
+= $(if
$(CONFIG_USE_MUSL
),-Dpthread_yield
=sched_yield
)
85 define Build
/InstallDev
86 $(INSTALL_DIR
) $(1)/usr
/include/sys
87 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/sys
/*.h
$(1)/usr
/include/sys
/
88 $(INSTALL_DIR
) $(1)/usr
/lib
89 $(CP
) $(PKG_INSTALL_DIR
)/lib
/libcap.
{so
*,a
} $(1)/usr
/lib
/
90 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/lib
/libpsx.a
$(1)/usr
/lib
/
91 $(INSTALL_DIR
) $(1)/usr
/lib
/pkgconfig
92 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/lib
/pkgconfig
/libcap.
pc $(1)/usr
/lib
/pkgconfig
/
93 $(SED
) 's,exec_prefix=,exec_prefix=/usr,g' $(1)/usr
/lib
/pkgconfig
/libcap.
pc
94 $(SED
) 's,/lib,$$$${exec_prefix}/lib,g' $(1)/usr
/lib
/pkgconfig
/libcap.
pc
95 $(SED
) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr
/lib
/pkgconfig
/libcap.
pc
96 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/lib
/pkgconfig
/libpsx.
pc $(1)/usr
/lib
/pkgconfig
/
97 $(SED
) 's,exec_prefix=,exec_prefix=/usr,g' $(1)/usr
/lib
/pkgconfig
/libpsx.
pc
98 $(SED
) 's,/lib,$$$${exec_prefix}/lib,g' $(1)/usr
/lib
/pkgconfig
/libpsx.
pc
99 $(SED
) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr
/lib
/pkgconfig
/libpsx.
pc
102 define Package
/libcap
/install
103 $(INSTALL_DIR
) $(1)/usr
/lib
104 $(CP
) $(PKG_INSTALL_DIR
)/lib
/libcap.so
* $(1)/usr
/lib
/
107 define Package
/libcap-bin
/install
108 $(INSTALL_DIR
) $(1)/usr
/sbin
109 $(CP
) $(PKG_INSTALL_DIR
)/sbin
/capsh
$(1)/usr
/sbin
/
110 $(CP
) $(PKG_INSTALL_DIR
)/sbin
/getcap
$(1)/usr
/sbin
/
111 $(CP
) $(PKG_INSTALL_DIR
)/sbin
/getpcaps
$(1)/usr
/sbin
/
112 $(CP
) $(PKG_INSTALL_DIR
)/sbin
/setcap
$(1)/usr
/sbin
/
115 $(eval
$(call BuildPackage
,libcap
))
116 $(eval
$(call BuildPackage
,libcap-bin
))