summaryrefslogtreecommitdiffstats
path: root/main/openssl/APKBUILD
blob: 0ee0ed451b6142aad6dd53514958cf28263f3402 (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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# Maintainer: Timo Teras <timo.teras@iki.fi>
pkgname=openssl
pkgver=1.0.1c
pkgrel=3
pkgdesc="Toolkit for SSL v2/v3 and TLS v1"
url="http://openssl.org"
depends=
makedepends="perl zlib-dev"
depends_dev="zlib-dev"
arch="all"
license="openssl"

subpackages="$pkgname-dev $pkgname-doc libcrypto1.0:libcrypto libssl1.0:libssl"

source="http://www.openssl.org/source/${pkgname}-${pkgver}.tar.gz
	fix-manpages.patch
	openssl-bb-basename.patch
	0001-crypto-hmac-support-EVP_MD_CTX_FLAG_ONESHOT-and-set-.patch
	0002-engines-e_padlock-backport-cvs-head-changes.patch
	0003-engines-e_padlock-implement-sha1-sha224-sha256-accel.patch
	0004-crypto-engine-autoload-padlock-dynamic-engine.patch
	0005-s_client-ircv3-starttls.patch
	version-script-eglibc.patch"

_builddir="$srcdir"/$pkgname-$pkgver

prepare() {
        cd "$_builddir"
        for patch in $source; do
                case $patch in
                # we concider patches with uclibc in its name
                # only usefull on uclibc install
                *uclibc*.patch)
                        if [ "$ALPINE_LIBC" != "eglibc" ]; then
                                msg "Applying patch $patch"
                                patch -p1 -i "$srcdir"/$patch || return 1
                        fi
                        ;;
                # same applied to eglibc
                *eglibc*.patch)
                        if [ "$ALPINE_LIBC" = "eglibc" ]; then
                                msg "Applying patch $patch"
                                patch -p1 -i "$srcdir"/$patch || return 1
                        fi
                        ;;
                *.patch)
                        msg "Applying patch $patch"
                        patch -p1 -i "$srcdir"/$patch || return 1
                        ;;
                esac
        done
}

build() {
	cd "$_builddir"
	./config --prefix=/usr \
		--libdir=lib \
		--openssldir=/etc/ssl \
		shared zlib enable-montasm enable-md2 \
		-Wa,--noexecstack \
		|| return 1

	make -j1 || return 1
}

package() {
	cd "$_builddir"
	make -j1 INSTALL_PREFIX="$pkgdir" MANDIR=/usr/share/man install
}

libcrypto() {
	pkgdesc="Crypto library from openssl"
	replaces="openssl libcrypto"
	mkdir -p "$subpkgdir"/lib "$subpkgdir"/usr/lib
	for i in "$pkgdir"/usr/lib/libcrypto*; do
		mv $i "$subpkgdir"/lib/
		ln -s ../../lib/${i##*/} "$subpkgdir"/usr/lib/${i##*/}
	done
	mv "$pkgdir"/usr/lib/engines "$subpkgdir"/usr/lib/
}

libssl() {
	pkgdesc="SSL shared libraries"
	replaces="openssl"
	mkdir -p "$subpkgdir"/lib "$subpkgdir"/usr/lib
	for i in "$pkgdir"/usr/lib/libssl*; do
		mv $i "$subpkgdir"/lib/
		ln -s ../../lib/${i##*/} "$subpkgdir"/usr/lib/${i##*/}
	done
}

md5sums="ae412727c8c15b67880aef7bd2999b2e  openssl-1.0.1c.tar.gz
115c481cd59b3dba631364e8fb1778f5  fix-manpages.patch
c6a9857a5dbd30cead0404aa7dd73977  openssl-bb-basename.patch
ddb5fc155145d5b852425adaec32234d  0001-crypto-hmac-support-EVP_MD_CTX_FLAG_ONESHOT-and-set-.patch
4a7b9e20beb33a5e262ab64c2b8e5b48  0002-engines-e_padlock-backport-cvs-head-changes.patch
d95bbaa38889836afd3c52f3962f3b54  0003-engines-e_padlock-implement-sha1-sha224-sha256-accel.patch
c32f42451a07267ee5dfb3781fa40c00  0004-crypto-engine-autoload-padlock-dynamic-engine.patch
c5b1042a3acaf3591f3f5620b7086e12  0005-s_client-ircv3-starttls.patch
fcf44e9894d87a8bfe368e9b134647d5  version-script-eglibc.patch"