Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Nov 1999 10:09:46 +0100
From:      Dirk Froemberg <dirk@FreeBSD.org>
To:        Nate Williams <nate@mt.sri.com>
Cc:        ports@FreeBSD.org
Subject:   Re: OpenSSL port issue for older releases (a.out)
Message-ID:  <19991116100946.A85949@physik.TU-Berlin.DE>
In-Reply-To: <199911152305.QAA29971@mt.sri.com>
References:  <199911152305.QAA29971@mt.sri.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--vtzGhvizbBRQ85DL
Content-Type: text/plain; charset=us-ascii

Hi Nate!

On Mon, Nov 15, 1999 at 04:05:32PM -0700, Nate Williams wrote:
> The linker on older releases does not support the '--whole-archive'
> flag, which causes the compile to fail.
> 
> What is the purpose of this, and can it be removed?  (This port is a
> pre-requisite for OpenSSH)...

From ld(1):

--whole-archive
      For  each archive mentioned on the command line af-
      ter the --whole-archive option, include  every  ob-
      ject  file  in the archive in the link, rather than
      searching  the  archive  for  the  required  object
      files.   This  is  normally used to turn an archive
      file into a shared library, forcing every object to
      be included in the resulting shared library.

The freebsd-shared target in ${WORKDIR}/Makefile.org builds an ar archive
with shared objects in it. --whole-archive is used to "convert" the
ar archive into a shared library.

OpenSSL doesn't really support building of shared libraries, yet.
So this is just a hack.

So what to do?

- You can use a "private" solution by applying the attached patch to
  openssl in order to pull out building of shared libraries.

- You can come up with a real solution for 2.x, 3.x and 4.x.

At the moment I don't have the time to care about it and 2.x isn't
officially supported by ports-current anyway.

	Regards Dirk

-- 
Dirk Froemberg

FreeBSD: The Power to Serve!		http://www.FreeBSD.org/

--vtzGhvizbBRQ85DL
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="openssl.diff"

Index: openssl/Makefile
===================================================================
RCS file: /home/ncvs/ports/security/openssl/Makefile,v
retrieving revision 1.37
diff -u -r1.37 Makefile
--- Makefile	1999/11/07 22:19:47	1.37
+++ Makefile	1999/11/16 08:59:05
@@ -17,9 +17,6 @@
 
 RESTRICTED=	"Cryptography"
 USE_PERL5=	yes
-ALL_TARGET=	freebsd-shared all
-SHLIBVER=	1
-MAKE_ENV+=	SHLIBVER=${SHLIBVER}
 
 .if !defined(USA_RESIDENT) || ${USA_RESIDENT} != YES && ${USA_RESIDENT} != NO
 pre-fetch:
@@ -42,11 +39,6 @@
 	   ${RSAREF} -L${PREFIX}/lib
 
 post-install:
-.for i in libcrypto libssl
-	@${INSTALL_DATA} ${WRKSRC}/$i.so.${SHLIBVER} ${PREFIX}/lib
-	@${LN} -s $i.so.${SHLIBVER} ${PREFIX}/lib/$i.so
-.endfor
-	@${SETENV} OBJFORMAT=${PORTOBJFORMAT} ${LDCONFIG} -m ${PREFIX}/lib
 .if !defined(NOPORTDOCS)
 	@${MKDIR} ${PREFIX}/share/doc/openssl
 	@${INSTALL_DATA} ${WRKSRC}/doc/* ${PREFIX}/share/doc/openssl
Index: openssl/pkg/PLIST
===================================================================
RCS file: /home/ncvs/ports/security/openssl/pkg/PLIST,v
retrieving revision 1.16
diff -u -r1.16 PLIST
--- PLIST	1999/11/07 22:19:49	1.16
+++ PLIST	1999/11/16 08:59:06
@@ -52,11 +52,7 @@
 include/openssl/x509v3.h
 lib/libRSAglue.a
 lib/libcrypto.a
-lib/libcrypto.so
-lib/libcrypto.so.1
 lib/libssl.a
-lib/libssl.so
-lib/libssl.so.1
 openssl/misc/CA.pl
 openssl/misc/CA.sh
 openssl/misc/c_hash

--vtzGhvizbBRQ85DL--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19991116100946.A85949>