aboutsummaryrefslogtreecommitdiff
path: root/build_repo.sh
blob: 3d4d5267431c569e468797d53fc2b59c7295c33b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#!/bin/sh
set -e
#set -x

cd `dirname $0`

BOARD=omnia
if [ "$1" = "omnia" ] || [ "$1" = "turris" ] || [ "$1" = "all" ]; then
	BOARD=$1
	shift
fi

# remove previous build
rm -rf .omnia-sdk
rm -rf .turris-sdk

pull_sdk() {
	# Update only once a day
	if [ ! -e .$1-sdk-clean ] || [ $(expr $(date -u +%s) - $(stat -c %Z .$1-sdk-clean)) -gt 86400 ]; then
		rm -rf .$1-sdk-clean
		echo -e "\e[1;34mGetting current SDK for $1\e[0m"
		curl "$2" | tar -xjf -
		mv OpenWrt-SDK-* .$1-sdk-clean
	fi
	# Copy clean sdk
	rm -rf .$1-sdk
	cp -a .$1-sdk-clean .$1-sdk
}

if [ "$BOARD" = "omnia" ] || [ "$BOARD" = "all" ]; then
	pull_sdk omnia "https://repo.turris.cz/omnia/OpenWrt-SDK-mvebu_gcc-4.8-linaro_musl-1.1.15_eabi.Linux-x86_64.tar.bz2"
fi
if [ "$BOARD" = "turris" ] || [ "$BOARD" = "all" ]; then
	pull_sdk turris "https://repo.turris.cz/turris/OpenWrt-SDK-mpc85xx-p2020-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64.tar.bz2"
fi


echo -e "\e[1;34mCopy packages\e[0m"
for d in *; do
	[ -f $d/Makefile ] || continue
	echo -e "\e[1;35mpackage: $d\e[0m"
	[ -d .omnia-sdk ] && cp -r $d .omnia-sdk/package/
	[ -d .turris-sdk ] && cp -r $d .turris-sdk/package/
done

[ -d .omnia-sdk ] && ./utils/opkg-trans-master.sh .omnia-sdk/package/
[ -d .turris-sdk ] && ./utils/opkg-trans-master.sh .turris-sdk/package/

if [ -f CONFIG ]; then
	echo -e "\e[1;34mApply CONFIG\e[0m"
	([ "$BOARD" = "omnia" ] || [ "$BOARD" = "all" ]) && \
	   cat CONFIG >> .omnia-sdk/.config
	([ "$BOARD" = "turris" ] || [ "$BOARD" = "all" ]) && \
	   cat CONFIG >> .turris-sdk/.config
fi

if [ "$BOARD" = "omnia" ] || [ "$BOARD" = "all" ]; then
	echo -e "\e[1;34mBuilding omnia\e[0m"
	(cd .omnia-sdk; make $@)
fi
if [ "$BOARD" = "turris" ] || [ "$BOARD" = "all" ]; then
	echo -e "\e[1;34mBuilding turris\e[0m"
	(cd .turris-sdk; make $@)
fi

deploy() {
	echo -e "\e[1;34mSign and deploy $1\e[0m"
	SEC=../myrepo-cert/files/key.sec
	pushd .$1-sdk
	staging_dir/host/bin/usign -S -s $SEC -m bin/$2/packages/base/Packages
	scp bin/$2/packages/base/* freebsd@cynerd.cz:/usr/local/www/data/myrepo/$1/
	popd
	scp $1.lua freebsd@cynerd.cz:/usr/local/www/data/myrepo/$1.lua
}

if [ "$BOARD" = "omnia" ] || [ "$BOARD" = "all" ]; then
	deploy omnia mvebu-musl
fi
if [ "$BOARD" = "turris" ] || [ "$BOARD" = "all" ]; then
	deploy turris mpc85xx
fi