55 lines
1.8 KiB
Bash
Executable file
55 lines
1.8 KiB
Bash
Executable file
#!/bin/bash
|
|
## -- FILE ------------------------------------------------------------------
|
|
## name : bordercastle-obfuscate.sh
|
|
## project : BoarderZone: BorderCastle
|
|
## created : Leon Poyyayil - 2013-07-15
|
|
## language : Linux shell script
|
|
## environment: GNU bash
|
|
## copyright : (c) 1990-2025 by Leon Poyyayil (private), Switzerland
|
|
## license : Bouncy Castle License. see LICENSE
|
|
## --------------------------------------------------------------------------
|
|
|
|
SCRIPT_DIR="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
MAIN_DIR=$(readlink -f $( dirname "$SCRIPT_DIR") )
|
|
pushd $MAIN_DIR > /dev/null
|
|
. bordercastle.conf
|
|
|
|
LIBRARY_JARS=$JAVA_RUNTIME:$JAVAX_MAIL_JAR
|
|
|
|
pushd $DIST_DIR > /dev/null
|
|
|
|
PROGUARD_OPTS=
|
|
PROGUARD_OPTS="$PROGUARD_OPTS -verbose"
|
|
PROGUARD_OPTS="$PROGUARD_OPTS -include ../bordercastle/proguard-base.conf"
|
|
PROGUARD_OPTS="$PROGUARD_OPTS -libraryjars $LIBRARY_JARS"
|
|
PROGUARD_OPTS="$PROGUARD_OPTS "
|
|
|
|
obfuscate() {
|
|
SUFFIX=$1
|
|
LIB_JAR=$2
|
|
OPTS="$PROGUARD_OPTS"
|
|
OPTS="$OPTS -include ../bordercastle/proguard-${SUFFIX}.conf"
|
|
OPTS="$OPTS -injars bordercastle-${SUFFIX}.jar"
|
|
OPTS="$OPTS -outjars bordercastle-${SUFFIX}-obfuscated.jar"
|
|
if [[ -n "$LIB_JAR" ]]; then
|
|
OPTS="$OPTS -libraryjars $LIB_JAR"
|
|
fi
|
|
echo "- obfuscating $SUFFIX"
|
|
java -jar $PROGUARD_JAR $OPTS
|
|
PROGUARD_EXIT_CODE=$?
|
|
if [[ "$PROGUARD_EXIT_CODE" != "0" ]]; then
|
|
echo "proguard failed with exit code: $PROGUARD_EXIT_CODE"
|
|
exit $PROGUARD_EXIT_CODE
|
|
fi
|
|
echo "- packing $SUFFIX"
|
|
cp bordercastle-${SUFFIX}-obfuscated.jar bordercastle-${SUFFIX}-obfuscated-packed.jar
|
|
pack200 -G -r bordercastle-${SUFFIX}-obfuscated-packed.jar
|
|
}
|
|
|
|
obfuscate jce
|
|
obfuscate tls bordercastle-jce.jar
|
|
|
|
popd > /dev/null
|
|
|
|
popd > /dev/null
|
|
## -- EOF -------------------------------------------------------------------
|