summaryrefslogtreecommitdiff
path: root/recipes/mozilla/nss_3.12.6.bb
blob: 9966f08ff50545e9e88e996120f7422a827591df (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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
DESCRIPTION = "Mozilla's SSL and TLS implementation"
HOMEPAGE = "http://www.mozilla.org/projects/security/pki/nss/"

PR = "r2"

LICENSE = "MPL1.1 GPL LGPL"

DEPENDS = "sqlite3 nspr"

SRC_URI = "\
	http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_12_6_RTM/src/${PN}-${PV}.tar.gz;name=archive \
	file://00_ckbi_1.79.patch;apply=yes \
	file://25_entropy.patch;apply=yes \
	file://38_hurd.patch;apply=yes \
	file://38_kbsd.patch;apply=yes \
	file://38_mips64_build.patch;apply=yes \
	file://80_security_build.patch;apply=yes \
	file://80_security_tools.patch;apply=yes \
	file://81_sonames.patch;apply=yes \
	file://85_security_load.patch;apply=yes \
	file://90_realpath.patch;apply=yes \
	file://91_build_pwdecrypt.patch;apply=yes \
	file://95_add_spi+cacert_ca_certs.patch;apply=yes \
	file://96_NSS_VersionCheck.patch;apply=yes \
	file://97_SSL_RENEGOTIATE_TRANSITIONAL.patch;apply=yes \
	file://build-fix.patch;apply=yes;striplevel=0 \
	file://nss.pc.in \
"

SRC_URI[archive.md5sum] = "da42596665f226de5eb3ecfc1ec57cd1"
SRC_URI[archive.sha256sum] = "8f9759be1ce928e82830923fde62a66e270c4645f10a4c176acfccb6021a9795"

TD = "${S}/tentative-dist"
TDS = "${S}/tentative-dist-staging"

PARALLEL_MAKE = ""

TARGET_CC_ARCH += "${LDFLAGS}"

do_compile() {
	oe_runmake -C mozilla/security/nss \
		build_coreconf \
		build_dbm \
		export libs program \
		MOZILLA_CLIENT=1 \
		BUILD_OPT=1 \
		OS_TARGET=Linux \
		OS_TEST="${TARGET_ARCH}" \
		NSPR_INCLUDE_DIR="${STAGING_INCDIR}/mozilla/nspr" \
		NSPR_LIB_DIR="${STAGING_LIBDIR}" \
		SQLITE3_INCLUDE_DIR="${STAGING_INCDIR}" \
		OPTIMIZER="${CFLAGS}" \
		NS_USE_GCC=1 \
		NSS_USE_SYSTEM_SQLITE=1 \
		NSS_ENABLE_ECC=1 \
		DEFAULT_COMPILER="${CC}" \
		CC="${CC}" \
		CCC="${CXX}" \
		CXX="${CXX}" \
		RANLIB="${RANLIB}" \
		NATIVE_CC="${BUILD_CC}" \
		NATIVE_FLAGS="${BUILD_CFLAGS}"
}

do_install() {
	oe_runmake -C mozilla/security/nss \
		install \
		MOZILLA_CLIENT=1 \
		BUILD_OPT=1 \
		OS_TARGET=Linux \
		OS_TEST="${TARGET_ARCH}" \
		NSPR_INCLUDE_DIR="${STAGING_INCDIR}/mozilla/nspr" \
		NSPR_LIB_DIR="${STAGING_LIBDIR}" \
		NS_USE_GCC=1 \
		NSS_USE_SYSTEM_SQLITE=1 \
		NSS_ENABLE_ECC=1 \
		SOURCE_LIB_DIR="${TD}/${libdir}" \
		SOURCE_BIN_DIR="${TD}/${bindir}"

	install -d ${D}/${libdir}/nss

	for shared_lib in ${TD}/${libdir}/*.so.*
	do
		cp $shared_lib ${D}/${libdir}
		ln -sf $(basename $shared_lib) ${D}/${libdir}/$(basename $shared_lib .1oe)
	done

	install -d ${D}/${includedir}/mozilla/nss
	install -m 644 -t ${D}/${includedir}/mozilla/nss mozilla/dist/public/nss/*

	for static_lib in ${TD}/${libdir}/*.a
	do
		oe_libinstall -C ${TD}/${libdir} `basename $static_lib .a` ${D}/${libdir}
	done

	install -d ${D}/${bindir}
	for binary in ${TD}/${bindir}/*
	do
		install -m 755 -t ${D}/${bindir} $binary
	done

	install -d ${D}${libdir}/pkgconfig/
	sed 's/@VERSION@/${PV}/' ${WORKDIR}/nss.pc.in > ${D}${libdir}/pkgconfig/nss.pc

}