Contents of /smage/trunk/extras/nss/nss-3.44.1-r1.smage2
Parent Directory | Revision Log
Revision 13214 -
(show annotations)
(download)
Thu Jul 4 13:37:25 2019 UTC (5 years, 2 months ago) by niro
File size: 4721 byte(s)
Thu Jul 4 13:37:25 2019 UTC (5 years, 2 months ago) by niro
File size: 4721 byte(s)
auto added: ver bump to 3.44.1-r1
1 | # $Id$ |
2 | |
3 | PNAME="nss" |
4 | PVER="3.44.1" |
5 | PBUILD="r1" |
6 | |
7 | PCAT="dev-libs" |
8 | |
9 | DESCRIPTION="Network Security Services (NSS)." |
10 | HOMEPAGE="http://www.mozilla.org/projects/security/pki/nss/" |
11 | |
12 | DEPEND_x86_64=">= sys-apps/multiarch-wrapper-1" |
13 | SPECIAL_VARS="DEPEND_x86_64" |
14 | |
15 | DEPEND="$(marchdepend) |
16 | >= virtual/glibc |
17 | >= sys-libs/zlib-1.2 |
18 | >= dev-libs/nspr-4.19 |
19 | >= dev-db/sqlite-3.20" |
20 | |
21 | SDEPEND=">= virtual/sed |
22 | >= sys-libs/zlib-dev-1.2 |
23 | >= dev-libs/nspr-dev-4.19 |
24 | >= dev-db/sqlite-dev-3.20" |
25 | |
26 | SRCFILE="${PNAME}-${PVER}.tar.gz" |
27 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" |
28 | |
29 | ALX_PKG_KEEP="etc/env.d usr/$(mlibdir)/nss/*.so usr/$(mlibdir)/nss/*.so.*" |
30 | sminclude mtools multilib mbuild alx-split |
31 | msetfeature "!check !strip" # never strip the libraries, because if they are altered the chk files did not match, and the libs must be resigned |
32 | |
33 | CONF_REV=1.2 |
34 | PC_REV=1.2 |
35 | |
36 | SRC_URI=( |
37 | http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_$(echo ${PVER} | sed "s:\.:\_:g")_RTM/src/${SRCFILE} |
38 | mirror://${PNAME}/${SRCFILE} |
39 | mirror://${PNAME}/nss-config.in-${CONF_REV} |
40 | mirror://${PNAME}/nss.pc.in-${PC_REV} |
41 | ) |
42 | |
43 | UP2DATE="updatecmd http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/ | grep NSS | grep -v "WITH" | sed 's/.*NSS_\(.*\)_RTM.*/\1/;s/_/./g' | upsort_pipe" |
44 | |
45 | src_prepare() |
46 | { |
47 | munpack ${SRCFILE} || die |
48 | |
49 | # modify install path |
50 | all-abis "sed -i 's:SOURCE_PREFIX = $(CORE_DEPTH)/\.\./dist:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' nss/coreconf/source.mk || die" |
51 | } |
52 | |
53 | src_compile() |
54 | { |
55 | local abi |
56 | for abi in ${MULTILIB_ABIS} |
57 | do |
58 | case ${abi} in |
59 | m32) ABI="m32"; ABI_LIBDIR="lib";; |
60 | m64) ABI="m64"; ABI_LIBDIR="lib64";; |
61 | esac |
62 | cd ${SRCDIR}-${abi} |
63 | |
64 | [[ ${abi} = m64 ]] && export USE_64=1 |
65 | |
66 | # use system sqlite |
67 | export NSS_USE_SYSTEM_SQLITE=1 |
68 | export NSS_ENABLE_ECC=1 |
69 | export XCFLAGS="${CFLAGS}" |
70 | |
71 | # get the right nspr includes and libs on multilib systems |
72 | export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig" |
73 | export NSPR_INCLUDE_DIR=$(pkg-config --cflags-only-I nspr | sed 's:-I::') |
74 | export NSPR_LIB_DIR=$(pkg-config --libs-only-L nspr | sed 's:-L::') |
75 | |
76 | make -j1 BUILD_OPT=1 CC="gcc -${ABI}" -C nss/coreconf || die |
77 | make -j1 BUILD_OPT=1 CC="gcc -${ABI}" -C nss/lib/dbm || die |
78 | make -j1 BUILD_OPT=1 CC="gcc -${ABI}" -C nss || die |
79 | done |
80 | } |
81 | |
82 | alx_generic_src_install() |
83 | { |
84 | local abi |
85 | for abi in ${MULTILIB_ABIS} |
86 | do |
87 | case ${abi} in |
88 | m32) ABI_LIBDIR="lib";; |
89 | m64) ABI_LIBDIR="lib64";; |
90 | esac |
91 | |
92 | cd ${SRCDIR}-${abi}/dist |
93 | |
94 | # put all *.a files in /usr/lib/nss |
95 | # (because some have conflicting names with existing libraries) |
96 | minstalldir /usr/$(mlibdir)/nss || die |
97 | #cp -L */lib/*.a ${BINDIR}/usr/$(mlibdir)/nss || die |
98 | cp -L */lib/libcrmf.a ${BINDIR}/usr/$(mlibdir)/nss || die |
99 | cp -L */lib/*.so ${BINDIR}/usr/$(mlibdir)/nss || die |
100 | cp -L */lib/*.chk ${BINDIR}/usr/$(mlibdir)/nss || die |
101 | |
102 | # all the include files |
103 | minstalldir /usr/include/nss || die |
104 | minstallfile private/nss/\*.h /usr/include/nss || die |
105 | minstallfile public/nss/\*.h /usr/include/nss || die |
106 | |
107 | # install nss-config and pkgconfig file |
108 | minstalldir /usr/bin || die |
109 | minstalldir /usr/$(mlibdir)/pkgconfig || die |
110 | minstallexec -s nss-config.in-${CONF_REV} /usr/bin/nss-config-${abi} || die |
111 | minstallfile -s nss.pc.in-${PC_REV} /usr/$(mlibdir)/pkgconfig/nss.pc || die |
112 | local NSS_VMAJOR=$(cat ${SRCDIR}-${abi}/nss/lib/nss/nss.h | grep "#define.*NSS_VMAJOR" | awk '{print $3}') |
113 | local NSS_VMINOR=$(cat ${SRCDIR}-${abi}/nss/lib/nss/nss.h | grep "#define.*NSS_VMINOR" | awk '{print $3}') |
114 | local NSS_VPATCH=$(cat ${SRCDIR}-${abi}/nss/lib/nss/nss.h | grep "#define.*NSS_VPATCH" | awk '{print $3}') |
115 | |
116 | sed -e "s:@libdir@:/usr/$(mlibdir)/nss:g" \ |
117 | -e "s:@prefix@:/usr:g" \ |
118 | -e "s:@exec_prefix@:\$\{prefix}:g" \ |
119 | -e "s:@includedir@:\$\{prefix}/include/nss:g" \ |
120 | -e "s:@MOD_MAJOR_VERSION@:${NSS_VMAJOR}:g" \ |
121 | -e "s:@MOD_MINOR_VERSION@:${NSS_VMINOR}:g" \ |
122 | -e "s:@MOD_PATCH_VERSION@:${NSS_VPATCH}:g" \ |
123 | -i ${BINDIR}/usr/bin/nss-config-${abi} || die |
124 | |
125 | sed -e "s:@libdir@:/usr/$(mlibdir)/nss:g" \ |
126 | -e "s:@prefix@:/usr:g" \ |
127 | -e "s:@exec_prefix@:\$\{prefix}:g" \ |
128 | -e "s:@includedir@:\$\{prefix}/include/nss:" \ |
129 | -e "s:@NSPR_VERSION@:$(nspr-config --version):g" \ |
130 | -e "s:@NSS_VERSION@:$NSS_VMAJOR.$NSS_VMINOR.$NSS_VPATCH:g" \ |
131 | -i ${BINDIR}/usr/$(mlibdir)/pkgconfig/nss.pc || die |
132 | |
133 | # inform the system about the new ldpath |
134 | minstalldir /etc/env.d || die |
135 | echo "LDPATH=/usr/$(mlibdir)/nss" > ${BINDIR}/etc/env.d/08nss-${abi} || die |
136 | |
137 | if [[ ${ARCH} = x86_64 ]] |
138 | then |
139 | mlink multiarch-wrapper /usr/bin/nss-config || die |
140 | else |
141 | mlink nss-config-${abi} /usr/bin/nss-config || die |
142 | fi |
143 | done |
144 | } |
145 | |
146 | preinstall() |
147 | { |
148 | add_conf_prot_mask /etc/env.d |
149 | } |
150 | |
151 | postinstall() |
152 | { |
153 | if [[ -f ${MROOT}/etc/env.d/08nss ]] |
154 | then |
155 | rm ${MROOT}/etc/env.d/08nss |
156 | fi |
157 | } |