Contents of /trunk/core/openssl/openssl-1.0.1h-r1.smage2
Parent Directory | Revision Log
Revision 21341 -
(show annotations)
(download)
Thu Jun 12 12:04:15 2014 UTC (10 years, 3 months ago) by niro
File size: 3080 byte(s)
Thu Jun 12 12:04:15 2014 UTC (10 years, 3 months ago) by niro
File size: 3080 byte(s)
-removed deprecated perl patch
1 | # $Id$ |
2 | |
3 | PNAME="openssl" |
4 | PVER="1.0.1h" |
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 | >= dev-libs/openssl-compat-0.9.7" |
14 | |
15 | SDEPEND=">= dev-lang/perl-5 |
16 | >= virtual/sed" |
17 | |
18 | SRCFILE="${PNAME}-${PVER}.tar.gz" |
19 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" |
20 | |
21 | sminclude multilib mtools |
22 | msetfeature "!check" |
23 | |
24 | MKCERTS_CVS_REV=1.3 |
25 | |
26 | SRC_URI=( |
27 | http://www.openssl.org/source/${SRCFILE} |
28 | mirror://${PNAME}/${SRCFILE} |
29 | mirror://${PNAME}/openssl-make-certs.sh-${MKCERTS_CVS_REV} |
30 | mirror://${PNAME}/${PNAME}-1.0.1a-magellan.patch |
31 | ) |
32 | |
33 | UP2DATE="updatecmd -dont_wrap_pre http://www.openssl.org/source/ | grep 'LATEST' | sed 's:.*\(openssl-.*.tar.\(gz\|xz\|bz2\)\).*:\1:' | firsttarball gz" |
34 | |
35 | # pkgs to rebuild: openssh, openvpn, proftpd, dovecot, subversion, neon, nxssh |
36 | |
37 | src_prepare() |
38 | { |
39 | munpack ${SRCFILE} || die |
40 | |
41 | # fix CFLAGS and allow x86_64 multlib builds |
42 | mpatch ${PNAME}-1.0.1a-magellan.patch || die |
43 | } |
44 | |
45 | src_compile() |
46 | { |
47 | local abi |
48 | local libdir |
49 | local myopts |
50 | |
51 | for abi in ${MULTILIB_ABIS} |
52 | do |
53 | cd ${SRCDIR}-${abi} |
54 | |
55 | case ${abi} in |
56 | m32) libdir="lib" ;; |
57 | m64) libdir="lib64" ;; |
58 | esac |
59 | |
60 | myopts="linux-${ARCH}-${abi}" |
61 | [[ ${ARCH} = i*86 ]] && myopts="linux-elf" |
62 | |
63 | echo "Compiler: ${myopts}" |
64 | |
65 | ./Configure \ |
66 | --openssldir=/etc/ssl \ |
67 | --prefix=/usr \ |
68 | --libdir=${libdir} \ |
69 | shared threads zlib ${myopts} || die |
70 | |
71 | make depend || die |
72 | done |
73 | |
74 | mmake -j1 MANDIR=/usr/share/man || die |
75 | } |
76 | |
77 | src_install() |
78 | { |
79 | cd ${SRCDIR} |
80 | |
81 | # needed directories |
82 | minstalldir /etc/ssl || die |
83 | |
84 | mmake -j1 INSTALL_PREFIX=${BINDIR} MANDIR=/usr/share/man install || die |
85 | |
86 | # fix permissions |
87 | mchmod 0755 /usr/$(mlibdir)/pkgconfig || die |
88 | |
89 | # install certs, make install left them out |
90 | cp -r certs ${BINDIR}/etc/ssl || die |
91 | rm -r ${BINDIR}/etc/ssl/certs/{demo,expired} || die |
92 | |
93 | # keep these directories |
94 | mkeepdir /etc/ssl/certs || die |
95 | mkeepdir /etc/ssl/private || die |
96 | mchmod 0700 /etc/ssl/private || die |
97 | |
98 | # install our simple certificate creation script |
99 | minstalldir /usr/sbin || die |
100 | minstallexec -s openssl-make-certs.sh-${MKCERTS_CVS_REV} /usr/sbin/openssl-make-certs || die |
101 | |
102 | # namespace openssl programs to prevent conflicts with other man pages (from gentoo) |
103 | cd ${BINDIR}/usr/share/man |
104 | local m d s |
105 | for m in $(find . -type f | xargs grep -L '#include') |
106 | do |
107 | d=${m%/*} ; d=${d#./} ; m=${m##*/} |
108 | [[ ${m} == openssl.1* ]] && continue |
109 | [[ -n $(find -L ${d} -type l) ]] && die "erp, broken links already!" |
110 | mv ${d}/{,ssl-}${m} |
111 | # fix up references to renamed man pages |
112 | sed -i '/^[.]SH "SEE ALSO"/,/^[.]/s:\([^(, ]*(1)\):ssl-\1:g' ${d}/ssl-${m} |
113 | ln -s ssl-${m} ${d}/openssl-${m} |
114 | # locate any symlinks that point to this man page ... we assume |
115 | # that any broken links are due to the above renaming |
116 | for s in $(find -L ${d} -type l) |
117 | do |
118 | s=${s##*/} |
119 | rm -f ${d}/${s} |
120 | ln -s ssl-${m} ${d}/ssl-${s} |
121 | ln -s ssl-${s} ${d}/openssl-${s} |
122 | done |
123 | done |
124 | [[ -n $(find -L ${d} -type l) ]] && die "broken manpage links found :(" |
125 | |
126 | # install docs |
127 | minstalldocs CHANGES* FAQ LICENSE NEWS README doc/*.txt || die |
128 | } |