#!/bin/bash

LIBDIR='/usr/lib/manjaro-chrootbuild'
. ${LIBDIR}/util-pkg.sh
. ${LIBDIR}/util-chroot.sh

trap 'abort "Aborted."' INT
get_src_dir
get_pkg_dir
get_default_branch

while getopts "b:cdDfghHi:k:K:l:LmM:np:r:suxG" arg; do
    case "${arg}" in
        b) BRANCH="${OPTARG}" ;;
        c) CLEAN=true ;;
        d) COLORS=false ;;
        D) DEBUG=true ;;
        f) FORCE_UNMOUNT=true ;;
        g) PUSH_GIT=true ;;
        G) CHECKSUMS=true ;;
        H) HOST_KEYS=true ;;
        i) INSTALL_LOCAL=true; local_pkgs+=("${OPTARG}") ;;
        k) custom_repo="${OPTARG}" ;;
        K) lists+=("${OPTARG}"); MODULES=true ;;
        l) lists+=("${OPTARG}"); INSTALL=true ;;
        L) LTO=true ;;
        m) MULTILIB=true ;;
        M) MIRROR="${OPTARG}" ;;
        n) INSTALL=true ;;
        p) pkgs+=("${OPTARG}") ;;
        r) CHROOT_DIR="${OPTARG}" ;;
        s) SIGN=true ;;
        u) UPDATE=true ;;
        x) RM_PKGS=true ;;
        h|?) usage_chrootbuild 0 ;;
        *) usage_chrootbuild 1 ;;
    esac
done
shift $((OPTIND -1))

[[ ${COLORS} = true ]] && enable_colors

check_root
[[ ! -z ${lists} ]] && prepare_lists
[[ ! -z ${pkgs} ]] && prepare_pkgs
[[ ${check} = none ]] && abort "No list or package specified. Aborting."

prepare_chroot ${CHROOT_DIR}
[[ ${INSTALL_LOCAL} = true ]] && install_local_pkgs
[[ ${RM_PKGS} = true ]] && rm_pkgs
job build_pkg "${pkgs[@]}"
[[ ${UPDATE} = true ]] && job build_list_git "${lists[@]}" || job build_list "${lists[@]}" 
[[ ${SIGN} = true ]] && gpg_sign ${PKG_DIR}
[[ ${check} = list ]] && summary

cleanup
