Commit in lcio on MAIN
CMakeLists.txt+110-911.15 -> 1.16
replaced SEND_ERROR with STATUS
removed dereference links for JDK_HOME

lcio
CMakeLists.txt 1.15 -> 1.16
diff -u -r1.15 -r1.16
--- CMakeLists.txt	22 Jun 2007 12:20:59 -0000	1.15
+++ CMakeLists.txt	27 Jun 2007 13:35:24 -0000	1.16
@@ -22,7 +22,7 @@
 SET( ${PROJECT_NAME}_PATCH_LEVEL 3 )
 
 # project options
-OPTION( BUILD_SHARED_LIBS "Set this to OFF to build static libraries" ON )
+OPTION( BUILD_SHARED_LIBS "Set to OFF to build static libraries" ON )
 OPTION( BUILD_LCIO_TESTJOBS "Set to ON to build LCIO testjobs" OFF )
 OPTION( BUILD_F77_TESTJOBS "Set to ON to build LCIO F77 testjobs" OFF )
 OPTION( INSTALL_DOC "Set to ON to install Documentation" ON )
@@ -37,95 +37,95 @@
     SET( CMAKE_INSTALL_PREFIX "${CMAKE_SOURCE_DIR}" )
 ENDIF()
 
-# generate header files with ant aid.generate
-IF( NOT EXISTS "${CMAKE_SOURCE_DIR}/src/cpp/include/EVENT/LCIO.h" )
-    # check if java is available
-    # FIXME put this stuff into a module FindJDK.cmake?
-    
-    IF( NOT DEFINED ENV{JDK_HOME} AND NOT DEFINED ENV{JAVA_HOME} )
-        MESSAGE( STATUS "Autodetecting java..." )
-        FIND_PACKAGE( Java )
-        IF( JAVA_RUNTIME )
-            SET( java_bin "${JAVA_RUNTIME}" )
-            IF( UNIX )
-                # initialize flow-control variable
-                SET( link_found TRUE )
-                
-                # dereference links
-                WHILE( link_found )
-                    # check if the java binary is a symbolic link
-                    EXEC_PROGRAM( file ARGS "${java_bin}"
-                        OUTPUT_VARIABLE out_tmp
-                        RETURN_VALUE out_ret )
-                    IF( out_ret )
-                        MESSAGE( SEND_ERROR "Error dereferencing links to Java Home!!" )
-                        MESSAGE( FATAL_ERROR "${out_tmp}" )
-                    ENDIF()
-                    # set variable if link is found
-                    STRING( REGEX MATCH " symbolic link to " link_found "${out_tmp}" )
-                    IF( link_found )
-                        # get the file to where the link points to
-                        STRING( REGEX REPLACE ".* symbolic link to (.*)" "\\1" out_regex "${out_tmp}" )
-                        MESSAGE( STATUS "Java binary ${java_bin} is a symbolic link to ${out_regex}" )
-                        SET( java_bin "${out_regex}" )
-                    ENDIF()
-                ENDWHILE()
-            ENDIF()
-            # get java_path out of java binary
-            STRING( REGEX REPLACE "(.*)\\/bin\\/java$" "\\1" java_path ${java_bin} )
+# check for java
+# FIXME put this stuff into a module FindJDK.cmake?
+IF( NOT DEFINED ENV{JDK_HOME} AND NOT DEFINED ENV{JAVA_HOME} )
+    MESSAGE( STATUS "Autodetecting java..." )
+    FIND_PACKAGE( Java )
+    IF( JAVA_RUNTIME )
+        SET( java_bin "${JAVA_RUNTIME}" )
+        #IF( UNIX )
+        #    # initialize flow-control variable
+        #    SET( link_found TRUE )
+        #    
+        #    # dereference links
+        #    WHILE( link_found )
+        #        # check if the java binary is a symbolic link
+        #        EXEC_PROGRAM( file ARGS "${java_bin}"
+        #            OUTPUT_VARIABLE out_tmp
+        #            RETURN_VALUE out_ret )
+        #        IF( out_ret )
+        #            MESSAGE( STATUS "Error dereferencing links to Java Home!!" )
+        #            MESSAGE( FATAL_ERROR "${out_tmp}" )
+        #        ENDIF()
+        #        # set variable if link is found
+        #        STRING( REGEX MATCH " symbolic link to " link_found "${out_tmp}" )
+        #        IF( link_found )
+        #            # get the file to where the link points to
+        #            STRING( REGEX REPLACE ".* symbolic link to (.*)" "\\1" out_regex "${out_tmp}" )
+        #            MESSAGE( STATUS "Java binary ${java_bin} is a symbolic link to ${out_regex}" )
+        #            SET( java_bin "${out_regex}" )
+        #        ENDIF()
+        #    ENDWHILE()
+        #ENDIF()
+        # get java_path out of java binary
+        STRING( REGEX REPLACE "(.*)\\/bin\\/java$" "\\1" java_path ${java_bin} )
+    ELSE()
+        MESSAGE( FATAL_ERROR "Java was not found in your system!!" )
+    ENDIF()
+ELSE()
+    # in case JDK_HOME or JAVA_HOME already set ensure that both variables
+    # are set correctly (JDK_HOME as well as JAVA_HOME)
+    IF( DEFINED ENV{JDK_HOME} AND DEFINED ENV{JAVA_HOME} )
+        IF( "$ENV{JDK_HOME}" STREQUAL "$ENV{JAVA_HOME}" )
+            SET( java_path "$ENV{JDK_HOME}" )
         ELSE()
-            MESSAGE( FATAL_ERROR "Java was not found in your system!!" )
+            MESSAGE( STATUS 
+                "JDK_HOME and JAVA_HOME are set to different paths!!" )
+            MESSAGE( STATUS "JDK_HOME: $ENV{JDK_HOME}" )
+            MESSAGE( STATUS "JAVA_HOME: $ENV{JAVA_HOME}" )
+            MESSAGE( FATAL_ERROR 
+                "Please unset one of them or set both correctly!!" )
         ENDIF()
     ELSE()
-        # in case JDK_HOME or JAVA_HOME already set ensure that both variables
-        # are set correctly (JDK_HOME as well as JAVA_HOME)
-        IF( DEFINED ENV{JDK_HOME} AND DEFINED ENV{JAVA_HOME} )
-            IF( "$ENV{JDK_HOME}" STREQUAL "$ENV{JAVA_HOME}" )
-                SET( java_path "$ENV{JDK_HOME}" )
-            ELSE()
-                MESSAGE( SEND_ERROR 
-                    "JDK_HOME and JAVA_HOME are set to different paths!!" )
-                MESSAGE( STATUS "JDK_HOME: $ENV{JDK_HOME}" )
-                MESSAGE( STATUS "JAVA_HOME: $ENV{JAVA_HOME}" )
-                MESSAGE( FATAL_ERROR 
-                    "Please unset one of them or set both correctly!!" )
-            ENDIF()
-        ELSE()
-            IF( DEFINED ENV{JDK_HOME} )
-                SET( java_path "$ENV{JDK_HOME}" )
-            ENDIF()
-            IF( DEFINED ENV{JAVA_HOME} )
-                SET( java_path "$ENV{JAVA_HOME}" )
-            ENDIF()
+        IF( DEFINED ENV{JDK_HOME} )
+            SET( java_path "$ENV{JDK_HOME}" )
         ENDIF()
-        SET( java_bin "${java_path}/bin/java" )
-        IF( NOT EXISTS "${java_bin}" )
-            MESSAGE( FATAL_ERROR
-                "Java runtime not found in: ${java_bin}" )
+        IF( DEFINED ENV{JAVA_HOME} )
+            SET( java_path "$ENV{JAVA_HOME}" )
         ENDIF()
     ENDIF()
-
-    # parse the output of java -version
-    EXEC_PROGRAM( "${java_bin}" ARGS "-version"
-            OUTPUT_VARIABLE out_tmp
-            RETURN_VALUE out_ret )
-    IF( out_ret )
-        MESSAGE( SEND_ERROR "Error executing java -version!!" )
+    SET( java_bin "${java_path}/bin/java" )
+    IF( NOT EXISTS "${java_bin}" )
+        MESSAGE( FATAL_ERROR
+            "Java runtime not found in: ${java_bin}" )
     ENDIF()
-    STRING( REGEX REPLACE ".* version \"([0-9]+\\.[0-9]+\\.[0-9]+).*"
-            "\\1" java_version "${out_tmp}" )
-    
-    # display info
-    MESSAGE( STATUS "JDK_HOME and JAVA_HOME set to ${java_path}" )
-    MESSAGE( STATUS "Java version ${java_version} configured successfully!" )
-    
-    # set environment variables
-    SET( ENV{JDK_HOME} "${java_path}" )
-    SET( ENV{JAVA_HOME} "${java_path}" )
-    SET( ENV{LCIO} "${CMAKE_SOURCE_DIR}" )
-    SET( ENV{PATH} "${CMAKE_SOURCE_DIR}/tools:${java_path}/bin:$ENV{PATH}" )
+ENDIF()
+
+# parse the output of java -version
+EXEC_PROGRAM( "${java_bin}" ARGS "-version"
+        OUTPUT_VARIABLE out_tmp
+        RETURN_VALUE out_ret )
+IF( out_ret )
+    MESSAGE( STATUS "Error executing java -version!!" )
+ENDIF()
+STRING( REGEX REPLACE ".* version \"([0-9]+\\.[0-9]+\\.[0-9]+).*"
+        "\\1" java_version "${out_tmp}" )
+
+# display info
+MESSAGE( STATUS "JDK_HOME and JAVA_HOME set to ${java_path}" )
+MESSAGE( STATUS "Java version ${java_version} configured successfully!" )
+
+# set environment variables for ant
+SET( ENV{JDK_HOME} "${java_path}" )
+SET( ENV{JAVA_HOME} "${java_path}" )
+SET( ENV{LCIO} "${CMAKE_SOURCE_DIR}" )
+SET( ENV{PATH} "${CMAKE_SOURCE_DIR}/tools:${java_path}/bin:$ENV{PATH}" )
+
+# generate header files with ant aid.generate
+# FIXME should be done with custom target - problem: env vars
+IF( NOT EXISTS "${CMAKE_SOURCE_DIR}/src/cpp/include/EVENT/LCIO.h" )
 
-    # now generate header files
     MESSAGE( STATUS "Generating ${PROJECT_NAME} header files with ant aid.generate..." )
     EXEC_PROGRAM( ant "${CMAKE_SOURCE_DIR}"
         ARGS aid.generate
@@ -135,11 +135,28 @@
     IF( NOT out_ret )
         MESSAGE( STATUS "Header files successfully generated..." )
     ELSE()
-        MESSAGE( SEND_ERROR "Error generating header files!!" )
+        MESSAGE( STATUS "Error generating header files!!" )
         MESSAGE( FATAL_ERROR "${out_tmp}" )
     ENDIF()
 ENDIF()
 
+# LCIO - JAVA
+# FIXME not working correctly - problem: env vars
+# for this to work the environment variables:
+# LCIO, JDK_HOME and PATH have to be set BEFORE
+# running cmake
+# workaround until shell script is written for
+# calling ant aid
+# command for calling ant aid
+ADD_CUSTOM_COMMAND(
+    OUTPUT "${CMAKE_SOURCE_DIR}/lib/lcio.jar"
+    COMMAND ant ARGS aid
+    WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
+    COMMENT "Building LCIO Java..."
+    VERBATIM )
+# create java target
+ADD_CUSTOM_TARGET( jar DEPENDS "${CMAKE_SOURCE_DIR}/lib/lcio.jar" )
+
 # DOCUMENTATION
 FIND_PACKAGE( Doxygen )
 FIND_PACKAGE( LATEX )
@@ -172,7 +189,7 @@
         OUTPUT  "${CMAKE_SOURCE_DIR}/doc/manual.pdf"
         COMMAND "${LATEX_COMPILER}" ARGS -interaction=batchmode manual.tex
         COMMAND "${LATEX_COMPILER}" ARGS -interaction=batchmode manual.tex
-        COMMAND "${DVIPS_CONVERTER}" ARGS -q manual.dvi
+        COMMAND "${DVIPS_CONVERTER}" ARGS -q -o manual.ps manual.dvi
         COMMAND "${PDFLATEX_COMPILER}" ARGS -interaction=batchmode manual.tex
         COMMAND "${LATEX2HTML_CONVERTER}" ARGS
             -mkdir -dir manual_html -verbosity 0 -info 0 -no_auto_link -split 0 -no_navigation manual.tex
@@ -197,7 +214,7 @@
     #    OUTPUT  "${CMAKE_SOURCE_DIR}/doc/doxygen_api/latex/refman.dvi"
     #    COMMAND "${LATEX_COMPILER}" ARGS -interaction=batchmode refman.tex
     #    COMMAND "${LATEX_COMPILER}" ARGS -interaction=batchmode refman.tex
-    #    COMMAND "${DVIPS_CONVERTER}" ARGS -q refman.dvi
+    #    COMMAND "${DVIPS_CONVERTER}" ARGS -q -o refman.ps refman.dvi
     #    # FIXME psnup should be detected
     #    COMMAND "psnup" ARGS -q -2 refman.ps ${CMAKE_SOURCE_DIR}/doc/lciorefman.ps
     #    COMMAND "${PDFLATEX_COMPILER}" ARGS -interaction=batchmode refman.tex
@@ -217,9 +234,9 @@
 
 ELSE()
     IF( NOT DOXYGEN_FOUND )
-        MESSAGE( SEND_ERROR "Doxygen not found in your system!!" )
+        MESSAGE( STATUS "Doxygen not found in your system!!" )
     ELSE()
-        MESSAGE( SEND_ERROR "Latex or one of its tools (dvips, pdflatex, latex2html, makeindex) not found in your system!!" )
+        MESSAGE( STATUS "Latex or one of its tools (dvips, pdflatex, latex2html, makeindex) not found in your system!!" )
     ENDIF()
     IF( INSTALL_DOC )
         MESSAGE( STATUS "INSTALL_DOC forced to OFF" )
@@ -241,10 +258,10 @@
 ##########################################################################################
 
 # library *nix style versioning
-SET( ${PROJECT_NAME}_VERSION
-    "${${PROJECT_NAME}_MAJOR_VERSION}.${${PROJECT_NAME}_MINOR_VERSION}.${${PROJECT_NAME}_PATCH_LEVEL}" )
 SET( ${PROJECT_NAME}_SOVERSION
     "${${PROJECT_NAME}_MAJOR_VERSION}.${${PROJECT_NAME}_MINOR_VERSION}" )
+SET( ${PROJECT_NAME}_VERSION
+    "${${PROJECT_NAME}_SOVERSION}.${${PROJECT_NAME}_PATCH_LEVEL}" )
 
 # add library install path to the rpath list
 SET( CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib" )
@@ -278,7 +295,9 @@
 # input directories
 ADD_SUBDIRECTORY( sio sio )
 ADD_SUBDIRECTORY( src/cpp lcio )
-ADD_SUBDIRECTORY( src/f77 f77 )
+IF( BUILD_F77_TESTJOBS )
+    ADD_SUBDIRECTORY( src/f77 f77 )
+ENDIF()
 
 # create uninstall configuration file 
 CONFIGURE_FILE( "${CMAKE_SOURCE_DIR}/cmake_uninstall.cmake.in"
@@ -313,7 +332,7 @@
 # force some variables that could be defined in the command line
 # to be written to cache
 SET( BUILD_SHARED_LIBS "${BUILD_SHARED_LIBS}" CACHE BOOL
-    "Set this to OFF to build static libraries" FORCE )
+    "Set to OFF to build static libraries" FORCE )
 SET( CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" CACHE PATH
     "Where to install ${PROJECT_NAME}" FORCE )
 SET( CMAKE_BUILD_TYPE "${CMAKE_BUILD_TYPE}" CACHE STRING
CVSspam 0.2.8