Magellan Linux

Contents of /trunk/core/openssl/openssl-1.1.0f-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 29826 - (show annotations) (download)
Fri Oct 13 10:38:49 2017 UTC (6 years, 7 months ago) by niro
File size: 3021 byte(s)
auto added: ver bump to 1.1.0f-r1
1 # $Id$
2
3 PNAME="openssl"
4 PVER="1.1.0f"
5 PBUILD="r1"
6
7 PCAT="dev-libs"
8
9 DESCRIPTION="Provides libraries for SSL v2/3 and TLS v1."
10 HOMEPAGE="http://www.openssl.org/"
11
12 DEPEND=">= virtual/glibc"
13
14 SDEPEND=">= dev-lang/perl-5
15 >= virtual/sed"
16
17 SRCFILE="${PNAME}-${PVER}.tar.gz"
18 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
19
20 sminclude multilib mbuild mtools
21 msetfeature "!check"
22
23 MKCERTS_CVS_REV=1.3
24
25 SRC_URI=(
26 http://www.openssl.org/source/${SRCFILE}
27 mirror://${PNAME}/${SRCFILE}
28 mirror://${PNAME}/openssl-make-certs.sh-${MKCERTS_CVS_REV}
29 mirror://${PNAME}/${PNAME}-1.0.2b-magellan.patch
30 )
31
32 UP2DATE="updatecmd http://ftp.openssl.org/source/ | grep '${PNAME}-[0-9]' | highesttarball gz"
33
34 # pkgs to rebuild: openssh, openvpn, proftpd, dovecot, subversion, neon, nxssh
35
36 src_compile()
37 {
38 local abi
39 local libdir
40 local myopts
41 local myoptflags
42
43 for abi in ${MULTILIB_ABIS}
44 do
45 cd ${SRCDIR}-${abi}
46
47 case ${abi} in
48 m32) libdir="lib" ;;
49 m64) libdir="lib64" ;;
50 esac
51
52 myopts="linux-${ARCH}"
53 [[ ${ARCH} = i*86 ]] && myopts="linux-elf"
54
55 # disable ssl3
56 myoptflags+=" no-ssl3-method"
57 # enable 64 bit ec_nistp
58 [[ ${ARCH} = x86_64 ]] && myoptflags+=" enable-ec_nistp_64_gcc_128"
59
60 echo "Compiler: ${myopts}"
61
62 ./Configure \
63 --openssldir=/etc/ssl \
64 --prefix=/usr \
65 --libdir=${libdir} \
66 shared ${myoptflags} threads zlib ${myopts} || die
67
68 make depend || die
69 done
70
71 mmake -j1 MANDIR=/usr/share/man || die
72 }
73
74 src_install()
75 {
76 cd ${SRCDIR}
77
78 # needed directories
79 minstalldir /etc/ssl || die
80
81 mmake -j1 DESTDIR=${BINDIR} MANDIR=/usr/share/man install || die
82
83 # fix permissions
84 mchmod 0755 /usr/$(mlibdir)/pkgconfig || die
85
86 # install certs, make install left them out
87 cp -r certs ${BINDIR}/etc/ssl || die
88 rm -r ${BINDIR}/etc/ssl/certs/{demo,expired} || die
89
90 # keep these directories
91 mkeepdir /etc/ssl/certs || die
92 mkeepdir /etc/ssl/private || die
93 mchmod 0700 /etc/ssl/private || die
94
95 # install our simple certificate creation script
96 minstalldir /usr/sbin || die
97 minstallexec -s openssl-make-certs.sh-${MKCERTS_CVS_REV} /usr/sbin/openssl-make-certs || die
98
99 # namespace openssl programs to prevent conflicts with other man pages (from gentoo)
100 cd ${BINDIR}/usr/share/man
101 local m d s
102 for m in $(find . -type f | xargs grep -L '#include')
103 do
104 d=${m%/*} ; d=${d#./} ; m=${m##*/}
105 [[ ${m} == openssl.1* ]] && continue
106 [[ -n $(find -L ${d} -type l) ]] && die "erp, broken links already!"
107 mv ${d}/{,ssl-}${m}
108 # fix up references to renamed man pages
109 sed -i '/^[.]SH "SEE ALSO"/,/^[.]/s:\([^(, ]*(1)\):ssl-\1:g' ${d}/ssl-${m}
110 ln -s ssl-${m} ${d}/openssl-${m}
111 # locate any symlinks that point to this man page ... we assume
112 # that any broken links are due to the above renaming
113 for s in $(find -L ${d} -type l)
114 do
115 s=${s##*/}
116 rm -f ${d}/${s}
117 ln -s ssl-${m} ${d}/ssl-${s}
118 ln -s ssl-${s} ${d}/openssl-${s}
119 done
120 done
121 [[ -n $(find -L ${d} -type l) ]] && die "broken manpage links found :("
122
123 # install docs
124 minstalldocs CHANGES* FAQ LICENSE NEWS README doc/*.txt || die
125 }