Commit in lcio/src/cpp/include/rootDict on MAIN
CMakeLists.txt+92-931.2 -> 1.3
bug fix for MacOSX (full patch to rootcint needed)

lcio/src/cpp/include/rootDict
CMakeLists.txt 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- CMakeLists.txt	24 Jun 2010 09:10:28 -0000	1.2
+++ CMakeLists.txt	25 Jun 2010 09:51:00 -0000	1.3
@@ -64,7 +64,7 @@
         OUTPUT  ${dict_src_file}
         #COMMAND ${ROOT_HOME}/bin/rootcint
         #COMMAND $ENV{ROOTSYS}/bin/rootcint
-        COMMAND rootcint
+        COMMAND ${ROOT_CINT}
         ARGS -f ${dict_src_file} -c -DHANDLE_LCIO_EXCEPTIONS=IGNORED_FOR_CINT
         -I${AID_GEN_CXX_HEADERS_DIR} -I${LCIO_CXX_HEADERS_DIR} ${header_full_path} ${dict_hdr_file}
         WORKING_DIRECTORY "${LCIO_BINARY_DIR}"
@@ -77,130 +77,129 @@
 ENDMACRO()
 #===================================================================
 
-# EVENT aid files
-FILE( GLOB aid_headers
-    "${LCIO_AID_HEADERS_DIR}/EVENT/*.aid"
-    "${LCIO_AID_HEADERS_DIR}/IO/*.aid"
-)
-
-FOREACH( aid_file ${aid_headers} )
-
-    FILE( RELATIVE_PATH aid_file_basepath ${LCIO_AID_HEADERS_DIR} ${aid_file} )
-    STRING( REPLACE ".aid" ".h" header_basepath ${aid_file_basepath} )
-
-    SET( gen_header_file "${AID_GEN_CXX_HEADERS_DIR}/${header_basepath}" )
-
-    ADD_ROOT_DICT_OBJ( ${gen_header_file} ${header_basepath} )
-
-ENDFOREACH()
-
-
-
+INCLUDE( ${LCIO_SOURCE_DIR}/FindROOT.cmake )
 
+# should rootcint be detected in FindROOT.cmake ?
+SET( ROOT_CINT ROOT_CINT-NOTFOUND )
+FIND_PROGRAM( ROOT_CINT
+    rootcint
+    ${ROOT_HOME}/bin
+)
 
-INCLUDE_DIRECTORIES ( BEFORE "${AID_GEN_CXX_HEADERS_DIR}" )
 
-INCLUDE_DIRECTORIES (
-    "${LCIO_SOURCE_DIR}/sio/include"
-    "${LCIO_CXX_HEADERS_DIR}"
-)
+IF( ROOT_FOUND AND ROOT_CINT )
 
+    #SET( ENV{ROOTSYS} "${ROOT_HOME}" )
+    #SET( ENV{PATH} $ENV{ROOTSYS}/bin:$ENV{PATH} )
+    #SET( ENV{LD_LIBRARY_PATH} $ENV{ROOTSYS}/lib:$ENV{LD_LIBRARY_PATH} )
+
+    # FIXME variables must be set by FindROOT.cmake
+    #SET( cint_script "${PROJECT_BINARY_DIR}/rootcint.cmake" )
+    #FILE( WRITE "${cint_script}" "# little script to run rootcint\n" )
+    #FILE( APPEND "${cint_script}" "SET( ENV{ROOTSYS} ${ROOT_HOME} )\n" )
+    #FILE( APPEND "${cint_script}" "SET( ENV{PATH} \$ENV{ROOTSYS}/bin:\$ENV{PATH} )\n" )
+    #FILE( APPEND "${cint_script}" "SET( ENV{LD_LIBRARY_PATH} \$ENV{ROOTSYS}/lib:\$ENV{LD_LIBRARY_PATH} )\n" )
+    #FILE( APPEND "${cint_script}" "EXEC_PROGRAM( rootcint -f \${dict_src_file} -c -DHANDLE_LCIO_EXCEPTIONS=IGNORED_FOR_CINT -Iinclude \${lcio_hdr_rel_path} \${dict_hdr_file} )\n" )
 
-#------ require proper C++ -------
-ADD_DEFINITIONS( "-Wall -ansi" )
-#----- need long long for int64 for now ------
-ADD_DEFINITIONS( "-Wno-long-long -fno-strict-aliasing" )
 
-INCLUDE( ${LCIO_SOURCE_DIR}/FindROOT.cmake )
 
+    # EVENT aid files
+    FILE( GLOB aid_headers
+        "${LCIO_AID_HEADERS_DIR}/EVENT/*.aid"
+        "${LCIO_AID_HEADERS_DIR}/IO/*.aid"
+    )
 
-IF( ROOT_FOUND )
+    FOREACH( aid_file ${aid_headers} )
 
+        FILE( RELATIVE_PATH aid_file_basepath ${LCIO_AID_HEADERS_DIR} ${aid_file} )
+        STRING( REPLACE ".aid" ".h" header_basepath ${aid_file_basepath} )
 
-SET( ENV{ROOTSYS} "${ROOT_HOME}" )
-SET( ENV{PATH} $ENV{ROOTSYS}/bin:$ENV{PATH} )
-SET( ENV{LD_LIBRARY_PATH} $ENV{ROOTSYS}/lib:$ENV{LD_LIBRARY_PATH} )
+        SET( gen_header_file "${AID_GEN_CXX_HEADERS_DIR}/${header_basepath}" )
 
+        ADD_ROOT_DICT_OBJ( ${gen_header_file} ${header_basepath} )
 
-#TODO test ROOT_FOUND and ${ROOT_HOME}/bin/rootcint
+    ENDFOREACH()
 
-# list of headers
-FILE( GLOB_RECURSE lcio_headers ${LCIO_CXX_HEADERS_DIR}/*.h )
 
-# list of headers to exclude
-FILE( GLOB_RECURSE exclude_headers 
-    ${LCIO_CXX_HEADERS_DIR}/empty_ignore.h
-    ${LCIO_CXX_HEADERS_DIR}/EVENT/*.h
-    ${LCIO_CXX_HEADERS_DIR}/IO/*.h
-    ${LCIO_CXX_HEADERS_DIR}/SIO/*.h
-    ${LCIO_CXX_HEADERS_DIR}/CPPFORT/*.h
-    ${LCIO_CXX_HEADERS_DIR}/UTIL/CellIDDecoder.h
-    ${LCIO_CXX_HEADERS_DIR}/UTIL/LCWarning.h
-)
+    INCLUDE_DIRECTORIES ( BEFORE "${AID_GEN_CXX_HEADERS_DIR}" )
 
-# remove items to exclude
-LIST( REMOVE_ITEM lcio_headers ${exclude_headers} )
+    INCLUDE_DIRECTORIES (
+        "${LCIO_SOURCE_DIR}/sio/include"
+        "${LCIO_CXX_HEADERS_DIR}"
+    )
 
-SET( dict_lib_srcs )
 
-# FIXME variables must be set by FindROOT.cmake
-#SET( cint_script "${PROJECT_BINARY_DIR}/rootcint.cmake" )
-#FILE( WRITE "${cint_script}" "# little script to run rootcint\n" )
-#FILE( APPEND "${cint_script}" "SET( ENV{ROOTSYS} ${ROOT_HOME} )\n" )
-#FILE( APPEND "${cint_script}" "SET( ENV{PATH} \$ENV{ROOTSYS}/bin:\$ENV{PATH} )\n" )
-#FILE( APPEND "${cint_script}" "SET( ENV{LD_LIBRARY_PATH} \$ENV{ROOTSYS}/lib:\$ENV{LD_LIBRARY_PATH} )\n" )
-#FILE( APPEND "${cint_script}" "EXEC_PROGRAM( rootcint -f \${dict_src_file} -c -DHANDLE_LCIO_EXCEPTIONS=IGNORED_FOR_CINT -Iinclude \${lcio_hdr_rel_path} \${dict_hdr_file} )\n" )
+    #------ require proper C++ -------
+    ADD_DEFINITIONS( "-Wall -ansi" )
+    #----- need long long for int64 for now ------
+    ADD_DEFINITIONS( "-Wno-long-long -fno-strict-aliasing" )
+
+
+    # list of headers
+    FILE( GLOB_RECURSE lcio_headers ${LCIO_CXX_HEADERS_DIR}/*.h )
+
+    # list of headers to exclude
+    FILE( GLOB_RECURSE exclude_headers 
+        ${LCIO_CXX_HEADERS_DIR}/empty_ignore.h
+        ${LCIO_CXX_HEADERS_DIR}/EVENT/*.h
+        ${LCIO_CXX_HEADERS_DIR}/IO/*.h
+        ${LCIO_CXX_HEADERS_DIR}/SIO/*.h
+        ${LCIO_CXX_HEADERS_DIR}/CPPFORT/*.h
+        ${LCIO_CXX_HEADERS_DIR}/UTIL/CellIDDecoder.h
+        ${LCIO_CXX_HEADERS_DIR}/UTIL/LCWarning.h
+    )
 
+    # remove items to exclude
+    LIST( REMOVE_ITEM lcio_headers ${exclude_headers} )
 
-FOREACH( lcio_hdr ${lcio_headers} )
 
-  #MESSAGE( STATUS "processing header file: ${lcio_hdr}" )
-  
-  # get the relative path
-  #STRING( REPLACE "${LCIO_CXX_HEADERS_DIR}" "" lcio_hdr_rel_path ${lcio_hdr} )
-  FILE( RELATIVE_PATH lcio_hdr_rel_path "${LCIO_CXX_HEADERS_DIR}" ${lcio_hdr} )
+    FOREACH( lcio_hdr ${lcio_headers} )
 
-  #MESSAGE( STATUS "header file relpath: ${lcio_hdr_rel_path}" )
+      #MESSAGE( STATUS "processing header file: ${lcio_hdr}" )
+      
+      # get the relative path
+      #STRING( REPLACE "${LCIO_CXX_HEADERS_DIR}" "" lcio_hdr_rel_path ${lcio_hdr} )
+      FILE( RELATIVE_PATH lcio_hdr_rel_path "${LCIO_CXX_HEADERS_DIR}" ${lcio_hdr} )
 
-  ADD_ROOT_DICT_OBJ( ${lcio_hdr} ${lcio_hdr_rel_path} )
- 
-ENDFOREACH()
+      #MESSAGE( STATUS "header file relpath: ${lcio_hdr_rel_path}" )
 
-INCLUDE_DIRECTORIES( "${DICT_OUTPUT_DIR}" )
-INCLUDE_DIRECTORIES( "${ROOT_INCLUDE_DIRS}" )
+      ADD_ROOT_DICT_OBJ( ${lcio_hdr} ${lcio_hdr_rel_path} )
+     
+    ENDFOREACH()
 
-ADD_LIBRARY( lib_LCIODICT ${ROOT_DICT_LIB_SRCS} ${LCIO_RIO_SRCS} )
-INSTALL( TARGETS lib_LCIODICT DESTINATION lib )
+    INCLUDE_DIRECTORIES( "${DICT_OUTPUT_DIR}" )
+    INCLUDE_DIRECTORIES( "${ROOT_INCLUDE_DIRS}" )
 
+    ADD_LIBRARY( lib_LCIODICT ${ROOT_DICT_LIB_SRCS} ) # ${LCIO_RIO_SRCS} )
+    INSTALL( TARGETS lib_LCIODICT DESTINATION lib )
 
-IF( APPLE )
- SET( ROOT_DICT_LINK_FLAGS "-single_module -undefined dynamic_lookup -bind_at_load")
-#     ADD_LIBRARY( lib_LCIO ${LCIO_RIO_SRCS} )
-ELSE( APPLE )
- SET( ROOT_DICT_LINK_FLAGS " " )
-ENDIF( APPLE )
 
-SET_TARGET_PROPERTIES( lib_LCIODICT PROPERTIES
-  # create *nix style library versions + symbolic links
-  VERSION ${LCIO_VERSION}
-  SOVERSION ${LCIO_SOVERSION}
-  # allow creating static and shared libs without conflicts
-  CLEAN_DIRECT_OUTPUT 1
-  # avoid conflicts between library and binary target names
-  OUTPUT_NAME lcioDict
-  LINKER_FLAGS ${ROOT_DICT_LINK_FLAGS}
-  )
+    IF( APPLE )
+     SET( ROOT_DICT_LINK_FLAGS "-single_module -undefined dynamic_lookup -bind_at_load")
+    #     ADD_LIBRARY( lib_LCIO ${LCIO_RIO_SRCS} )
+    ELSE( APPLE )
+     SET( ROOT_DICT_LINK_FLAGS " " )
+    ENDIF( APPLE )
 
-ADD_CUSTOM_TARGET( dict DEPENDS  lib_LCIODICT )
+    SET_TARGET_PROPERTIES( lib_LCIODICT PROPERTIES
+      # create *nix style library versions + symbolic links
+      VERSION ${LCIO_VERSION}
+      SOVERSION ${LCIO_SOVERSION}
+      # allow creating static and shared libs without conflicts
+      CLEAN_DIRECT_OUTPUT 1
+      # avoid conflicts between library and binary target names
+      OUTPUT_NAME lcioDict
+      LINKER_FLAGS ${ROOT_DICT_LINK_FLAGS}
+      )
 
-TARGET_LINK_LIBRARIES( lib_LCIODICT ${ROOT_LIBRARIES} lib_LCIO)
+    ADD_CUSTOM_TARGET( dict DEPENDS  lib_LCIODICT )
 
+    TARGET_LINK_LIBRARIES( lib_LCIODICT ${ROOT_LIBRARIES} lib_LCIO)
 
-ELSE( ROOT_FOUND ) 
+ELSE() 
 
- MESSAGE( STATUS " NO ROOT found :-( " ) 
+    MESSAGE( STATUS " NO ROOT found :-( " ) 
 
- 
-ENDIF( ROOT_FOUND )
+ENDIF()
 #----------------------------------------------
 
CVSspam 0.2.8