#!/bin/sh

echo Creating output directory tree

mkdir -p output/share/codeblocks/lexers
mkdir -p output/share/codeblocks/images/settings
mkdir -p output/share/codeblocks/images/codecompletion
mkdir -p output/share/codeblocks/images/16x16
mkdir -p output/share/codeblocks/plugins
mkdir -p output/share/codeblocks/templates
mkdir -p output/share/codeblocks/templates/wizard
mkdir -p output/share/codeblocks/scripts
mkdir -p devel/share/codeblocks/lexers
mkdir -p devel/share/codeblocks/images/settings
mkdir -p devel/share/codeblocks/images/codecompletion
mkdir -p devel/share/codeblocks/images/16x16
mkdir -p devel/share/codeblocks/plugins
mkdir -p devel/share/codeblocks/templates
mkdir -p devel/share/codeblocks/templates/wizard
mkdir -p devel/share/codeblocks/scripts

ZIPCMD="zip"
RESDIR="devel/share/codeblocks"
echo Compressing core UI resources
${ZIPCMD} -j9 ${RESDIR}/resources.zip src/resources/*.xrc > /dev/null
${ZIPCMD} -j9 ${RESDIR}/manager_resources.zip sdk/resources/*.xrc sdk/resources/images/*.png > /dev/null
${ZIPCMD} -j9 ${RESDIR}/start_here.zip src/resources/start_here/* > /dev/null
echo Compressing plugins UI resources
${ZIPCMD} -j9 ${RESDIR}/astyle.zip plugins/astyle/resources/*.xrc > /dev/null
${ZIPCMD} -j9 ${RESDIR}/class_wizard.zip plugins/classwizard/resources/*.xrc > /dev/null
${ZIPCMD} -j9 ${RESDIR}/code_completion.zip plugins/codecompletion/resources/*.xrc > /dev/null
${ZIPCMD} -j9 ${RESDIR}/compiler_gcc.zip plugins/compilergcc/resources/*.xrc > /dev/null
${ZIPCMD} -j9 ${RESDIR}/defaultmimehandler.zip plugins/defaultmimehandler/resources/*.xrc > /dev/null
${ZIPCMD} -j9 ${RESDIR}/debugger_gdb.zip plugins/debuggergdb/resources/*.xrc > /dev/null
${ZIPCMD} -j9 ${RESDIR}/todo.zip plugins/todo/resources/*.xrc > /dev/null
${ZIPCMD} -j9 ${RESDIR}/autosave.zip plugins/autosave/*.xrc > /dev/null
echo Packing core UI bitmaps
cd src/resources
${ZIPCMD} -0 ../../${RESDIR}/resources.zip images/*.png images/16x16/*.png > /dev/null
#cd ../../sdk/resources
#${ZIPCMD} -0 ../../${RESDIR}/manager_resources.zip images/*.png > /dev/null
echo Packing plugins UI bitmaps
cd ../../plugins/compilergcc/resources
${ZIPCMD} -0 ../../../${RESDIR}/compiler_gcc.zip images/*.png images/16x16/*.png > /dev/null
cd ../../../plugins/debuggergdb/resources
${ZIPCMD} -0 ../../../${RESDIR}/debugger_gdb.zip images/*.png images/16x16/*.png > /dev/null
cd ../../..

echo Copying files
cp -f ${RESDIR}/*.zip output/share/codeblocks > /dev/null
cp -f sdk/resources/lexers/lexer_* ${RESDIR}/lexers > /dev/null
cp -f sdk/resources/lexers/lexer_* output/share/codeblocks/lexers > /dev/null
cp -f src/resources/images/*.png ${RESDIR}/images > /dev/null
cp -f src/resources/images/settings/*.png ${RESDIR}/images/settings > /dev/null
cp -f src/resources/images/*.png output/share/codeblocks/images > /dev/null
cp -f src/resources/images/settings/*.png output/share/codeblocks/images/settings > /dev/null
cp -f src/resources/images/16x16/*.png ${RESDIR}/images/16x16 > /dev/null
cp -f src/resources/images/16x16/*.png output/share/codeblocks/images/16x16 > /dev/null
cp -f plugins/codecompletion/resources/images/*.png ${RESDIR}/images/codecompletion > /dev/null
cp -f plugins/codecompletion/resources/images/*.png output/share/codeblocks/images/codecompletion > /dev/null
cp -rf plugins/scriptedwizard/resources/* ${RESDIR}/templates/wizard > /dev/null
cp -rf plugins/scriptedwizard/resources/* output/share/codeblocks/templates/wizard > /dev/null
cp -f templates/common/* output/share/codeblocks/templates > /dev/null
cp -f templates/unix/* output/share/codeblocks/templates > /dev/null
cp -f templates/common/* ${RESDIR}/templates > /dev/null
cp -f templates/unix/* ${RESDIR}/templates > /dev/null
cp -f scripts/*.script ${RESDIR}/scripts > /dev/null
cp -f scripts/*.script output/share/codeblocks/scripts > /dev/null
cp -f tips.txt devel/share/codeblocks > /dev/null
cp -f tips.txt output/share/codeblocks > /dev/null
cp -f tools/ConsoleRunner/cb_console_runner output > /dev/null
cp -f tools/ConsoleRunner/cb_console_runner devel > /dev/null
cp -f devel/codeblocks output > /dev/null
cp -f devel/*.so output > /dev/null
cp -f ${RESDIR}/plugins/*.so output/share/codeblocks/plugins > /dev/null
echo Stripping debug info from output tree
#strip output/codeblocks
#strip output/*.so
#strip output/share/codeblocks/plugins/*.so

echo Creating launch-scripts
echo -e "#!/bin/sh\n" > output/run.sh
echo -n "APP_DIR=" >> output/run.sh
echo `pwd`/output >> output/run.sh
echo "export LD_LIBRARY_PATH=\$APP_DIR:\$LD_LIBRARY_PATH" >> output/run.sh
echo "\$APP_DIR/codeblocks \$@" >> output/run.sh
chmod +x output/run.sh
echo -e "#!/bin/sh\n" > devel/run.sh
echo -n "APP_DIR=" >> devel/run.sh
echo `pwd`/devel >> devel/run.sh
echo "export LD_LIBRARY_PATH=\$APP_DIR:\$LD_LIBRARY_PATH" >> devel/run.sh
echo "\$APP_DIR/codeblocks \$@" >> devel/run.sh
chmod +x devel/run.sh

ZIPCMD=
RESDIR=
