tech-pkg: Re: openssl-0.9.6e + release-1-4 + i386 = unhappy

Subject: Re: openssl-0.9.6e + release-1-4 + i386 = unhappy
To: None <tech-pkg@netbsd.org>
From: Aaron J. Grier <agrier@poofygoof.com>
List: tech-pkg
Date: 08/06/2002 15:35:58
--0/kgSOzhNoDC5T3a
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
On Mon, Aug 05, 2002 at 02:13:40PM -0700, Aaron J. Grier wrote:
> when compiling openssl-0.9.6e from pkgsrc under release-1-4 (a.out)
> running on i386 I get the following during the final shared object
> link:
apparently openssl can't properly build shared libraries under 1.4
anymore. Fred B suggested I try building non-shared libraries, which
worked (see attached patch), but I first had to update libc to
/usr/lib/libc.so.12.40.2 in order to get strlcat and friends.
there also appeared to be a bug in buildlink.mk; also contained in the
attached patch. after successfully getting openssl linked, archived,
and installed, packages pulling in openssl/buildlink.mk were running in
circles trying to fill the empty dependency ":../../security/openssl"
lynx is now building... I'm crossing my fingers hoping the worst is
over and that I can get openssh back up and running. :P
needless to say I'm trying to build openssl on my other 1.4 machines
before doing a make update so I don't get stuck like this again.
already my ELF pmax machine is grumping at me:
libs='-L. '; for i in crypto; do ( set -x; gcc -shared -o lib$i.so.300.0 -Wl,-soname=lib$i.so.300 -Wl,-Bsymbolic -Wl,--whole-archive lib$i.a -Wl,--no-whole-archive $libs -Wl,-R/usr/pkg/lib -lc ) || exit 1; libs="$libs -l$i"; done
+ gcc -shared -o libcrypto.so.300.0 -Wl,-soname=libcrypto.so.300 -Wl,-Bsymbolic -Wl,--whole-archive libcrypto.a -Wl,--no-whole-archive -L. -Wl,-R/usr/pkg/lib -lc
libcrypto.a(dso_dlfcn.o): In function `dlfcn_load':
dso_dlfcn.c(.text+0xe0): undefined reference to `dlopen'
dso_dlfcn.c(.text+0x194): undefined reference to `dlclose'
libcrypto.a(dso_dlfcn.o): In function `dlfcn_unload':
dso_dlfcn.c(.text+0x264): undefined reference to `dlclose'
libcrypto.a(dso_dlfcn.o): In function `dlfcn_bind_var':
dso_dlfcn.c(.text+0x3c0): undefined reference to `dlsym'
libcrypto.a(dso_dlfcn.o): In function `dlfcn_bind_func':
dso_dlfcn.c(.text+0x500): undefined reference to `dlsym'
collect2: ld returned 1 exit status
this looks familiar...
who programs this stuff? ;)
-- 
 Aaron J. Grier | "Not your ordinary poofy goof." | agrier@poofygoof.com
 "i'm convinced that the cray cabinet has an outlet for plugging in
 welding attachments." -- Skeezics Boondoggle, on the cray CS6400
--0/kgSOzhNoDC5T3a
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="diff.out"
? diff.out
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/security/openssl/Makefile,v
retrieving revision 1.53
diff -u -r1.53 Makefile
--- Makefile	2002年08月04日 15:47:43	1.53
+++ Makefile	2002年08月06日 22:16:11
@@ -20,7 +20,7 @@
 LICENCE=		fee-based-commercial-use
 
 CONFIGURE_SCRIPT=	config
-CONFIGURE_ARGS=		shared --openssldir=${PKG_SYSCONFDIR} --prefix=${PREFIX}
+CONFIGURE_ARGS=		no-shared --openssldir=${PKG_SYSCONFDIR} --prefix=${PREFIX}
 CONFIGURE_ENV=		CC="${CC}"
 
 CONF_FILES=		${PREFIX}/share/examples/openssl/openssl.cnf	\
@@ -61,7 +61,7 @@
 .endif
 
 .if ${OPSYS} == "NetBSD" && !exists(/usr/libexec/ld.elf_so) && !exists(/usr/libexec/ld.so)
-IGNORE=			${PKGNAME} requires shared object support
+IGNORE=			${PKGNAME} requires no-shared object support
 .endif
 
 .if defined(USE_RSAREF2) && ${USE_RSAREF2} == YES
Index: buildlink.mk
===================================================================
RCS file: /cvsroot/pkgsrc/security/openssl/buildlink.mk,v
retrieving revision 1.14
diff -u -r1.14 buildlink.mk
--- buildlink.mk	2002年08月04日 15:47:44	1.14
+++ buildlink.mk	2002年08月06日 22:16:11
@@ -100,6 +100,9 @@
 
 .endif # exists(${_OPENSSLV_H}) && exists(${_SSL_H})
 
+# if this hasn't been defined yet, use the latest pkgsrc version
+BUILDLINK_DEPENDS.openssl?=	openssl>=0.9.6e
+
 .if ${_NEED_OPENSSL} == "YES"
 DEPENDS+=	${BUILDLINK_DEPENDS.openssl}:../../security/openssl
 EVAL_PREFIX+=	BUILDLINK_PREFIX.openssl=openssl
--0/kgSOzhNoDC5T3a--

AltStyle によって変換されたページ (->オリジナル) /