mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-30 10:01:32 +02:00
[portage-stable] add openssl 0.9.8x
Add the upstream ebuild for openssl 0.9.8x. We only need this because the netflix plugin links against 0.9.8 specifically, and we're about to go to 1.0.1c. BUG=chromium-os:21100 TEST=build_image Change-Id: Iac12a26dca84fb40e5e07d26f409531ac65035d4 Signed-off-by: Elly Jones <ellyjones@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/23379 Reviewed-by: Mike Frysinger <vapier@chromium.org>
This commit is contained in:
parent
e903ad3477
commit
6a6f0062f4
145
sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/gentoo.config-0.9.8
vendored
Normal file
145
sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/gentoo.config-0.9.8
vendored
Normal file
@ -0,0 +1,145 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright 1999-2009 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/openssl/files/gentoo.config-0.9.8,v 1.17 2009/06/21 11:40:34 grobian Exp $
|
||||
#
|
||||
# Openssl doesn't play along nicely with cross-compiling
|
||||
# like autotools based projects, so let's teach it new tricks.
|
||||
#
|
||||
# Review the bundled 'config' script to see why kind of targets
|
||||
# we can pass to the 'Configure' script.
|
||||
|
||||
|
||||
# Testing routines
|
||||
if [[ $1 == "test" ]] ; then
|
||||
for c in \
|
||||
"arm-gentoo-linux-uclibc |linux-generic32 -DL_ENDIAN" \
|
||||
"armv5b-linux-gnu |linux-generic32 -DB_ENDIAN" \
|
||||
"x86_64-pc-linux-gnu |linux-x86_64" \
|
||||
"alphaev56-unknown-linux-gnu |linux-alpha+bwx-gcc" \
|
||||
"i686-pc-linux-gnu |linux-elf" \
|
||||
"whatever-gentoo-freebsdX.Y |BSD-generic32" \
|
||||
"i686-gentoo-freebsdX.Y |BSD-x86-elf" \
|
||||
"sparc64-alpha-freebsdX.Y |BSD-sparc64" \
|
||||
"ia64-gentoo-freebsd5.99234 |BSD-ia64" \
|
||||
"x86_64-gentoo-freebsdX.Y |BSD-x86_64" \
|
||||
"hppa64-aldsF-linux-gnu5.3 |linux-generic32 -DB_ENDIAN" \
|
||||
"powerpc-gentOO-linux-uclibc |linux-ppc" \
|
||||
"powerpc64-unk-linux-gnu |linux-ppc64" \
|
||||
"x86_64-apple-darwinX |darwin64-x86_64-cc" \
|
||||
"powerpc64-apple-darwinX |darwin64-ppc-cc" \
|
||||
"i686-apple-darwinX |darwin-i386-cc" \
|
||||
"i386-apple-darwinX |darwin-i386-cc" \
|
||||
"powerpc-apple-darwinX |darwin-ppc-cc" \
|
||||
"i586-pc-winnt |winnt-parity" \
|
||||
;do
|
||||
CHOST=${c/|*}
|
||||
ret_want=${c/*|}
|
||||
ret_got=$(CHOST=${CHOST} "$0")
|
||||
|
||||
if [[ ${ret_want} == "${ret_got}" ]] ; then
|
||||
echo "PASS: ${CHOST}"
|
||||
else
|
||||
echo "FAIL: ${CHOST}"
|
||||
echo -e "\twanted: ${ret_want}"
|
||||
echo -e "\twe got: ${ret_got}"
|
||||
fi
|
||||
done
|
||||
exit 0
|
||||
fi
|
||||
[[ -z ${CHOST} && -n $1 ]] && CHOST=$1
|
||||
|
||||
|
||||
# Detect the operating system
|
||||
case ${CHOST} in
|
||||
*-aix*) system="aix";;
|
||||
*-darwin*) system="darwin";;
|
||||
*-freebsd*) system="BSD";;
|
||||
*-hpux*) system="hpux";;
|
||||
*-linux*) system="linux";;
|
||||
*-solaris*) system="solaris";;
|
||||
*-winnt*) system="winnt";;
|
||||
*) exit 0;;
|
||||
esac
|
||||
|
||||
|
||||
# Compiler munging
|
||||
compiler="gcc"
|
||||
if [[ ${CC} == "ccc" ]] ; then
|
||||
compiler=${CC}
|
||||
fi
|
||||
|
||||
|
||||
# Detect target arch
|
||||
machine=""
|
||||
chost_machine=${CHOST%%-*}
|
||||
case ${system} in
|
||||
linux)
|
||||
case ${chost_machine} in
|
||||
alphaev56*) machine=alpha+bwx-${compiler};;
|
||||
alphaev[678]*)machine=alpha+bwx-${compiler};;
|
||||
alpha*) machine=alpha-${compiler};;
|
||||
arm*b*) machine="generic32 -DB_ENDIAN";;
|
||||
arm*) machine="generic32 -DL_ENDIAN";;
|
||||
# hppa64*) machine=parisc64;;
|
||||
hppa*) machine="generic32 -DB_ENDIAN";;
|
||||
i[0-9]86*) machine=elf;;
|
||||
ia64*) machine=ia64;;
|
||||
m68*) machine="generic32 -DB_ENDIAN";;
|
||||
mips*el*) machine="generic32 -DL_ENDIAN";;
|
||||
mips*) machine="generic32 -DB_ENDIAN";;
|
||||
powerpc64*) machine=ppc64;;
|
||||
powerpc*) machine=ppc;;
|
||||
# sh64*) machine=elf;;
|
||||
sh*b*) machine="generic32 -DB_ENDIAN";;
|
||||
sh*) machine="generic32 -DL_ENDIAN";;
|
||||
sparc*v7*) machine="generic32 -DB_ENDIAN";;
|
||||
sparc64*) machine=sparcv9;;
|
||||
sparc*) machine=sparcv8;;
|
||||
s390x*) machine="generic64 -DB_ENDIAN";;
|
||||
s390*) machine="generic32 -DB_ENDIAN";;
|
||||
x86_64*) machine=x86_64;;
|
||||
esac
|
||||
;;
|
||||
BSD)
|
||||
case ${chost_machine} in
|
||||
alpha*) machine=generic64;;
|
||||
i[6-9]86*) machine=x86-elf;;
|
||||
ia64*) machine=ia64;;
|
||||
sparc64*) machine=sparc64;;
|
||||
x86_64*) machine=x86_64;;
|
||||
*) machine=generic32;;
|
||||
esac
|
||||
;;
|
||||
aix)
|
||||
machine=${compiler}
|
||||
;;
|
||||
darwin)
|
||||
case ${chost_machine} in
|
||||
powerpc64) machine=ppc-cc; system=${system}64;;
|
||||
powerpc) machine=ppc-cc;;
|
||||
i?86*) machine=i386-cc;;
|
||||
x86_64) machine=x86_64-cc; system=${system}64;;
|
||||
esac
|
||||
;;
|
||||
hpux)
|
||||
case ${chost_machine} in
|
||||
ia64) machine=ia64-${compiler} ;;
|
||||
esac
|
||||
;;
|
||||
solaris)
|
||||
case ${chost_machine} in
|
||||
i386) machine=x86-${compiler} ;;
|
||||
x86_64*) machine=x86_64-${compiler}; system=${system}64;;
|
||||
sparcv9*) machine=sparcv9-${compiler}; system=${system}64;;
|
||||
sparc*) machine=sparcv8-${compiler};;
|
||||
esac
|
||||
;;
|
||||
winnt)
|
||||
machine=parity
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
# If we have something, show it
|
||||
[[ -n ${machine} ]] && echo ${system}-${machine}
|
@ -0,0 +1,25 @@
|
||||
--- a/Configure
|
||||
+++ b/Configure
|
||||
@@ -365,7 +365,7 @@
|
||||
# -DMD32_REG_T=int doesn't actually belong in sparc64 target, it
|
||||
# simply *happens* to work around a compiler bug in gcc 3.3.3,
|
||||
# triggered by RIPEMD160 code.
|
||||
-"BSD-sparc64", "gcc:-DB_ENDIAN -DTERMIOS -O3 -DMD32_REG_T=int -Wall::${BSDthreads}:::SIXTY_FOUR_BIT_LONG RC2_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC2 BF_PTR:::des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
+"BSD-sparc64", "gcc:-DB_ENDIAN -DTERMIOS -O3 -DMD32_REG_T=int -Wall::${BSDthreads}:ULTRASPARC::SIXTY_FOUR_BIT_LONG RC2_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC2 BF_PTR:::des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"BSD-ia64", "gcc:-DL_ENDIAN -DTERMIOS -O3 -Wall::${BSDthreads}:::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
"BSD-x86_64", "gcc:-DL_ENDIAN -DTERMIOS -O3 -DMD32_REG_T=int -Wall::${BSDthreads}:::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
|
||||
|
||||
|
||||
the -B flag is a no-op nowadays
|
||||
|
||||
--- a/crypto/des/Makefile
|
||||
+++ b/crypto/des/Makefile
|
||||
@@ -62,7 +62,7 @@
|
||||
$(CC) $(CFLAGS) -o des des.o cbc3_enc.o $(LIB)
|
||||
|
||||
des_enc-sparc.S: asm/des_enc.m4
|
||||
- m4 -B 8192 asm/des_enc.m4 > des_enc-sparc.S
|
||||
+ m4 asm/des_enc.m4 > des_enc-sparc.S
|
||||
|
||||
# ELF
|
||||
dx86-elf.s: asm/des-586.pl ../perlasm/x86asm.pl ../perlasm/cbc.pl
|
27
sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-0.9.8h-ldflags.patch
vendored
Normal file
27
sdk_container/src/third_party/portage-stable/dev-libs/openssl/files/openssl-0.9.8h-ldflags.patch
vendored
Normal file
@ -0,0 +1,27 @@
|
||||
http://bugs.gentoo.org/181438
|
||||
|
||||
make sure we respect LDFLAGS
|
||||
|
||||
also make sure we don't add useless -rpath flags to the system libdir
|
||||
|
||||
--- openssl-0.9.8h/Makefile.org
|
||||
+++ openssl-0.9.8h/Makefile.org
|
||||
@@ -180,6 +181,7 @@
|
||||
MAKEDEPEND='$$$${TOP}/util/domd $$$${TOP} -MD ${MAKEDEPPROG}' \
|
||||
DEPFLAG='-DOPENSSL_NO_DEPRECATED ${DEPFLAG}' \
|
||||
MAKEDEPPROG='${MAKEDEPPROG}' \
|
||||
+ LDFLAGS='${LDFLAGS}' \
|
||||
SHARED_LDFLAGS='${SHARED_LDFLAGS}' \
|
||||
KRB5_INCLUDES='${KRB5_INCLUDES}' LIBKRB5='${LIBKRB5}' \
|
||||
EXE_EXT='${EXE_EXT}' SHARED_LIBS='${SHARED_LIBS}' \
|
||||
--- openssl-0.9.8h/Makefile.shared
|
||||
+++ openssl-0.9.8h/Makefile.shared
|
||||
@@ -153,7 +153,7 @@
|
||||
NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
|
||||
SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX"
|
||||
|
||||
-DO_GNU_APP=LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBRPATH)"
|
||||
+DO_GNU_APP=LDFLAGS="$(LDFLAGS) $(CFLAGS)"
|
||||
|
||||
#This is rather special. It's a special target with which one can link
|
||||
#applications without bothering with any features that have anything to
|
@ -0,0 +1,24 @@
|
||||
http://bugs.gentoo.org/289130
|
||||
|
||||
Ripped from Fedora
|
||||
|
||||
--- openssl-1.0.0-beta4/crypto/sha/asm/sha1-x86_64.pl.binutils 2009-11-12 15:17:29.000000000 +0100
|
||||
+++ openssl-1.0.0-beta4/crypto/sha/asm/sha1-x86_64.pl 2009-11-12 17:24:18.000000000 +0100
|
||||
@@ -150,7 +150,7 @@ ___
|
||||
sub BODY_20_39 {
|
||||
my ($i,$a,$b,$c,$d,$e,$f)=@_;
|
||||
my $j=$i+1;
|
||||
-my $K=($i<40)?0x6ed9eba1:0xca62c1d6;
|
||||
+my $K=($i<40)?0x6ed9eba1:-0x359d3e2a;
|
||||
$code.=<<___ if ($i<79);
|
||||
lea $K($xi,$e),$f
|
||||
mov `4*($j%16)`(%rsp),$xi
|
||||
@@ -187,7 +187,7 @@ sub BODY_40_59 {
|
||||
my ($i,$a,$b,$c,$d,$e,$f)=@_;
|
||||
my $j=$i+1;
|
||||
$code.=<<___;
|
||||
- lea 0x8f1bbcdc($xi,$e),$f
|
||||
+ lea -0x70e44324($xi,$e),$f
|
||||
mov `4*($j%16)`(%rsp),$xi
|
||||
mov $b,$t0
|
||||
mov $b,$t1
|
141
sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-0.9.8x.ebuild
vendored
Normal file
141
sdk_container/src/third_party/portage-stable/dev-libs/openssl/openssl-0.9.8x.ebuild
vendored
Normal file
@ -0,0 +1,141 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/openssl/openssl-0.9.8x.ebuild,v 1.3 2012/05/13 11:13:51 ago Exp $
|
||||
|
||||
# this ebuild is only for the libcrypto.so.0.9.8 and libssl.so.0.9.8 SONAME for ABI compat
|
||||
|
||||
EAPI="2"
|
||||
|
||||
inherit eutils flag-o-matic toolchain-funcs
|
||||
|
||||
DESCRIPTION="Toolkit for SSL v2/v3 and TLS v1"
|
||||
HOMEPAGE="http://www.openssl.org/"
|
||||
SRC_URI="mirror://openssl/source/${P}.tar.gz"
|
||||
|
||||
LICENSE="openssl"
|
||||
SLOT="0.9.8"
|
||||
KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE="bindist gmp kerberos sse2 test zlib"
|
||||
|
||||
RDEPEND="gmp? ( dev-libs/gmp )
|
||||
zlib? ( sys-libs/zlib )
|
||||
kerberos? ( app-crypt/mit-krb5 )
|
||||
!=dev-libs/openssl-0.9.8*:0"
|
||||
DEPEND="${RDEPEND}
|
||||
sys-apps/diffutils
|
||||
>=dev-lang/perl-5
|
||||
test? ( sys-devel/bc )"
|
||||
|
||||
pkg_setup() {
|
||||
# avoid collisions with openssl-1 (preserve lib)
|
||||
if ! has_version dev-libs/openssl:${SLOT} ; then
|
||||
ewarn "Removing lib{crypto,ssl}.so.0.9.8 to avoid collision with openssl-1"
|
||||
rm -f "${ROOT}"/usr/$(get_libdir)/lib{crypto,ssl}.so.0.9.8
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-0.9.8e-bsd-sparc64.patch
|
||||
epatch "${FILESDIR}"/${PN}-0.9.8h-ldflags.patch #181438
|
||||
epatch "${FILESDIR}"/${PN}-0.9.8m-binutils.patch #289130
|
||||
|
||||
# disable fips in the build
|
||||
# make sure the man pages are suffixed #302165
|
||||
# don't bother building man pages if they're disabled
|
||||
sed -i \
|
||||
-e '/DIRS/s: fips : :g' \
|
||||
-e '/^MANSUFFIX/s:=.*:=ssl:' \
|
||||
-e '/^MAKEDEPPROG/s:=.*:=$(CC):' \
|
||||
-e $(has noman FEATURES \
|
||||
&& echo '/^install:/s:install_docs::' \
|
||||
|| echo '/^MANDIR=/s:=.*:=/usr/share/man:') \
|
||||
Makefile{,.org} \
|
||||
|| die
|
||||
# show the actual commands in the log
|
||||
sed -i '/^SET_X/s:=.*:=set -x:' Makefile.shared
|
||||
# update the enginedir path
|
||||
sed -i \
|
||||
-e "/foo.*engines/s|/lib/engines|/$(get_libdir)/engines|" \
|
||||
Configure || die
|
||||
|
||||
# allow openssl to be cross-compiled
|
||||
cp "${FILESDIR}"/gentoo.config-0.9.8 gentoo.config || die "cp cross-compile failed"
|
||||
chmod a+rx gentoo.config
|
||||
|
||||
append-flags -fno-strict-aliasing
|
||||
append-flags -Wa,--noexecstack
|
||||
|
||||
sed -i '1s,^:$,#!/usr/bin/perl,' Configure #141906
|
||||
sed -i '/^"debug-steve/d' Configure # 0.9.8k shipped broken
|
||||
./config --test-sanity || die "I AM NOT SANE"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
unset APPS #197996
|
||||
unset SCRIPTS #312551
|
||||
|
||||
tc-export CC AR RANLIB
|
||||
|
||||
# Clean out patent-or-otherwise-encumbered code
|
||||
# Camellia: Royalty Free http://en.wikipedia.org/wiki/Camellia_(cipher)
|
||||
# IDEA: Expired http://en.wikipedia.org/wiki/International_Data_Encryption_Algorithm
|
||||
# EC: ????????? ??/??/2015 http://en.wikipedia.org/wiki/Elliptic_Curve_Cryptography
|
||||
# MDC2: Expired http://en.wikipedia.org/wiki/MDC-2
|
||||
# RC5: 5,724,428 03/03/2015 http://en.wikipedia.org/wiki/RC5
|
||||
|
||||
use_ssl() { use $1 && echo "enable-${2:-$1} ${*:3}" || echo "no-${2:-$1}" ; }
|
||||
echoit() { echo "$@" ; "$@" ; }
|
||||
|
||||
local krb5=$(has_version app-crypt/mit-krb5 && echo "MIT" || echo "Heimdal")
|
||||
|
||||
local sslout=$(./gentoo.config)
|
||||
einfo "Use configuration ${sslout:-(openssl knows best)}"
|
||||
local config="Configure"
|
||||
[[ -z ${sslout} ]] && config="config"
|
||||
echoit \
|
||||
./${config} \
|
||||
${sslout} \
|
||||
$(use sse2 || echo "no-sse2") \
|
||||
enable-camellia \
|
||||
$(use_ssl !bindist ec) \
|
||||
enable-idea \
|
||||
enable-mdc2 \
|
||||
$(use_ssl !bindist rc5) \
|
||||
enable-tlsext \
|
||||
$(use_ssl gmp gmp -lgmp) \
|
||||
$(use_ssl kerberos krb5 --with-krb5-flavor=${krb5}) \
|
||||
$(use_ssl zlib) \
|
||||
--prefix=/usr \
|
||||
--openssldir=/etc/ssl \
|
||||
shared threads \
|
||||
|| die "Configure failed"
|
||||
|
||||
# Clean out hardcoded flags that openssl uses
|
||||
local CFLAG=$(grep ^CFLAG= Makefile | LC_ALL=C sed \
|
||||
-e 's:^CFLAG=::' \
|
||||
-e 's:-fomit-frame-pointer ::g' \
|
||||
-e 's:-O[0-9] ::g' \
|
||||
-e 's:-march=[-a-z0-9]* ::g' \
|
||||
-e 's:-mcpu=[-a-z0-9]* ::g' \
|
||||
-e 's:-m[a-z0-9]* ::g' \
|
||||
)
|
||||
sed -i \
|
||||
-e "/^LIBDIR=/s|=.*|=$(get_libdir)|" \
|
||||
-e "/^CFLAG/s|=.*|=${CFLAG} ${CFLAGS}|" \
|
||||
-e "/^SHARED_LDFLAGS=/s|$| ${LDFLAGS}|" \
|
||||
Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# depend is needed to use $confopts
|
||||
emake -j1 depend || die "depend failed"
|
||||
emake -j1 build_libs || die "make build_libs failed"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake -j1 test || die "make test failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dolib.so lib{crypto,ssl}.so.0.9.8 || die
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user