# rsync repository with git refs of packages
PKGREVS_URL="http://pkgrevs.tld-linux.org"
+SETPKGREV="false"
# TLD git/df config
TLD_GIT_SERVER="git://git.tld-linux.org"
}
cache_rpm_dump() {
+ local SPEC_PATH
if [ -n "$DEBUG" ]; then
set -x
set -v
fi
+ if [ ! -z "$1" ]; then
+ SPEC_PATH="$1"
+ else
+ SPEC_PATH="$PACKAGE_DIR/$SPECFILE"
+ fi
if [ -x /usr/bin/rpm-specdump ]; then
update_shell_title "cache_rpm_dump using rpm-specdump command"
- rpm_dump_cache=$(rpm-specdump $TARGET_SWITCH $BCOND --define "_specdir $PACKAGE_DIR" --define "_sourcedir $PACKAGE_DIR" $PACKAGE_DIR/$SPECFILE)
+ rpm_dump_cache=$(eval rpm-specdump $TARGET_SWITCH $BCOND $RPMOPTS --define \'_specdir $PACKAGE_DIR\' --define \'_sourcedir $PACKAGE_DIR\' $SPEC_PATH)
else
update_shell_title "cache_rpm_dump using rpmbuild command"
local rpm_dump
get_icons
cd $PACKAGE_DIR
- cache_rpm_dump
+ cache_rpm_dump "$1"
if rpm_dump | grep -qEi ":.*nosource.*1"; then
FAIL_IF_NO_SOURCES="no"
set_pkgrev() {
local _tag
+ parse_spec "$1"
if [ "$TAG_VERSION" = "yes" ]; then
_tag=`make_tagver`
fi
# FIXME: eval here is exactly why?
PATH=$CLEAN_PATH eval teeboth "'$logfile'" ${TIME_COMMAND} ${NICE_COMMAND} $RPMBUILD $TARGET_SWITCH $BUILD_SWITCH -v $QUIET $CLEAN $RPMOPTS $RPMBUILDOPTS $BCOND --define \'_specdir $PACKAGE_DIR\' --define \'_sourcedir $PACKAGE_DIR\' $specdir/$SPECFILE
retval=$?
+
+ # Set pkgrev if requested and build status is OK
+ if [ ! -z "$SETPKGREV" ] && [ "$SETPKGREV" = "true" ] && [ "$retval" -eq "0" ]; then
+ set_pkgrev "$specdir/$SPECFILE"
+ fi
+
rm -r $specdir
if [ -n "$logfile" ] && [ -n "$LOGDIROK" ] && [ -n "$LOGDIRFAIL" ]; then
# use only flags which are in this package.
if [[ $bcond_avail = *${opt}* ]]; then
if [[ $flag = -* ]]; then
- sed -i -r -e '/^%bcond_(with|without)\s+'$opt'/s/^%bcond_(with|without)/%bcond_with/g;' $specdir/$SPECFILE
+ sed -i -r -e '/^%bcond_(with|without)\s+'$opt'/s/^%bcond_(with|without)/%bcond_with/g;' "$1"
elif [[ $flag = +* ]]; then
- sed -i -r -e '/^%bcond_(with|without)\s+'$opt'/s/^%bcond_(with|without)/%bcond_without/g;' $specdir/$SPECFILE
+ sed -i -r -e '/^%bcond_(with|without)\s+'$opt'/s/^%bcond_(with|without)/%bcond_without/g;' "$1"
fi
fi
done
DISTFILES_SERVER=${TLD_DISTFILES_SERVER}
;;
--pkgrev)
- COMMAND="set_pkgrev"
+ SETPKGREV="true"
+ COMMAND="build-source"
shift;;
-lp)
COMMAND="list_pkgrev"
"version" )
echo "$VERSIONSTRING"
;;
- "set_pkgrev" )
- init_builder
- if [ -z "$SPECFILE" ]; then
- Exit_error err_no_spec_in_cmdl
- fi
- get_spec > /dev/null
- parse_spec
- set_bconds_values
- display_bconds
- set_pkgrev
- ;;
"list_pkgrev" )
init_builder
if [ -z "$SPECFILE" ]; then