From 46c4def0733a78ce08702d188e3e1a141fb07316 Mon Sep 17 00:00:00 2001 From: Lukas Fleischer Date: Mon, 29 Aug 2011 10:53:50 +0200 Subject: Support non-standard install locations This build system overhaul allows for adding (define-style) macros to our scripts. All source files are now suffixed with ".in" to clarify that they might contain unprocessed defines. The Makefile provides a new rule to preprocess source files and generate proper output scripts. Also, add a "@pkgdatadir@" define (as used in GNU Autotools) and use it instead of hardcoded paths to "/usr/share/devtools" everywhere. We missed this when adding PREFIX support to the build system in commit 35fc83ce7d8dc26cd424321f2e8638d05da0a6d4. Signed-off-by: Lukas Fleischer --- rebuildpkgs | 101 ------------------------------------------------------------ 1 file changed, 101 deletions(-) delete mode 100755 rebuildpkgs (limited to 'rebuildpkgs') diff --git a/rebuildpkgs b/rebuildpkgs deleted file mode 100755 index be279bb..0000000 --- a/rebuildpkgs +++ /dev/null @@ -1,101 +0,0 @@ -#!/bin/bash -# This script rebuilds a list of packages in order -# and reports anything that fails -# -# Due to sudo usage, it is recommended to allow makechrootpkg -# to be run with NOPASSWD in your sudoers file -# -# FIXME -# Currently uses $(pwd)/rebuilds as the directory for rebuilding... -# TODO make this work for community too - -if [ $# -le 1 ]; then - echo "usage: $(basename $0) " - echo " example: $(basename $0) ~/chroot readline bash foo bar baz" - exit 1 -fi - -# Source makepkg.conf; fail if it is not found -if [ -r '/etc/makepkg.conf' ]; then - source '/etc/makepkg.conf' -else - echo '/etc/makepkg.conf not found!' - exit 1 -fi - -die () { - echo $@ >&2 - exit 1 -} - -bump_pkgrel() { - # Get the current pkgrel from SVN and update the working copy with it - # This prevents us from incrementing out of control :) - pbuild='.svn/text-base/PKGBUILD.svn-base' - oldrel=$(grep 'pkgrel=' $pbuild | cut -d= -f2) - - #remove decimals - rel=$(echo $oldrel | cut -d. -f1) - - newrel=$(($rel + 1)) - - sed -i "s/pkgrel=$oldrel/pkgrel=$newrel/" PKGBUILD -} - -pkg_from_pkgbuild() { - # we want the sourcing to be done in a subshell so we don't pollute our current namespace - export CARCH PKGEXT - (source PKGBUILD; echo "$pkgname-$pkgver-$pkgrel-$CARCH$PKGEXT") -} - -chrootdir="$1"; shift -pkgs="$@" - -SVNPATH='svn+ssh://gerolde.archlinux.org/srv/svn-packages' - -echo ":: Work will be done in $(pwd)/rebuilds" - -REBUILD_ROOT="$(pwd)/rebuilds" -mkdir -p "$REBUILD_ROOT" -cd "$REBUILD_ROOT" - -/usr/bin/svn co -N $SVNPATH - -FAILED="" -for pkg in $pkgs; do - cd "$REBUILD_ROOT/svn-packages" - - echo ":: Building '$pkg'" - /usr/bin/svn update "$pkg" - if [ ! -d "$pkg/trunk" ]; then - FAILED="$FAILED $pkg" - echo ":: $pkg does not exist in SVN" - continue - fi - cd "$pkg/trunk/" - - bump_pkgrel - - if ! sudo makechrootpkg -u -d -r "$chrootdir" -- --noconfirm; then - FAILED="$FAILED $pkg" - echo ":: $pkg Failed!" - else - pkgfile=$(pkg_from_pkgbuild) - if [ -e "$pkgfile" ]; then - echo ":: $pkg Complete" - else - FAILED="$FAILED $pkg" - echo ":: $pkg Failed, no package built!" - fi - fi -done - -cd "$REBUILD_ROOT" -if [ "$FAILED" != "" ]; then - echo 'Packages failed:' - for pkg in $FAILED; do - echo -e "\t$pkg" - done -fi - -echo 'SVN pkgbumps in svn-packages/ - commit when ready' -- cgit v1.2.3-70-g09d2