95 lines
2.8 KiB
Bash
Executable file
95 lines
2.8 KiB
Bash
Executable file
#!/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 -------------------------------------------------------------------
|