xref: /OK3568_Linux_fs/buildroot/package/libcap/libcap.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun################################################################################
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# libcap
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun################################################################################
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunLIBCAP_VERSION = 2.52
8*4882a593SmuzhiyunLIBCAP_SITE = https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2
9*4882a593SmuzhiyunLIBCAP_SOURCE = libcap-$(LIBCAP_VERSION).tar.xz
10*4882a593SmuzhiyunLIBCAP_LICENSE = GPL-2.0 or BSD-3-Clause
11*4882a593SmuzhiyunLIBCAP_LICENSE_FILES = License
12*4882a593SmuzhiyunLIBCAP_CPE_ID_VENDOR = libcap_project
13*4882a593Smuzhiyun
14*4882a593SmuzhiyunLIBCAP_DEPENDENCIES = host-libcap host-gperf
15*4882a593SmuzhiyunLIBCAP_INSTALL_STAGING = YES
16*4882a593Smuzhiyun
17*4882a593SmuzhiyunHOST_LIBCAP_DEPENDENCIES = host-gperf
18*4882a593Smuzhiyun
19*4882a593SmuzhiyunLIBCAP_MAKE_FLAGS = \
20*4882a593Smuzhiyun	CROSS_COMPILE="$(TARGET_CROSS)" \
21*4882a593Smuzhiyun	BUILD_CC="$(HOSTCC)" \
22*4882a593Smuzhiyun	BUILD_CFLAGS="$(HOST_CFLAGS)" \
23*4882a593Smuzhiyun	lib=lib \
24*4882a593Smuzhiyun	prefix=/usr \
25*4882a593Smuzhiyun	SHARED=$(if $(BR2_STATIC_LIBS),,yes) \
26*4882a593Smuzhiyun	PTHREADS=$(if $(BR2_TOOLCHAIN_HAS_THREADS),yes,)
27*4882a593Smuzhiyun
28*4882a593SmuzhiyunLIBCAP_MAKE_DIRS = libcap
29*4882a593Smuzhiyun
30*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBCAP_TOOLS),y)
31*4882a593SmuzhiyunLIBCAP_MAKE_DIRS += progs
32*4882a593Smuzhiyunendif
33*4882a593Smuzhiyun
34*4882a593Smuzhiyundefine LIBCAP_BUILD_CMDS
35*4882a593Smuzhiyun	$(foreach d,$(LIBCAP_MAKE_DIRS), \
36*4882a593Smuzhiyun		$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/$(d) \
37*4882a593Smuzhiyun			$(LIBCAP_MAKE_FLAGS) all
38*4882a593Smuzhiyun	)
39*4882a593Smuzhiyunendef
40*4882a593Smuzhiyun
41*4882a593Smuzhiyundefine LIBCAP_INSTALL_STAGING_CMDS
42*4882a593Smuzhiyun	$(foreach d,$(LIBCAP_MAKE_DIRS), \
43*4882a593Smuzhiyun		$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \
44*4882a593Smuzhiyun			DESTDIR=$(STAGING_DIR) install
45*4882a593Smuzhiyun	)
46*4882a593Smuzhiyunendef
47*4882a593Smuzhiyun
48*4882a593Smuzhiyundefine LIBCAP_INSTALL_TARGET_CMDS
49*4882a593Smuzhiyun	$(foreach d,$(LIBCAP_MAKE_DIRS), \
50*4882a593Smuzhiyun		$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \
51*4882a593Smuzhiyun			DESTDIR=$(TARGET_DIR) install
52*4882a593Smuzhiyun	)
53*4882a593Smuzhiyunendef
54*4882a593Smuzhiyun
55*4882a593SmuzhiyunHOST_LIBCAP_MAKE_FLAGS = \
56*4882a593Smuzhiyun	DYNAMIC=yes \
57*4882a593Smuzhiyun	GOLANG=no \
58*4882a593Smuzhiyun	lib=lib \
59*4882a593Smuzhiyun	prefix=$(HOST_DIR) \
60*4882a593Smuzhiyun	RAISE_SETFCAP=no
61*4882a593Smuzhiyun
62*4882a593Smuzhiyundefine HOST_LIBCAP_BUILD_CMDS
63*4882a593Smuzhiyun	$(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) \
64*4882a593Smuzhiyun		$(HOST_LIBCAP_MAKE_FLAGS)
65*4882a593Smuzhiyunendef
66*4882a593Smuzhiyun
67*4882a593Smuzhiyundefine HOST_LIBCAP_INSTALL_CMDS
68*4882a593Smuzhiyun	$(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_LIBCAP_MAKE_FLAGS) install
69*4882a593Smuzhiyunendef
70*4882a593Smuzhiyun
71*4882a593Smuzhiyun$(eval $(generic-package))
72*4882a593Smuzhiyun$(eval $(host-generic-package))
73