diff --git a/Config.in b/Config.in index 3fbc87526..9f9288379 100644 --- a/Config.in +++ b/Config.in @@ -129,6 +129,12 @@ config BUILD_SUFFIX help Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix +config SOURCE_FEEDS_REV + string + prompt "Revision for the source feed svn checkout" if BUILDOPTS + default "" + + source "toolchain/Config.in" source "target/imagebuilder/Config.in" source "target/sdk/Config.in" diff --git a/package/Makefile b/package/Makefile index 59ee670a7..501b158e4 100644 --- a/package/Makefile +++ b/package/Makefile @@ -77,7 +77,7 @@ $(PACKAGE_DIR)/Packages: $(PACKAGE_DIR)/*.ipk (cd $(PACKAGE_DIR); $(SCRIPT_DIR)/ipkg-make-index.sh . > Packages) symlinks: - ../scripts/feeds.sh $(CONFIG_SOURCE_FEEDS) + ../scripts/feeds.sh $(CONFIG_SOURCE_FEEDS) $(CONFIG_SOURCE_FEEDS_REV) ifeq ($(MAKECMDGOALS),compile) MAKEFLAGS:=$(MAKEFLAGS) -j$(CONFIG_JLEVEL) diff --git a/scripts/feeds.sh b/scripts/feeds.sh index e21c204c2..d44242069 100755 --- a/scripts/feeds.sh +++ b/scripts/feeds.sh @@ -37,11 +37,11 @@ setup_symlinks() { checkout_feed() { # We ensure the feed has not already been checked out, if so, we just update the source feed if [ -d $FEEDS_DIR/$2 ]; then - svn up $FEEDS_DIR/$2 + svn up ${3:+-r$3} $FEEDS_DIR/$2 echo "Updated to revision $(LANG=C svn info $FEEDS_DIR/$2 | awk '/^Revision:/ { print $2 }' )"; # Otherwise, we have to checkout in the $FEEDS_DIR else - svn co $1 $FEEDS_DIR/$2 + svn co ${3:+-r$3} $1 $FEEDS_DIR/$2 echo "Checked out revision $(LANG=C svn info $FEEDS_DIR/$2 | awk '/^Revision:/ { print $2 }' )"; fi } @@ -57,7 +57,7 @@ delete_symlinks "$PACKAGE_DIR" for feed in $1 do name=$(extract_feed_name "$feed") - checkout_feed "$feed" "$name" + checkout_feed "$feed" "$name" "$2" done # Finally setup symlinks setup_symlinks "$FEEDS_DIR" "$PACKAGE_DIR"