parent
914ac5678c
commit
2130815b4a
@ -0,0 +1,324 @@
|
||||
#!/bin/bash
|
||||
|
||||
# some of base things
|
||||
version="3.5.13"
|
||||
arch=`arch`
|
||||
startdir=`pwd`
|
||||
binariesdir="${startdir}/binaries-${arch}"
|
||||
scriptname=`basename $0`
|
||||
|
||||
#usage function
|
||||
function usage(){
|
||||
printf "Usage: %s [ OPTIONS ]\n\n" ${scriptname}
|
||||
printf "Options:\n"
|
||||
printf " -a, --all\t\tBuild all binaries.\n"
|
||||
printf " -b, --base\t\tBuild base components.\n"
|
||||
printf " -x, --extras\t\tBuild extras.\n"
|
||||
printf " -d, --deps\t\tBuild external dependencies.\n"
|
||||
printf " -h, --help\t\tDisplay this mesage.\n"
|
||||
printf " -p, --patch [dir]\tPatch PKGBUILDs using patches found in patch folder.\n"
|
||||
printf "\t\t\tThis files should be created manually.\n"
|
||||
printf "\t\t\tPatches should be named after PKGBUILD they correct.\n"
|
||||
printf "\t\t\tExample: kdebase.patch\n"
|
||||
printf "\t\t\tOptionally you can specify patches location (default\n"
|
||||
printf "\t\t\tpatch folder).\n"
|
||||
printf " -c, --dont-clean\tDont remove anything.\n"
|
||||
printf "Note: This script should be run on clean and out-of-box arch\n"
|
||||
printf "installation for the best outcome. There is no need to \n"
|
||||
printf "pull anything needed for building manually.\n"
|
||||
printf "Binaries will be automatically installed as build process\n"
|
||||
printf "progress and gethered in %s dir.\n" ${binariesdir}
|
||||
printf "\e[0;31m THIS SCRIPT SHOULD BE RUN AS ROOT\e[0m\n\n\n"
|
||||
exit 1
|
||||
}
|
||||
|
||||
function build_pkg(){
|
||||
cd $1
|
||||
makepkg -i $cleanflag -s --noconfirm --asroot
|
||||
cd ..
|
||||
}
|
||||
|
||||
function patch_pkgbuild(){
|
||||
if [ -e ${startdir}/patch/${1}.patch ]; then
|
||||
patch ${1}/PKGBUILD < ${patchdir}/${1}.patch
|
||||
fi
|
||||
}
|
||||
|
||||
# Parse args
|
||||
if [ $# -lt 1 ]; then
|
||||
usage
|
||||
fi
|
||||
|
||||
args=`getopt -o abxdrhp::c \
|
||||
-l all,base,extras,asroot,deps,"help",patch::,dont-clean \
|
||||
-n $scriptname -- "$@"`
|
||||
eval set -- "$args"
|
||||
while true ; do
|
||||
case "$1" in
|
||||
-a|--all)
|
||||
buildbase=1
|
||||
fetch=1
|
||||
builddeps=1
|
||||
buildextras=1
|
||||
shift 1
|
||||
;;
|
||||
-b|--base)
|
||||
buildbase=1
|
||||
fetch=1
|
||||
shift 1
|
||||
;;
|
||||
-x|--extras)
|
||||
buildextras=1
|
||||
fetch=1
|
||||
shift 1
|
||||
;;
|
||||
-d|--deps)
|
||||
builddeps=1
|
||||
shift 1
|
||||
;;
|
||||
-h|--help)
|
||||
usage
|
||||
shift 1
|
||||
;;
|
||||
-p|--patch)
|
||||
patch=1
|
||||
case $2 in
|
||||
"")
|
||||
patchdir=${curdir}/patch/
|
||||
shift 2
|
||||
;;
|
||||
*)
|
||||
patchdir=${2}
|
||||
shift 2
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
-c|--dont-clean)
|
||||
dontclean=1
|
||||
shift 1
|
||||
;;
|
||||
--) shift ; break ;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ ! $dontclean ]; then
|
||||
cleanflag="-c"
|
||||
fi
|
||||
|
||||
if [ $builddeps ]; then
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
printf "\n\e[0;34mBuilding dependencies form aur\e[0m\n"
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
|
||||
mkdir deps
|
||||
cd deps
|
||||
|
||||
printf "\n\e[0;34mhal-info\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
|
||||
wget http://aur.archlinux.org/packages/ha/hal-info/hal-info.tar.gz
|
||||
tar zxvf hal-info.tar.gz
|
||||
build_pkg hal-info
|
||||
|
||||
printf "\n\e[0;34mhal-git\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
|
||||
wget http://aur.archlinux.org/packages/ha/hal-git/hal-git.tar.gz
|
||||
tar zxvf hal-git.tar.gz
|
||||
build_pkg hal-git
|
||||
|
||||
printf "\n\e[0;34mlibnjb\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
|
||||
wget http://aur.archlinux.org/packages/li/libnjb/libnjb.tar.gz
|
||||
tar zxvf libnjb.tar.gz
|
||||
build_pkg libnjb
|
||||
|
||||
# gather binaries
|
||||
cd $curdir
|
||||
mkdir -p ${binariesdir}/deps/
|
||||
mv aur/*/*.tar.xz ${binariesdir}/deps/
|
||||
if [ ! $dontclean ]; then
|
||||
rm -r deps
|
||||
fi
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
printf "\e[0;34mFinished building external dependencies\e[0m\n"
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
fi
|
||||
|
||||
if [ $fetch ]; then
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
printf "\n\e[0;34mFetching trinity PKGBUILDs\e[0m\n"
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
|
||||
# fetch PKGBUILD and remove useless things
|
||||
git clone http://scm.trinitydesktop.org/scm/git/tde-packaging
|
||||
cd tde-packaging
|
||||
git submodule init
|
||||
git submodule update
|
||||
rm -r ark debian ubuntu fedora mandriva opensuse redhat slackware README.GIT
|
||||
cd $startdir
|
||||
mv tde-packaging/arch/${version}/* .
|
||||
rm -r tde-packaging
|
||||
if [ ! $buildbase ]; then
|
||||
rm -r trinity-base
|
||||
fi
|
||||
if [ ! $buildextras ]; then
|
||||
rm -r trinity-extras
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
if [ $buildbase ]; then
|
||||
cd trinity-base
|
||||
|
||||
# build
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
printf "Building base trinity components\n"
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
|
||||
printf "\n\e[0;34mtrinity-qt3\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild qt3
|
||||
fi
|
||||
build_pkg trinity-qt3
|
||||
|
||||
printf "\n\e[0;34mtrinity-pyqt3\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild pyqt3
|
||||
fi
|
||||
build_pkg trinity-pyqt3
|
||||
|
||||
printf "\n\e[0;34mtrinity-tqtinterface\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild tqtinterface
|
||||
fi
|
||||
build_pkg trinity-tqtinterface
|
||||
|
||||
printf "\n\e[0;34mtrinity-arts\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild arts
|
||||
fi
|
||||
build_pkg trinity-arts
|
||||
|
||||
printf "\n\e[0;34mtrinity-dbus-1-qt3\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild dbus-1-qt3
|
||||
fi
|
||||
build_pkg trinity-dbus-1-qt3
|
||||
|
||||
printf "\n\e[0;34mtrinity-dbus-tqt\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild dbus-tqt
|
||||
fi
|
||||
build_pkg trinity-dbus-tqt
|
||||
|
||||
printf "\n\e[0;34mtrinity-dbus-tqt-1\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild dbus-tqt-1
|
||||
fi
|
||||
build_pkg trinity-dbus-tqt-1
|
||||
|
||||
printf "\n\e[0;34mtrinity-kdelibs\e[0m\n\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild kdelibs
|
||||
fi
|
||||
build_pkg trinity-kdelibs
|
||||
|
||||
printf "\n\e[0;34mtrinity-kdebase\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild kdebase
|
||||
fi
|
||||
build_pkg trinity-kdebase
|
||||
|
||||
# gather binaries and clean
|
||||
cd $curdir
|
||||
mkdir -p ${binariesdir}/trinity-base/
|
||||
mv aur/*/*.tar.xz ${binariesdir}/trinity-base/
|
||||
if [ ! $dontclean ]; then
|
||||
rm -r trinity-base
|
||||
fi
|
||||
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
printf "\e[0;34mFinished building base components\e[0m\n"
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
fi
|
||||
|
||||
if [ $buildextras ]; then
|
||||
|
||||
cd trinity-extras
|
||||
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
printf "\n\e[0;34mBuilding trinity-extras\e[0m\n"
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
|
||||
printf "\n\e[0;34mtrinity-amarok\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild amarok
|
||||
fi
|
||||
build_pkg trinity-amarok
|
||||
|
||||
printf "\n\e[0;34mtrinity-gtk-qt-engine\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild gtk-qt-engine
|
||||
fi
|
||||
build_pkg trinity-gtk-qt-engine
|
||||
|
||||
printf "\n\e[0;34mtrinity-kdegraphics\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild kdegraphics
|
||||
fi
|
||||
build_pkg trinity-kdegraphics
|
||||
|
||||
printf "\n\e[0;34mtrinity-kdevelop\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild kdevelop
|
||||
fi
|
||||
build_pkg trinity-kdevelop
|
||||
|
||||
printf "\n\e[0;34mtrinity-konversation\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild konversation
|
||||
fi
|
||||
build_pkg trinity-konversation
|
||||
|
||||
printf "\n\e[0;34mtrinity-kpowersave\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild kpowersave
|
||||
fi
|
||||
build_pkg trinity-kpowersave
|
||||
|
||||
printf "\n\e[0;34mtrinity-amarok\e[0m\n"
|
||||
printf "\e[0;34m%b----------------------------------------\e[0m\n"
|
||||
if [ $patch ]; then
|
||||
patch_pkgbuild qtcurve
|
||||
fi
|
||||
build_pkg trinity-qtcurve
|
||||
|
||||
# gather binaries and clean
|
||||
cd $curdir
|
||||
mkdir -p ${binariesdir}/trinity-extras/
|
||||
mv aur/*/*.tar.xz ${binariesdir}/trinity-extras/
|
||||
if [ ! $dontclean ]; then
|
||||
rm -r trinity-extras
|
||||
fi
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
printf "\e[0;34mFinished building external dependencies\e[0m\n"
|
||||
printf "\e[0;34m=========================================\e[0m\n"
|
||||
fi
|
||||
|
Loading…
Reference in new issue