Magellan Linux

Contents of /smage/trunk/core/openssl-compat/openssl-compat-1.0.2n-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 11608 - (show annotations) (download)
Wed Dec 27 09:56:30 2017 UTC (6 years, 4 months ago) by niro
File size: 3229 byte(s)
auto added: ver bump to 1.0.2n-r1
1 # $Id$
2
3 PNAME="openssl-compat"
4 PVER="1.0.2n"
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 >= x11-apps/makedepend-1"
17
18 SRCFILE="openssl-${PVER}.tar.gz"
19 SRCDIR="${BUILDDIR}/openssl-${PVER}"
20
21 ALX_PKG_KEEP="usr/$(mlibdir)/openssl-1.0/libcrypto.so
22 usr/$(mlibdir)/libcrypto.so.*
23 usr/$(mlibdir)/openssl-1.0/libssl.so
24 usr/$(mlibdir)/libssl.so.*
25 usr/bin/openssl-1.0"
26 sminclude multilib mbuild mtools alx-split
27 msetfeature "!check"
28
29 SRC_URI=(
30 http://www.openssl.org/source/${SRCFILE}
31 mirror://openssl/${SRCFILE}
32 mirror://openssl/openssl-1.0-versioned-symbols.patch
33 )
34
35 UP2DATE="updatecmd http://ftp.openssl.org/source/ | grep '${PNAME}-[0-9]' | highesttarball gz"
36
37 # pkgs to rebuild: openssh, openvpn, proftpd, dovecot, subversion, neon, nxssh
38
39 src_prepare()
40 {
41 munpack ${SRCFILE} || die
42
43 # prevent conflicts with openssl-1.1
44 mpatch openssl-1.0-versioned-symbols.patch || die
45 }
46
47 src_compile()
48 {
49 local abi
50 local libdir
51 local myopts
52 local myoptflags
53
54 for abi in ${MULTILIB_ABIS}
55 do
56 cd ${SRCDIR}-${abi}
57
58 case ${abi} in
59 m32) libdir="lib" ;;
60 m64) libdir="lib64" ;;
61 esac
62
63 myopts="linux-${ARCH}"
64 [[ ${ARCH} = i*86 ]] && myopts="linux-elf"
65 if [[ ${ARCH} = x86_64 ]] && [[ ${abi} = m32 ]]
66 then
67 myopts="linux-elf"
68 fi
69
70 # disable ssl3
71 myoptflags+=" no-ssl3-method"
72 # enable 64 bit ec_nistp
73 if [[ ${ARCH} = x86_64 ]] && [[ ${abi} = m64 ]]
74 then
75 myoptflags+=" enable-ec_nistp_64_gcc_128"
76 fi
77
78 echo "Compiler: ${myopts}"
79
80 abi-${abi} ./Configure \
81 --openssldir=/etc/ssl \
82 --prefix=/usr \
83 --libdir=${libdir}/openssl-1.0 \
84 shared ${myoptflags} threads zlib ${myopts} || die
85
86 make depend || die
87 done
88
89 mmake -j1 || die
90 }
91
92 alx_generic_src_install()
93 {
94 cd ${SRCDIR}
95
96 # needed directories
97 minstalldir /etc/ssl || die
98
99 mmake -j1 INSTALL_PREFIX=${BINDIR} install_sw || die
100
101 # fix permissions
102 mchmod 0755 /usr/$(mlibdir)/openssl-1.0/pkgconfig || die
103
104 # do not conflict with openssl
105 minstalldir /usr/include/openssl-1.0 || die
106 mmove ${BINDIR}/usr/include/openssl /usr/include/openssl-1.0/ || die
107 mmove ${BINDIR}/usr/$(mlibdir)/openssl-1.0/libcrypto.so.1.0.0 /usr/$(mlibdir)/ || die
108 mmove ${BINDIR}/usr/$(mlibdir)/openssl-1.0/libssl.so.1.0.0 /usr/$(mlibdir)/ || die
109 mlink ../libssl.so.1.0.0 /usr/$(mlibdir)/openssl-1.0/libssl.so || die
110 mlink ../libcrypto.so.1.0.0 /usr/$(mlibdir)/openssl-1.0/libcrypto.so || die
111 sed -i 's:/include$:/include/openssl-1.0:' ${BINDIR}/usr/$(mlibdir)/openssl-1.0/pkgconfig/*.pc || die
112 if [[ $(mlibdir) != lib ]]
113 then
114 mmove ${BINDIR}/usr/lib/openssl-1.0/libcrypto.so.1.0.0 /usr/lib/ || die
115 mmove ${BINDIR}/usr/lib/openssl-1.0/libssl.so.1.0.0 /usr/lib/ || die
116 mlink ../libssl.so.1.0.0 /usr/lib/openssl-1.0/libssl.so || die
117 mlink ../libcrypto.so.1.0.0 /usr/lib/openssl-1.0/libcrypto.so || die
118 sed -i 's:/include$:/include/openssl-1.0:' ${BINDIR}/usr/lib/openssl-1.0/pkgconfig/*.pc || die
119 fi
120 mmove ${BINDIR}/usr/bin/openssl /usr/bin/openssl-1.0 || die
121 mdelete -r /etc || die
122 mdelete /usr/bin/c_rehash || die
123
124 # install docs
125 minstalldocs CHANGES* FAQ LICENSE NEWS README doc/*.txt || die
126 }