]> git.pld-linux.org Git - packages/rpm-build-tools.git/blobdiff - builder.sh
do db-devel replacement on exact match only
[packages/rpm-build-tools.git] / builder.sh
index c93a68228111960a201cab12f04b09a1564e5d08..453625d7f15c6bfbfbecbb88308dc0c11d2d97ef 100755 (executable)
@@ -38,7 +38,7 @@ APPDIR=$(d=$0; [ -L "$d" ] && d=$(readlink -f "$d"); dirname "$d")
 VERSION="v0.35"
 VERSIONSTRING="\
 Build package utility from PLD Linux Packages repository
-$VERSION (C) 1999-2020 Free Penguins".
+$VERSION (C) 1999-2021 Free Penguins".
 
 # Clean PATH without /usr/local or user paths
 CLEAN_PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin"
@@ -151,9 +151,13 @@ REVERT_BROKEN_UPGRADE="yes"
 
 if rpm --specsrpm 2>/dev/null; then
        FETCH_BUILD_REQUIRES_RPMSPECSRPM="yes"
+       FETCH_BUILD_REQUIRES_RPMSPEC_BINARY="no"
        FETCH_BUILD_REQUIRES_RPMGETDEPS="no"
-else
+elif [ -x /usr/bin/rpmspec ]; then
        FETCH_BUILD_REQUIRES_RPMSPECSRPM="no"
+       FETCH_BUILD_REQUIRES_RPMSPEC_BINARY="yes"
+       FETCH_BUILD_REQUIRES_RPMGETDEPS="no"
+else
        if [ -x /usr/bin/rpm-getdeps ]; then
                FETCH_BUILD_REQUIRES_RPMGETDEPS="yes"
        else
@@ -592,7 +596,7 @@ depspecname() {
 
                s/apache\(EAPI\)-devel/apache-devel/
 
-               s/db-devel/db5.3-devel/
+               s/^db-devel/db5.3-devel/
                s/libjpeg-devel/libjpeg-turbo-devel/
        '
 }
@@ -1698,9 +1702,9 @@ build_package() {
        # this may be set by user
        unset GIT_SSH
        # may be set by user
-       unset GIT_COMMITTER_NAME GIT_COMMITTER_EMAIL GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL GIT_TESTING_PORCELAIN_COMMAND_LIST
+       unset GIT_COMMITTER_NAME GIT_COMMITTER_EMAIL GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL GIT_TESTING_PORCELAIN_COMMAND_LIST GIT_EDITOR
        # fail if something still set
-       env | grep ^GIT_ && Exit_error err_build_fail
+       env | grep ^GIT_ && Exit_error err_build_fail "One of GIT_* env variables is still set. The builder script needs to be updated to unset that variable. In the meantime, unset it manually."
 
        local specdir=$(insert_gitlog $SPECFILE)
        ulimit -c unlimited
@@ -2035,6 +2039,10 @@ install_build_requires_rpmdeps() {
                CNFL=$(eval rpm-getdeps $BCOND $RPMOPTS $SPECFILE 2> /dev/null | awk '/^\-/ { print $3 } ' | _rpm_cnfl_check | xargs)
                DEPS=$(eval rpm-getdeps $BCOND $RPMOPTS $SPECFILE 2> /dev/null | awk '/^\+/ { print $3 } ' | _rpm_prov_check | xargs)
        fi
+       if [ "$FETCH_BUILD_REQUIRES_RPMSPEC_BINARY" = "yes" ]; then
+               CNFL=$(eval rpmspec --query --conflicts     $BCOND $RPMOPTS $SPECFILE 2> /dev/null | awk '{print $1}' | _rpm_cnfl_check | xargs);
+               DEPS=$(eval rpmspec --query --buildrequires $BCOND $RPMOPTS $SPECFILE 2> /dev/null | awk '{print $1}' | _rpm_prov_check | xargs);
+       fi
        if [ "$FETCH_BUILD_REQUIRES_RPMSPECSRPM" = "yes" ]; then
                CNFL=$(eval rpm -q --specsrpm --conflicts $BCOND $RPMOPTS $SPECFILE | awk '{print $1}' | _rpm_cnfl_check | xargs)
                DEPS=$(eval rpm -q --specsrpm --requires $BCOND $RPMOPTS $SPECFILE | awk '{print $1}' | _rpm_prov_check | xargs)
@@ -2058,7 +2066,7 @@ fetch_build_requires()
        fi
 
        update_shell_title "fetch build requires"
-       if [ "$FETCH_BUILD_REQUIRES_RPMGETDEPS" = "yes" ] || [ "$FETCH_BUILD_REQUIRES_RPMSPECSRPM" = "yes" ]; then
+       if [ "$FETCH_BUILD_REQUIRES_RPMGETDEPS" = "yes" ] || [ "$FETCH_BUILD_REQUIRES_RPMSPECSRPM" = "yes" ] || [ "$FETCH_BUILD_REQUIRES_RPMSPEC_BINARY" = "yes" ]; then
                install_build_requires_rpmdeps
                return
        fi
@@ -2189,11 +2197,11 @@ while [ $# -gt 0 ]; do
                --http )
                        PROTOCOL="http"; shift ;;
                -j)
-                       RPMOPTS="${RPMOPTS} --define \"_smp_mflags -j$2\""
+                       RPMOPTS="${RPMOPTS} --define \"__jobs $2\""
                        shift 2
                        ;;
                -j[0-9]*)
-                       RPMOPTS="${RPMOPTS} --define \"_smp_mflags $1\""
+                       RPMOPTS="${RPMOPTS} --define \"__jobs ${1#-j}\""
                        shift
                        ;;
                -p)
This page took 0.075184 seconds and 4 git commands to generate.