#!/bin/bash

#This is based on https://github.com/Alexpux/MSYS2-packages/blob/affa708dc7ff87f8170746c54c727024a3beaa06/zlib/PKGBUILD

set -x
set -u
set -e

PKGNAME=zlib-1.2.8_daa1

BUILDSCRIPT=$(readlink -f $0)
BASEDIR=$(dirname $BUILDSCRIPT)
BUILDDIR=$BASEDIR/$PKGNAME
TARGETDIR=$BUILDDIR/target/$PKGNAME

DOWNLOADS="
http://zlib.net/zlib-1.2.8.tar.gz|a4d316c404ff54ca545ea71a27af7dbc29817088|base

"

SOURCES_TO_DIST=""

for DL in $DOWNLOADS; do
        OLD_IFS=$IFS
        IFS='|'
        SPLAT=($DL)
        FILENAME=$(basename "${SPLAT[0]}")
        if [ ! -e $BASEDIR/$FILENAME ]; then
                wget ${SPLAT[0]}
        fi
        if [ "x$(sha1sum $BASEDIR/$FILENAME | sed -e 's/ .*$//')" != "x${SPLAT[1]}" ]; then
                echo "Checksum for $FILENAME doesn't match."
                exit 1
        fi
        SOURCES_TO_DIST="$SOURCES_TO_DIST $BASEDIR/$FILENAME"
        IFS=$OLD_IFS
done

rm -rf $BUILDDIR
mkdir $BUILDDIR

(

set -x
set -u
set -e

cd $BUILDDIR
tar -xf $BASEDIR/zlib-1.2.8.tar.gz
cd zlib-1.2.8

make -f win32/Makefile.gcc
make test testdll -f win32/Makefile.gcc

mkdir -p $TARGETDIR
make DESTDIR=$TARGETDIR install -f win32/Makefile.gcc SHARED_MODE=1 BINARY_PATH=/bin INCLUDE_PATH=/include LIBRARY_PATH=/lib prefix=$TARGETDIR

#We don\'t need the static lib
rm $TARGETDIR/lib/libz.a

mkdir $TARGETDIR/src
cp $BUILDSCRIPT $SOURCES_TO_DIST $TARGETDIR/src

)

(cd $TARGETDIR/..; tar czf $BUILDDIR/$PKGNAME.tar.gz $PKGNAME)

#Build standalone binary package like the gtk+ packages
(cd $TARGETDIR &&
strip --strip-unneeded bin/zlib1.dll &&
zip $BUILDDIR/${PKGNAME}_win32.zip bin/zlib1.dll
)


#gpg -ab $BUILDDIR/$PKGNAME.tar.gz
#gpg --verify $BUILDDIR/$PKGNAME.tar.gz.asc

