5 OPENSSL_SOURCEDIR
="/usr/local/src/openssl/work_098d"
6 OPENSSL_INSTALLDIR
="/usr/local/openssl-0.9.8d-patched"
9 OPENSSL_VERSION
="0.9.8d"
10 OPENSSL_NAME
="openssl-${OPENSSL_VERSION}"
12 ENGINE_NAME
="engine-${ENGINE_ID}-20061110"
13 PATCH
="openssl-asymm-${OPENSSL_VERSION}-20061110.diff"
14 OPENSSL_DOWNLOAD
="http://www.openssl.org/source/${OPENSSL_NAME}.tar.gz"
15 ENGINE_DOWNLOAD
="http://osdn.dl.sourceforge.net/openxpki/${ENGINE_NAME}.tar.gz"
16 PATCH_DOWNLOAD
="http://osdn.dl.sourceforge.net/openxpki/${PATCH}.gz"
19 if [ ! -d ${OPENSSL_SOURCEDIR} ]; then
20 mkdir
-p ${OPENSSL_SOURCEDIR}
23 cd ${OPENSSL_SOURCEDIR}
25 echo "+-------------------------- +"
26 echo "| Getting sources if needed |"
27 echo "+-------------------------- +"
30 if [ ! -f ${OPENSSL_NAME}.
tar.gz
]; then
31 wget
${OPENSSL_DOWNLOAD}
34 if [ ! -f ${ENGINE_NAME}.
tar.gz
]; then
35 wget
${ENGINE_DOWNLOAD}
38 if [ ! -f ${PATCH}.gz
]; then
39 wget
${PATCH_DOWNLOAD}
42 for file in ${OPENSSL_NAME}.tar.gz ${ENGINE_NAME}.tar.gz ${PATCH}.gz
; do
43 if [ ! -f ${file} ]; then
44 echo "! Error: failed to download ${file}"
45 echo "! Please download this file manually and put it to:"
46 echo " ${OPENSSL_SOURCEDIR}/"
51 echo "+------------------ +"
52 echo "| Preparing sources |"
53 echo "+------------------ +"
56 if [ -d ${OPENSSL_NAME} ]; then
57 rm -rf ${OPENSSL_NAME}
60 if [ -d ${ENGINE_NAME} ]; then
64 if [ ! -f ${PATCH} ]; then
68 if [ ! -d ${OPENSSL_INSTALLDIR} ]; then
69 mkdir
-p ${OPENSSL_INSTALLDIR}
71 rm -rf ${OPENSSL_INSTALLDIR}/*
74 tar xzf
${OPENSSL_NAME}.
tar.gz
75 tar xzf
${ENGINE_NAME}.
tar.gz
77 echo "+------------------------ +"
78 echo "| Patching OpenSSL-${OPENSSL_VERSION} |"
79 echo "+------------------------ +"
82 cd ${OPENSSL_SOURCEDIR}/${OPENSSL_NAME}
83 patch -p0 < ..
/${PATCH}
85 echo "+---------------------------------------------------- +"
86 echo "| Configuring OpenSSL-${OPENSSL_VERSION} with ${ENGINE_ID} engine support |"
87 echo "+---------------------------------------------------- +"
90 .
/config shared
--prefix=${OPENSSL_INSTALLDIR} --openssldir=${OPENSSL_INSTALLDIR} -Wl,-rpath,${OPENSSL_INSTALLDIR}/lib -L${OPENSSL_INSTALLDIR}/lib
92 echo "+-------------------------------------------------------------- +"
93 echo "| Making and installing OpenSSL-${OPENSSL_VERSION} with ${ENGINE_ID} engine support |"
94 echo "+-------------------------------------------------------------- +"
97 ${MAKE} && ${MAKE} test && ${MAKE} install
99 echo "+----------------------------------------- +"
100 echo "| Making and installing ${ENGINE_ID} engine itself |"
101 echo "+----------------------------------------- +"
104 cd ${OPENSSL_SOURCEDIR}/${ENGINE_NAME}
105 ${MAKE} OPENSSL_DIR=../${OPENSSL_NAME} LDFLAGS="-g -L${OPENSSL_INSTALLDIR}/lib -R${OPENSSL_INSTALLDIR}/lib -Wl,-rpath,${OPENSSL_INSTALLDIR}/lib
-static-libgcc"
107 if [ -f ${OPENSSL_SOURCEDIR}/${ENGINE_NAME}/lib${ENGINE_ID}.so ]; then
108 cp ${OPENSSL_SOURCEDIR}/${ENGINE_NAME}/lib${ENGINE_ID}.so ${OPENSSL_INSTALLDIR}/lib/engines/
110 echo "! Error
: the engine
file lib
${ENGINE_ID}.so was not created
in"
111 echo " ${OPENSSL_SOURCEDIR}/${ENGINE_NAME}/"
112 echo "! Please check the previous output and try to
make and
install"
113 echo "! lib
${ENGINE_ID}.so manually
"
117 echo "+------------------------------------------------------------------------------------ +"
118 echo "| Modifying
${OPENSSL_INSTALLDIR}/openssl.cnf
file to support
${ENGINE_ID} engine |
"
119 echo "+------------------------------------------------------------------------------------ +"
122 echo "openssl_conf
= openssl_def
" > ./openssl.cnf.1
123 cat ${OPENSSL_INSTALLDIR}/openssl.cnf >> ./openssl.cnf.1
124 echo "" >> ./openssl.cnf.1
125 echo "[openssl_def
]" >> ./openssl.cnf.1
126 echo "engines
= engine_section
" >> ./openssl.cnf.1
127 echo "[engine_section
]" >> ./openssl.cnf.1
128 echo "${ENGINE_ID} = ${ENGINE_ID}_section
" >> ./openssl.cnf.1
129 echo "[${ENGINE_ID}_section
]" >> ./openssl.cnf.1
130 echo "dynamic_path
= ${OPENSSL_INSTALLDIR}/lib
/engines
/lib
${ENGINE_ID}.so
" >> ./openssl.cnf.1
131 echo "engine_id
= ${ENGINE_ID}" >> ./openssl.cnf.1
133 cp -f ./openssl.cnf.1 ${OPENSSL_INSTALLDIR}/openssl.cnf
135 echo "Installation of OpenSSL-
${OPENSSL_VERSION} with
${ENGINE_ID} engine support to
:"
136 echo " ${OPENSSL_INSTALLDIR}"
137 echo "finished successfully.
"