gunnar: server/openssl .cvsignore, NONE, 1.1.2.1 Makefile, NONE, 1.1.2.1 openssl.patch, NONE, 1.1.2.1 openssl.spec, NONE, 1.1.2.1

cvs at kolab.org cvs at kolab.org
Wed Apr 21 17:01:07 CEST 2010


Author: gunnar

Update of /kolabrepository/server/openssl
In directory doto:/tmp/cvs-serv6234

Added Files:
      Tag: kolab_2_2_branch
	.cvsignore Makefile openssl.patch openssl.spec 
Log Message:
openssl-1.0.0 derived from the upstream openpkg package but adapted to the openpkg base package <= 20100101. This package requires rebuilding of apache, apache-php, apr, clamav, curl, imap, imapd, openldap, perl-crypto, perl-ssl, php, postfix, sasl.

--- NEW FILE: .cvsignore ---
*.tgz
*.src.rpm

--- NEW FILE: Makefile ---
include ../kolab.mk

NAME = openssl
PACKAGE = $(NAME)
VERSION = $(shell grep "^%define.*V_openssl" *.spec | sed -e "s/^%define.*V_openssl\s*\([0-9.]*\).*/\1/")
ZLIB_VERSION = $(shell grep "^%define.*V_zlib" *.spec | sed -e "s/^%define.*V_zlib\s*\([0-9.]*\).*/\1/")
RELEASE = $(shell grep "^Release:" *.spec | sed -e "s/^Release:\s*\([0-9]*\).*/\1/")
KOLABRELEASE = $(RELEASE)

SOURCE_0=ftp://ftp.openssl.org/source/$(NAME)-$(VERSION).tar.gz
SOURCE_1=http://www.zlib.net/zlib-$(ZLIB_VERSION).tar.gz
EXTRA=$(NAME).patch

.PHONY: all
all: $(PACKAGE)-$(VERSION)-$(RELEASE).src.rpm

.PHONY: dist
dist: all
	cp $(PACKAGE)-$(VERSION)-$(RELEASE).src.rpm ../stage/

.PHONY: clean
clean:
	rm -rf $(KOLABRPMTMP)/$(NAME)*
	rm -rf $(KOLABRPMTMP)/$(PACKAGE)
	rm -rf $(PACKAGE)-$(VERSION)-$(RELEASE).src.rpm
	rm -rf *~

$(PACKAGE)-$(VERSION)-$(RELEASE).src.rpm: Makefile $(PACKAGE).spec $(EXTRA)
	test -d $(KOLABRPMSRC)/$(PACKAGE) || mkdir $(KOLABRPMSRC)/$(PACKAGE)
	cd $(KOLABRPMSRC)/$(PACKAGE) && wget -c "$(SOURCE_0)"
	cd $(KOLABRPMSRC)/$(PACKAGE) && wget -c "$(SOURCE_1)"

	cp $(PACKAGE).spec $(EXTRA) $(KOLABRPMSRC)/$(PACKAGE)
	cd $(KOLABRPMSRC)/$(PACKAGE) && $(RPM) -ba $(PACKAGE).spec

	cp -p $(KOLABRPMPKG)/$(PACKAGE)-$(VERSION)-$(RELEASE).src.rpm .

--- NEW FILE: openssl.patch ---
Index: Configure
--- Configure.orig	2010-01-19 22:40:54.000000000 +0100
+++ Configure	2010-03-30 09:15:55.000000000 +0200
@@ -34,6 +34,7 @@
 #		(Default: KRB5_DIR/include)
 # --with-krb5-flavor  Declare what flavor of Kerberos 5 is used.  Currently
 #		supported values are "MIT" and "Heimdal".  A value is required.
+# --with-cc     compiler to use for $CC (useful if cc is a disguised gcc)
 #
 # --test-sanity Make a number of sanity checks on the data in this file.
 #               This is a debugging tool for OpenSSL developers.
@@ -122,6 +123,7 @@
 #$bits2="THIRTY_TWO_BIT ";
 my $bits1="THIRTY_TWO_BIT ";
 my $bits2="SIXTY_FOUR_BIT ";
+my $ccarg;
 
 my $x86_asm="x86cpuid.o:bn-586.o co-586.o x86-mont.o:des-586.o crypt586.o:aes-586.o:bf-586.o:md5-586.o:sha1-586.o sha256-586.o sha512-586.o:cast-586.o:rc4-586.o:rmd-586.o:rc5-586.o:wp_block.o wp-mmx.o:cmll-x86.o";
 
@@ -434,12 +436,12 @@
 
 #### IBM's AIX.
 "aix3-cc",  "cc:-O -DB_ENDIAN -qmaxmem=16384::(unknown):AIX::BN_LLONG RC4_CHAR:::",
-"aix-gcc",  "gcc:-O -DB_ENDIAN::-pthread:AIX::BN_LLONG RC4_CHAR:${ppc32_asm}:aix32:dlfcn:aix-shared::-shared -Wl,-G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X32",
-"aix64-gcc","gcc:-maix64 -O -DB_ENDIAN::-pthread:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${ppc64_asm}:aix64:dlfcn:aix-shared::-maix64 -shared -Wl,-G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X64",
+"aix-gcc",  "gcc:-O -DB_ENDIAN::-pthread:AIX::BN_LLONG RC4_CHAR:${ppc32_asm}:aix32:dlfcn:aix-shared::-shared -Wl,-G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::",
+"aix64-gcc","gcc:-maix64 -O -DB_ENDIAN::-pthread:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${ppc64_asm}:aix64:dlfcn:aix-shared::-maix64 -shared -Wl,-G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::",
 # Below targets assume AIX 5. Idea is to effectively disregard $OBJECT_MODE
 # at build time. $OBJECT_MODE is respected at ./config stage!
-"aix-cc",   "cc:-q32 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::BN_LLONG RC4_CHAR:${ppc32_asm}:aix32:dlfcn:aix-shared::-q32 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 32",
-"aix64-cc", "cc:-q64 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${ppc64_asm}:aix64:dlfcn:aix-shared::-q64 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::-X 64",
+"aix-cc",   "cc:-q32 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::BN_LLONG RC4_CHAR:${ppc32_asm}:aix32:dlfcn:aix-shared::-q32 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::",
+"aix64-cc", "cc:-q64 -O -DB_ENDIAN -qmaxmem=16384 -qro -qroconst::-qthreaded:AIX::SIXTY_FOUR_BIT_LONG RC4_CHAR:${ppc64_asm}:aix64:dlfcn:aix-shared::-q64 -G:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::",
 
 #
 # Cray T90 and similar (SDSC)
@@ -780,6 +782,10 @@
 			{
 			$strict_warnings = 1;
 			}
+		elsif (/^--with-cc=(.*)$/)
+			{
+                $ccarg=$1
+			}
 		elsif (/^reconfigure/ || /^reconf/)
 			{
 			if (open(IN,"<$Makefile"))
@@ -1058,7 +1064,7 @@
 print "IsMK1MF=$IsMK1MF\n";
 
 my @fields = split(/\s*:\s*/,$table{$target} . ":" x 30 , -1);
-my $cc = $fields[$idx_cc];
+my $cc = $ccarg ? $ccarg : $fields[$idx_cc];
 # Allow environment CC to override compiler...
 if($ENV{CC}) {
     $cc = $ENV{CC};
Index: config
--- config.orig	2010-03-09 18:08:39.000000000 +0100
+++ config	2010-03-30 09:13:58.000000000 +0200
@@ -277,6 +277,9 @@
 	    Power*)
 		echo "ppc-apple-darwin${VERSION}"
 		;;
+	    x86_64 )
+		echo "x86_64-apple-darwin${VERSION}"
+		;;
 	    *)
 		echo "i686-apple-darwin${VERSION}"
 		;;
@@ -407,7 +410,7 @@
 # this is where the translation occurs into SSLeay terms
 # ---------------------------------------------------------------------------
 
-GCCVER=`(gcc -dumpversion) 2>/dev/null`
+GCCVER=`(${CC-gcc} -dumpversion 2>/dev/null && exit; gcc -dumpversion 2>/dev/null && exit; cc --version 2>/dev/null | grep GCC >/dev/null && cc -dumpversion )`
 if [ "$GCCVER" != "" ]; then
   # then strip off whatever prefix egcs prepends the number with...
   # Hopefully, this will work for any future prefixes as well.
@@ -425,8 +428,14 @@
 # we fallback to whatever cc does on the system
   if [ "$GCCVER" != "" ]; then
     CC=gcc
+    SUFFIX=gcc
   else
     CC=cc
+    SUFFIX=cc
+  fi
+else
+  if [ "$GCCVER" != "" ]; then
+    SUFFIX=gcc
   fi
 fi
 GCCVER=${GCCVER:-0}
@@ -436,7 +445,7 @@
   if [ $GCCVER -ge 30 ]; then
     # PA64 support only came in with gcc 3.0.x.
     # We check if the preprocessor symbol __LP64__ is defined...
-    if echo "__LP64__" | gcc -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then
+    if echo "__LP64__" | $CC -v -E -x c - 2>/dev/null | grep "^__LP64__" 2>&1 > /dev/null; then
       : # __LP64__ has slipped through, it therefore is not defined
     else
       GCC_BITS="64"
@@ -447,13 +456,14 @@
   if [ $GCCVER -ge 30 ]; then
     # 64-bit ABI isn't officially supported in gcc 3.0, but it appears
     # to be working, at the very least 'make test' passes...
-    if gcc -v -E -x c /dev/null 2>&1 | grep __arch64__ > /dev/null; then
+    if $CC -v -E -x c /dev/null 2>&1 | grep __arch64__ > /dev/null; then
       GCC_ARCH="-m64"
     else
       GCC_ARCH="-m32"
     fi
   fi
   # check for WorkShop C, expected output is "cc: blah-blah C x.x"
+  if [ $GCCVER -eq 0 ]; then
   CCVER=`(cc -V 2>&1) 2>/dev/null | \
   	egrep -e '^cc: .* C [0-9]\.[0-9]' | \
 	sed 's/.* C \([0-9]\)\.\([0-9]\).*/\1\2/'`
@@ -466,6 +476,7 @@
       sleep 5
     fi
   fi
+  fi
 fi
 
 if [ "${SYSTEM}-${MACHINE}" = "Linux-alpha" ]; then
@@ -483,6 +494,7 @@
 
 if [ "${SYSTEM}" = "AIX" ]; then	# favor vendor cc over gcc
     (cc) 2>&1 | grep -iv "not found" > /dev/null && CC=cc
+    (gcc) 2>&1 | grep -iv "not found" > /dev/null && CC=gcc
 fi
 
 CCVER=${CCVER:-0}
@@ -508,7 +520,7 @@
 	if [ $CPU -ge 4000 ]; then
 		options="$options -mips2"
 	fi
-	OUT="irix-$CC"
+	OUT="irix-$SUFFIX"
 	;;
   mips3-sgi-irix)
 	#CPU=`(hinv -t cpu) 2>/dev/null | head -1 | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
@@ -518,11 +530,11 @@
 	#else
 	#	options="$options -mips3"
 	#fi
-	OUT="irix-mips3-$CC"
+	OUT="irix-mips3-$SUFFIX"
 	;;
   mips4-sgi-irix64)
 	echo "WARNING! If you wish to build 64-bit library, then you have to"
-	echo "         invoke './Configure irix64-mips4-$CC' *manually*."
+	echo "         invoke './Configure irix64-mips4-$SUFFIX' *manually*."
 	if [ "$TEST" = "false" -a -t 1 ]; then
 	  echo "         You have about 5 seconds to press Ctrl-C to abort."
 	  (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
@@ -534,7 +546,7 @@
         #else
         #        options="$options -mips3"
         #fi
-	OUT="irix-mips3-$CC"
+	OUT="irix-mips3-$SUFFIX"
 	;;
   ppc-apple-rhapsody) OUT="rhapsody-ppc-cc" ;;
   ppc-apple-darwin*)
@@ -559,13 +571,16 @@
 	    fi
 	fi
 	OUT="darwin-i386-cc" ;;
+  x86_64-apple-darwin*)
+    OUT="darwin64-x86_64-cc"
+    ;;
   alpha-*-linux2)
         ISA=`awk '/cpu model/{print$4;exit(0);}' /proc/cpuinfo`
 	case ${ISA:-generic} in
-	*[678])	OUT="linux-alpha+bwx-$CC" ;;
-	*)	OUT="linux-alpha-$CC" ;;
+	*[678])	OUT="linux-alpha+bwx-$SUFFIX" ;;
+	*)	OUT="linux-alpha-$SUFFIX" ;;
 	esac
-	if [ "$CC" = "gcc" ]; then
+	if [ $GCCVER -gt 0 ]; then
 	    case ${ISA:-generic} in
 	    EV5|EV45)		options="$options -mcpu=ev5";;
 	    EV56|PCA56)		options="$options -mcpu=ev56";;
@@ -632,7 +647,7 @@
   s390x-*-linux2) OUT="linux-s390x" ;;
   x86_64-*-linux?) OUT="linux-x86_64" ;;
   *86-*-linux2) OUT="linux-elf"
-	if [ "$GCCVER" -gt 28 ]; then
+	if [ $GCCVER -gt 28 ]; then
           if grep '^model.*Pentium' /proc/cpuinfo >/dev/null ; then
 	    options="$options -march=pentium"
           fi
@@ -646,17 +661,17 @@
   *-*-linux1) OUT="linux-aout" ;;
   *-*-linux2) OUT="linux-generic32" ;;
   sun4[uv]*-*-solaris2)
-	OUT="solaris-sparcv9-$CC"
+	OUT="solaris-sparcv9-$SUFFIX"
 	ISA64=`(isalist) 2>/dev/null | grep sparcv9`
 	if [ "$ISA64" != "" ]; then
-	    if [ "$CC" = "cc" -a $CCVER -ge 50 ]; then
+	    if [ $GCCVER -eq 0 -a $CCVER -ge 50 ]; then
 		echo "WARNING! If you wish to build 64-bit library, then you have to"
 		echo "         invoke './Configure solaris64-sparcv9-cc' *manually*."
 		if [ "$TEST" = "false" -a -t 1 ]; then
 		  echo "         You have about 5 seconds to press Ctrl-C to abort."
 		  (trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
 		fi
-	    elif [ "$CC" = "gcc" -a "$GCC_ARCH" = "-m64" ]; then
+	    elif [ $GCCVER -gt 0 -a "$GCC_ARCH" = "-m64" ]; then
 		# $GCC_ARCH denotes default ABI chosen by compiler driver
 		# (first one found on the $PATH). I assume that user
 		# expects certain consistency with the rest of his builds
@@ -679,21 +694,21 @@
 	    fi
 	fi
 	;;
-  sun4m-*-solaris2)	OUT="solaris-sparcv8-$CC" ;;
-  sun4d-*-solaris2)	OUT="solaris-sparcv8-$CC" ;;
-  sun4*-*-solaris2)	OUT="solaris-sparcv7-$CC" ;;
+  sun4m-*-solaris2)	OUT="solaris-sparcv8-$SUFFIX" ;;
+  sun4d-*-solaris2)	OUT="solaris-sparcv8-$SUFFIX" ;;
+  sun4*-*-solaris2)	OUT="solaris-sparcv7-$SUFFIX" ;;
   *86*-*-solaris2)
 	ISA64=`(isalist) 2>/dev/null | grep amd64`
-	if [ "$ISA64" != "" ]; then
-	    OUT="solaris64-x86_64-$CC"
+	if [ "$ISA64" != "" -a $GCCVER -gt 0 -a "$GCC_ARCH" = "-m64" ]; then
+	    OUT="solaris64-x86_64-$SUFFIX"
 	else
-	    OUT="solaris-x86-$CC"
+	    OUT="solaris-x86-$SUFFIX"
 	    if [ `uname -r | sed -e 's/5\.//'` -lt 10 ]; then
 		options="$options no-sse2"
 	    fi
 	fi
 	;;
-  *-*-sunos4)		OUT="sunos-$CC" ;;
+  *-*-sunos4)		OUT="sunos-$SUFFIX" ;;
 
   *86*-*-bsdi4)		OUT="BSD-x86-elf"; options="$options no-sse2 -ldl" ;;
   alpha*-*-*bsd*)	OUT="BSD-generic64"; options="$options -DL_ENDIAN" ;;
@@ -717,7 +732,7 @@
   *-*-osf)		OUT="osf1-alpha-cc" ;;
   *-*-tru64)		OUT="tru64-alpha-cc" ;;
   *-*-[Uu]nix[Ww]are7)
-	if [ "$CC" = "gcc" ]; then
+	if [ $GCCVER -gt 0 ]; then
 	  OUT="unixware-7-gcc" ; options="$options no-sse2"
 	else    
 	  OUT="unixware-7" ; options="$options no-sse2 -D__i386__"
@@ -728,12 +743,12 @@
   *-*-vos)
 	options="$options no-threads no-shared no-asm no-dso"
 	EXE=".pm"
-	OUT="vos-$CC" ;;
+	OUT="vos-$SUFFIX" ;;
   BS2000-siemens-sysv4) OUT="BS2000-OSD" ;;
   RM*-siemens-sysv4) OUT="ReliantUNIX" ;;
   *-siemens-sysv4) OUT="SINIX" ;;
   *-hpux1*)
-	if [ $CC = "gcc" -a $GCC_BITS = "64" ]; then
+	if [ $GCCVER -gt 0 -a $GCC_BITS = "64" ]; then
 	    OUT="hpux64-parisc2-gcc"
 	fi
 	KERNEL_BITS=`(getconf KERNEL_BITS) 2>/dev/null`
@@ -751,8 +766,8 @@
 	     fi
 	     OUT="hpux64-ia64-cc"
 	elif [ $CPU_VERSION -ge 532 ]; then	# PA-RISC 2.x CPU
-	     OUT=${OUT:-"hpux-parisc2-${CC}"}
-	     if [ $KERNEL_BITS -eq 64 -a "$CC" = "cc" ]; then
+	     OUT=${OUT:-"hpux-parisc2-${SUFFIX}"}
+	     if [ $KERNEL_BITS -eq 64 -a $GCCVER -eq 0 ]; then
 		echo "WARNING! If you wish to build 64-bit library then you have to"
 		echo "         invoke './Configure hpux64-parisc2-cc' *manually*."
 		if [ "$TEST" = "false" -a -t 1 ]; then
@@ -761,19 +776,19 @@
 		fi
 	     fi
 	elif [ $CPU_VERSION -ge 528 ]; then	# PA-RISC 1.1+ CPU
-	     OUT="hpux-parisc-${CC}"
+	     OUT="hpux-parisc-${SUFFIX}"
 	elif [ $CPU_VERSION -ge 523 ]; then	# PA-RISC 1.0 CPU
-	     OUT="hpux-parisc-${CC}"
+	     OUT="hpux-parisc-${SUFFIX}"
 	else					# Motorola(?) CPU
-	     OUT="hpux-$CC"
+	     OUT="hpux-$SUFFIX"
 	fi
 	options="$options -D_REENTRANT" ;;
-  *-hpux)	OUT="hpux-parisc-$CC" ;;
+  *-hpux)	OUT="hpux-parisc-$SUFFIX" ;;
   *-aix)
 	KERNEL_BITS=`(getconf KERNEL_BITMODE) 2>/dev/null`
 	KERNEL_BITS=${KERNEL_BITS:-32}
 	OBJECT_MODE=${OBJECT_MODE:-32}
-	if [ "$CC" = "gcc" ]; then
+	if [ $GCCVER -gt 0 ]; then
 	    OUT="aix-gcc"
           if [ $OBJECT_MODE -eq 64 ]; then
             echo 'Your $OBJECT_MODE was found to be set to 64'
@@ -875,7 +890,7 @@
 #fi
 
 if [ -z "$OUT" ]; then
-  OUT="$CC"
+  OUT="$SUFFIX"
 fi
 
 if [ ".$PERL" = . ] ; then
@@ -907,9 +922,9 @@
 # compiler for the platform ... in which case we add it on
 # the end ... otherwise we leave it off
 
-$PERL ./Configure LIST | grep "$OUT-$CC" > /dev/null
+$PERL ./Configure LIST | grep "$OUT-$SUFFIX" > /dev/null
 if [ $? = "0" ]; then
-  OUT="$OUT-$CC"
+  OUT="$OUT-$SUFFIX"
 fi
 
 OUT="$PREFIX$OUT"
@@ -919,9 +934,9 @@
   echo Configuring for $OUT
 
   if [ "$TEST" = "true" ]; then
-    echo $PERL ./Configure $OUT $options
+    echo $PERL ./Configure $OUT --with-cc=$CC $options
   else
-    $PERL ./Configure $OUT $options
+    $PERL ./Configure $OUT --with-cc=$CC $options
   fi
 else
   echo "This system ($OUT) is not supported. See file INSTALL for details."

--- NEW FILE: openssl.spec ---
##
##  openssl.spec -- OpenPKG RPM Package Specification
##  Copyright (c) 2000-2010 OpenPKG Foundation e.V. <http://openpkg.net/>
##
##  Permission to use, copy, modify, and distribute this software for
##  any purpose with or without fee is hereby granted, provided that
##  the above copyright notice and this permission notice appear in all
##  copies.
##
##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
##  SUCH DAMAGE.
##

#   package version
%define       V_openssl 1.0.0
%define       V_zlib    1.2.5

#   package information
Name:         openssl
Summary:      Cryptography and SSL/TLS Toolkit
URL:          http://www.openssl.org/
Vendor:       The OpenSSL Project
Packager:     OpenPKG Foundation e.V.
Distribution: OpenPKG Community
Class:        CORE
Group:        SSL
License:      BSD-style
Version:      %{V_openssl}
Release:      20100420

#   package options
%option       with_zlib     no
%option       with_idea     no
%option       with_threads  no
%option       with_pic      no

#   list of sources
Source0:      ftp://ftp.openssl.org/source/openssl-%{V_openssl}.tar.gz
Source1:      http://www.zlib.net/zlib-%{V_zlib}.tar.gz
Patch0:       openssl.patch

#   build information
Prefix:       %{l_prefix}
BuildRoot:    %{l_buildroot}
BuildPreReq:  OpenPKG, openpkg >= 20060823, perl, make, gcc
PreReq:       OpenPKG, openpkg >= 20060823, perl
%if "%{with_zlib}" == "yes"
BuildPreReq:  zlib
PreReq:       zlib
%endif
AutoReq:      no
AutoReqProv:  no

%description
    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 with full-strength cryptography world-wide. The project is
    managed by a worldwide community of volunteers that use the Internet to
    communicate, plan, and develop the OpenSSL tookit and its related
    documentation.

%prep
    %setup -q
%if "%{with_zlib}" == "yes"
    %setup -q -D -T -a 1
%endif
    %patch -p0
    %{l_shtool} subst \
        -e 's;-march=pentium;;g' \
        -e 's;-m486;-march=i486;g' \
        Configure
    %{l_shtool} subst \
        -e 's;BN_LLONG *;;' \
        Configure
    %{l_shtool} subst \
        -e 's;test "$OSTYPE" = msdosdjgpp;true;' \
        util/point.sh
    %{l_shtool} subst \
        -e 's;^\(#define DEVRANDOM_EGD\);\1 "%{l_prefix}/var/prngd/prngd.socket",;' \
        e_os.h
    %{l_shtool} subst \
        -e 's;^\(my $openssl\)\;;\1 = "%{l_prefix}/bin/openssl"\;;' \
        tools/c_rehash.in
%if "%{with_zlib}" == "yes"
    %{l_shtool} subst \
        -e "s;\\(-DZLIB_SHARED\\);-I`pwd`/zlib-%{V_zlib} \\1;" \
        Configure
    %{l_shtool} subst \
        -e 's;, "z",;, "%{l_prefix}/lib/openssl/zlib.so",;' \
        crypto/comp/c_zlib.c
%endif

%build
%if "%{with_zlib}" == "yes"
    ( cd zlib-%{V_zlib}
      CC="%{l_cc}" \
      CFLAGS="%{l_cflags -O}" \
      ./configure \
          --prefix=%{l_prefix} \
          --shared
      %{l_make} %{l_mflags -O}
    ) || exit $?
%endif
    %{l_prefix}/bin/perl util/perlpath.pl %{l_prefix}/bin/perl
    options="no-shared no-dso"
%if "%{with_pic}" == "yes"
    options="$options -fPIC"
    case "%{l_platform -t}" in
        amd64-*          ) options="$options no-asm" ;;
        sparc64-freebsd* ) options="$options no-asm" ;;
    esac
%else
    case "%{l_platform -t}" in
        amd64-*          ) options="$options -fPIC no-asm" ;;
        ia64-*           ) options="$options -fPIC"        ;;
        sparc64-freebsd* ) options="$options -fPIC no-asm" ;;
    esac
%endif
%if "%{with_zlib}" == "yes"
    options="$options zlib-dynamic"
%else
    options="$options no-zlib"
%endif
%if "%{with_idea}" != "yes"
    options="$options no-idea"
%endif
%if "%{with_threads}" == "yes"
    options="$options threads"
%else
    options="$options no-threads"
%endif
    PERL=%{l_prefix}/bin/perl \
    ./config \
        --prefix=%{l_prefix} \
        --openssldir=%{l_prefix}/etc/openssl \
        --libdir=lib \
        $options
    %{l_make} %{l_mflags}

%install
    rm -rf $RPM_BUILD_ROOT
    %{l_make} %{l_mflags} install INSTALL_PREFIX=$RPM_BUILD_ROOT
    strip $RPM_BUILD_ROOT%{l_prefix}/bin/openssl >/dev/null 2>&1 || true
    ( cd $RPM_BUILD_ROOT%{l_prefix}
      rmdir lib/engines
      rm -rf etc/openssl/private
      rm -rf etc/openssl/certs
      rm -rf etc/openssl/misc
      rm -rf etc/openssl/lib
      mv etc/openssl/man man
      mv bin/c_rehash bin/openssl-crehash
      cd man
      for dir in man[1-9]; do
          for file in `cd $dir; echo *`; do
              mv $dir/$file $dir/openssl_$file
          done
      done
    ) || exit $?
%if "%{with_zlib}" == "yes"
    %{l_shtool} mkdir -f -p -m 755 \
        $RPM_BUILD_ROOT%{l_prefix}/libexec/openssl
    %{l_shtool} install -c -m 644 \
        zlib-%{V_zlib}/libz.so \
        $RPM_BUILD_ROOT%{l_prefix}/libexec/openssl/zlib.so
%endif
    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
        %{l_files_std} \
        '%config %{l_prefix}/etc/openssl/openssl.cnf'

%files -f files

%clean
    rm -rf $RPM_BUILD_ROOT






More information about the commits mailing list