#!/bin/bash ## -- FILE ------------------------------------------------------------------ ## name : bouncycastle-to-intellicastle.sh ## project : intelliCard: MobileKeyStore ## created : Leon Poyyayil - 2013-08-01 ## language : Linux shell script ## environment: GNU bash ## copyright : (c) 2013-2014 by intelliCard AG, Switzerland ## license : this is corporate property of intelliCard AG ## -------------------------------------------------------------------------- # 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. if echo "$1" | grep -e "^[0-9]\.[0-9][0-9]\$" > /dev/null then echo "- using version: $1" else echo "- missing or invalid version in parameter 1: $1" exit -1 fi INTELLICASTLE_VERSION=$1 # Package rename org.bouncycastle to org.intellicastle # 1) rename directories: echo "- renaming directories ..." find bc* -name bouncycastle | xargs rename s/bouncycastle/intellicastle/ # 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/intellicastle/g "$FILENAME" > "$TMPFILENAME" # keep the web address pointing to the original: sed s/www.intellicastle.org/www.bouncycastle.org/g "$TMPFILENAME" > "$FILENAME" rm -f "$TMPFILENAME" done # BC to IC (resp. BCPQC to ICPQC) for provider name echo "- renaming provider ..." find bc* -type f -print0 | while read -d '' -r FILENAME do TMPFILENAME=$FILENAME.sed.tmp sed s/\"BC\"/\"IC\"/g "$FILENAME" > "$TMPFILENAME" sed s/\"BCPQC\"/\"ICPQC\"/g "$TMPFILENAME" > "$FILENAME" rm -f "$TMPFILENAME" done # Rename 'bc-' artifacts to 'ic-' echo "- renaming artifacts ..." rename s/^bc/ic/ * echo "- adding version info class ..." sed s/\"\$\{intellicastle.version\}\"/\"$INTELLICASTLE_VERSION\"/g "intellicastle/Version.java" > "ic-light/src/main/java/org/intellicastle/Version.java" # add the maven pom files echo "- generating maven pom files ..." cp maven/pom/ic-parent.xml pom.xml for TARGET in light mail pg pkix prov util test do cp maven/pom/ic-$TARGET.xml ic-$TARGET/pom.xml mkdir -p ic-$TARGET/src/main/java mkdir -p ic-$TARGET/src/main/resources mkdir -p ic-$TARGET/src/test/java mkdir -p ic-$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/\>\$\{intellicastle.version\}\$INTELLICASTLE_VERSION\ "$TMPFILENAME" cat "$TMPFILENAME" > "$FILENAME" rm -f "$TMPFILENAME" done ## -- EOF -------------------------------------------------------------------