add openssl

git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@3931 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Felix Fietkau 2006-06-11 00:41:05 +00:00
parent 94a4c42313
commit 26ccebb6ac
11 changed files with 410 additions and 0 deletions

35
package/openssl/Config.in Normal file
View File

@ -0,0 +1,35 @@
config BR2_COMPILE_OPENSSL
tristate
default n
depends BR2_PACKAGE_LIBOPENSSL
config BR2_PACKAGE_LIBOPENSSL
prompt "libopenssl........................ Open source SSL (Secure Socket Layer) libraries"
tristate
default m if CONFIG_DEVEL
select BR2_COMPILE_OPENSSL
help
The OpenSSL Project is a collaborative effort to develop a robust,
commercial-grade, full-featured, and Open Source toolkit implementing
the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1)
protocols as well as a full-strength general purpose cryptography library.
http://www.openssl.org/
This package contains the shared SSL libraries, needed by other programs.
config BR2_PACKAGE_OPENSSL_UTIL
prompt "openssl-util.................... OpenSSL command line tool"
tristate
default m if CONFIG_DEVEL
depends BR2_PACKAGE_LIBOPENSSL
help
The OpenSSL Project is a collaborative effort to develop a robust,
commercial-grade, full-featured, and Open Source toolkit implementing
the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1)
protocols as well as a full-strength general purpose cryptography library.
http://www.openssl.org/
This package contains the multi-purpose OpenSSL binary tool.

111
package/openssl/Makefile Normal file
View File

@ -0,0 +1,111 @@
# $Id$
include $(TOPDIR)/rules.mk
PKG_NAME:=openssl
PKG_VERSION:=0.9.8b
PKG_RELEASE:=1
PKG_MD5SUM:=12cedbeb6813a0d7919dbf1f82134b86
PKG_SOURCE_URL:=http://www.openssl.org/source/ \
ftp://ftp.funet.fi/pub/crypt/cryptography/libs/openssl/source/ \
ftp://ftp.webmonster.de/pub/openssl/source/ \
ftp://ftp.sunet.se/pub/security/tools/net/openssl/source/
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_CAT:=zcat
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
OPENSSL_NO_CIPHERS:= no-idea no-md2 no-mdc2 no-rc5 no-sha0 no-rmd160 no-aes192
OPENSSL_OPTIONS:= shared no-ec no-err no-fips no-hw no-krb5 no-threads zlib-dynamic no-engines
include $(TOPDIR)/package/rules.mk
define Build/Configure
$(SED) 's,/CFLAG=,/CFLAG= $(TARGET_SOFT_FLOAT) ,g' $(PKG_BUILD_DIR)/Configure
$(SED) s/OPENWRT_OPTIMIZATION_FLAGS/$(BR2_TARGET_OPTIMIZATION)/g $(PKG_BUILD_DIR)/Configure
(cd $(PKG_BUILD_DIR); \
PATH=$(TARGET_PATH) \
./Configure linux-openwrt \
--prefix=/usr \
--openssldir=/etc/ssl \
-I$(STAGING_DIR)/usr/include \
-L$(STAGING_DIR)/usr/lib -ldl \
-DOPENSSL_SMALL_FOOTPRINT \
$(OPENSSL_NO_CIPHERS) \
$(OPENSSL_OPTIONS) \
)
endef
define Build/Compile
rm -rf $(PKG_INSTALL_DIR)
mkdir -p $(PKG_INSTALL_DIR)
$(MAKE) -C $(PKG_BUILD_DIR) -j1 \
MAKEDEPPROG="$(TARGET_CC)" \
depend
$(MAKE) -C $(PKG_BUILD_DIR) -j1 \
CC="$(TARGET_CC)" \
AR="$(TARGET_CROSS)ar r" \
RANLIB="$(TARGET_CROSS)ranlib" \
all build-shared
# Work around openssl build bug to link libssl.so with libcrypto.so.
-rm $(PKG_BUILD_DIR)/libssl.so.*.*.*
$(MAKE) -C $(PKG_BUILD_DIR) -j1 \
CC=$(TARGET_CC) \
CCOPTS="$(TARGET_CFLAGS) -fomit-frame-pointer" \
do_linux-shared
$(MAKE) -C $(PKG_BUILD_DIR) -j1 \
INSTALL_PREFIX="$(PKG_INSTALL_DIR)" \
install
endef
define Build/InstallDev
mkdir -p $(STAGING_DIR)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/openssl $(STAGING_DIR)/usr/include/
mkdir -p $(STAGING_DIR)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{crypto,ssl}.{a,so*} $(STAGING_DIR)/usr/lib/
endef
define Build/UninstallDev
rm -rf \
$(STAGING_DIR)/usr/include/openssl \
$(STAGING_DIR)/usr/lib/lib{crypto,ssl}.{a,so*}
endef
define Package/libopenssl
SECTION:=base
CATEGORY:=Libraries
TITLE:=Open source SSL libraries
DESCRIPTION:=Open source SSL (Secure Socket Layer) libraries
URL:=http://www.openssl.org/
endef
define Package/openssl-util
$(call Package/libopenssl)
DEPENDS:=libopenssl
TITLE:=OpenSSL command line utilities
DESCRIPTION:=OpenSSL command line utilities
endef
define Package/libopenssl/install
install -d -m0755 $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{crypto,ssl}.so.* $(1)/usr/lib/
chmod 0644 $(1)/usr/lib/*
endef
define Package/openssl-util/install
install -d -m0755 $(1)/etc/ssl
$(CP) $(PKG_INSTALL_DIR)/etc/ssl/openssl.cnf $(1)/etc/ssl/
install -d -m0755 $(1)/etc/ssl/certs
install -d -m0755 $(1)/etc/ssl/private
chmod 0700 $(1)/etc/ssl/private
install -d -m0755 $(1)/usr/bin
$(CP) $(PKG_INSTALL_DIR)/usr/bin/openssl $(1)/usr/bin/
endef
$(eval $(call BuildPackage,libopenssl))
$(eval $(call BuildPackage,openssl-util))

View File

@ -0,0 +1,4 @@
Package: libopenssl
Priority: optional
Section: libs
Description: OpenSSL (Secure Socket Layer) libraries

View File

@ -0,0 +1 @@
/etc/ssl/openssl.cnf

View File

@ -0,0 +1,5 @@
Package: openssl-util
Priority: optionnal
Section: admin
Description: OpenSSL (Secure Socket Layer) command line tool
Depends: libopenssl

View File

@ -0,0 +1,12 @@
diff -ur openssl-0.9.8a/Configure openssl-0.9.8a-owrt/Configure
--- openssl-0.9.8a/Configure 2005-08-02 12:59:42.000000000 +0200
+++ openssl-0.9.8a-owrt/Configure 2006-03-23 14:16:35.000000000 +0100
@@ -353,6 +353,8 @@
"linux-alpha+bwx-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${no_asm}",
"linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${no_asm}",
+# OpenWrt targets
+"linux-openwrt","gcc:-DTERMIO OPENWRT_OPTIMIZATION_FLAGS -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
#### *BSD [do see comment about ${BSDthreads} above!]
"BSD-generic32","gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall::${BSDthreads}:::BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",

View File

@ -0,0 +1,28 @@
diff -ruN openssl-0.9.7g-old/util/domd openssl-0.9.7g-new/util/domd
--- openssl-0.9.7g-old/util/domd 2004-05-11 14:46:18.000000000 +0200
+++ openssl-0.9.7g-new/util/domd 2005-05-30 20:20:04.000000000 +0200
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Do a makedepend, only leave out the standard headers
# Written by Ben Laurie <ben@algroup.co.uk> 19 Jan 1999
@@ -14,7 +14,8 @@
cp Makefile Makefile.save
# fake the presence of Kerberos
touch $TOP/krb5.h
-if [ "$MAKEDEPEND" = "gcc" ]; then
+D=${MAKEDEPEND/%*gcc/gcc}
+if [ "$D" = "gcc" ]; then
args=""
while [ $# -gt 0 ]; do
if [ "$1" != "--" ]; then args="$args $1"; fi
@@ -22,7 +23,7 @@
done
sed -e '/^# DO NOT DELETE.*/,$d' < Makefile > Makefile.tmp
echo '# DO NOT DELETE THIS LINE -- make depend depends on it.' >> Makefile.tmp
- gcc -D OPENSSL_DOING_MAKEDEPEND -M $args >> Makefile.tmp
+ ${MAKEDEPEND} -D OPENSSL_DOING_MAKEDEPEND -M $args >> Makefile.tmp
${PERL} $TOP/util/clean-depend.pl < Makefile.tmp > Makefile.new
rm -f Makefile.tmp
else

View File

@ -0,0 +1,72 @@
diff -Nur openssl-0.9.7f/Configure openssl-0.9.7f.new/Configure
--- openssl-0.9.7f/Configure 2005-03-12 12:28:21.000000000 +0100
+++ openssl-0.9.7f.new/Configure 2005-04-03 20:32:00.000000000 +0200
@@ -1,4 +1,4 @@
-:
+#!/usr/bin/perl
eval 'exec perl -S $0 ${1+"$@"}'
if $running_under_some_shell;
##
diff -Nur openssl-0.9.7f/tools/c_rehash.in openssl-0.9.7f.new/tools/c_rehash.in
--- openssl-0.9.7f/tools/c_rehash.in 2002-10-11 22:35:45.000000000 +0200
+++ openssl-0.9.7f.new/tools/c_rehash.in 2005-04-03 20:41:17.000000000 +0200
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl
+#!/usr/bin/perl
# Perl c_rehash script, scan all files in a directory
diff -Nur openssl-0.9.7f/util/clean-depend.pl openssl-0.9.7f.new/util/clean-depend.pl
--- openssl-0.9.7f/util/clean-depend.pl 2001-10-10 10:27:28.000000000 +0200
+++ openssl-0.9.7f.new/util/clean-depend.pl 2005-04-03 20:41:38.000000000 +0200
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl -w
+#!/usr/bin/perl -w
# Clean the dependency list in a makefile of standard includes...
# Written by Ben Laurie <ben@algroup.co.uk> 19 Jan 1999
diff -Nur openssl-0.9.7f/util/mkdef.pl openssl-0.9.7f.new/util/mkdef.pl
--- openssl-0.9.7f/util/mkdef.pl 2005-02-05 18:19:23.000000000 +0100
+++ openssl-0.9.7f.new/util/mkdef.pl 2005-04-03 20:42:49.000000000 +0200
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl -w
+#!/usr/bin/perl
#
# generate a .def file
#
diff -Nur openssl-0.9.7f/util/mkerr.pl openssl-0.9.7f.new/util/mkerr.pl
--- openssl-0.9.7f/util/mkerr.pl 2005-01-31 02:28:17.000000000 +0100
+++ openssl-0.9.7f.new/util/mkerr.pl 2005-04-03 20:43:02.000000000 +0200
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl -w
+#!/usr/bin/perl
my $config = "crypto/err/openssl.ec";
my $debug = 0;
diff -Nur openssl-0.9.7f/util/mkstack.pl openssl-0.9.7f.new/util/mkstack.pl
--- openssl-0.9.7f/util/mkstack.pl 2004-10-04 18:27:36.000000000 +0200
+++ openssl-0.9.7f.new/util/mkstack.pl 2005-04-03 20:43:18.000000000 +0200
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl -w
+#!/usr/bin/perl
# This is a utility that searches out "DECLARE_STACK_OF()"
# declarations in .h and .c files, and updates/creates/replaces
diff -Nur openssl-0.9.7f/util/pod2man.pl openssl-0.9.7f.new/util/pod2man.pl
--- openssl-0.9.7f/util/pod2man.pl 2002-05-30 17:30:21.000000000 +0200
+++ openssl-0.9.7f.new/util/pod2man.pl 2005-04-03 20:43:52.000000000 +0200
@@ -1,4 +1,4 @@
-: #!/usr/bin/perl-5.005
+#!/usr/bin/perl
eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
if $running_under_some_shell;
diff -Nur openssl-0.9.7f/util/selftest.pl openssl-0.9.7f.new/util/selftest.pl
--- openssl-0.9.7f/util/selftest.pl 2004-05-11 14:46:19.000000000 +0200
+++ openssl-0.9.7f.new/util/selftest.pl 2005-04-03 20:44:10.000000000 +0200
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl -w
+#!/usr/bin/perl
#
# Run the test suite and generate a report
#

View File

@ -0,0 +1,11 @@
--- openssl-0.9.8a/Makefile.org 2006-02-21 20:57:45.000000000 -0800
+++ openssl-0.9.8a-new/Makefile.org 2006-02-21 21:37:11.000000000 -0800
@@ -100,7 +100,7 @@
KRB5_INCLUDES=
LIBKRB5=
-DIRS= crypto ssl engines apps test tools
+DIRS= crypto ssl apps
SHLIBDIRS= crypto ssl
# dirs in crypto to build

View File

@ -0,0 +1,83 @@
diff -udrNP openssl-0.9.8-stable-SNAP-20050703.orig/util/libeay.num openssl-0.9.8-stable-SNAP-20050703/util/libeay.num
--- openssl-0.9.8-stable-SNAP-20050703.orig/util/libeay.num 2005-07-04 00:27:14.653639088 +0200
+++ openssl-0.9.8-stable-SNAP-20050703/util/libeay.num 2005-07-04 22:50:07.986576664 +0200
@@ -2071,7 +2071,6 @@
UI_add_error_string 2633 EXIST::FUNCTION:
KRB5_CHECKSUM_free 2634 EXIST::FUNCTION:
OCSP_REQUEST_get_ext 2635 EXIST::FUNCTION:
-ENGINE_load_ubsec 2636 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
ENGINE_register_all_digests 2637 EXIST::FUNCTION:ENGINE
PKEY_USAGE_PERIOD_it 2638 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
PKEY_USAGE_PERIOD_it 2638 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
@@ -2545,7 +2544,6 @@
AES_set_encrypt_key 3024 EXIST::FUNCTION:AES
OCSP_resp_count 3025 EXIST::FUNCTION:
KRB5_CHECKSUM_new 3026 EXIST::FUNCTION:
-ENGINE_load_cswift 3027 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
OCSP_onereq_get0_id 3028 EXIST::FUNCTION:
ENGINE_set_default_ciphers 3029 EXIST::FUNCTION:ENGINE
NOTICEREF_it 3030 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
@@ -2576,7 +2574,6 @@
i2d_EXTENDED_KEY_USAGE 3052 EXIST::FUNCTION:
i2d_OCSP_SIGNATURE 3053 EXIST::FUNCTION:
asn1_enc_save 3054 EXIST::FUNCTION:
-ENGINE_load_nuron 3055 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
_ossl_old_des_pcbc_encrypt 3056 EXIST::FUNCTION:DES
PKCS12_MAC_DATA_it 3057 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
PKCS12_MAC_DATA_it 3057 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
@@ -2600,7 +2597,6 @@
i2d_KRB5_CHECKSUM 3072 EXIST::FUNCTION:
ENGINE_set_table_flags 3073 EXIST::FUNCTION:ENGINE
AES_options 3074 EXIST::FUNCTION:AES
-ENGINE_load_chil 3075 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
OCSP_id_cmp 3076 EXIST::FUNCTION:
OCSP_BASICRESP_new 3077 EXIST::FUNCTION:
OCSP_REQUEST_get_ext_by_NID 3078 EXIST::FUNCTION:
@@ -2667,7 +2663,6 @@
OCSP_CRLID_it 3127 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
i2d_KRB5_AUTHENTBODY 3128 EXIST::FUNCTION:
OCSP_REQUEST_get_ext_count 3129 EXIST::FUNCTION:
-ENGINE_load_atalla 3130 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
X509_NAME_it 3131 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
X509_NAME_it 3131 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
USERNOTICE_it 3132 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
@@ -2762,8 +2757,6 @@
DES_read_password 3207 EXIST::FUNCTION:DES
UI_UTIL_read_pw 3208 EXIST::FUNCTION:
UI_UTIL_read_pw_string 3209 EXIST::FUNCTION:
-ENGINE_load_aep 3210 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
-ENGINE_load_sureware 3211 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
OPENSSL_add_all_algorithms_noconf 3212 EXIST:!VMS:FUNCTION:
OPENSSL_add_all_algo_noconf 3212 EXIST:VMS:FUNCTION:
OPENSSL_add_all_algorithms_conf 3213 EXIST:!VMS:FUNCTION:
@@ -2772,7 +2765,6 @@
AES_ofb128_encrypt 3215 EXIST::FUNCTION:AES
AES_ctr128_encrypt 3216 EXIST::FUNCTION:AES
AES_cfb128_encrypt 3217 EXIST::FUNCTION:AES
-ENGINE_load_4758cca 3218 EXIST::FUNCTION:ENGINE,STATIC_ENGINE
_ossl_096_des_random_seed 3219 EXIST::FUNCTION:DES
EVP_aes_256_ofb 3220 EXIST::FUNCTION:AES
EVP_aes_192_ofb 3221 EXIST::FUNCTION:AES
@@ -3107,7 +3099,6 @@
STORE_method_set_modify_function 3530 EXIST:!VMS:FUNCTION:
STORE_meth_set_modify_fn 3530 EXIST:VMS:FUNCTION:
STORE_parse_attrs_next 3531 EXIST::FUNCTION:
-ENGINE_load_padlock 3532 EXIST::FUNCTION:ENGINE
EC_GROUP_set_curve_name 3533 EXIST::FUNCTION:EC
X509_CERT_PAIR_it 3534 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
X509_CERT_PAIR_it 3534 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
diff -udrNP openssl-0.9.8-stable-SNAP-20050703.orig/Configure openssl-0.9.8-stable-SNAP-20050703/Configure
--- openssl-0.9.8-stable-SNAP-20050703.orig/Configure 2005-07-04 00:27:11.169168808 +0200
+++ openssl-0.9.8-stable-SNAP-20050703/Configure 2005-07-05 00:02:12.590136992 +0200
@@ -1623,6 +1624,11 @@
close(OUT);
}
+# ugly hack to disable engines
+if($target eq "mingwx") {
+ system("sed -e s/^LIB/XLIB/g -i engines/Makefile");
+}
+
print <<EOF;
Configured for $target.

View File

@ -0,0 +1,48 @@
diff -urN openssl-0.9.8a/Makefile openssl-0.9.8a.new/Makefile
--- openssl-0.9.8a/Makefile 2005-10-11 12:21:48.000000000 +0200
+++ openssl-0.9.8a.new/Makefile 2006-03-29 15:23:28.107586680 +0200
@@ -102,7 +102,7 @@
KRB5_INCLUDES=
LIBKRB5=
-DIRS= crypto ssl engines apps test tools
+DIRS= crypto ssl engines apps tools
SHLIBDIRS= crypto ssl
# dirs in crypto to build
@@ -119,7 +119,7 @@
# tests to perform. "alltests" is a special word indicating that all tests
# should be performed.
-TESTS = alltests
+TESTS =
MAKEFILE= Makefile
@@ -131,7 +131,7 @@
TOP= .
ONEDIRS=out tmp
-EDIRS= times doc bugs util include certs ms shlib mt demos perl sf dep VMS
+EDIRS= times bugs util include certs ms shlib mt demos perl sf dep VMS
WDIRS= windows
LIBS= libcrypto.a libssl.a
SHARED_CRYPTO=libcrypto$(SHLIB_EXT)
@@ -204,7 +204,7 @@
@[ -n "$(THIS)" ] && $(CLEARENV) && $(MAKE) $(THIS) -e $(BUILDENV)
sub_all: build_all
-build_all: build_libs build_apps build_tests build_tools
+build_all: build_libs build_apps build_tools
build_libs: build_crypto build_ssl build_engines
@@ -454,7 +454,7 @@
dist_pem_h:
(cd crypto/pem; $(MAKE) -e $(BUILDENV) pem.h; $(MAKE) clean)
-install: all install_docs install_sw
+install: all install_sw
install_sw:
@$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \