1#!/bin/sh
2export DEBIAN_FRONTEND=noninteractive
3GITROOT=https://github.com/tcobbs/ldview
4
5download (){
6	if [ `pwd` = /root/lego ] ; then
7		if [ ! -d ldraw ] ; then
8			wget -nv http://www.ldraw.org/library/updates/complete.zip
9			unzip -q complete.zip
10			rm -f complete.zip
11		fi
12		test -d ldview || git clone $GITROOT
13		LDVIEW=/root/lego/ldview
14	elif [ `pwd` = /home/travis/build/tcobbs/ldview ] ; then
15		LDVIEW=`pwd`
16	elif [ `pwd` = /home/appveyor/projects/ldview ] ; then
17		LDVIEW=`pwd`
18	elif [ `pwd` = /root/project ] ; then
19		LDVIEW=`pwd`
20	elif [ -f QT/LDView.pro ] ; then
21		LDVIEW=`pwd`
22	else
23		test -d ldview || git clone $GITROOT
24		LDVIEW=ldview
25	fi
26	cp -f $LDVIEW/QT/LDView.spec $LDVIEW/QT/LDView-qt5.spec
27	cp -f $LDVIEW/QT/LDView.spec $LDVIEW/QT/LDView-qt6.spec
28	sed 's/define qt5 0/define qt5 1/' -i $LDVIEW/QT/LDView-qt5.spec
29	sed 's/define qt6 0/define qt6 1/' -i $LDVIEW/QT/LDView-qt6.spec
30}
31
32if [ -f /etc/centos-release -o -f /etc/oracle-release ] ; then
33	yum install -y git rpm-build rpmlint which
34	download
35	if which yum-builddep >/dev/null 2>/dev/null ; then
36		yum-builddep -y $LDVIEW/QT/LDView.spec
37		yum-builddep -y $LDVIEW/QT/LDView-qt5.spec
38	else
39		yum install -y `rpmbuild --nobuild $LDVIEW/QT/LDView.spec 2>&1  | grep 'needed by'| awk ' {print $1}'`
40		yum install -y `rpmbuild --nobuild $LDVIEW/QT/LDView-qt5.spec 2>&1  | grep 'needed by'| awk ' {print $1}'` || true
41	fi
42elif [ -f /etc/fedora-release  -o -f /etc/mageia-release ] ; then
43	dnf install -y git rpmlint ccache dnf-plugins-core rpm-build
44	download
45	dnf builddep -y $LDVIEW/QT/LDView.spec
46	dnf builddep -y $LDVIEW/QT/LDView-qt5.spec
47	dnf builddep -y $LDVIEW/QT/LDView-qt6.spec || true
48elif [ -f /etc/debian_version ] ; then
49	apt-get update
50	apt-get install -y git lintian build-essential debhelper \
51			   ccache lsb-release
52	download
53	for pkg in `grep Build-Depends $LDVIEW/QT/debian/control | cut -d: -f2| sed 's/(.*)//g' | tr -d ,` libtinyxml-dev libgl2ps-dev ; do
54		apt-get --no-install-recommends install -y $pkg
55	done
56elif [ -f /etc/mandriva-release ] ; then
57	urpmi --auto git rpm-build
58	download
59	urpmi --auto --buildrequires $LDVIEW/QT/LDView.spec
60elif [ -f /etc/arch-release ] ; then
61	pacman -Suy --noconfirm
62	pacman -Sy --noconfirm git sudo binutils fakeroot tinyxml awk file inetutils
63	download
64	pacman -S --noconfirm `grep depends $LDVIEW/QT/PKGBUILD | cut -f2 -d=|tr -d \'\(\)`
65	pacman -S --noconfirm `grep depends $LDVIEW/QT/PKGBUILD | cut -f2 -d=|tr -d \'\(\)|sed 's/qt5/qt6/g'` qt6-5compat
66elif grep -q -e openSUSE /etc/os-release ; then
67	zypper --non-interactive install git rpm-build rpmlint hostname
68	download
69	zypper --non-interactive install `rpmbuild --nobuild $LDVIEW/QT/LDView.spec 2>&1  | grep 'needed by'| awk ' {print $1}'`
70	zypper --non-interactive install --force-resolution `rpmbuild --nobuild $LDVIEW/QT/LDView-qt5.spec 2>&1  | grep 'needed by'| awk ' {print $1}'`
71elif [ -f /etc/alpine-release ] ; then
72	apk add git g++ alpine-sdk sudo
73	download
74	apk add `grep depends $LDVIEW/QT/APKBUILD |cut -f2 -d=|tr -d \"\(\)`
75fi
76git config --global pull.rebase false
77