pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/41080: security/gnome-keyring fails to build under Linux



>Number:         41080
>Category:       pkg
>Synopsis:       security/gnome-keyring fails to build under Linux
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 27 05:00:00 +0000 2009
>Originator:     David Sainty
>Release:        
>Organization:
>Environment:
>Description:
gck-rpc-daemon-standalone.o: In function `main':
gck-rpc-daemon-standalone.c:(.text+0x3c): undefined reference to `dlopen'
gck-rpc-daemon-standalone.c:(.text+0x61): undefined reference to `dlsym'
gck-rpc-daemon-standalone.c:(.text+0x170): undefined reference to `dlclose'
gck-rpc-daemon-standalone.c:(.text+0x21a): undefined reference to `dlerror'
gck-rpc-daemon-standalone.c:(.text+0x23f): undefined reference to `dlerror'
collect2: ld returned 1 exit status
make[3]: *** [gck-rpc-daemon-standalone] Error 1
make[3]: Leaving directory 
`/tmp/pkgsrc3/security/gnome-keyring/work/gnome-keyring-2.26.0/pkcs11/rpc-layer'
make[2]: *** [all-recursive] Error 1

>How-To-Repeat:
Build on Linux, Pkgsrc @ Fri Mar 27 01:21:18 UTC 2009.

After...

revision 1.43
date: 2009/03/15 18:14:24;  author: jmcneill;  state: Exp;  lines: +11 -4
Update gnome-keyring to 2.26.0.

Changes between 2.24.0 and 2.26.0:

>Fix:
The problem is that mk/dlopen.buildlink3.mk is not sufficient to set 
BUILDLINK_LDADD.dl.  That happens later on when dlopen.builtin.mk is pulled in 
with CHECK_BUILTIN.dl=no.

Unfortunately it isn't really clear how to fix this.  There isn't really an 
existing interface that seems to do the job.

One might be tempted to move BUILDLINK_TRANSFORM+=rm:-ldl into 
dlopen.builtin.mk as an automatic facility if -ldl is not appropriate for the 
platform in question.



security/gnome-keyring % make VARNAME=BUILDLINK_TRANSFORM show-var
rm:-ldl rm:-liconv rm:-lintl
security/gnome-keyring % make VARNAME=BUILDLINK_LDADD.dl show-var
-ldl

security/gnome-keyring % fgrep -A4 dlopen.buildlink3.mk Makefile
.include "../../mk/dlopen.buildlink3.mk"

.if !defined(BUILDLINK_LDADD.dl)
BUILDLINK_TRANSFORM+=   rm:-ldl
.endif


A workaround for Linux build is:

RCS file: /cvsroot/pkgsrc/security/gnome-keyring/Makefile,v
retrieving revision 1.44
diff -u -u -r1.44 Makefile
--- Makefile    22 Mar 2009 14:45:19 -0000      1.44
+++ Makefile    27 Mar 2009 04:54:05 -0000
@@ -41,7 +41,7 @@
 .include "../../mk/dlopen.buildlink3.mk"
 
 .if !defined(BUILDLINK_LDADD.dl)
-BUILDLINK_TRANSFORM+=  rm:-ldl
+#BUILDLINK_TRANSFORM+= rm:-ldl
 .endif
 
 BUILDLINK_API_DEPENDS.glib2+=  glib2>=2.6.0





Home | Main Index | Thread Index | Old Index