summaryrefslogtreecommitdiff
blob: 4e38c712e9e76907bd5bd922767a0f400ea9f227 (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
# 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.7.ebuild,v 1.5 2003/02/13 10:49:11 vapier Exp $

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} >=sys-devel/perl-5"
LICENSE="as-is"
SLOT="0"
KEYWORDS="~x86 ~ppc ~alpha ~sparc ~hppa"

warning() {
	ewarn "BIG FAT WARNING!!!"
	ewarn "You must re-emerge every package that links to openssl after you have merged ${P}"
	ewarn "This is becuse packages that links against ${PN} links against the full version"
	ewarn "Also, if you don't have the sources for the packages you need to re-emerge you"
	ewarn "should download them with emerge -f prior to the installation of ${P}."
	ewarn "This is becuse wget may be linked against ${PN}."
	ewarn "To generate a list of packages that links against ${PN} you can download"
	ewarn "and run the script from http://cvs.gentoo.org/~aliz/openssl_update.sh"
	ewarn "If you are using binary packages you need to rebuild those against the"
	ewarn "new version of ${PN}"
	sleep 10
}

src_unpack() {
	warning
	unpack ${A} ; cd ${S}

	patch -p1 < ${FILESDIR}/${PF}-gentoo.diff

    # many apps linking to openssl needs -fPIC
	if [ "${ARCH}" = "hppa" ]
	then
		CFLAGS="${CFLAGS} -fPIC"
	fi
						 

	cp Configure Configure.orig
	sed -e "s/-O3/$CFLAGS/" -e "s/-m486//" Configure.orig > Configure
}

src_compile() {
	./config --prefix=/usr --openssldir=/etc/ssl shared threads || die
	# 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

}