Blame win/function.sh

Ivan Mahonin 87fe10
#!/bin/bash
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
function print_section() {
Ivan Mahonin 87fe10
	echo "-----------------------"
Ivan Mahonin 87fe10
	echo "   $1"
Ivan Mahonin 87fe10
	echo "-----------------------"
Ivan Mahonin 87fe10
}
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
function echocall() {
Ivan Mahonin 87fe10
	echo "$@"
Ivan Mahonin 87fe10
	"$@"
Ivan Mahonin 87fe10
}
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
function unpacklib() {
Ivan Mahonin 87fe10
	local lib=$1
Ivan Mahonin 87fe10
	mkdir -p $lib
Ivan Mahonin 87fe10
	cd $lib
Ivan Mahonin 87fe10
	echocall $AR -x "$prefix/lib/lib$lib.a"
Ivan Mahonin 87fe10
	cd ..
Ivan Mahonin 87fe10
}
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
function download() {
Ivan Mahonin 87fe10
	mkdir -p download
Ivan Mahonin 87fe10
	cd download
Ivan Mahonin 87fe10
	for package in $packages; do
Ivan Mahonin 87fe10
		if [ ! -f "$package.done" ]; then
Ivan Mahonin 87fe10
			print_section "download $package"
Ivan Mahonin 87fe10
			local vu=url_$package
Ivan Mahonin 87fe10
			local vt=tar_$package
Ivan Mahonin 87fe10
			local vs=sha_$package
Ivan Mahonin 87fe10
			wget -c "${!vu}"
Ivan Mahonin 87fe10
			echo "${!vs} ${!vt}" | sha256sum -c
Ivan Mahonin 87fe10
			touch "$package.done"
Ivan Mahonin 87fe10
		fi
Ivan Mahonin 87fe10
	done
Ivan Mahonin 87fe10
	cd ..
Ivan Mahonin 87fe10
}
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
function unpack() {
Ivan Mahonin 87fe10
	mkdir -p unpack
Ivan Mahonin 87fe10
	cd unpack
Ivan Mahonin 87fe10
	for package in $packages; do
Ivan Mahonin 87fe10
		if [ ! -f "$package.done" ]; then
Ivan Mahonin 87fe10
			print_section "unpack $package"
Ivan Mahonin 87fe10
			local v=tar_$package
Ivan Mahonin 87fe10
			tar -xf ../download/${!v}
Ivan Mahonin 87fe10
			touch "$package.done"
Ivan Mahonin 87fe10
		fi
Ivan Mahonin 87fe10
	done
Ivan Mahonin 87fe10
	cd ..
Ivan Mahonin 87fe10
}
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
function build() {
Ivan Mahonin 87fe10
	bits=$1
Ivan Mahonin 87fe10
	host=$2
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
	toolchain $host
Ivan Mahonin 1b8859
	prefix="$ROOT/usr-$bits"
Ivan Mahonin 1b8859
	export CFLAGS="$ADDCFLAGS -I$prefix/include"
Ivan Mahonin 87fe10
	export CPPFLAGS="-I$prefix/include"
Ivan Mahonin 87fe10
	export LDFLAGS="-L$prefix/lib"
Ivan Mahonin 87fe10
	export PKG_CONFIG_PATH="$prefix/lib/pkgconfig"
Ivan Mahonin 87fe10
	export PKG_CONFIG_LIBDIR="$prefix/lib/pkgconfig"
Ivan Mahonin 87fe10
Ivan Mahonin 1b8859
	mkdir -p build-$bits
Ivan Mahonin 1b8859
	cd build-$bits
Ivan Mahonin 87fe10
	for package in $packages $newpackages; do
Ivan Mahonin 87fe10
		if [ ! -f "$package.done" ]; then
Ivan Mahonin 1b8859
			print_section "build-$bits $package"
Ivan Mahonin 87fe10
			local v=dir_$package
Ivan Mahonin 87fe10
			srcdir="$ROOT/unpack/${!v}"
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
			mkdir -p $package
Ivan Mahonin 87fe10
			cd $package
Ivan Mahonin 87fe10
			build_$package
Ivan Mahonin 87fe10
			cd ..
Ivan Mahonin 87fe10
Ivan Mahonin 87fe10
			touch "$package.done"
Ivan Mahonin 87fe10
		fi
Ivan Mahonin 87fe10
	done
Ivan Mahonin 87fe10
	cd ..
Ivan Mahonin 87fe10
}
Ivan Mahonin 87fe10