163 lines
2.6 KiB
Bash
Executable File
163 lines
2.6 KiB
Bash
Executable File
all_pkgs=(
|
|
# deps
|
|
cef-standard
|
|
cereal
|
|
libsodium-git
|
|
mozc
|
|
vim-runtime-git
|
|
|
|
# packages
|
|
chocolate-doom
|
|
chromium-vaapi-bin
|
|
chromium-widevine
|
|
desmume-git
|
|
dolphin-emu-git
|
|
eternity-engine-git
|
|
fceux-git
|
|
gdcc
|
|
godot
|
|
gopherus
|
|
gvim-git
|
|
gzdoom-legacy
|
|
higan-bsnes
|
|
higan_v106-source
|
|
mednaffe
|
|
megatools
|
|
mgba-git
|
|
motsognir
|
|
mupen64plus-git
|
|
mupen64plus-gui-git
|
|
mupen64plus-noncore-plugins-git
|
|
obs-linuxbrowser-bin
|
|
obs-studio-git
|
|
pcsx2-git
|
|
ppsspp-git
|
|
prboom-plus
|
|
ripcord
|
|
rpcs3-git
|
|
sharenix-git
|
|
slade
|
|
squirrel-sql
|
|
uim-mozc
|
|
xf86-input-xwiimote-git
|
|
xf86-video-amdgpu-git
|
|
xwiimote-git
|
|
zdoom
|
|
)
|
|
declare -A options=(
|
|
["cef-standard"]="--asdeps"
|
|
["cereal"]="--asdeps"
|
|
["libsodium-git"]="--asdeps"
|
|
["mozc"]="--asdeps"
|
|
["vim-runtime-git"]="--asdeps"
|
|
|
|
["higan_v106-source"]="--is-higan"
|
|
["mupen64plus-noncore-plugins-git"]="--no-pull -f"
|
|
["ppsspp-git"]="--install-as ppsspp-git"
|
|
)
|
|
pkg_ver() {
|
|
sed '/^pkgver\=/!d;s/pkgver\=\(.*\)/\1/' PKGBUILD
|
|
}
|
|
build_package() {
|
|
cd ~/bin
|
|
|
|
local pkg=$1
|
|
shift
|
|
|
|
if [[ ! -d ~/bin/$pkg ]]
|
|
then
|
|
git clone https://aur.archlinux.org/$pkg.git
|
|
fi
|
|
|
|
cd $pkg
|
|
|
|
local special_handling
|
|
local no_pull
|
|
local install_as
|
|
local makepkg_args="-srLcCf --noconfirm"
|
|
|
|
while (( $# ))
|
|
do
|
|
case $1 in
|
|
--is-higan)
|
|
special_handling=1
|
|
shift
|
|
|
|
cd higan
|
|
make clean
|
|
make -j12
|
|
make install
|
|
;;
|
|
--no-pull)
|
|
no_pull=1
|
|
shift
|
|
;;
|
|
--install-as)
|
|
install_as=$2
|
|
shift 2
|
|
;;
|
|
--asdeps|--skipinteg|-f)
|
|
makepkg_args="$makepkg_args $1"
|
|
shift
|
|
;;
|
|
*)
|
|
echo "error in rebuild configuration ($1), aborting"
|
|
exit 1
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if [[ $special_handling ]]
|
|
then
|
|
return
|
|
fi
|
|
|
|
if [[ ! $no_pull ]]
|
|
then
|
|
git pull
|
|
fi
|
|
|
|
if [[ ! $install_as ]]
|
|
then
|
|
makepkg_args="$makepkg_args -i"
|
|
fi
|
|
|
|
local pkgver
|
|
|
|
makepkg $makepkg_args
|
|
|
|
local res=$?
|
|
|
|
if (( $res ))
|
|
then
|
|
echo "error in rebuild, aborting"
|
|
exit $res
|
|
fi
|
|
|
|
if [[ $install_as ]]
|
|
then
|
|
pkgver=$(pkg_ver)
|
|
sudo pacman --noconfirm --needed -U $install_as-$pkgver*.pkg.tar
|
|
fi
|
|
}
|
|
main() {
|
|
local pkg
|
|
local pkgs
|
|
|
|
if (( $# ))
|
|
then
|
|
pkgs=$@
|
|
else
|
|
pkgs=${all_pkgs[*]}
|
|
fi
|
|
|
|
for pkg in $pkgs
|
|
do
|
|
build_package $pkg ${options[$pkg]}
|
|
done
|
|
}
|
|
|
|
main $@
|
|
|
|
## EOF
|