#!/bin/sh
#
# $Id: extract_gtk_win32,v 1.4 2008/01/30 23:57:59 danmc Exp $
#
# This script is probably not useful to most people.  It is used
# to extract a set of downloaded files for gtk for windows and 
# also extract a bunch of license files.
#
# It is used when initially setting up a cygwin environment for 
# building gerbv or pcb with a non-cygwin version for windows
# as the goal.

# directory where all the files have been downloaded
gtk_win32_downloads=${HOME}/gtk_win32_downloads

# directory to extract everything (including headers) to.
# This must match ./build_pcb.
gtk_win32=${HOME}/gtk_win32

# directory to extract runtime files (excluding headers) to.
# This must match ./build_pcb.
gtk_win32_runtime=${HOME}/gtk_win32_runtime

# clean out old directories
test ! -d ${gtk_win32} || rm -fr ${gtk_win32}
test ! -d ${gtk_win32_runtime} || rm -fr ${gtk_win32_runtime}

# make the new ones
mkdir -p ${gtk_win32}
mkdir -p ${gtk_win32_runtime}

# extract the runtime files
cd ${gtk_win32_runtime}
for f in ${gtk_win32_downloads}/*.zip ; do
	fb=`basename "${f}"`
	case "$fb" in
		gdwin32)
			echo "Skip gd"
			;;
		*dev*)
			echo "Skip developer file `basename ${fb}`"
			;;
		*src*)
			echo "Skip source file `basename ${fb}`"
			;;
		*)
			echo "Extract ${fb}"
			unzip -n -q "$f"
			;;
	esac
done

# extract the runtime+developer files
cd ${gtk_win32}
for f in ${gtk_win32_downloads}/*.zip ; do
	fb=`basename "${f}"`
	case "$fb" in
		gdwin32)
			echo "Skip gd"
			;;
		*src*)
			echo "Skip source file `basename ${fb}`"
			;;
		*)
			echo "Extract ${fb}"
			unzip -n -q "$f"
			;;
	esac
done

chmod 755 ${gtk_win32}/bin/*
chmod 755 ${gtk_win32_runtime}/bin/*


cd ${HOME}
unzip ${gtk_win32_downloads}/gdwin32.zip
mkdir gdwin32_runtime
cp gdwin32/*.dll gdwin32_runtime
cp gdwin32/gd-license.txt gdwin32_runtime
chmod 755 gdwin32/*
chmod 755 gdwin32_runtime/*

# extract licenses

cd
tmpd=/tmp/ext.$$
mkdir ${tmpd}

cd ${tmpd}


cat > ${gtk_win32_runtime}/LICENSE-lgpl << EOF
The following packages are covered by the 
GNU Library General Public License (LGPL)

atk
cairo
glib
gtk+
libiconv
pango

----------------------------------------

EOF

cat > ${gtk_win32_runtime}/LICENSE-gpl << EOF
The following packages are covered by the GNU General Public License (GPL).

freetype
gettext
libiconv
pkg-config

----------------------------------------

EOF


# LGPL
#
# atk-1.20.0.tar.bz2
# atk-1.20.0.zip
# atk-dev-1.20.0.zip

bzcat ${gtk_win32_downloads}/atk-*.tar.bz2 | tar -xf -
cat atk-*/COPYING >> ${gtk_win32_runtime}/LICENSE-lgpl
rm -fr atk-*

# dual LGPL and MPL (Mozilla public license)
#
#cairo-1.4.10.tar.gz
#cairo-1.4.10.zip
#cairo-dev-1.4.10.zip

# sort of BSD with advertising like
#expat-2.0.0.zip
echo "expat is covered by the following copyright and license" > ${gtk_win32_runtime}/LICENSE-expat
cat ${gtk_win32_downloads}/COPYING-expat >> ${gtk_win32_runtime}/LICENSE-expat


#fontconfig-2.4.2-tml-20071015.diff
#fontconfig-2.4.2-tml-20071015.zip
#fontconfig-2.4.2.tar.gz
#fontconfig-dev-2.4.2-tml-20071015.zip
tar -zxvf ${gtk_win32_downloads}/fontconfig-*.tar.gz 
echo "fontconfig is covered by the following license" > ${gtk_win32_runtime}/LICENSE-fontconfig
cat fontconfig*/COPYING >> ${gtk_win32_runtime}/LICENSE-fontconfig
rm -fr fontconfig-*

#
# Dual, "you choose" license.  We pick GPL
#freetype-2.3.4.tar.bz2
#freetype-2.3.4.zip
#freetype-dev-2.3.4.zip
#bzcat  ${gtk_win32_downloads}/freetype-2.3.4.tar.bz2  | tar -xvf - mv freetype-*/*/LICENSE.TXT ${gtk_win32_runtime}/LICENSE-freetype
#rm -fr freetype-*


# GPL
#
#gettext-0.17.tar.gz
#gettext-runtime-0.17.zip
#gettext-runtime-dev-0.17.zip
#gettext-tools-0.17.zip
tar -zxvf ${gtk_win32_downloads}/gettext-*.tar.gz
cat gettext-*/COPYING >> ${gtk_win32_runtime}/LICENSE-gpl
rm -fr gettext-*

# LGPL
#glib-2.14.4.tar.bz2
#glib-2.14.4.zip
#glib-dev-2.14.4.zip

# LGPL
#
#gtk+-2.12.3.tar.bz2
#gtk+-2.12.3.zip
#gtk+-dev-2.12.3.zip


# jpeg license
#
#jpeg-6b-4-bin.zip
#jpeg-6b-4-dep.zip
#jpeg-6b-4-lib.zip
#jpeg-6b-4-src.zip

unzip ${gtk_win32_downloads}/jpeg-*-src.zip
echo "libjpeg is covered by the following license:" > ${gtk_win32_runtime}/LICENSE-jpeg
cat src/jpeg/6b/jpeg-6b-src/README >> ${gtk_win32_runtime}/LICENSE-jpeg
rm -fr src

# LGPL
#
#libiconv-1.9.1.bin.woe32.zip
#libiconv-1.9.1.tar.gz


#libpng-1.2.8-bin.zip
#libpng-1.2.8-lib.zip
unzip ${gtk_win32_downloads}/libpng-*-lib.zip
echo "libpng is covered by the following copyright and license" > ${gtk_win32_runtime}/LICENSE-png
awk '/COPYRIGHT/,/^[ \t]*$/ {print}' include/png.h >> ${gtk_win32_runtime}/LICENSE-png
rm -fr include lib

# LGPL
#
#pango-1.18.3.tar.bz2
#pango-1.18.3.zip
#pango-dev-1.18.3.zip


# GPL
#
#pkg-config-0.20.tar.gz
#pkg-config-0.20.zip

# BSD-like with advertising clause
#
#tiff-3.8.2-1-bin.zip
#tiff-3.8.2-1-dep.zip
#tiff-3.8.2-1-lib.zip
#tiff-3.8.2-1-src.zip
unzip ${gtk_win32_downloads}/tiff-*-src.zip
echo "libtiff is covered by the following license:" > ${gtk_win32_runtime}/LICENSE-tiff
cat src/tiff/3.8.2/tiff-3.8.2-src/COPYRIGHT >> ${gtk_win32_runtime}/LICENSE-tiff
rm -fr src

#xpm-nox-4.0.3-20020617.zip
#xpm-nox-dev-4.0.3-20020112.zip
tar -zxvf ${gtk_win32_downloads}/xpm-*.tar.gz
echo "The xpm library is covered by the following license and copyright:" > ${gtk_win32_runtime}/LICENSE-xpm
cat xpm-*/COPYRIGHT >> ${gtk_win32_runtime}/LICENSE-xpm
rm -fr xpm-*

#zlib123-dll.zip
echo "zlib is covered by the following license and copyright" > ${gtk_win32_runtime}/LICENSE-zlib
cat ${gtk_win32_downloads}/zlib_license.txt >> ${gtk_win32_runtime}/LICENSE-zlib


