Warning, file /education/gcompris-data/words/generate_lang_rcc.sh was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 #!/bin/bash
0002 #
0003 # generate_lang_rcc.sh
0004 #
0005 # Copyright (C) 2014 Holger Kaelberer
0006 #
0007 # Generates Qt binary resource files (.rcc) for lang images
0008 #
0009 # Usage:
0010 # cd git/src/lang-activity/resources/lang
0011 # generate_lang_rcc.sh
0012 #
0013 # Results will be written to $PWD/.rcc/ which is supposed be synced to the
0014 # upstream location.
0015 #
0016 
0017 QRC_DIR="."
0018 RCC_DIR=".rcc"
0019 #RCC_DEFAULT=`which rcc 2>/dev/null`   # default, better take /usr/bin/rcc?
0020 RCC_DEFAULT=$Qt5_DIR/bin/rcc
0021 #RCC_DEFAULT=/usr/lib64/qt5/bin/rcc    # on my system the previous line doesn't work, need to use this one instead
0022 CONTENTS_FILE=Contents
0023 MD5SUM=/usr/bin/md5sum
0024 
0025 
0026 DATA_DIR=$1
0027 if [ ! -d "${DATA_DIR}" ]
0028 then
0029     echo "Usage: $0 directory"
0030     exit 1
0031 fi
0032 
0033 [ -z "${RCC}" ] && RCC=${RCC_DEFAULT}
0034 
0035 [ -z "${RCC}" ] && {
0036     echo "No rcc command in PATH, can't continue. Try to set specify RCC in environment:"
0037     echo "RCC=/path/to/qt/bin/rcc $0"
0038     exit 1
0039 }
0040 
0041 echo "Generating binary resource files in ${RCC_DIR}/ folder:"
0042 
0043 [ -d ${RCC_DIR} ] && rm -rf ${RCC_DIR}
0044 mkdir  ${RCC_DIR}
0045 
0046 QRC_FILE="${QRC_DIR}/${DATA_DIR}.qrc"
0047 RCC_FILE="${RCC_DIR}/${DATA_DIR}.rcc"
0048 
0049 # Generate QRC:
0050 echo -n "  Generating ${QRC_FILE} ... "
0051 # check for junk in the voices dirs:
0052 if [ ! -z "`git status --porcelain ${DATA_DIR} | grep '^??'`" ]; then
0053     echo "Found untracked files in your git checkout below ${LANG}. Better "git clean -f" it first!";
0054     exit 1;
0055 fi
0056 [ -e ${QRC_FILE} ] && rm ${QRC_FILE}
0057 
0058 #header:
0059 (cat <<EOHEADER
0060 <!DOCTYPE RCC><RCC version="1.0">
0061 <qresource prefix="/gcompris/data/">
0062 EOHEADER
0063 ) >> $QRC_FILE
0064 for i in `find ${DATA_DIR} -not -type d`; do
0065     echo "    <file>$i</file>" >> $QRC_FILE
0066 done
0067 #footer:
0068 (cat <<EOFOOTER
0069 </qresource>
0070 </RCC>
0071 EOFOOTER
0072 ) >> $QRC_FILE
0073 
0074 # Generate RCC
0075 echo -n "${RCC_FILE} ... "
0076 ${RCC} -binary ${QRC_FILE} -o ${RCC_FILE}
0077 
0078 echo "md5sum ... "
0079 cd ${RCC_DIR}
0080 ${MD5SUM} `basename ${RCC_FILE}` >>${CONTENTS_FILE}
0081 cd - &>/dev/null
0082 
0083 #cleanup:
0084 #rm *.qrc
0085 
0086 echo "Finished! Now do something like:"
0087 echo "rsync -avx ${RCC_DIR}/  www.gcompris.net:/var/www/data/${DATA_DIR}"
0088 #EOF