imported scripts from intellicastle project and adapted to bordercastle
This commit is contained in:
parent
6178c58132
commit
dd07940e6a
29 changed files with 1744 additions and 2 deletions
46
bin/bordercastle-compile.sh
Executable file
46
bin/bordercastle-compile.sh
Executable file
|
|
@ -0,0 +1,46 @@
|
|||
#!/bin/bash
|
||||
## -- FILE ------------------------------------------------------------------
|
||||
## name : bordercastle-compile.sh
|
||||
## project : BoarderZone: BorderCastle
|
||||
## created : Leon Poyyayil - 2013-07-14
|
||||
## 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
|
||||
|
||||
MAVEN_CONFIG=$USER_HOME/.m2/settings.xml
|
||||
|
||||
MAVEN_REPO_SED_ARG=$(echo "$MAVEN_REPO" | sed "s,/,\\\\/,g")
|
||||
if [ ! -f "$MAVEN_CONFIG" ]; then
|
||||
sed "s,\${maven.repo},$MAVEN_REPO_SED_ARG,g" "${MAVEN_CONFIG}.tpl" > "$MAVEN_CONFIG"
|
||||
fi
|
||||
|
||||
if [ ! -d $DIST_DIR ]; then
|
||||
mkdir $DIST_DIR
|
||||
else
|
||||
rm -rf $DIST_DIR/*
|
||||
fi
|
||||
|
||||
mvn --settings $MAVEN_CONFIG clean install | tee $DIST_DIR/build-maven.log
|
||||
|
||||
BUILD_DIR_SED_ARG=$(pwd | sed "s,/,\\\\/,g")
|
||||
sed "s,$MAVEN_REPO_SED_ARG,\$REPO,g" $DIST_DIR/build-maven.log > $DIST_DIR/build-maven.log.tmp
|
||||
sed "s,$BUILD_DIR_SED_ARG,.,g" $DIST_DIR/build-maven.log.tmp > $DIST_DIR/build-maven.log
|
||||
rm -f $DIST_DIR/build-maven.log.tmp
|
||||
|
||||
TARGETS=$(ls)
|
||||
for TARGET in $TARGETS
|
||||
do
|
||||
if [[ -d $TARGET && -d $TARGET/target ]]; then
|
||||
cp $TARGET/target/*.jar $DIST_DIR
|
||||
fi
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
## -- EOF -------------------------------------------------------------------
|
||||
95
bin/bordercastle-javadoc.sh
Executable file
95
bin/bordercastle-javadoc.sh
Executable file
|
|
@ -0,0 +1,95 @@
|
|||
#!/bin/bash
|
||||
## -- FILE ------------------------------------------------------------------
|
||||
## name : bordercastle-javadoc.sh
|
||||
## project : BoarderZone: BorderCastle
|
||||
## created : Leon Poyyayil - 2020-05-01
|
||||
## 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
|
||||
|
||||
pushd $DIST_DIR > /dev/null
|
||||
|
||||
echo "- collecting source code"
|
||||
mkdir -p tmp/src
|
||||
cd tmp/src
|
||||
for TARGET in light mail pg pkix prov tls util
|
||||
do
|
||||
echo " - boca-$TARGET"
|
||||
cp -r ../../../boca-$TARGET/src/main/java/* .
|
||||
cp -r ../../../boca-$TARGET/src/main/javadoc/* .
|
||||
done
|
||||
|
||||
echo "- removing unused/unneeded classes"
|
||||
rm -rf org/bordercastle/cert/dane/fetcher
|
||||
rm -rf org/bordercastle/crypto/examples
|
||||
rm -rf org/bordercastle/mail/smime/examples
|
||||
rm -rf org/bordercastle/openpgp/examples
|
||||
rm org/bordercastle/jce/provider/X509LDAPCertStoreSpi.java
|
||||
rm org/bordercastle/jce/provider/X509StoreLDAP*.java
|
||||
rm -rf org/bordercastle/util/test
|
||||
rm org/bordercastle/x509/util/LDAPStoreHelper.java
|
||||
cd ..
|
||||
|
||||
# avoid javadoc warning: Multiple sources of package comments found for package "org.bordercastle.xxx"
|
||||
echo "- removing duplicate package info sources"
|
||||
for PKG_INFO in $(find src -name package-info.java)
|
||||
do
|
||||
PKG_DIR=$(dirname $PKG_INFO)
|
||||
PKG_HTML="$PKG_DIR/package.html"
|
||||
if [[ -f "$PKG_HTML" ]]; then
|
||||
rm "$PKG_HTML"
|
||||
fi
|
||||
done
|
||||
|
||||
echo "- preparing classpath"
|
||||
CLASSPATH=$JAVA_CLASSPATH
|
||||
|
||||
echo "- preparing output directory"
|
||||
mkdir api
|
||||
|
||||
echo "- preparing javadoc options"
|
||||
TITLE="BorderCastle $BC_VER"
|
||||
echo "-sourcepath src" > opts.txt
|
||||
echo "-d api" >> opts.txt
|
||||
echo "-classpath $CLASSPATH" >> opts.txt
|
||||
echo "-protected" >> opts.txt
|
||||
echo "-splitindex" >> opts.txt
|
||||
echo "-nosince" >> opts.txt
|
||||
echo "-notimestamp" >> opts.txt
|
||||
echo "-notree" >> opts.txt
|
||||
echo "-nohelp" >> opts.txt
|
||||
echo "-nodeprecatedlist" >> opts.txt
|
||||
echo "-encoding UTF8" >> opts.txt
|
||||
echo "-quiet" >> opts.txt
|
||||
echo "-Xdoclint:-missing" >> opts.txt
|
||||
echo "-Xdoclint:-html" >> opts.txt
|
||||
echo "-windowtitle '$TITLE'" >> opts.txt
|
||||
echo "-header '$TITLE'" >> opts.txt
|
||||
echo "-footer '$TITLE'" >> opts.txt
|
||||
|
||||
echo "- listing source code to document"
|
||||
find src -name *.java >> opts.txt
|
||||
|
||||
echo "- generating javadoc"
|
||||
javadoc @opts.txt
|
||||
|
||||
echo "- packing javadoc"
|
||||
cd api
|
||||
jar cfM ../../bordercastle-jce-javadoc.zip *
|
||||
cd ..
|
||||
|
||||
echo "- cleaning up"
|
||||
cd ..
|
||||
rm -rf tmp
|
||||
|
||||
popd > /dev/null
|
||||
|
||||
popd > /dev/null
|
||||
## -- EOF -------------------------------------------------------------------
|
||||
55
bin/bordercastle-obfuscate.sh
Executable file
55
bin/bordercastle-obfuscate.sh
Executable file
|
|
@ -0,0 +1,55 @@
|
|||
#!/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 -------------------------------------------------------------------
|
||||
36
bin/bordercastle-post-build-cleanup.sh
Executable file
36
bin/bordercastle-post-build-cleanup.sh
Executable file
|
|
@ -0,0 +1,36 @@
|
|||
#!/bin/bash
|
||||
## -- FILE ------------------------------------------------------------------
|
||||
## name : bordercastle-post-build-cleanup.sh
|
||||
## project : BoarderZone: BorderCastle
|
||||
## created : Leon Poyyayil - 2014-08-09
|
||||
## language : Linux shell script
|
||||
## environment: GNU bash
|
||||
## copyright : (c) 1990-2025 by Leon Poyyayil (private), Switzerland
|
||||
## license : Bouncy Castle License. see LICENSE
|
||||
## --------------------------------------------------------------------------
|
||||
|
||||
# this script simply removes all stuff that has been created during a full build
|
||||
|
||||
SCRIPT_DIR="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
MAIN_DIR=$(readlink -f $( dirname "$SCRIPT_DIR") )
|
||||
pushd $MAIN_DIR > /dev/null
|
||||
. bordercastle.conf
|
||||
|
||||
for TARGET in light mail pg pkix prov tls util
|
||||
do
|
||||
echo "- boca-$TARGET ..."
|
||||
rm -rf boca-$TARGET/src/ boca-$TARGET/target/ boca-$TARGET/pom.xml
|
||||
if [ "$TARGET" == "test" ]; then
|
||||
# remove generated test output files ...
|
||||
rm -f boca-$TARGET/*
|
||||
fi
|
||||
rmdir boca-$TARGET
|
||||
done
|
||||
|
||||
rm -rf private/patch/bouncycastle/*
|
||||
rm -rf private/patch/bordercastle/*
|
||||
|
||||
rm pom.xml
|
||||
|
||||
popd >/dev/null
|
||||
## -- EOF -------------------------------------------------------------------
|
||||
56
bin/bordercastle-repack.sh
Executable file
56
bin/bordercastle-repack.sh
Executable file
|
|
@ -0,0 +1,56 @@
|
|||
#!/bin/bash
|
||||
## -- FILE ------------------------------------------------------------------
|
||||
## name : bordercastle-repack.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
|
||||
|
||||
pushd $DIST_DIR > /dev/null
|
||||
|
||||
# now re-pack the provider into a single jar for more convenient usage:
|
||||
cd $DIST_DIR
|
||||
mkdir tmp
|
||||
cd tmp
|
||||
unzip -q ../boca-light-*.jar
|
||||
rm -rf META-INF/*
|
||||
unzip -q ../boca-mail-*.jar
|
||||
rm -rf META-INF/*
|
||||
unzip -q ../boca-prov-*.jar
|
||||
rm -rf META-INF/*
|
||||
unzip -q ../boca-pkix-*.jar
|
||||
rm -rf META-INF/*
|
||||
unzip -q ../boca-util-*.jar
|
||||
rm -rf META-INF/*
|
||||
|
||||
# remove classes which we don't use
|
||||
rm -rf org/bordercastle/cert/dane/fetcher
|
||||
rm -rf org/bordercastle/crypto/examples
|
||||
rm -rf org/bordercastle/jce/examples
|
||||
rm org/bordercastle/jce/provider/X509LDAPCertStoreSpi.class
|
||||
rm org/bordercastle/jce/provider/X509StoreLDAP*.class
|
||||
rm -rf org/bordercastle/util/test
|
||||
rm -rf org/bordercastle/x509/examples
|
||||
rm org/bordercastle/x509/util/LDAPStoreHelper.class
|
||||
cd ..
|
||||
cd tmp
|
||||
|
||||
sed "s/-Version: \$.*\.version./-Version: $BC_VER/g" $MAIN_DIR/bordercastle/MANIFEST.MF > META-INF/MANIFEST.MF
|
||||
jar -cMf ../bordercastle-jce.jar *
|
||||
cd ..
|
||||
rm -rf tmp
|
||||
|
||||
cp boca-tls-*.jar bordercastle-tls.jar
|
||||
|
||||
popd > /dev/null
|
||||
|
||||
popd > /dev/null
|
||||
## -- EOF -------------------------------------------------------------------
|
||||
104
bin/bordercastle-sign.sh
Executable file
104
bin/bordercastle-sign.sh
Executable file
|
|
@ -0,0 +1,104 @@
|
|||
#!/bin/bash
|
||||
## -- FILE ------------------------------------------------------------------
|
||||
## name : bordercastle-sign.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
|
||||
|
||||
check_env() {
|
||||
VAR_NAME=$1
|
||||
VAR_VALUE=$2
|
||||
IS_FILE=$3
|
||||
if [[ -z "$VAR_NAME" ]]; then
|
||||
echo "undefined env var: $VAR_NAME"
|
||||
exit -1
|
||||
fi
|
||||
if [[ -z "$VAR_VALUE" ]]; then
|
||||
echo "empty env var: $VAR_NAME"
|
||||
exit -1
|
||||
fi
|
||||
if [[ "$IS_FILE" == "true" ]]; then
|
||||
if [[ ! -f "$VAR_VALUE" ]]; then
|
||||
echo "missing file: $VAR_NAME: $VAR_VALUE"
|
||||
exit -1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
load_config() {
|
||||
CFG=$1
|
||||
if [[ ! -f "$CFG" ]]; then
|
||||
echo "missing signing config: $CFG"
|
||||
exit -1
|
||||
fi
|
||||
. "$CFG"
|
||||
check_env JARSIGNER_STORE_FILE "$JARSIGNER_STORE_FILE" true
|
||||
check_env JARSIGNER_STORE_PASS "$JARSIGNER_STORE_PASS" false
|
||||
check_env JARSIGNER_KEY_NAME "$JARSIGNER_KEY_NAME" false
|
||||
check_env JARSIGNER_KEY_PASS "$JARSIGNER_KEY_PASS" false
|
||||
check_env JARSIGNER_TSA_URL "$JARSIGNER_TSA_URL" false
|
||||
}
|
||||
|
||||
sign_jar() {
|
||||
JAR_BASE=$1
|
||||
OUT_BASE=$2
|
||||
if [[ "$OUT_BASE" == "" ]]; then
|
||||
OUT_BASE=$JAR_BASE
|
||||
fi
|
||||
RAW_JAR=${JAR_BASE}.jar
|
||||
SIGNED=signed/${OUT_BASE}.jar
|
||||
echo "- $RAW_JAR => $SIGNED"
|
||||
BASE_OPTS=
|
||||
BASE_OPTS="$BASE_OPTS -keystore $JARSIGNER_STORE_FILE"
|
||||
BASE_OPTS="$BASE_OPTS -storepass:env JARSIGNER_STORE_PASS"
|
||||
SIGN_OPTS="$BASE_OPTS"
|
||||
SIGN_OPTS="$SIGN_OPTS -keypass:env JARSIGNER_KEY_PASS"
|
||||
SIGN_OPTS="$SIGN_OPTS -tsa $JARSIGNER_TSA_URL"
|
||||
SIGN_OPTS="$SIGN_OPTS -strict"
|
||||
SIGN_OPTS="$SIGN_OPTS -sigfile BOCASIGN"
|
||||
SIGN_OPTS="$SIGN_OPTS -digestalg SHA-384"
|
||||
jarsigner $SIGN_OPTS -signedjar "$SIGNED" "$RAW_JAR" "$JARSIGNER_KEY_NAME"
|
||||
RET_VAL=$?
|
||||
if [[ "$RET_VAL" != "0" ]]; then
|
||||
echo "failed to sign: jarsigner returned $RET_VAL"
|
||||
exit $RET_VAL
|
||||
fi
|
||||
VERIFY_OPTS="$BASE_OPTS"
|
||||
#VERIFY_OPTS="$VERIFY_OPTS -verbose"
|
||||
jarsigner $VERIFY_OPTS -verify "$SIGNED"
|
||||
RET_VAL=$?
|
||||
if [[ "$RET_VAL" != "0" ]]; then
|
||||
echo "failed to verify: jarsigner returned $RET_VAL"
|
||||
exit $RET_VAL
|
||||
fi
|
||||
}
|
||||
|
||||
load_config private/sign.conf
|
||||
|
||||
pushd $DIST_DIR > /dev/null
|
||||
|
||||
mkdir -p signed
|
||||
|
||||
sign_jar boca-light-$BC_VER
|
||||
sign_jar boca-mail-$BC_VER
|
||||
sign_jar boca-pg-$BC_VER
|
||||
sign_jar boca-pkix-$BC_VER
|
||||
sign_jar boca-prov-$BC_VER
|
||||
sign_jar boca-tls-$BC_VER
|
||||
sign_jar boca-util-$BC_VER
|
||||
sign_jar bordercastle-jce-obfuscated-packed bordercastle-jce-$BC_VER
|
||||
sign_jar bordercastle-tls-obfuscated-packed bordercastle-tls-$BC_VER
|
||||
|
||||
popd > /dev/null
|
||||
|
||||
popd > /dev/null
|
||||
## -- EOF -------------------------------------------------------------------
|
||||
80
bin/bouncycastle-to-bordercastle.sh
Executable file
80
bin/bouncycastle-to-bordercastle.sh
Executable file
|
|
@ -0,0 +1,80 @@
|
|||
#!/bin/bash
|
||||
## -- FILE ------------------------------------------------------------------
|
||||
## name : bouncycastle-to-bordercastle.sh
|
||||
## project : BoarderZone: BorderCastle
|
||||
## created : Leon Poyyayil - 2013-08-01
|
||||
## language : Linux shell script
|
||||
## environment: GNU bash
|
||||
## copyright : (c) 1990-2025 by Leon Poyyayil (private), Switzerland
|
||||
## license : Bouncy Castle License. see LICENSE
|
||||
## --------------------------------------------------------------------------
|
||||
|
||||
# this script is based on the become-spongy.sh script from spongycastle
|
||||
# but cleaned up and enhanced to support later versions than 1.47 and to
|
||||
# properly function with filenames that contain spaces.
|
||||
|
||||
SCRIPT_DIR="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
MAIN_DIR=$(readlink -f $( dirname "$SCRIPT_DIR") )
|
||||
pushd $MAIN_DIR > /dev/null
|
||||
. bordercastle.conf
|
||||
|
||||
# Package rename org.bouncycastle to org.bordercastle
|
||||
|
||||
# 1) rename directories:
|
||||
echo "- renaming directories ..."
|
||||
find bc* -name bouncycastle | xargs rename s/bouncycastle/bordercastle/
|
||||
|
||||
# 2) replace package and import statements:
|
||||
echo "- replacing package names and imports ..."
|
||||
find bc* -type f -print0 | while read -d '' -r FILENAME
|
||||
do
|
||||
TMPFILENAME=$FILENAME.sed.tmp
|
||||
sed s/bouncycastle/bordercastle/g "$FILENAME" > "$TMPFILENAME"
|
||||
# keep the web address pointing to the original:
|
||||
sed s/www.bordercastle.org/www.bouncycastle.org/g "$TMPFILENAME" > "$FILENAME"
|
||||
rm -f "$TMPFILENAME"
|
||||
done
|
||||
|
||||
# BC to BoCa (resp. BCPQC to BoCaPQC) for provider name
|
||||
echo "- renaming provider ..."
|
||||
find bc* -type f -print0 | while read -d '' -r FILENAME
|
||||
do
|
||||
TMPFILENAME1=$FILENAME.sed1.tmp
|
||||
TMPFILENAME2=$FILENAME.sed2.tmp
|
||||
sed s/\"BC\"/\"BoCa\"/g "$FILENAME" > "$TMPFILENAME1"
|
||||
sed s/\"BCPQC\"/\"BoCaPQC\"/g "$TMPFILENAME1" > "$TMPFILENAME2"
|
||||
sed s/\"BCJSSE\"/\"BoCaJSSE\"/g "$TMPFILENAME2" > "$FILENAME"
|
||||
rm -f "$TMPFILENAME1" "$TMPFILENAME2"
|
||||
done
|
||||
|
||||
# Rename 'bc-' artifacts to 'boca-'
|
||||
echo "- renaming artifacts ..."
|
||||
rename s/^bc/boca/ *
|
||||
|
||||
echo "- adding version info class ..."
|
||||
sed s/\"\$\{bordercastle.version\}\"/\"$BC_VER\"/g "bordercastle/Version.java" > "boca-light/src/main/java/org/bordercastle/Version.java"
|
||||
|
||||
# add the maven pom files
|
||||
echo "- generating maven pom files ..."
|
||||
cp maven/pom/boca-parent.xml pom.xml
|
||||
for TARGET in light mail pg pkix prov tls util
|
||||
do
|
||||
cp maven/pom/boca-$TARGET.xml boca-$TARGET/pom.xml
|
||||
mkdir -p boca-$TARGET/src/main/java
|
||||
mkdir -p boca-$TARGET/src/main/resources
|
||||
mkdir -p boca-$TARGET/src/test/java
|
||||
mkdir -p boca-$TARGET/src/test/resources
|
||||
done
|
||||
|
||||
# fill in the version
|
||||
echo "- expanding version in maven pom files ..."
|
||||
find -type f -name 'pom.xml' | while read -r FILENAME
|
||||
do
|
||||
TMPFILENAME=$FILENAME.sed.tmp
|
||||
sed s/\>\$\{bordercastle.version\}\</\>$BC_VER\</g "$FILENAME" > "$TMPFILENAME"
|
||||
cat "$TMPFILENAME" > "$FILENAME"
|
||||
rm -f "$TMPFILENAME"
|
||||
done
|
||||
|
||||
popd >/dev/null
|
||||
## -- EOF -------------------------------------------------------------------
|
||||
74
bin/bouncycastle-to-maven-layout.sh
Executable file
74
bin/bouncycastle-to-maven-layout.sh
Executable file
|
|
@ -0,0 +1,74 @@
|
|||
#!/bin/bash
|
||||
## -- FILE ------------------------------------------------------------------
|
||||
## name : bouncycastle-to-maven-layout.sh
|
||||
## project : BoarderZone: BorderCastle
|
||||
## created : Leon Poyyayil - 2013-08-01
|
||||
## language : Linux shell script
|
||||
## environment: GNU bash
|
||||
## copyright : (c) 1990-2025 by Leon Poyyayil (private), Switzerland
|
||||
## license : Bouncy Castle License. see LICENSE
|
||||
## --------------------------------------------------------------------------
|
||||
|
||||
# this script is based on the use-maven-layout.sh script from spongycastle
|
||||
# but cleaned up and enhanced to support later versions than 1.47 and to
|
||||
# properly function with filenames that contain spaces.
|
||||
|
||||
SCRIPT_DIR="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
MAIN_DIR=$(readlink -f $( dirname "$SCRIPT_DIR") )
|
||||
pushd $MAIN_DIR > /dev/null
|
||||
. bordercastle.conf
|
||||
|
||||
function move_file {
|
||||
# echo Moving $1 to $2
|
||||
mkdir -p `dirname "$2"`
|
||||
mv "$1" "$2"
|
||||
}
|
||||
|
||||
function move_files {
|
||||
if [ -d "$1" ]; then
|
||||
echo " $1/**/*.* => $2"
|
||||
find "$1" -type f -print0 | while read -d '' -r FILENAME
|
||||
do
|
||||
NEWFILENAME=`echo "$FILENAME" | sed -e "s,$1,$2,"`
|
||||
move_file "$FILENAME" "$NEWFILENAME"
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
echo "- java source files ..."
|
||||
move_files crypto/mail/src/main/java bc-mail/src/main/java
|
||||
move_files crypto/pg/src/main/java bc-pg/src/main/java
|
||||
move_files crypto/pkix/src/main/java bc-pkix/src/main/java
|
||||
move_files crypto/prov/src/main/java bc-prov/src/main/java
|
||||
move_files crypto/core/src/main/java bc-light/src/main/java
|
||||
#move_files crypto/mls/src/main/java bc-mls/src/main/java
|
||||
move_files crypto/tls/src/main/java bc-tls/src/main/java
|
||||
move_files crypto/tls/src/main/jdk1.5 bc-tls/src/main/java
|
||||
move_files crypto/util/src/main/java bc-util/src/main/java
|
||||
|
||||
echo "- javadoc resource files ..."
|
||||
move_files crypto/mail/src/main/javadoc bc-mail/src/main/javadoc
|
||||
move_files crypto/pg/src/main/javadoc bc-pg/src/main/javadoc
|
||||
move_files crypto/pkix/src/main/javadoc bc-pkix/src/main/javadoc
|
||||
move_files crypto/prov/src/main/javadoc bc-prov/src/main/javadoc
|
||||
move_files crypto/core/src/main/javadoc bc-light/src/main/javadoc
|
||||
#move_files crypto/mls/src/main/javadoc bc-mls/src/main/javadoc
|
||||
move_files crypto/tls/src/main/javadoc bc-tls/src/main/javadoc
|
||||
move_files crypto/util/src/main/javadoc bc-util/src/main/javadoc
|
||||
|
||||
echo "- resource files ..."
|
||||
move_files crypto/mail/src/main/resources bc-mail/src/main/resources
|
||||
move_files crypto/pkix/src/main/resources bc-pkix/src/main/resources
|
||||
move_files crypto/prov/src/main/resources bc-prov/src/main/resources
|
||||
|
||||
echo "- documentation"
|
||||
mkdir -p doc
|
||||
mv crypto/*.html doc
|
||||
mv crypto/docs/releasenotes.html doc
|
||||
mv crypto/docs/specifications.html doc
|
||||
|
||||
echo "- cleanup"
|
||||
rm -rf crypto
|
||||
|
||||
popd >/dev/null
|
||||
## -- EOF -------------------------------------------------------------------
|
||||
Loading…
Add table
Add a link
Reference in a new issue