#!/bin/bash # Copyright (C) 2011-2015 by Mike Gabriel # # This is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the # Free Software Foundation, Inc., # 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. COMPONENT_MAIN="main" COMPONENT_LTS="lts" COMPONENT_NIGHTLY="nightly" LIB_PACKAGES_NIGHTLY= LIB_PACKAGES_MAIN= APP_PACKAGES_NIGHTLY= APP_PACKAGES_MAIN= PREFIX=$(echo `basename $0` | cut -d"-" -f1) test -f ~/.buildscripts/$PREFIX.conf && . ~/.buildscripts/$PREFIX.conf || { echo "$0 has no valid context prefix..."; exit 1; } set -ex COMPONENT=${1:-""} CODENAME=${2:-""} # build the newest code... (nightly-builds) [ "x$COMPONENT" = "x$COMPONENT_NIGHTLY" ] || [ -z $COMPONENT ] && { echo -e $LIB_PACKAGES_NIGHTLY $APP_PACKAGES_NIGHTLY | while read pkg comp checkout; do if [ -n $CODENAME ]; then comp="$comp/$CODENAME" fi if [ "x$(basename $0)" = "x$PREFIX-build-all-packages" ]; then $PREFIX-build-package $pkg $comp $checkout elif [ "x$(basename $0)" = "x$PREFIX-upload-all-packages" ]; then $PREFIX-upload-package $pkg $comp $checkout elif [ "x$(basename $0)" = "x$PREFIX-build+upload-all-packages" ]; then $PREFIX-build-package $pkg $comp $checkout && $PREFIX-upload-package $pkg $comp $checkout fi done } # build all packages tagged as build-main [ "x$COMPONENT" = "x$COMPONENT_MAIN" ] || [ -z $COMPONENT ] && { echo -e $LIB_PACKAGES_MAIN $APP_PACKAGES_MAIN | while read pkg comp checkout; do if [ -n $CODENAME ]; then comp="$comp/$CODENAME" fi if [ "x$(basename $0)" = "x$PREFIX-build-all-packages" ]; then $PREFIX-build-package $pkg $comp $checkout elif [ "x$(basename $0)" = "x$PREFIX-upload-all-packages" ]; then $PREFIX-upload-package $pkg $comp $checkout elif [ "x$(basename $0)" = "x$PREFIX-build+upload-all-packages" ]; then $PREFIX-build-package $pkg $comp $checkout && $PREFIX-upload-package $pkg $comp $checkout fi done } # build all packages marked as lts [ "x$COMPONENT" = "x$COMPONENT_LTS" ] || [ -z $COMPONENT ] && { echo -e $LIB_PACKAGES_LTS $APP_PACKAGES_LTS | while read pkg comp checkout; do if [ -n $CODENAME ]; then comp="$comp/$CODENAME" fi if [ "x$(basename $0)" = "x$PREFIX-build-all-packages" ]; then $PREFIX-build-package $pkg $comp $checkout elif [ "x$(basename $0)" = "x$PREFIX-upload-all-packages" ]; then $PREFIX-upload-package $pkg $comp $checkout elif [ "x$(basename $0)" = "x$PREFIX-build+upload-all-packages" ]; then $PREFIX-build-package $pkg $comp $checkout && $PREFIX-upload-package $pkg $comp $checkout fi done } echo "Component: $COMPONENT" echo "Main: $COMPONENT_MAIN" echo "LTS: $COMPONENT_LTS" echo "Nightly: $COMPONENT_NIGHTLY"