Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/cmake/Modules/FindStatTest.cmake

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /cmake/Modules/FindStatTest.cmake (Version 11.3.0) and /cmake/Modules/FindStatTest.cmake (Version 8.1.p2)


  1 # Copied from Geant4 installation, need patch     
  2 # - Find StatTest                                 
  3 # This module tries to find the StatTest appli    
  4 # Once done this will define                      
  5 #                                                 
  6 # STATTEST_FOUND    - Application found           
  7 # STATTEST_APP      - Application                 
  8 #   STATTEST_CMD      - Command line to run th    
  9 #   STATTEST_ADD_TEST - Helper function to def    
 10 #                     StatTest (Only if we are    
 11 #                                                 
 12 # Variables used by this module, which can cha    
 13 # and need to be set before calling find_packa    
 14 #                                                 
 15 # STATTEST_ROOT_DIR Root directory to StatTest    
 16 #                                                 
 17                                                   
 18 if(NOT GEANT4_ENABLE_TESTING)                     
 19     #No meaning for this if not testing           
 20     SET(STATTEST_FOUND FALSE)                     
 21     return()                                      
 22 endif()                                           
 23                                                   
 24 #Search application                               
 25 #Note that the second suggested path is G4 spe    
 26 find_path(STATTEST_APP_DIR                        
 27     NAMES StatTestVersion.py                      
 28     PATHS ${STATTEST_ROOT_DIR} ${PROJECT_SOURC    
 29     NO_DEFAULT_PATH                               
 30     )                                             
 31                                                   
 32 #If we didn't find it there, fall back to some    
 33 find_path(STATTEST_APP_DIR NAMES StatTestVersi    
 34                                                   
 35 ####                                              
 36 #### Run-time dependencies...                     
 37 ####                                              
 38 # - Check if ROOT is available                    
 39 find_package(ROOT QUIET)                          
 40 if(NOT ROOT_FOUND)                                
 41   MESSAGE(STATUS "StatTest: ROOT package not f    
 42   set(STATTEST_FOUND FALSE)                       
 43   set(_root_isok FALSE)                           
 44 else()                                            
 45   set(_root_isok TRUE)                            
 46   # - Check if python interpreter is correct v    
 47   # (the one compatible with root)                
 48   find_package(Python ${ROOT_PYTHONVER} QUIET     
 49   if(NOT Python_Interpreter_FOUND)                
 50      MESSAGE(STATUS "StatTest: Python interpre    
 51      set(STATTEST_FOUND FALSE)                    
 52      set(_python_isok FALSE)                      
 53   else()                                          
 54      set(STATTEST_FOUND TRUE)                     
 55      set(_python_isok TRUE)                       
 56   endif()                                         
 57 endif()                                           
 58                                                   
 59 include(FindPackageHandleStandardArgs)            
 60 find_package_handle_standard_args(                
 61     StatTest                                      
 62     DEFAULT_MSG                                   
 63     STATTEST_APP_DIR                              
 64     _root_isok                                    
 65     _python_isok                                  
 66   )                                               
 67                                                   
 68                                                   
 69 if(STATTEST_FOUND)                                
 70   set(STATTEST_APP ${STATTEST_APP_DIR}/runtest    
 71   set(STATTEST_CMD ${PYTHON_EXECUTABLE} ${STAT    
 72                                                   
 73   # Let's create a function that helps in buil    
 74   # regression testing                            
 75   # function STATTEST_ADD_TEST(<name>             
 76   #                            G4TEST testname    
 77   #                            CONFIG conffile    
 78   #                            INPUT inputfile    
 79   #              [DEBUG]                          
 80   #          [TEXT]  #Input is text file inste    
 81   #                            [REFERENCE refe    
 82   #                            [LABELS label1     
 83   #                            [IMG filename])    
 84   function(STATTEST_ADD_TEST stattest)            
 85         CMAKE_PARSE_ARGUMENTS(ARG "DEBUG;TEXT"    
 86         "CONFIG;INPUT;REFERENCE;G4TEST;IMG"       
 87         "LABELS" ${ARGN}                          
 88     )                                             
 89     #check mandatory arguments                    
 90     list(LENGTH ARG_CONFIG _len)                  
 91     if(_len LESS 1)                               
 92         message(FATAL_ERROR "STATTEST_ADD_TEST    
 93     endif()                                       
 94                                                   
 95     list(LENGTH ARG_INPUT _len)                   
 96     if(_len LESS 1)                               
 97         message(FATAL_ERROR "STATTEST_ADD_TEST    
 98     endif()                                       
 99                                                   
100     list(LENGTH ARG_G4TEST _len)                  
101     if(_len LESS 1)                               
102         message(FATAL_ERROR "STATTEST_ADD_TEST    
103     endif()                                       
104                                                   
105     #Set basic command line                       
106     if(ARG_IMG)                                   
107         set(_command ${STATTEST_CMD} -g ${ARG_    
108     else()                                        
109         set(_command ${STATTEST_CMD})             
110     endif()                                       
111                                                   
112     if(ARG_TEXT)                                  
113       set(_command ${_command} "-T")              
114     endif()                                       
115                                                   
116     #Mandatory parameters                         
117     set(_command ${_command} ${ARG_CONFIG} ${A    
118     if(ARG_REFERENCE)                             
119         set(_command ${_command} ${ARG_REFEREN    
120     endif()                                       
121                                                   
122     if(ARG_LABELS)                                
123         set(_labels ${ARG_LABELS})                
124     else()                                        
125         set(_labels "")                           
126     endif()                                       
127                                                   
128     include(G4CTest)                              
129                                                   
130      #Now build G4 test                           
131     GEANT4_ADD_TEST(${stattest}                   
132         COMMAND ${_command}                       
133         DEPENDS ${ARG_G4TEST}                     
134         LABELS ${_labels}                         
135         )                                         
136   endfunction()                                   
137 endif(STATTEST_FOUND)                             
138                                                   
139 mark_as_advanced(STATTEST_APP_DIR)