Magellan Linux

Annotation of /smage/trunk/core/openssl-compat/openssl-compat-1.0.2n-r4.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 11650 - (hide annotations) (download)
Thu Dec 28 11:29:30 2017 UTC (6 years, 4 months ago) by niro
File size: 3548 byte(s)
-added more compat symlinks
1 niro 11650 # $Id$
2    
3     PNAME="openssl-compat"
4     PVER="1.0.2n"
5     PBUILD="r4"
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-misc/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     # disabled, nssl requires this -fixme!
72     #myoptflags+=" no-ssl3-method"
73     # enable 64 bit ec_nistp
74     if [[ ${ARCH} = x86_64 ]] && [[ ${abi} = m64 ]]
75     then
76     myoptflags+=" enable-ec_nistp_64_gcc_128"
77     fi
78    
79     echo "Compiler: ${myopts}"
80    
81     abi-${abi} ./Configure \
82     --openssldir=/etc/ssl \
83     --prefix=/usr \
84     --libdir=${libdir}/openssl-1.0 \
85     shared ${myoptflags} threads zlib ${myopts} || die
86    
87     make depend || die
88     done
89    
90     mmake -j1 || die
91     }
92    
93     alx_generic_src_install()
94     {
95     cd ${SRCDIR}
96    
97     # needed directories
98     minstalldir /etc/ssl || die
99    
100     mmake -j1 INSTALL_PREFIX=${BINDIR} install_sw || die
101    
102     # fix permissions
103     mchmod 0755 /usr/$(mlibdir)/openssl-1.0/pkgconfig || die
104    
105     # do not conflict with openssl
106     minstalldir /usr/include/openssl-1.0 || die
107     mmove ${BINDIR}/usr/include/openssl /usr/include/openssl-1.0/ || die
108     mmove ${BINDIR}/usr/$(mlibdir)/openssl-1.0/libcrypto.so.1.0.0 /usr/$(mlibdir)/ || die
109     mmove ${BINDIR}/usr/$(mlibdir)/openssl-1.0/libssl.so.1.0.0 /usr/$(mlibdir)/ || die
110     mlink ../libssl.so.1.0.0 /usr/$(mlibdir)/openssl-1.0/libssl.so || die
111     mlink ../libcrypto.so.1.0.0 /usr/$(mlibdir)/openssl-1.0/libcrypto.so || die
112     sed -i 's:/include$:/include/openssl-1.0:' ${BINDIR}/usr/$(mlibdir)/openssl-1.0/pkgconfig/*.pc || die
113     if [[ $(mlibdir) != lib ]]
114     then
115     mmove ${BINDIR}/usr/lib/openssl-1.0/libcrypto.so.1.0.0 /usr/lib/ || die
116     mmove ${BINDIR}/usr/lib/openssl-1.0/libssl.so.1.0.0 /usr/lib/ || die
117     mlink ../libssl.so.1.0.0 /usr/lib/openssl-1.0/libssl.so || die
118     mlink ../libcrypto.so.1.0.0 /usr/lib/openssl-1.0/libcrypto.so || die
119     sed -i 's:/include$:/include/openssl-1.0:' ${BINDIR}/usr/lib/openssl-1.0/pkgconfig/*.pc || die
120     fi
121     mmove ${BINDIR}/usr/bin/openssl /usr/bin/openssl-1.0 || die
122     mdelete -r /etc || die
123     mdelete /usr/bin/c_rehash || die
124    
125     # install configure check compat symlinks
126     mlink ./ /usr/include/openssl-1.0/include || die
127     mlink ../../$(mlibdir)/openssl-1.0 /usr/include/openssl-1.0/$(mlibdir) || die
128     if [[ $(mlibdir) != lib ]]
129     then
130     mlink ../../lib/openssl-1.0 /usr/include/openssl-1.0/lib || die
131     fi
132    
133     # install docs
134     minstalldocs CHANGES* FAQ LICENSE NEWS README doc/*.txt || die
135     }