annotate security/nss/nss.sh @ 1204:5e5a2b9d353c

security/nss: initial import, closes #2432
author David Demelier <markand@malikania.fr>
date Thu, 07 Nov 2019 20:20:00 +0100
parents
children 9d4d1ee4b28d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1204
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #!/bin/sh
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 #
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 # Copyright (c) 2019 David Demelier <markand@malikania.fr>
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 #
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 # Permission to use, copy, modify, and/or distribute this software for any
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 # purpose with or without fee is hereby granted, provided that the above
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # copyright notice and this permission notice appear in all copies.
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 #
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 #
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
17
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
18 PKGNAME=nss
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 PKGVERSION=3.47
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
20 _VER=$(echo $PKGVERSION | tr '.' '_')
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 PKGREVISION=1
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
22 PKGLICENSE="MPLv20"
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
23 PKGSUMMARY="Mozilla Network Security Services"
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
24 PKGWWW="https://wiki.mozilla.org/NSS"
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 PKGDOWNLOAD="https://ftp.mozilla.org/pub/security/nss/releases/NSS_${_VER}_RTM/src/$PKGNAME-$PKGVERSION.tar.gz"
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
26 PKGDEPENDS="nspr"
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
27
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 : ${CC:=clang}
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
29 : ${CFLAGS:=-O2}
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 : ${CXX:=clang++}
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
31 : ${CXXFLAGS:=-O2}
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
32
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
33 build()
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 {
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
35 rm -rf $PKGNAME-$PKGVERSION
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
36 tar -xvzf $PKGNAME-$PKGVERSION.tar.gz
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
37 cd $PKGNAME-$PKGVERSION
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
38
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
39 make -C nss \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
40 BUILD_OPT=1 \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 CC="$CC" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
42 CCC="$CXX" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
43 CXX="$CXX" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
44 NSPR_INCLUDE_DIR=/include/nspr \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 NSPR_LIB_DIR=/lib \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
46 NSS_DISABLE_GTESTS=1 \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
47 NSS_USE_SYSTEM_SQLITE=1 \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
48 USE_SYSTEM_ZLIB=1 \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
49 USE_64=1
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
50
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
51 mkdir -p $DESTDIR/lib/pkgconfig
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
52 mkdir -p $DESTDIR/bin
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
53 mkdir -p $DESTDIR/include/nss
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
54
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
55 # Copy only stuff as recommended per BLFS.
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
56 cp -p dist/Linux*/lib/*.so $DESTDIR/lib
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
57 cp -p dist/Linux*/lib/*.chk $DESTDIR/lib
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
58 cp -p dist/Linux*/lib/libcrmf.a $DESTDIR/lib
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
59 cp -p dist/Linux*/bin/*util $DESTDIR/bin
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
60 cp -p dist/public/nss/*.h $DESTDIR/include/nss
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
61
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
62 # Obtain version from header.
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
63 major=$(awk '/^#define NSS_VMAJOR/ { print $3 }' nss/lib/nss/nss.h)
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
64 minor=$(awk '/^#define NSS_VMINOR/ { print $3 }' nss/lib/nss/nss.h)
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
65 patch=$(awk '/^#define NSS_VPATCH/ { print $3 }' nss/lib/nss/nss.h)
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
66
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
67 sed nss/pkg/pkg-config/nss.pc.in \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
68 -e "s|%NSPR_VERSION%|$(pkgconf --modversion nspr)|" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
69 -e "s|%NSS_VERSION%|$major.$minor.$patch|" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
70 -e "s|%exec_prefix%||" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
71 -e "s|%includedir%|/include|" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
72 -e "s|%libdir%|/lib|" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
73 -e "s|%prefix%||" > $DESTDIR/lib/pkgconfig/nss.pc
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
74 sed nss/pkg/pkg-config/nss-config.in \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
75 -e "s|@MOD_MAJOR_VERSION@|$major|" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
76 -e "s|@MOD_MINOR_VERSION@|$minor|" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
77 -e "s|@MOD_PATCH_VERSION@|$patch|" \
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
78 -e "s|@prefix@||" > $DESTDIR/bin/nss-config
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
79 chmod 0755 $DESTDIR/bin/nss-config
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
80
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
81 cd -
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
82 rm -rf $PKGNAME-$PKGVERSION
5e5a2b9d353c security/nss: initial import, closes #2432
David Demelier <markand@malikania.fr>
parents:
diff changeset
83 }