diff options
author | asn <asn@c9f7a03b-bd48-0410-a16d-cbbf54688b0b> | 2010-10-19 17:44:13 +0000 |
---|---|---|
committer | asn <asn@c9f7a03b-bd48-0410-a16d-cbbf54688b0b> | 2010-10-19 17:44:13 +0000 |
commit | 4ddbb8912772585d9235f07330215c00a61b4fb6 (patch) | |
tree | 90137391e662a41ca29d5e32127f4d78fc1876ba /pki/base/java-tools | |
parent | c11ecd68c684f1d7c8d0033489d975fb2db551b3 (diff) | |
download | pki-4ddbb8912772585d9235f07330215c00a61b4fb6.tar.gz pki-4ddbb8912772585d9235f07330215c00a61b4fb6.tar.xz pki-4ddbb8912772585d9235f07330215c00a61b4fb6.zip |
cmake: Added java-tools command wrapper.
git-svn-id: svn+ssh://svn.fedorahosted.org/svn/pki/trunk@1380 c9f7a03b-bd48-0410-a16d-cbbf54688b0b
Diffstat (limited to 'pki/base/java-tools')
-rw-r--r-- | pki/base/java-tools/CMakeLists.txt | 1 | ||||
-rw-r--r-- | pki/base/java-tools/templates/CMakeLists.txt | 39 | ||||
-rw-r--r-- | pki/base/java-tools/templates/pki_java_command_wrapper.in | 148 |
3 files changed, 188 insertions, 0 deletions
diff --git a/pki/base/java-tools/CMakeLists.txt b/pki/base/java-tools/CMakeLists.txt index dfe76f0c5..427ded555 100644 --- a/pki/base/java-tools/CMakeLists.txt +++ b/pki/base/java-tools/CMakeLists.txt @@ -1,3 +1,4 @@ project(java-tools Java) add_subdirectory(src) +add_subdirectory(templates) diff --git a/pki/base/java-tools/templates/CMakeLists.txt b/pki/base/java-tools/templates/CMakeLists.txt new file mode 100644 index 000000000..4937fbf67 --- /dev/null +++ b/pki/base/java-tools/templates/CMakeLists.txt @@ -0,0 +1,39 @@ +project(java-tools-wrapper) + +set(PKI_PRODUCT pki) +set(PKI_COMMANDS + AtoB + AuditVerify + BtoA + CMCEnroll + CMCRequest + CMCResponse + CMCRevoke + CRMFPopClient + ExtJoiner + GenExtKeyUsage + GenIssuerAltNameExt + GenSubjectAltNameExt + HttpClient + OCSPClient + PKCS10Client + PKCS12Export + PrettyPrintCert + PrettyPrintCrl + TokenInfo +) + +foreach(PKI_COMMAND ${PKI_COMMANDS}) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/pki_java_command_wrapper.in ${CMAKE_CURRENT_BINARY_DIR}/${PKI_COMMAND} @ONLY) + + install( + FILES + ${CMAKE_CURRENT_BINARY_DIR}/${PKI_COMMAND} + DESTINATION + ${BIN_INSTALL_DIR} + PERMISSIONS + OWNER_EXECUTE OWNER_WRITE OWNER_READ + GROUP_EXECUTE GROUP_READ + WORLD_EXECUTE WORLD_READ + ) +endforeach(PKI_COMMAND) diff --git a/pki/base/java-tools/templates/pki_java_command_wrapper.in b/pki/base/java-tools/templates/pki_java_command_wrapper.in new file mode 100644 index 000000000..bd7e0c95b --- /dev/null +++ b/pki/base/java-tools/templates/pki_java_command_wrapper.in @@ -0,0 +1,148 @@ +#!/bin/sh +# +# --- BEGIN COPYRIGHT BLOCK --- +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Copyright (C) 2007 Red Hat, Inc. +# All rights reserved. +# --- END COPYRIGHT BLOCK --- +# + +# Check to insure that this script's original invocation directory +# has not been deleted! +CWD=`/bin/pwd > /dev/null 2>&1` +if [ $? -ne 0 ] ; then + echo "Cannot invoke '$0' from non-existent directory!" + exit 255 +fi + + +############################################################################### +## (1) Specify variables used by this script. ## +############################################################################### + +PRODUCT=@PKI_PRODUCT@ +COMMAND=@PKI_COMMAND@ + + +############################################################################### +## (2) Check for valid usage of this command wrapper. ## +############################################################################### + + + +############################################################################### +## (3) Define helper functions. ## +############################################################################### + +invalid_operating_system() { + echo + echo "ERROR: '$0' does not execute on the '$1' operating system!" + echo +} + +invalid_architecture() { + echo + echo "ERROR: '$0' does not execute on the '$1' architecture!" + echo +} + + +############################################################################### +## (4) Set the LD_LIBRARY_PATH environment variable to determine the ## +## search order this command wrapper uses to find shared libraries. ## +############################################################################### + +OS=`uname -s` + +if [ "${OS}" = "Linux" ] ; then + ARCHITECTURE=`uname -i` + JAVA="java" + JAVA_OPTIONS="" + + if [ "${ARCHITECTURE}" = "i386" ] ; then + LD_LIBRARY_PATH=/usr/lib:/lib + LD_LIBRARY_PATH=/usr/lib/dirsec:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib/${PRODUCT}:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH + elif [ "${ARCHITECTURE}" = "x86_64" ] ; then + LD_LIBRARY_PATH=/usr/lib:/lib + LD_LIBRARY_PATH=/usr/lib/dirsec:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib/${PRODUCT}:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib64:/lib64:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib64/dirsec:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib64/${PRODUCT}:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH + else + invalid_architecture "${ARCHITECTURE}" + exit 255 + fi +elif [ "${OS}" = "SunOS" ] ; then + ARCHITECTURE=`uname -p` + if [ "${ARCHITECTURE}" = "sparc" ] && + [ -d "/usr/lib/sparcv9/" ] ; then + ARCHITECTURE="sparcv9" + fi + if [ "${ARCHITECTURE}" = "sparc" ] ; then + JAVA="/usr/jdk/instances/jdk1.5.0/jre/bin/java" + JAVA_OPTIONS="" + + LD_LIBRARY_PATH=/usr/lib:/lib + LD_LIBRARY_PATH=/usr/lib/dirsec:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib/${PRODUCT}:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH + elif [ "${ARCHITECTURE}" = "sparcv9" ] ; then + JAVA="/usr/jdk/instances/jdk1.5.0/jre/bin/java" + JAVA_OPTIONS="-d64" + + LD_LIBRARY_PATH=/usr/lib:/lib + LD_LIBRARY_PATH=/usr/lib/dirsec:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib/${PRODUCT}:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib/sparcv9:/lib/sparcv9:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib/sparcv9/dirsec:${LD_LIBRARY_PATH} + LD_LIBRARY_PATH=/usr/lib/sparcv9/${PRODUCT}:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH + else + invalid_architecture "${ARCHITECTURE}" + exit 255 + fi +else + invalid_operating_system "${OS}" + exit 255 +fi + + +############################################################################### +## (5) Set the CP environment variable to determine the search ## +## order this command wrapper uses to find jar files. ## +############################################################################### + +CP=/usr/lib/java/jss4.jar +CP=/usr/lib/java/dirsec/jss4.jar:${CP} +CP=/usr/lib/java/osutil.jar:${CP} +CP=/usr/share/java/ldapjdk.jar:${CP} +CP=/usr/share/java/${PRODUCT}/nsutil.jar:${CP} +CP=/usr/share/java/${PRODUCT}/cmsutil.jar:${CP} +CP=/usr/share/java/pkitools.jar:${CP} +CP=/usr/share/${PRODUCT}/classes:${CP} +export CP + + +############################################################################### +## (6) Execute the java command specified by this java command wrapper ## +## based upon the preset LD_LIBRARY_PATH and CP environment variables. ## +############################################################################### + +${JAVA} ${JAVA_OPTIONS} -cp ${CP} com.netscape.cmstools.${COMMAND} "$@" +exit $? |