diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2015-06-05 06:47:52 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2015-06-05 06:47:52 +0000 |
commit | d4d0dc0c335ecf96fcfb97077050197efd92ca1d (patch) | |
tree | b52f63d6993256dea4c012075ad9b254deb82095 /buildrepo.in | |
parent | da666e00c75451b5eedf17efee85cfa9041e769e (diff) | |
download | abuild-d4d0dc0c335ecf96fcfb97077050197efd92ca1d.tar.gz abuild-d4d0dc0c335ecf96fcfb97077050197efd92ca1d.tar.bz2 abuild-d4d0dc0c335ecf96fcfb97077050197efd92ca1d.tar.xz abuild-d4d0dc0c335ecf96fcfb97077050197efd92ca1d.zip |
remove buildrepo
We ship a new implementation of buildrepo with lua-aports
Diffstat (limited to 'buildrepo.in')
-rw-r--r-- | buildrepo.in | 206 |
1 files changed, 0 insertions, 206 deletions
diff --git a/buildrepo.in b/buildrepo.in deleted file mode 100644 index f489908..0000000 --- a/buildrepo.in +++ /dev/null @@ -1,206 +0,0 @@ -#!/bin/sh - -program=${0##*/} - -aportsdir=${APORTSDIR:-$HOME/aports} -repodir=${REPODIR:-$HOME/packages} - -if [ -f /etc/abuild.conf ]; then - . /etc/abuild.conf -fi - -if [ -z "$CARCH" ]; then - machine=$(uname -m) - case $machine in - i[3-9]86) CARCH=x86;; - *) CARCH=$machine;; - esac -fi - -usage() { - echo "usage: $program [-a APORTSDIR] [-d REPODIR] [-hp] [-l LOGPREFIX ]" - echo " [-r DEPREPO] REPOSITORY..." - - echo "options:" - echo " -a Set the aports base dir to APORTSDIR instead of $aportsdir" - echo " -d Set destination repository base dir to REPODIR instead of $repodir" - echo " -h Show this help and exit" - echo " -l Send build to logfile, prefixed by LOGPREFIX" - echo " -k Keep going, even if packages fails" - echo " -p Purge obsolete packages from REPODIR after build" - echo " -r Dependencies are found in DEPREPO" - exit 1 -} - -is_in() { - local needle="$1" arg= - shift - for arg; do - [ "$needle" = "$arg" ] && return 0 - done - return 1 -} - -check_arch() { - [ "$1" = "all" ] || [ "$1" = "noarch" ] || is_in "$CARCH" $@ -} - -listpackages() { - local repo="$1" i= pkgname= pkgver= pkgrel= subpackage= arch= subpkg= linguas= - local lang= suffix= - cd "$aportsdir/$repo" - for i in */APKBUILD; do - cd "$aportsdir/$repo"/${i%/*} || return 1 - pkgname= - pkgver= - pkgrel=0 - subpackages= - arch= - linguas= - . ./APKBUILD - suffix="$pkgver-r$pkgrel.apk" - - if ! check_arch $arch; then - continue - fi - for subpkg in $pkgname $subpackages; do - echo ${subpkg%:*}-$suffix - done - for lang in $linguas; do - echo $pkgname-lang-$lang-$suffix - done - done -} - -all_exist() { - while [ $# -gt 0 ]; do - [ -e "$1" ] || return 1 - shift 1 - done - return 0 -} - -list_needbuild() { - local repo="$1" i= - - cd "$aportsdir/$repo" || return 0 - - # first we try copy everything possible and find out which we need - # to rebuild. By doing this we might save us for rebuilding - # needed when running 'abuild -R' - for apkbuild in */APKBUILD; do - [ -f "$aportsdir/$repo/$apkbuild" ] || continue - export REPODEST="$repodir" - cd "$aportsdir/$repo"/${apkbuild%/*} || return 1 - pkgname= - pkgver= - pkgrel=0 - subpackages= - arch= - . ./APKBUILD - - if ! check_arch $arch; then - continue - fi - - pkgs= - for subpkg in $pkgname $subpackages; do - pkgfile=${subpkg%:*}-$pkgver-r$pkgrel.apk - if ! [ -f "$REPODEST/$repo/$CARCH/$pkgfile" ]; then - pkgs="$pkgs $pkgfile" - fi - done - if [ -z "$pkgs" ]; then - continue - fi - - # try link or copy the files if they are in the ports dir - if all_exist $pkgs; then - echo ">>> Copying " $pkgs >&2 - cp -p -l $pkgs "$repodir/$repo/$CARCH"/ 2>/dev/null \ - || cp -p $pkgs "$repodir/$repo/$CARCH"/ \ - || echo "$apkbuild" - else - echo "$apkbuild" - fi - done -} - -do_build() { - local repo="$1" i= - cd "$aportsdir/$repo" || return 0 - local needbuild="$(list_needbuild $repo)" - - export REPODEST="$repodir" - export ABUILD_BLACKLIST - # build the postponed packages if any - if [ -n "$needbuild" ]; then - for i in $needbuild; do - cd "$aportsdir/$repo"/${i%/*} || return 1 - if ! abuild -k -R; then - [ -n "$keep_going" ] || return 1 - ABUILD_BLACKLIST="$ABUILD_BLACKLIST $i" - fi - done - fi - - # kill old packages in repo - if [ -n "$dopurge" ]; then - echo ">>> Removing old packages from $repo..." - local tmp=$(mktemp /tmp/$program-XXXXXX) - local purgefiles - cd "$repodir/$repo/$CARCH" || return 1 - trap 'rm -f "$tmp"; exit 1' INT - ( listpackages "$1") >$tmp || return 1 - purge=$(ls *.apk 2>/dev/null | grep -v -w -f $tmp) - if [ -n "$purge" ]; then - rm -f $purge - fi - rm -f "$tmp" - fi - - # generate the repository index - echo ">>> Generating Index for $repo..." - cd "$repodir/$repo/$CARCH" - local deps - for i in $deprepo; do - deps="--repo $repodir/$i" - done - oldindex= - if [ -f APKINDEX.tar.gz ]; then - oldindex="--index APKINDEX.tar.gz" - fi - tmpindex=$(mktemp).tar.gz - apk index --rewrite-arch $CARCH $oldindex -o $tmpindex \ - --description "$repo $(cd $aportsdir && git describe)" \ - -- *.apk - abuild-sign $tmpindex && mv $tmpindex APKINDEX.tar.gz - chmod 644 APKINDEX.tar.gz - rm -f tmp.* -} - -while getopts "a:d:hkl:pr:" opt; do - case "$opt" in - a) aportsdir=$OPTARG;; - d) repodir=$OPTARG;; - h) usage >&2;; - k) keep_going=1;; - l) logprefix=$OPTARG;; - p) dopurge=1;; - r) deprepo="$deprepo $OPTARG";; - esac -done -shift $(($OPTIND - 1)) - -[ $# -eq 0 ] && usage >&2 - -while [ $# -gt 0 ]; do - if [ -n "$logprefix" ]; then - do_build $1 >$logprefix.$1.log 2>&1 || exit 1 - else - do_build $1 || exit 1 - fi - deprepo="$deprepo $1" - shift -done - |