pkgsrc-Bugs archive

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

pkg/35294: mk/flavor/pkg/depends.mk can output incorrect dependencies on Irix



>Number:         35294
>Category:       pkg
>Synopsis:       mk/flavor/pkg/depends.mk can output incorrect dependencies on 
>Irix
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Dec 20 10:20:01 +0000 2006
>Originator:     Francois Brunel
>Release:        pkgsrc-2006Q3
>Organization:
>Environment:
IP30
Irix 6.5.30
MIPSPro 7.4.1m
ABI=32
>Description:
When a dependency of the form:

{ghostscript,ghostscript-afpl,ghostscript-esp,ghostscript-gnu}>=6.01 
../../print/ghostscript-gnu

is encountered, shell replacement occurs on Irix at various places and
gives:

ghostscript>=6.01 ../../print/ghostscript-gnu
ghostscript-afpl>=6.01 ../../print/ghostscript-gnu
ghostscript-esp>=6.01 ../../print/ghostscript-gnu
ghostscript-gnu>=6.01 ../../print/ghostscript-gnu

It appears while building (for example) textproc/groff in .depends_done
So groff is not buildable on Irix.

The following patch corrects this issue, but the sed part isn't IMO
the right thing to do.

>How-To-Repeat:

>Fix:
--- depends.mk.orig     2006-12-20 07:44:04.118052480 +0100
+++ depends.mk
@@ -54,8 +54,8 @@ ${_DEPENDS_FILE}:
        ${_PKG_SILENT}${_PKG_DEBUG}                                     \
        ${_REDUCE_DEPENDS_CMD} ${DEPENDS:Q} |                           \
        while read dep; do                                              \
-               pattern=`${ECHO} $$dep | ${SED} -e "s,:.*,,"`;          \
-               dir=`${ECHO} $$dep | ${SED} -e "s,.*:,,"`;              \
+               pattern=`${ECHO} "$$dep" | ${SED} -e "s,:.*,,"`;        \
+               dir=`${ECHO} "$$dep" | ${SED} -e "s,.*:,,"`;            \
                ${TEST} -n "$$pattern" || exit 1;                       \
                ${TEST} -n "$$dir" || exit 1;                           \
                ${ECHO} "full   $$pattern       $$dir";                 \
@@ -69,9 +69,11 @@ ${_DEPENDS_FILE}:
 .PHONY: depends-install
 depends-install: ${_DEPENDS_FILE}
        ${_PKG_SILENT}${_PKG_DEBUG}set -e;                              \
-       set -- dummy `${CAT} ${_DEPENDS_FILE}`; shift;                  \
+       set -- dummy `${CAT} ${_DEPENDS_FILE} | ${SED} -e "s,{,(,;s,},),"`; 
shift;              \
        while ${TEST} $$# -gt 0; do                                     \
-               type="$$1"; pattern="$$2"; dir="$$3"; shift 3;          \
+               type="$$1";                                             \
+               pattern=`${ECHO} "$$2" | ${SED} -e "s,(,{,;s,),},"`;    \
+               dir="$$3"; shift 3;                                     \
                silent=;                                                \
                ${_DEPENDS_INSTALL_CMD};                                \
        done




Home | Main Index | Thread Index | Old Index