summaryrefslogtreecommitdiff
path: root/fullpkg
diff options
context:
space:
mode:
authorNicolás Reynolds <apoyosis@correo.inta.gob.ar>2011-06-09 16:39:38 -0300
committerNicolás Reynolds <apoyosis@correo.inta.gob.ar>2011-06-09 16:39:38 -0300
commitf21fd2185aaef0b2e9054c5eb0d4369597bcc0ff (patch)
tree04186d02d49af629a61c57dc916be885a335c693 /fullpkg
parent1bbc75a678a69a27e18f09a9ab38d27545f013a2 (diff)
parent6d20859e305d5998358ee61d93741600fafd0b4e (diff)
Merge branch 'master' of ssh://vparabola/srv/git/projects/libretools
Conflicts: libremakepkg
Diffstat (limited to 'fullpkg')
-rwxr-xr-xfullpkg43
1 files changed, 26 insertions, 17 deletions
diff --git a/fullpkg b/fullpkg
index 14c4e9f..f281df3 100755
--- a/fullpkg
+++ b/fullpkg
@@ -10,7 +10,7 @@ source /usr/bin/libremessages
[ -r $XDG_CONFIG_HOME/libretools/libretools.conf ] && \
source $XDG_CONFIG_HOME/libretools/libretools.conf
-## START FUNCTIONS ##
+##### START FUNCTIONS #####
function usage {
echo "cd to a dir containing a PKGBUILD and run:"
@@ -67,7 +67,7 @@ update_queue() {
remove_queue() {
get_queue
- grep -vw "^$(basename $PWD)" $queue_file > $queue_file.2
+ grep -Evw "^$(basename $PWD)" $queue_file > $queue_file.2
mv $queue_file.2 $queue_file
put_queue && return 0 || return $?
@@ -161,11 +161,12 @@ function find_deps {
# if search pkgname in repo doesn't work
# this should find pkgsplits
- elif _dir=($(find "$ABSROOT/${_repo}" -type f -name PKGBUILD -print0 | \
- "xargs" -0 -e grep -HEw "pkgname=|pkgbase=|provides=" | grep $_dep 2>&1));
+ elif _dir=($(find "$ABSROOT/${_repo}" -type f -name PKGBUILD -print0 2>/dev/null | \
+ "xargs" -0 -e grep -HEw "pkgname=|pkgbase=|provides=" | grep -w "$_dep" 2>&1));
then
+ _dir=$(dirname $(echo $_dir | cut -d: -f1))
plain "guess for $_dep -> $_dir"
- pushd $(dirname $(echo $_dir | cut -d: -f1)) > /dev/null
+ pushd $_dir > /dev/null
$0 -c -d ${build_dir} -l ${next_level}
# Circular deps must fail
[ $? -eq 20 ] && return 20
@@ -237,20 +238,28 @@ function _pkg_build () {
# this buildcmd is on libretools.conf
$FULLBUILDCMD; r=$?
case $r in
- 0) plain "The build was succesful."
- source .INFO && [ -n $repo ] && {
- librestage $repo || {
- echo "unstaged:$(basename $PWD)" >> $build_dir/log
+###### Succesfull Build ######
+ 0)
+ plain "The build was succesful."
+ source .INFO && [ -n $repo ] && {
+# Release locally
+ mipsrelease *.pkg.tar.?z
+
+# Stage for releasing
+ librestage $repo || {
+ echo "unstaged:$(basename $PWD)" >> $build_dir/log
+ }
+
+ msg "Updating pacman db and packages"
+ sudo pacman -Syu --noconfirm
}
- }
- echo "built:$(basename $PWD)" >> $build_dir/log
- cleanup "$(basename $PWD)"
- ;;
- 1) error "There were errors while trying to build the package."
- echo "failed:$(basename $PWD)" >> $build_dir/log
+ echo "built:$(basename $PWD)" >> $build_dir/log
+ cleanup "$(basename $PWD)"
;;
- 2) error "The build failed."
- echo "failed:$(basename $PWD)" >> $build_dir/log
+###### Failed Build ######
+ *)
+ error "There were errors while trying to build the package."
+ echo "failed:$(basename $PWD)" >> $build_dir/log
;;
esac