#!/bin/sh
#copyleft jls_legalize (unsenepopiu at tin dot it)
#create lmms tce and tcz extensions from sources
#and pack them into a single .bfe file
#togheter with info, md5 and dep files.
#Info and icon files shall be in the dir where this script is,
#togheter with the source tar.bz2 file
#requires make, gcc-binutils, base devs, qt-3.3.8b-xorg-devs
#SDL-dev, Xorg-7.4-dev, flac-devs, lame-devs, libmad-devs, libsamplerate-devs
#libsndfile-devs, ogg-vorbis-devs, wine-gl-dev  for compiling 
#and advcomp for packaging
#tested on tinycore 2.0RC2.1
THE_APP=lmms
VERSION=0.3.2
LIBRARY=""
MODULE=""
echo "unpack the sources"
tar xjf ${THE_APP}-${VERSION}.tar.bz2
cd ${THE_APP}-${VERSION}
[ ! -d extension ] && mkdir -p extension/build
echo "compile"
CFLAGS="-march=i486 -mtune=i686 -Os -pipe"
export CFLAGS
CXXFLAGS="-march=i486 -mtune=i686 -Os -pipe -fno-exceptions"
export CXXFLAGS
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig
export PKG_CONFIG_PATH
#QTDIR=/usr/local/share/qt-4.2.2
#export QTDIR
#QMAKESPEC=$QTDIR/mkspecs/linux-g++
#export QMAKESPEC
#PATH=$QTDIR/bin:$PATH
#export PATH
#PKG_CONFIG_PATH=$QTDIR/lib/pkgconfig:$PKG_CONFIG_PATH
./configure --with-qtdir=/usr/local
make
make DESTDIR=$PWD/extension/build install
echo "icons & menu"
cd extension/build
mkdir usr/local/tce.icons
cp ../../../${THE_APP}.png usr/local/tce.icons/
cat <<EOF > usr/local/tce.icons/${THE_APP}
i: /usr/local/tce.icons/${THE_APP}.png
t: ${THE_APP}
c: ${THE_APP}
EOF
mkdir usr/local/tce.menu
cat <<EOF > usr/local/tce.menu/${THE_APP}
<JWM>
<Program label="${THE_APP}">${THE_APP}</Program>
</JWM>
EOF
echo "tce"
find usr -not -type d > ../${THE_APP}.tce${LIBRARY}${MODULE}.list
tar czvf ../${THE_APP}.tce${LIBRARY}${MODULE} --numeric-owner -T ../${THE_APP}.tce${LIBRARY}${MODULE}.list
cd ..
advdef -z4 ${THE_APP}.tce${LIBRARY}${MODULE}
md5sum ${THE_APP}.tce${LIBRARY}${MODULE}   >  ${THE_APP}.tce${LIBRARY}${MODULE}.md5.txt
echo "dep"
cat <<EOF > ${THE_APP}.tce${LIBRARY}${MODULE}.dep
OSS.tcem
SDL.tcem
Xlibs_support.tcel
expat2.tcel
fontconfig.tcel
libasound.tcel
qt-3.3.8b-xorg.tcel
flac.tcel
lame.tcel
libmad.tcel
libsamplerate.tcel
libsndfile.tcel
ogg-vorbis.tcel
EOF
echo "tcz"
cp ${THE_APP}.tce${LIBRARY}${MODULE}.list ${THE_APP}.tcz${LIBRARY}${MODULE}.list
mkfs.cramfs build ${THE_APP}.tcz${LIBRARY}${MODULE}
md5sum ${THE_APP}.tcz${LIBRARY}${MODULE}   >  ${THE_APP}.tcz${LIBRARY}${MODULE}.md5.txt
echo "dep"
cat <<EOF > ${THE_APP}.tcz${LIBRARY}${MODULE}.dep
OSS.tczm
SDL.tczm
Xlibs_support.tczl
expat2.tczl
fontconfig.tczl
libasound.tczl
qt-3.3.8b-xorg.tczl
flac.tczl
lame.tczl
libmad.tczl
libsamplerate.tczl
libsndfile.tczl
ogg-vorbis.tczl
EOF
rm -rf build
echo "package for tce submit"
cd ..
mv -f extension ../
cd ..
cp ${THE_APP}.tce${LIBRARY}${MODULE}.info extension/
cp ${THE_APP}.tcz${LIBRARY}${MODULE}.info extension/
find extension -not -type d > ${THE_APP}.list
echo ${THE_APP}.tcbuild >> ${THE_APP}.list
echo ${THE_APP}-${VERSION}.tar.bz2 >> ${THE_APP}.list
tar cf ${THE_APP}.tar -T ${THE_APP}.list
rm -rf ${THE_APP}-${VERSION}
rm -rf extension
bcrypt ${THE_APP}.tar
