EPOS modules
authoragrigora <alina.grigoras@cern.ch>
Fri, 14 Nov 2014 15:57:40 +0000 (16:57 +0100)
committeragrigora <alina.grigoras@cern.ch>
Mon, 15 Dec 2014 12:51:55 +0000 (13:51 +0100)
CMakeLists.txt
CMakelibFITsim.pkg [deleted file]
EPOS/CMakeLists.txt
EPOS/CMakelibEPOS.pkg [deleted file]
EPOS/epos167/CMakeLists.txt [new file with mode: 0644]
EPOS/epos167/EPOSLinkDef.h [moved from EPOS/EPOSLinkDef.h with 100% similarity]

index b68866e..4875f37 100644 (file)
@@ -101,6 +101,7 @@ add_subdirectory(AD)
 add_subdirectory(BCM)
 add_subdirectory(CORRFW)
 add_subdirectory(EMCAL)
+add_subdirectory(EPOS)
 add_subdirectory(EVE)
 add_subdirectory(EVGEN)
 add_subdirectory(FASTSIM)
diff --git a/CMakelibFITsim.pkg b/CMakelibFITsim.pkg
deleted file mode 100644 (file)
index e69de29..0000000
index 297ec46..1fbbe1b 100644 (file)
@@ -1,10 +1,18 @@
-# AliRoot Build System CMakeLists for EPOS
-#
-# Author: Johny Jose m(johny.jose@cern.ch)
-#         Port of previous Makefile build to cmake
+# **************************************************************************
+# * Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
+# *                                                                        *
+# * Author: The ALICE Off-line Project.                                    *
+# * Contributors are mentioned in the code where appropriate.              *
+# *                                                                        *
+# * Permission to use, copy, modify and distribute this software and its   *
+# * documentation strictly for non-commercial purposes is hereby granted   *
+# * without fee, provided that the above copyright notice appears in all   *
+# * copies and that both the copyright notice and this permission notice   *
+# * appear in the supporting documentation. The authors make no claims     *
+# * about the suitability of this software for any purpose. It is          *
+# * provided "as is" without express or implied warranty.                  *
+# **************************************************************************
 
-cmake_minimum_required(VERSION 2.8.8 FATAL_ERROR)
+add_subdirectory(epos167)
 
-file(GLOB PACKAGES CMake*.pkg)
-
-ALICE_BuildModule()
+message(STATUS "EPOS enabled")
\ No newline at end of file
diff --git a/EPOS/CMakelibEPOS.pkg b/EPOS/CMakelibEPOS.pkg
deleted file mode 100644 (file)
index ba25ac6..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-# -*- mode: CMake -*- 
-
-set ( SRCS  
-    epos167/epostimer.cxx 
-    TEpos.cxx 
-    AliGenEpos.cxx 
-    AliGenEposIsajetToPdgConverter.cxx 
-    )
-
-set ( HDRS TEpos.h AliGenEpos.h AliGenEposIsajetToPdgConverter.h)
-
-set ( DHDR EPOSLinkDef.h)
-
-set ( EXPORT TEpos.h AliGenEpos.h AliGenEposIsajetToPdgConverter.h)
-
-set ( EINCLUDE EVGEN STEER/STEER STEER/STEERBase)
-
-set ( FSRCS  
-    epos167/epos-app-158.f 
-    epos167/epos-bas-168.f 
-    epos167/epos-con-161.f 
-    epos167/epos-dky-165.f 
-    epos167/epos-dro-168.f 
-    epos167/epos-ems-165.f 
-    epos167/epos-fra-163.f 
-    epos167/epos-ico-158.f 
-    epos167/epos-yyy-168.f 
-    epos167/epos-ids-165.f 
-    epos167/epos-int-168.f 
-    epos167/epos-jps-164.f 
-    epos167/epos-omg-160.f 
-    epos167/epos-par-129.f 
-    epos167/epos-sem-165.f 
-    epos167/epos-rsh-165.f 
-    epos167/epos-qsh-165.f 
-    epos167/epos-tim-155.f 
-    epos167/epos-uti-165.f 
-    epos167/epos-xan-154.f 
-    epos167/epos-xpr-165.f 
-    epos167/eposm.f 
-    epos167/eposu.f 
-    )
-
-
-set ( EXTFILES  
-    epos167/epos.inc 
-    epos167/epos.incems 
-    epos167/epos.inchy 
-    epos167/epos.incico 
-    epos167/epos.incpar 
-    epos167/epos.incsem 
-    epos167/epos.ini1ec 
-    epos167/epos.ini1fc 
-    epos167/epos.inics 
-    epos167/epos.inidi 
-    epos167/epos.iniev 
-    epos167/epos.inirj 
-    epos167/epos.initl 
-    epos167/epos.param 
-    epos167/3flav/epos.inics 
-    epos167/3flav/epos.iniev 
-    epos167/3flav/epos.inirj 
-    epos167/3flav/epos.initl 
-    epos167/3flav/epos.param 
-    epos167/4flav/epos.inics 
-    epos167/4flav/epos.iniev 
-    epos167/4flav/epos.inirj 
-    epos167/4flav/epos.initl 
-    epos167/4flav/epos.param 
-    EPOScommon.h 
-    eposproc.h 
-    epos167/epostimer.h 
-    )
-
-if ( ALICE_TARGET STREQUAL "macosxicc")
-  string(REGEX MATCHALL "-O[^ ]*" PACKFFLAGS ${FFLAGS}) 
-endif ( ALICE_TARGET STREQUAL "macosxicc")
diff --git a/EPOS/epos167/CMakeLists.txt b/EPOS/epos167/CMakeLists.txt
new file mode 100644 (file)
index 0000000..cde50dd
--- /dev/null
@@ -0,0 +1,105 @@
+# **************************************************************************
+# * Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
+# *                                                                        *
+# * Author: The ALICE Off-line Project.                                    *
+# * Contributors are mentioned in the code where appropriate.              *
+# *                                                                        *
+# * Permission to use, copy, modify and distribute this software and its   *
+# * documentation strictly for non-commercial purposes is hereby granted   *
+# * without fee, provided that the above copyright notice appears in all   *
+# * copies and that both the copyright notice and this permission notice   *
+# * appear in the supporting documentation. The authors make no claims     *
+# * about the suitability of this software for any purpose. It is          *
+# * provided "as is" without express or implied warranty.                  *
+# **************************************************************************
+
+# Module
+set(MODULE EPOS)
+
+# Module include folder
+include_directories(${AliRoot_SOURCE_DIR}/EPOS/epos167
+                   )
+
+# Additional include folders in alphabetical order
+include_directories(${AliRoot_SOURCE_DIR}/EVGEN
+                    ${AliRoot_SOURCE_DIR}/STEER/STEER
+                    ${AliRoot_SOURCE_DIR}/STEER/STEERBase
+                   )
+
+# Sources in alphabetical order
+set(SRCS
+    epostimer.cxx
+    ${AliRoot_SOURCE_DIR}/EPOS/TEpos.cxx
+    ${AliRoot_SOURCE_DIR}/EPOS/AliGenEpos.cxx
+    ${AliRoot_SOURCE_DIR}/EPOS/AliGenEposIsajetToPdgConverter.cxx
+   )
+
+# Headers
+set(HDRS
+    ${AliRoot_SOURCE_DIR}/EPOS/TEpos.h
+    ${AliRoot_SOURCE_DIR}/EPOS/AliGenEpos.h
+    ${AliRoot_SOURCE_DIR}/EPOS/AliGenEposIsajetToPdgConverter.h
+   )
+
+# Fortran sources
+set(FSRCS
+    epos-app-158.f
+    epos-bas-168.f
+    epos-con-161.f
+    epos-dky-165.f
+    epos-dro-168.f
+    epos-ems-165.f
+    epos-fra-163.f
+    epos-ico-158.f
+    epos-yyy-168.f
+    epos-ids-165.f
+    epos-int-168.f
+    epos-jps-164.f
+    epos-omg-160.f
+    epos-par-129.f
+    epos-sem-165.f
+    epos-rsh-165.f
+    epos-qsh-165.f
+    epos-tim-155.f
+    epos-uti-165.f
+    epos-xan-154.f
+    epos-xpr-165.f
+    eposm.f
+    eposu.f
+   )
+
+# Generate the dictionary
+# It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument
+get_directory_property(incdirs INCLUDE_DIRECTORIES)
+generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}")
+
+# Generate the ROOT map
+# Dependecies
+set(LIBDEPS STEERBase STEER EVGEN Core EG MathCore)
+generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h")
+
+# Add a library to the project using the specified source files
+add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx ${CSRCS} ${FSRCS})
+target_link_libraries(${MODULE} STEERBase STEER EVGEN Core EG MathCore)
+
+# Additional compilation and linking flags
+set(CMAKE_C_FLAGS "-ansi ${CMAKE_C_FLAGS}")
+set(CMAKE_Fortran_FLAGS "-cpp")
+set(MODULE_COMPILE_FLAGS "-O -g")
+set(MODULE_LINK_FLAGS)
+
+# System dependent: Modify the way the library is build
+if(${CMAKE_SYSTEM} MATCHES Darwin)
+    set(MODULE_LINK_FLAGS "-undefined dynamic_lookup ${MODULE_LINK_FLAGS}")
+endif(${CMAKE_SYSTEM} MATCHES Darwin)
+
+# Target properties
+set_target_properties(${MODULE} PROPERTIES FORTRAN_FLAGS "")
+set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "${MODULE_COMPILE_FLAGS}")
+set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "${MODULE_LINK_FLAGS}")
+
+# Installation
+install(TARGETS ${MODULE}
+        ARCHIVE DESTINATION lib
+        LIBRARY DESTINATION lib)
+install(FILES ${HDRS} DESTINATION include)