xref: /OK3568_Linux_fs/buildroot/package/libnspr/libnspr.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun################################################################################
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# libnspr
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun################################################################################
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunLIBNSPR_VERSION = 4.32
8*4882a593SmuzhiyunLIBNSPR_SOURCE = nspr-$(LIBNSPR_VERSION).tar.gz
9*4882a593SmuzhiyunLIBNSPR_SITE = https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v$(LIBNSPR_VERSION)/src
10*4882a593SmuzhiyunLIBNSPR_SUBDIR = nspr
11*4882a593SmuzhiyunLIBNSPR_INSTALL_STAGING = YES
12*4882a593SmuzhiyunLIBNSPR_CONFIG_SCRIPTS = nspr-config
13*4882a593SmuzhiyunLIBNSPR_LICENSE = MPL-2.0
14*4882a593SmuzhiyunLIBNSPR_LICENSE_FILES = nspr/LICENSE
15*4882a593SmuzhiyunLIBNSPR_CPE_ID_VENDOR = mozilla
16*4882a593SmuzhiyunLIBNSPR_CPE_ID_PRODUCT = netscape_portable_runtime
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun# Set the host CFLAGS and LDFLAGS so NSPR does not guess wrongly
19*4882a593SmuzhiyunLIBNSPR_CONF_ENV = \
20*4882a593Smuzhiyun	HOST_CFLAGS="-g -O2" \
21*4882a593Smuzhiyun	HOST_LDFLAGS="-lc"
22*4882a593Smuzhiyun# NSPR mixes up --build and --host
23*4882a593SmuzhiyunLIBNSPR_CONF_OPTS = --host=$(GNU_HOST_NAME)
24*4882a593SmuzhiyunLIBNSPR_CONF_OPTS += --$(if $(BR2_ARCH_IS_64),en,dis)able-64bit
25*4882a593Smuzhiyun
26*4882a593Smuzhiyun# ./nspr/pr/include/md/_linux.h tests only __GLIBC__ version to detect
27*4882a593Smuzhiyun# c-library features, list musl features here for now (taken from
28*4882a593Smuzhiyun# Alpine Linux).
29*4882a593Smuzhiyunifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
30*4882a593SmuzhiyunLIBNSPR_CFLAGS += \
31*4882a593Smuzhiyun	-D_PR_POLL_AVAILABLE \
32*4882a593Smuzhiyun	-D_PR_HAVE_OFF64_T \
33*4882a593Smuzhiyun	-D_PR_INET6 \
34*4882a593Smuzhiyun	-D_PR_HAVE_INET_NTOP \
35*4882a593Smuzhiyun	-D_PR_HAVE_GETHOSTBYNAME2 \
36*4882a593Smuzhiyun	-D_PR_HAVE_GETADDRINFO \
37*4882a593Smuzhiyun	-D_PR_INET6_PROBE
38*4882a593Smuzhiyunendif
39*4882a593Smuzhiyun
40*4882a593SmuzhiyunLIBNSPR_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) $(LIBNSPR_CFLAGS)"
41*4882a593Smuzhiyun
42*4882a593Smuzhiyunifeq ($(BR2_STATIC_LIBS),y)
43*4882a593SmuzhiyunLIBNSPR_MAKE_OPTS = SHARED_LIBRARY=
44*4882a593SmuzhiyunLIBNSPR_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) SHARED_LIBRARY= install
45*4882a593SmuzhiyunLIBNSPR_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) SHARED_LIBRARY= install
46*4882a593Smuzhiyunendif
47*4882a593Smuzhiyun
48*4882a593Smuzhiyunifeq ($(BR2_SHARED_LIBS),y)
49*4882a593SmuzhiyunLIBNSPR_MAKE_OPTS = LIBRARY=
50*4882a593SmuzhiyunLIBNSPR_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) LIBRARY= install
51*4882a593SmuzhiyunLIBNSPR_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) LIBRARY= install
52*4882a593Smuzhiyunendif
53*4882a593Smuzhiyun
54*4882a593SmuzhiyunHOST_LIBNSPR_CONF_OPTS += --$(if $(filter %64,$(HOSTARCH)),en,dis)able-64bit
55*4882a593Smuzhiyun
56*4882a593Smuzhiyun$(eval $(autotools-package))
57*4882a593Smuzhiyun$(eval $(host-autotools-package))
58