#!/bin/sh

cp belpicd/configure.in opensc/
cp --remove-destination belpicd/src/* opensc/src/
cp --remove-destination belpicd/src/libopensc/* opensc/src/libopensc/
cp --remove-destination belpicd/src/pkcs11/* opensc/src/pkcs11/
cp --remove-destination belpicd/src/tools/* opensc/src/tools/

cd opensc/src/libopensc

sed 's/HAVE_OPENSSL/HAVE_NO_OPENSSL/g' ctx.c > tmp
mv -f tmp ctx.c
sed 's/HAVE_OPENSSL/HAVE_NO_OPENSSL/g' card-gpk.c > tmp
mv -f tmp card-gpk.c
sed 's/HAVE_OPENSSL/HAVE_NO_OPENSSL/g' pkcs15-wrap.c > tmp
mv -f tmp pkcs15-wrap.c
echo "In libopensc/ : renamed HAVE_OPENSSL so OpenSSL wont be used"

sed 's;|| card->ctx->debug >= 6;;g' card.c > tmp
mv tmp card.c
echo "In libopensc/ : no PIN logging, not even if debug >= 6"

cd ../pkcs11

sed 's/opensc-pkcs11.so/Belgium-EID-pkcs11.so/g' pkcs11.h > tmp
mv -f tmp pkcs11.h
sed 's/opensc-pkcs11/Belgium Electronic Identity Card PKCS11/g' pkcs11.h > tmp
mv -f tmp pkcs11.h
sed 's/OpenSC PKCS#11.bundle/Belgium-EID-pkcs11.bundle/g' pkcs11.h > tmp
mv -f tmp pkcs11.h
echo "In pkcs11.h: load the Belpic pkcs11 instead of the OpenSC pkcs11"

sed 's/#define USE_PKCS15_INIT/#define NO_PKCS15_INIT/g' sc-pkcs11.h > tmp
mv -f tmp sc-pkcs11.h
echo "In pkcs11/scpkcs11.h: renamed USE_PKCS15_INIT so pkcs15-init wont be used"

cp -f libpkcs11.c ../tools/
cp -f pkcs11.h ../tools/
mkdir ../tools/rsaref/
cp -f rsaref/* ../tools/rsaref/
echo "Copied libpkcs11.c and pkcs11.h from pkcs11/ to tools/"

cd ../tools

rm -f opensc-tool.c
mv -f belpic-tool.c opensc-tool.c
rm -f pkcs11-tool.c
mv -f belpic-pkcs11-tool.c pkcs11-tool.c
echo "In tools: renamed belpic-(pkcs11-)tool.c (so we need less changes in the makefiles)"

cd ../../..
