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

pbuilder-satisfydepends-classic profile parsing problem: slashes and spaces



Hello, Mattia, folks,

I'm running pbuilder-0.230.4~bpo9+1/pbuilder-satisfydepends-classic
for the debian/control which contains

Build-Depends: live-build (<= 1:20170213), ...

I get the following log

+++ output='live-build (<= 1:20170213), sed, gawk, rsync, wget, patch,
coreutils, findutils, '
+++ output='live-build (<= 1:20170213), sed, gawk, rsync, wget, patch,
coreutils, findutils'
+++ echo 'live-build (<= 1:20170213), sed, gawk, rsync, wget, patch,
coreutils, findutils'
++ for INSTALLPKGMULTI in $(get_build_deps | split_deps)
+++ echo 'live-build/(<=/1:20170213)'
+++ tr / ' '
++ echo ' -> Considering build-dep live-build (<= 1:20170213)'
 -> Considering build-dep live-build (<= 1:20170213)
++ SATISFIED=no
+++ split_alternates 'live-build/(<=/1:20170213)'
+++ echo 'live-build/(<=/1:20170213)'
+++ sed 's/ *| */\n/g'
++ for INSTALLPKG in $(split_alternates "$INSTALLPKGMULTI")
+++ get_pkg_name 'live-build/(<=/1:20170213)'
+++ echo 'live-build/(<=/1:20170213)'
+++ sed 's#^/*##; s#[[/(<].*##'
++ CURRENTREALPKGNAME=live-build
++ echo 'live-build/(<=/1:20170213)'
++ grep -q '\['
++ echo 'live-build/(<=/1:20170213)'
++ grep -q '<'
++ checkbuilddep_restrictiondeps 'live-build/(<=/1:20170213)' 'nocheck astrace'
++ local 'INSTALLPKG=live-build/(<=/1:20170213)'
++ local 'PROFILES=nocheck astrace'
+++ echo 'echo "$INSTALLPKG" | sed -e 's/[^<]*<\(.*\)>.*/\1/' -e 'y|/|
|' -e 's/>\s\+</;/g''
+++ sed -e 's/[^<]*<\(.*\)>.*/\1/' -e 'y|/| |' -e 's/>\s\+</;/g'
++ local 'DEP_RESTRICTIONS=live-build (<= 1:20170213)'
+++ echo 'live-build/(<=/1:20170213)'
+++ cut -d ' ' -f 1
++ local 'PKG=live-build/(<=/1:20170213)'
++ local SEEN_PROFILE
++ local PROFILE
++ local NEGATED
++ local FOUND
++ '[' 'live-build (<= 1:20170213)' = 'live-build/(<=/1:20170213)' ']'
++ IFS=';'
++ read -ra RESTRLISTS
++ for restrlist in "${RESTRLISTS[@]}"
++ SEEN_PROFILE=yes
++ for restr in $restrlist
++ [[ live-build == \!* ]]
++ NEGATED=no
++ PROFILE=live-build
++ FOUND=no
++ for p in $PROFILES
++ '[' nocheck = live-build ']'
++ for p in $PROFILES
++ '[' astrace = live-build ']'
++ '[' no = no ']'
++ SEEN_PROFILE=no
++ break
++ '[' no = yes ']'
++ return 0
++ SATISFIED=yes

Once can see that the proper check for the version constraint fails

    if [ "$DEP_RESTRICTIONS" = "$INSTALLPKG" ]; then
        # there is not a build profile, rather it's a version costraint
        return 1
    fi

due to spaces replaced with slashes

++ '[' 'live-build (<= 1:20170213)' = 'live-build/(<=/1:20170213)' ']'

Later ther "live-build" package name is considered to be a profile
name, which causes "This package is not for the current build
profiles" error.

What is the proper list to discuss the issue? How should it be addressed?

--
Carry a towel
http://dataved.ru/
+7 916 562 8095

[1] Join Alexei Fedotov @linkedin, http://ru.linkedin.com/in/dataved/
[2] Join Alexei Fedotov @facebook, http://www.facebook.com/openmeetings
[3] Start using Apache Openmeetings today, http://openmeetings.apache.org/


Reply to: