Magellan Linux

Contents of /branches/magellan-next/extras/nss/nss-3.12.11-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 9007 - (show annotations) (download)
Mon Sep 19 22:13:55 2011 UTC (12 years, 7 months ago) by niro
File size: 3953 byte(s)
-multilib fixes
1 # $Id$
2
3 PNAME="nss"
4 PVER="3.12.11"
5 PBUILD="r1"
6
7 PCATEGORIE="dev-libs"
8
9 DESCRIPTION="Network Security Services (NSS)."
10 HOMEPAGE="http://www.mozilla.org/projects/security/pki/nss/"
11
12 DEPEND=">= virtual/glibc
13 >= dev-libs/nspr-4.8.9
14 >= dev-db/sqlite-3.7"
15
16 SDEPEND=">= sys-apps/sed-4"
17
18 SRCFILE="${PNAME}-${PVER}.tar.gz"
19 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
20
21 sminclude mtools multilib
22
23 CONF_CVS_REV=1.2
24 PC_CVS_REV=1.2
25
26 SRC_URI=(
27 ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_$(echo ${PVER} | sed "s:\.:\_:g")_RTM/src/${SRCFILE}
28 mirror://${PNAME}/${SRCFILE}
29 mirror://${PNAME}/nss-config.in-${CONF_CVS_REV}
30 mirror://${PNAME}/nss.pc.in-${PC_CVS_REV}
31 )
32
33 UP2DATE="updatecmd 'http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/?C=M;D=A' | grep NSS | sed -n 's/.*NSS_\(.*\)_RTM.*/\1/;s/_/./g;$ p'"
34
35 src_prepare()
36 {
37 munpack ${SRCFILE} || die
38
39 # modify install path
40 all-abis "sed -i 's:SOURCE_PREFIX = $(CORE_DEPTH)/\.\./dist:SOURCE_PREFIX = $(CORE_DEPTH)/dist:' mozilla/security/coreconf/source.mk || die"
41 }
42
43 src_compile()
44 {
45 cd ${SRCDIR}
46
47 [[ ${ARCH} = x86_64 ]] && export USE_64=1
48
49 # use system sqlite
50 export NSS_USE_SYSTEM_SQLITE=1
51
52 export FREEBL_NO_DEPEND=1
53 export PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
54 export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
55
56 # get the right nspr includes and libs on multilib systems
57 export NSPR_INCLUDE_DIR=$(pkg-config --cflags-only-I nspr | sed 's:-I::')
58 export NSPR_LIB_DIR=$(pkg-config --libs-only-L nspr | sed 's:-L::')
59
60 mmake -j1 BUILD_OPT=1 CC='${CC}' -C mozilla/security/coreconf || die
61 mmake -j1 BUILD_OPT=1 CC='${CC}' -C mozilla/security/dbm || die
62 mmake -j1 BUILD_OPT=1 CC='${CC}' -C mozilla/security/nss || die
63 }
64
65 src_install()
66 {
67 local abi
68 for abi in ${MULTILIB_ABIS}
69 do
70 case ${abi} in
71 m32) ABI_LIBDIR="lib";;
72 m64) ABI_LIBDIR="lib64";;
73 esac
74
75 cd ${SRCDIR}-${abi}/mozilla/dist
76
77 # put all *.a files in /usr/lib/nss
78 # (because some have conflicting names with existing libraries)
79 minstalldir /usr/$(mlibdir)/nss || die
80 cp -L */lib/*.a ${BINDIR}/usr/$(mlibdir)/nss || die
81 cp -L */lib/*.so ${BINDIR}/usr/$(mlibdir)/nss || die
82 cp -L */lib/*.chk ${BINDIR}/usr/$(mlibdir)/nss || die
83
84 # all the include files
85 minstalldir /usr/include/nss || die
86 minstallfile private/nss/\*.h /usr/include/nss || die
87 minstallfile public/nss/\*.h /usr/include/nss || die
88
89 # install nss-config and pkgconfig file
90 minstalldir /usr/bin || die
91 minstalldir /usr/$(mlibdir)/pkgconfig || die
92 minstallexec -s nss-config.in-${CONF_CVS_REV} /usr/bin/nss-config || die
93 minstallfile -s nss.pc.in-${PC_CVS_REV} /usr/$(mlibdir)/pkgconfig/nss.pc || die
94 local NSS_VMAJOR=$(cat ${SRCDIR}/mozilla/security/nss/lib/nss/nss.h | grep "#define.*NSS_VMAJOR" | awk '{print $3}')
95 local NSS_VMINOR=$(cat ${SRCDIR}/mozilla/security/nss/lib/nss/nss.h | grep "#define.*NSS_VMINOR" | awk '{print $3}')
96 local NSS_VPATCH=$(cat ${SRCDIR}/mozilla/security/nss/lib/nss/nss.h | grep "#define.*NSS_VPATCH" | awk '{print $3}')
97
98 sed -e "s:@libdir@:/usr/$(mlibdir)/nss:g" \
99 -e "s:@prefix@:/usr:g" \
100 -e "s:@exec_prefix@:\$\{prefix}:g" \
101 -e "s:@includedir@:\$\{prefix}/include/nss:g" \
102 -e "s:@MOD_MAJOR_VERSION@:${NSS_VMAJOR}:g" \
103 -e "s:@MOD_MINOR_VERSION@:${NSS_VMINOR}:g" \
104 -e "s:@MOD_PATCH_VERSION@:${NSS_VPATCH}:g" \
105 -i ${BINDIR}/usr/bin/nss-config || die
106
107 sed -e "s:@libdir@:/usr/$(mlibdir)/nss:g" \
108 -e "s:@prefix@:/usr:g" \
109 -e "s:@exec_prefix@:\$\{prefix}:g" \
110 -e "s:@includedir@:\$\{prefix}/include/nss:" \
111 -e "s:@NSPR_VERSION@:$(nspr-config --version):g" \
112 -e "s:@NSS_VERSION@:$NSS_VMAJOR.$NSS_VMINOR.$NSS_VPATCH:g" \
113 -i ${BINDIR}/usr/$(mlibdir)/pkgconfig/nss.pc || die
114
115 # inform the system about the new ldpath
116 minstalldir /etc/env.d || die
117 echo "LDPATH=/usr/$(mlibdir)/nss" > ${BINDIR}/etc/env.d/08nss-${abi} || die
118 done
119 }
120
121 postinstall()
122 {
123 if [[ -f ${MROOT}/etc/env.d/08nss ]]
124 then
125 rm ${MROOT}/etc/env.d/08nss
126 fi
127 }