summaryrefslogtreecommitdiff
path: root/src/mips64el-tools/mipsrelease
blob: 4d7a7de792cd111e2b3ec6683297993d80948a8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/bin/bash
# Lic: GPLv3+
# Author: Nicolas Reynolds <fauno@kiwwwi.com.ar>
# Local release of mips64el packages + clean ABS sync
# Called by HOOKLOCALRELEASE

# $1 repo
# $2+ packages 

source /etc/makepkg.conf
source /etc/libretools.conf

libretoolsdir="$(dirname $0)/../"

usage() {
    echo "$0 repo package1 [ package2 ... packageN ]"
    echo
    echo " release packages locally on ${PKGDEST}/stage3."
    echo " and make a clean ABS sync "
}

##
#  usage : get_full_version( $epoch, $pkgver, $pkgrel )
# return : full version spec, including epoch (if necessary), pkgver, pkgrel
##
get_full_version() {
    if [[ $1 -eq 0 ]]; then
        # zero epoch case, don't include it in version
        echo $2-$3
    else
        echo $1:$2-$3
    fi
}

repo=$1; shift

if [ -z "${repo}" ]; then
    error "Empty repo"
    exit 1
fi

# Get all needed sources
source PKGBUILD
fullver=$(get_full_version ${epoch:-0} ${pkgver} ${pkgrel})
pkgs=()
makepkg --source -f --skippgpcheck

msg "Adding packages to [stage3]..."
for name in ${pkgname[@]}; do
    msg2 "${name} ${fullver}"
    pkgs+=("${PKGDEST}/${name}-${fullver}-*.pkg.tar.*")
done

repo-add ${PKGDEST}/stage3.db.tar.gz ${pkgs[@]}

librestage ${repo}


mkdir -p ${WORKDIR}/abs/${CARCH}/${repo} >/dev/null

pushd ${WORKDIR}/abs/${CARCH}/${repo} >/dev/null
  tar xvf $SRCPKGDEST/${pkgbase:-${pkgname[0]}}-${fullver}${SRCEXT}
popd >/dev/null

exit $?