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"
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
#LOGFILE='../LOGS/log.$PACKAGE_NAME.$DATE'
#TITLECHANGE=no
-SU_SUDO="sudo"
+if [ "$(id -u )" != "0" ]; then
+ SU_SUDO="sudo"
+fi
if [ -n "$HOME_ETC" ]; then
USER_CFG="$HOME_ETC/.builderrc"
s/apache\(EAPI\)-devel/apache-devel/
- s/db-devel/db5.3-devel/
+ s/^db-devel/db5.3-devel/
s/libjpeg-devel/libjpeg-turbo-devel/
'
}
# 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
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 --buildconflicts $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)
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
if [ -f "`pwd`/.${SPECFILE}_INSTALLED_PACKAGES" -a "$REMOVE_BUILD_REQUIRES" != "" ]; then
rm "`pwd`/.${SPECFILE}_INSTALLED_PACKAGES"
fi
-cd "$__PWD"
+test -d "$__PWD" && cd "$__PWD"
# vi:syntax=sh:ts=4:sw=4:noet