blob: ecb6bedc17fd041de13193d0833ef1cb8b93f38f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-libs/openssl/openssl-0.9.6i-r1.ebuild,v 1.2 2003/03/20 08:39:28 aliz Exp $
inherit eutils
S=${WORKDIR}/${P}
DESCRIPTION="Toolkit for SSL v2/v3 and TLS v1"
SRC_URI="http://www.openssl.org/source/${P}.tar.gz"
HOMEPAGE="http://www.openssl.org/"
RDEPEND="virtual/glibc"
DEPEND="${RDEPEND} >=dev-lang/perl-5"
LICENSE="as-is"
SLOT="0"
KEYWORDS="x86 ppc alpha sparc mips hppa arm"
IUSE=""
if [ "$PROFILE_ARCH" = "sparc" -a "`uname -m`" = "sparc64" ]; then
SSH_TARGET="linux-sparcv8"
fi
src_unpack() {
unpack ${A} ; cd ${S}
epatch ${FILESDIR}/${P}-blinding.patch
epatch ${FILESDIR}/${P}-gentoo.diff
if [ "${ARCH}" = "mips" ]
then
cd ${S}
epatch ${FILESDIR}/openssl-0.9.6-mips.diff
fi
if [ "${ARCH}" = "arm" ]; then
# patch linker to add -ldl or things linking aginst libcrypto fail
sed -e \
's!^"linux-elf-arm"\(.*\)::BN\(.*\)!"linux-elf-arm"\1:-ldl:BN\2!' \
Configure > Configure.orig
elif [ "${ARCH}" = "hppa" ]; then
sed -e \
's!^"linux-parisc"\(.*\)::BN\(.*\)::!"linux-parisc"\1:-ldl:BN\2::::::::::dlfcn:linux-shared:-fPIC::.so.\\$(SHLIB_MAJOR).\\$(SHLIB_MINOR)!' \
Configure > Configure.orig
else
cp Configure Configure.orig
fi
sed -e "s/-O3/$CFLAGS/" -e "s/-m486//" Configure.orig > Configure
}
src_compile() {
if [ ${SSH_TARGET} ]; then
einfo "Forcing ${SSH_TARGET} compile"
./Configure ${SSH_TARGET} --prefix=/usr \
--openssldir=/etc/ssl shared threads || die
else
./config --prefix=/usr --openssldir=/etc/ssl shared threads || die
fi
# i think parallel make has problems
make all || die
}
src_install() {
make INSTALL_PREFIX=${D} MANDIR=/usr/share/man install || die
dodoc CHANGES* FAQ LICENSE NEWS README
dodoc doc/*.txt
dohtml doc/*
insinto /usr/share/emacs/site-lisp
doins doc/c-indentation.el
# The man pages rand.3 and passwd.1 conflict with other packages
# Rename them to ssl-* and also make a symlink from openssl-* to ssl-*
cd ${D}/usr/share/man/man1
mv passwd.1 ssl-passwd.1
ln -sf ssl-passwd.1 openssl-passwd.1
cd ${D}/usr/share/man/man3
mv rand.3 ssl-rand.3
ln -sf ssl-rand.3 openssl-rand.3
# create the certs directory. Previous openssl builds
# would need to create /usr/lib/ssl/certs but this looks
# to be the more FHS compliant setup... -raker
dodir /etc/ssl/certs
}
|