pkgsrc-Bugs archive

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

pkg/38838: pkg_info -Q REQUIRES is blank on OpenBSD



>Number:         38838
>Category:       pkg
>Synopsis:       pkg_info -Q REQUIRES is blank on OpenBSD
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Jun 02 22:30:00 +0000 2008
>Originator:     Alexander Nasonov
>Release:        
>Organization:
>Environment:
OpenBSD obx1000 4.3 GENERIC#853 i386
>Description:
The ldd program in OpenBSD prints dependencies in a different format which 
pkgsrc does not understand:

 $ ldd /usr/bin/ldd 
/usr/bin/ldd:
        Start    End      Type Open Ref GrpRef Name
        00000000 00000000 exe  1    0   0      /usr/bin/ldd
        0089a000 208ce000 rlib 0    1   0      /usr/lib/libc.so.45.0
        01bd5000 01bd5000 rtld 0    1   0      /usr/libexec/ld.so

Thids can be fixed by appending a new pattern to the awk script in 
mk/flavor/pkg/metadata.mk:
${AWK} '$$2 == "=>" && $$3 ~ "/" { print $$3 }; $$3 == "rlib" || $$3 == "rtld" 
{ print $$NF };'
>How-To-Repeat:
/usr/pkg/sbin/pkg_info -Q REQUIRES '*'
>Fix:
Index: mk/flavor/pkg/metadata.mk
===================================================================
RCS file: /cvsroot/pkgsrc/mk/flavor/pkg/metadata.mk,v
retrieving revision 1.30
diff -u -r1.30 metadata.mk
--- mk/flavor/pkg/metadata.mk   21 May 2008 20:39:52 -0000      1.30
+++ mk/flavor/pkg/metadata.mk   2 Jun 2008 22:15:39 -0000
@@ -60,7 +60,7 @@
        ELF)                                                            \
                libs=`${AWK} '/(^|\/)lib\/lib.*\.so\.[0-9]+$$/ { print 
"${DESTDIR}${PREFIX}/" $$0 } END { exit 0 }' ${_PLIST_NOKEYWORDS}`; \
                if ${TEST} -n "$$bins" -o -n "$$libs"; then             \
-                       requires=`($$ldd $$bins $$libs 2>/dev/null || ${TRUE}) 
| ${AWK} '$$2 == "=>" && $$3 ~ "/" { print $$3 }' | ${SORT} -u`; \
+                       requires=`($$ldd $$bins $$libs 2>/dev/null || ${TRUE}) 
| ${AWK} '$$2 == "=>" && $$3 ~ "/" { print $$3 }; $$3 == "rlib" || $$3 == 
"rtld" { print $$NF };' | ${SORT} -u`; \
                fi;                                                     \
                linklibs=`${AWK} '/.*\.so\.[0-9\.]+$$/ { print 
"${DESTDIR}${PREFIX}/" $$0 }' ${_PLIST_NOKEYWORDS}`; \
                for i in $$linklibs; do         



Home | Main Index | Thread Index | Old Index