2 #_______________________________________________________________________________
3 Macro(CHANGE_FILE_EXTENSION OLD_EXT NEW_EXT RESULT LIST)
5 # This is probably an obsolete Macro
7 If (${OLD_EXT} MATCHES "^[*][.]+.*$")
8 String(REGEX REPLACE "^[*]+([.].*)$" "\\1" OLD_EXT1 ${OLD_EXT})
9 Endif (${OLD_EXT} MATCHES "^[*][.]+.*$")
11 If (${NEW_EXT} MATCHES "^[*][.]+.*$")
12 String(REGEX REPLACE "^[*]+([.].*)" "\\1" NEW_EXT1 ${NEW_EXT})
13 Endif (${NEW_EXT} MATCHES "^[*][.]+.*$")
16 Foreach (_current_FILE ${LIST})
18 String(REGEX REPLACE "^(.*)${OLD_EXT1}$" "\\1${NEW_EXT1}" res ${_current_FILE})
19 Set (FLIST ${FLIST} ${res})
21 Endforeach (_current_FILE ${LIST})
22 Set(${RESULT} ${FLIST})
24 Endmacro (CHANGE_FILE_EXTENSION)
26 #_______________________________________________________________________________
27 Macro (CHECK_OUT_OF_SOURCE_BUILD)
29 # Checks that the binary is built outside the source
31 String(COMPARE EQUAL "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" insource)
33 File(REMOVE_RECURSE ${CMAKE_SOURCE_DIR}/Testing)
34 File(REMOVE ${CMAKE_SOURCE_DIR}/DartConfiguration.tcl)
35 Message(FATAL_ERROR "ALIROOT should be installed as an out of source build, to keep the source directory clean. Please create a extra build directory and run the command 'cmake path_to_source_dir' in this newly created directory. You have also to delete the directory CMakeFiles and the file CMakeCache.txt in the source directory. Otherwise cmake will complain even if you run it from an out-of-source directory.")
38 EndMacro (CHECK_OUT_OF_SOURCE_BUILD)
40 #_______________________________________________________________________________
41 Function (AddLibrary LIB SRCS DHDRS)
43 # Adds an AliRoot library as a target
46 List(LENGTH SRCS _len)
48 List(GET SRCS 0 _file)
49 Get_filename_component(_path ${_file} PATH)
50 # Message(STATUS Debug ${_file} ${_path})
54 If(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${LIB}LinkDef.h)
55 Set(LDEF "${LIB}LinkDef.h")
56 Endif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${LIB}LinkDef.h)
59 If(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_path}/${LIB}LinkDef.h)
60 Set(LDEF "${_path}/${LIB}LinkDef.h")
61 Endif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_path}/${LIB}LinkDef.h)
66 # even with no cxx files, one may want to build an empty lib as a placeholder
67 # in AliRoot this is signalled by the existence of an (empty) ${LIB}LinkDef.h
68 Set(DICT "G__${LIB}.cxx")
69 Set(ASRCS ${SRCS} ${DICT})
70 Root_Generate_Dictionary("${DHDRS}" "${LDEF}" "${DICT}" "${INCLUDE_DIRECTORIES}")
72 Message(STATUS "No ${LIB}LinkDef.h found... building lib with no ROOT dict")
76 Add_Library(${LIB} SHARED ${ASRCS})
77 Target_Link_Libraries(${LIB} ${ALIROOT_LIBRARIES})
78 Set_Target_Properties(${LIB} PROPERTIES ${ALIROOT_LIBRARY_PROPERTIES})
80 Install(TARGETS ${LIB} DESTINATION ${ALIROOT_INSTALL_DIR}/lib
83 If(ALICE_STATIC_BUILD)
84 Add_Library(${LIB}_a STATIC ${ASRCS})
85 Install(TARGETS ${LIB}_a DESTINATION ${ALIROOT_INSTALL_DIR}/lib/static)
86 EndIf(ALICE_STATIC_BUILD)
89 Install(FILES ${ARGV3} DESTINATION ${ALIROOT_INSTALL_DIR}/include)
92 CheckViols(${LIB} "${SRCS}")
94 EndFunction (AddLibrary)
96 #_______________________________________________________________________________
99 String(REGEX REPLACE "${ALICE_ROOT}/?([^/]*)/?$" "\\1" ALIROOT_MODULE "${CMAKE_CURRENT_SOURCE_DIR}")
100 Add_Definitions(-D_MODULE_=\"${ALIROOT_MODULE}\")
105 #_______________________________________________________________________________
106 Function (AddExecutable BIN SRCS LIBS)
108 # Adds an AliRoot executable as a target
110 Add_Executable(${BIN} ${SRCS})
111 Target_Link_Libraries(${BIN} ${ROOT_LIBRARIES} ${LIBS})
112 Install(TARGETS ${BIN} DESTINATION ${ALIROOT_INSTALL_DIR}/bin)
114 If(ALICE_STATIC_BUILD)
115 Add_Executable(${BIN}_a ${SRCS})
117 Foreach(_lib ${LIBS})
118 Set(_ar_libs ${_ar_libs} ${_lib}_a)
119 EndForeach(_lib ${LIBS})
120 Foreach(_lib ${LIBS})
121 Set(_ar_libs ${_ar_libs} ${_lib}_a)
122 EndForeach(_lib ${LIBS})
123 Target_Link_Libraries(${BIN}_a ${ROOT_LIBRARIES} ${_ar_libs})
124 Install(TARGETS ${BIN}_a DESTINATION ${ALIROOT_INSTALL_DIR}/bin)
125 EndIf(ALICE_STATIC_BUILD)
127 CheckViols(${BIN} "${SRCS}")
129 EndFunction (AddExecutable)
131 #_______________________________________________________________________________
134 # Set up all system dependencies of AliRoot
136 Message(STATUS "Setting up system dependent parameters for ${ALICE_TARGET}" )
138 If(ALICE_TARGET STREQUAL macosx64)
141 COMMAND sw_vers -productVersion
142 OUTPUT_VARIABLE MACOSX
143 OUTPUT_STRIP_TRAILING_WHITESPACE)
145 String(REGEX REPLACE "^(.*)[.](.*)[.](.*)$" "\\1" MACOSX_MAJOR "${MACOSX}")
146 String(REGEX REPLACE "^(.*)[.](.*)[.](.*)$" "\\2" MACOSX_MINOR "${MACOSX}")
148 Message(STATUS "Mac OS X ${MACOSX_MAJOR}.${MACOSX_MINOR}")
152 # Set(CMAKE_CXX_COMPILER g++)
153 # Set(CMAKE_C_COMPILER gcc)
154 # I found no way to make this work...
155 # Set(CMAKE_CXX_LINK_EXECUTABLE
156 # "MACOSX_DEPLOYMENT_TARGET=${MACOSX_MAJOR}.${MACOSX_MINOR} ${CMAKE_CXX_LINK_EXECUTABLE}")
158 Set(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "${CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS} -flat_namespace -single_module -undefined dynamic_lookup -m64")
160 Set(CMAKE_Fortran_FLAGS "-fno-second-underscore -m64")
162 Set(CLIBDEFS "-DCERNLIB_LXIA64 -DCERNLIB_BLDLIB -DCERNLIB_CZ -DCERNLIB_PPC")
164 Set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64 -pipe -Wall -W -Wno-long-double -pipe -fbounds-check -fsigned-char -fno-common -fmessage-length=0 -Woverloaded-virtual -Weffc++ -Wconversion -Wshadow -fno-default-inline -fno-inline -I/usr/X11R6/include -I${FINK_ROOT}/include")
165 Set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64 -Wall -W -fno-common -pipe -I${FINK_ROOT}/include")
167 If(CMAKE_Fortran_COMPILER MATCHES g95)
168 Set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fbounds-check -ftrace=full -DFORTRAN_G95")
169 Execute_process(COMMAND svn info $ENV{ALICE_ROOT}
170 COMMAND g95 --print-search-dirs
171 OUTPUT_VARIABLE _out)
172 String(REGEX REPLACE "^.*install: *([^\n]*)/\n.*$" "\\1" _libdir ${_out})
173 Set(ROOT_LIBRARIES "${ROOT_LIBRARIES} -L${_libdir} -lf95")
174 Else(CMAKE_Fortran_COMPILER MATCHES g95)
175 Set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -DFORTRAN_GFORTRAN")
177 COMMAND gfortran -m64 -print-file-name=libgfortran.dylib
179 OUTPUT_STRIP_TRAILING_WHITESPACE)
180 Set(ROOT_LIBRARIES "${ROOT_LIBRARIES} ${FLIB}")
182 COMMAND gfortran -m64 -print-file-name=libgfortranbegin.a
184 OUTPUT_STRIP_TRAILING_WHITESPACE)
185 Set(ROOT_LIBRARIES "${ROOT_LIBRARIES} ${FLIB}")
186 Endif(CMAKE_Fortran_COMPILER MATCHES g95)
188 Set(LINK_FLAGS "${LINK_FLAGS} -m64")
190 # I think this is useless
191 # Set(ALIROOT_LIBRARIES "${ROOT_LIBRARIES} -L/usr/X11R6/lib -lX11")
192 Set(ALIROOT_LIBRARIES "${ROOT_LIBRARIES}")
194 # Would like to use this, but did not manage on the Mac
196 #Set(ROOT_LIBRARIES ${ROOT_LIBRARIES} ${OPENGL_LIBRARIES})
197 #Set(ROOT_INCLUDE_DIR ${ROOT_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR})
198 # Poor man's version of the above
199 Set(ALIROOT_INCLUDE_DIR ${ROOT_INCLUDE_DIR} /usr/X11/include)
201 Set(LINK_FLAGS "${LINK_FLAGS} -bind_at_load")
204 # LD = export MACOSX_DEPLOYMENT_TARGET=$(MACOSX_MAJOR).$(MACOSX_MINOR) ; \
205 # unset LD_PREBIND ; \
213 Endif(ALICE_TARGET STREQUAL macosx64)
215 If(ALICE_TARGET STREQUAL linuxx8664gcc)
218 Set(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "${CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS} -shared -Wl")
220 Set(CMAKE_Fortran_FLAGS "-fno-second-underscore -m64")
222 Set(CLIBDEFS "-DCERNLIB_LXIA64 -DCERNLIB_BLDLIB -DCERNLIB_CZ")
224 Set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64 -pipe -W -Wall -Weffc++ -Woverloaded-virtual -fmessage-length=0 -Wno-long-long -Dlinux -I/usr/X11R6/include")
225 Set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64 -Wall -W -pipe")
227 If(CMAKE_Fortran_COMPILER MATCHES g95)
228 Set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fbounds-check -ftrace=full -DFORTRAN_G95")
229 Execute_process(COMMAND svn info $ENV{ALICE_ROOT}
230 COMMAND g95 --print-search-dirs
231 OUTPUT_VARIABLE _out)
232 String(REGEX REPLACE "^.*install: *([^\n]*)/\n.*$" "\\1" _libdir ${_out})
233 Set(ROOT_LIBRARIES "${ROOT_LIBRARIES} -L${_libdir} -lf95")
234 Else(CMAKE_Fortran_COMPILER MATCHES g95)
235 Set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -DFORTRAN_GFORTRAN")
237 COMMAND gfortran -m64 -print-file-name=libgfortran.so
239 OUTPUT_STRIP_TRAILING_WHITESPACE)
240 Set(ROOT_LIBRARIES "${ROOT_LIBRARIES} ${FLIB}")
242 COMMAND gfortran -m64 -print-file-name=libgfortranbegin.a
244 OUTPUT_STRIP_TRAILING_WHITESPACE)
245 Set(ROOT_LIBRARIES "${ROOT_LIBRARIES} ${FLIB}")
246 Endif(CMAKE_Fortran_COMPILER MATCHES g95)
248 Set(LINK_FLAGS "${LINK_FLAGS} -m64")
250 Set(ALIROOT_LIBRARIES "${ROOT_LIBRARIES}")
252 Set(ALIROOT_INCLUDE_DIR ${ROOT_INCLUDE_DIR} /usr/X11/include)
254 Set(LINK_FLAGS "${LINK_FLAGS}")
256 Endif(ALICE_TARGET STREQUAL linuxx8664gcc)
258 EndMacro (SetupSystem)
260 # ../build/Makefile.alphacxx6
261 # # -*- mode: makefile -*-
262 # # Makefile to build AliRoot for Alpha OSF1
264 # # System dependent commands
272 # # Global optimisation
277 # CXXNOOPT = $(NOOPT)
282 # CLIBDEFS = -DCERNLIB_DECS -DCERNLIB_BLDLIB -DCERNLIB_CZ
285 # CLIBFOPT = -I. $(CLIBDEFS)
288 # CXXFLAGS = $(CXXOPT) -nostdnew -rtti -taso
289 # CXXFLAGSNO = $(CXXNOOPT) -nostdnew -rtti -taso
290 # CFLAGS = $(COPT) -fPIC -pipe -mcpu=ev5 -D__osf__ -D__alpha
291 # FFLAGS = $(FOPT) -nofor_main -warn noinformational -taso $(CLIBFOPT)
292 # # rmkdepend flags for building dependencies of FORTRAN files
293 # DEPENDFFLAGS = $(filter-out -warn noinformational,$(FFLAGS))
296 # CINTFLAGS = -D__DECCXX
302 # SOFLAGS = -L/usr/lib/cmplrs/cxx -rpath /usr/lib/cmplrs/cxx \
303 # -expect_unresolved "*" -msym -shared -taso \
304 # /usr/lib/cmplrs/cc/crt0.o /usr/lib/cmplrs/cxx/_main.o
306 # SHLIB = -lUfor -lfor -lFutil
311 # # Flags for static libraries
312 # AFLAGS = $(filter-out -rpath /usr/lib/cmplrs/cxx -msym -shared /usr/lib/cmplrs/cc/crt0.o,$(SOFLAGS))
315 # # Additional flags and libraries for building aliroot executable
316 # SYSLIBS := -lXm -lXt -lX11 -lPW -lUfor -lfor -lFutil -lots -taso -lbsd
318 # # Cure funny problem
319 # # sometimes in dependencies system include files of the sort
320 # # /usr/.../filename AND /usr/.../filename.cc are present
321 # # DEC believes that /usr/.../filename is the executable to be
322 # # built from /usr/.../filename.cc
323 # # Just avoid this to happen
336 # ../build/Makefile.hpuxacc
337 # # -*- mode: makefile -*-
338 # # Makefile to build AliRoot on HP-UX
340 # # System dependent commands
349 # # Global optimisation
354 # CXXNOOPT = $(NOOPT)
359 # CLIBDEFS = -DCERNLIB_HPUX -DCERNLIB_BLDLIB -DCERNLIB_CZ
362 # CLIBFOPT = $(CLIBDEFS) -WF,-P
364 # CXXFLAGS = $(CXXOPT) -Wc,-ansi_for_scope,on +Z -z +W70,495,740,749,823,829 -Dextname
365 # CXXFLAGSNO = $(CXXNOOPT) -Wc,-ansi_for_scope,on +Z -z +W70,495,740,749,823,829 -Dextname
366 # CFLAGS = $(COPT) +Z -Ae
367 # FFLAGS = $(CLIBFOPT) $(FOPT) +ppu +Z
368 # # rmkdepend flags for building dependencies of FORTRAN files
369 # DEPENDFFLAGS = $(FFLAGS)
375 # LDFLAGS = $(OPT) -z -Wl,+s -Wl,-E
378 # SOFLAGS = -b /usr/lib/libm.sl
382 # # additional ROOT libraries
383 # SYSLIBS := -lcrypt -L/usr/lib/X11R6 -lX11
389 # ../build/Makefile.linux
390 # # -*- mode: makefile -*-
391 # # Makefile to build AliRoot for Linux
393 # # System dependent commands
400 # CCMAJORV = $(shell $(CC) -dumpversion | cut -d. -f1)
401 # CCMINORV = $(shell $(CC) -dumpversion | cut -d. -f2)
402 # F77 = $(shell root-config --f77)
404 # # Global optimisation
409 # CXXNOOPT = $(NOOPT)
414 # CLIBDEFS = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ
417 # CLIBFOPT = $(CLIBDEFS)
420 # ifeq ($(CCMAJORV),2)
421 # CXXFLAGS = $(OPT) -W -Wall -fPIC -pipe
422 # CXXFLAGSNO = $(NOOPT) -W -Wall -fPIC -pipe
424 # ifeq ($(CCMAJORV),3)
425 # CXXFLAGS = $(OPT) -W -Wall -Weffc++ -Woverloaded-virtual -fPIC -pipe -fmessage-length=0 -Wno-long-long -pedantic-errors -ansi -Dlinux
426 # CXXFLAGSNO = $(NOOPT) -W -Wall -Weffc++ -fPIC -pipe -fmessage-length=0 -Wno-long-long -pedantic-errors -ansi
428 # ifeq ($(CCMAJORV),4)
429 # CXXFLAGS = $(OPT) -W -Wall -Weffc++ -Woverloaded-virtual -fPIC -pipe -fmessage-length=0 -Wno-long-long -pedantic-errors -ansi -Dlinux
430 # CXXFLAGSNO = $(NOOPT) -W -Wall -Weffc++ -fPIC -pipe -fmessage-length=0 -Wno-long-long -pedantic-errors -ansi
432 # CXXFLAGS = $(OPT) -W -Wall -Woverloaded-virtual -fPIC -pipe -fmessage-length=0 -Wno-long-long -ansi -Dlinux
433 # CXXFLAGSNO = $(NOOPT) -W -Wall -Weffc++ -fPIC -pipe -fmessage-length=0 -Wno-long-long -ansi
437 # CFLAGS = $(OPT) -Wall -Werror -fPIC -pipe -Wno-long-long -pedantic-errors -ansi
438 # FFLAGS = $(CLIBFOPT) $(FOPT) -fno-second-underscore
441 # FFLAGS +=-DFORTRAN_G95
443 # ifeq (gfortran,$(F77))
444 # FFLAGS +=-DFORTRAN_GFORTRAN
450 # # rmkdepend flags for building dependencies of FORTRAN files
451 # DEPENDFFLAGS = $(FFLAGS)
460 # SOFLAGS = $(OPT) -shared -Wl
464 # SYSLIBS := -ldl -lcrypt -L/usr/X11R6/lib -lX11
467 # SHLIB += -L$(shell g95 --print-search-dirs | sed -n -e 's/install: //p') -lf95
469 # ifeq (gfortran,$(F77))
470 # SHLIB := $(shell gfortran -print-file-name=libgfortran.so)
471 # SHLIB += $(shell gfortran -print-file-name=libgfortranbegin.a)
472 # SYSLIBS += $(SHLIB)
484 # # additional ROOT libraries
491 # ../build/Makefile.linuxalphagcc
492 # # -*- mode: makefile -*-
493 # # Makefile to build AliRoot for Linux on alpha
495 # # System dependent commands
503 # CCMAJORV = $(shell $(CC) -dumpversion | cut -d. -f1)
504 # CCMINORV = $(shell $(CC) -dumpversion | cut -d. -f2)
506 # # Global optimisation
507 # OPT = -O -g -mieee -mno-soft-float
508 # NOOPT = -g -mieee -mno-soft-float
511 # CXXNOOPT = $(NOOPT)
516 # CLIBDEFS = -DCERNLIB_UNIX -DCERNLIB_DECS -DCERNLIB_BLDLIB -DCERNLIB_CZ
519 # CLIBFOPT = $(CLIBDEFS)
523 # CXXFLAGS = $(OPT) -Wall -fPIC -pipe
524 # CXXFLAGSNO = $(NOOPT) -Wall -fPIC -pipe
525 # CFLAGS = $(OPT) -Wall -fPIC -pipe -ansi
526 # FFLAGS = $(CLIBFOPT) $(FOPT) -Wall -fPIC -pipe -fno-second-underscore
527 # # rmkdepend flags for building dependencies of FORTRAN files
528 # DEPENDFFLAGS = $(FFLAGS)
537 # SOFLAGS = $(OPT) -Wall -fPIC -pipe -shared -Wl
547 # SYSLIBS := -ldl -lg2c -lcrypt -L/usr/X11R6/lib -lX11
553 # ../build/Makefile.linuxia64ecc
554 # # -*- mode: makefile -*-
555 # # Makefile for AliRoot for Itanium/Linux with Intel icc compiler
557 # # System dependent commands
566 # # Global optimisation
576 # CLIBDEFS = -DCERNLIB_LXIA64 -DCERNLIB_BLDLIB -DCERNLIB_CZ
579 # CLIBFOPT = $(CLIBDEFS)
582 # CXXFLAGS = $(CXXOPT)
583 # CXXFLAGSNO = $(CXXNOOPT)
585 # FFLAGS = $(CLIBFOPT) $(FOPT)
586 # # rmkdepend flags for building dependencies of FORTRAN files
587 # DEPENDFFLAGS = $(FFLAGS)
596 # SOFLAGS = -Wl,-soname,$$TMPLIB -shared -O
605 # # additional ROOT libraries
607 # LIBNOVER = `find /lib -name 'libNoVersion*.so' | xargs --replace basename {} .so | sed -e 's/lib/ -l/'`
609 # SYSLIBS := $(LIBNOVER) -lcrypt -L/usr/local/lib -lXt -lCEPCF90 -lF90 \
610 # -lPEPCF90 -lintrins -L/usr/X11R6/lib -lX11
611 # ../build/Makefile.linuxia64gcc
612 # # -*- mode: makefile -*-
613 # # Makefile for AliRoot for Itanium/Linux with gcc
615 # # System dependent commands
624 # # Global optimisation
629 # CXXNOOPT = $(NOOPT)
634 # CLIBDEFS = -DCERNLIB_LXIA64 -DCERNLIB_BLDLIB -DCERNLIB_CZ
637 # CLIBFOPT = $(CLIBDEFS)
640 # CXXFLAGS = $(CXXOPT) -Wall -Weffc++ -fPIC -pipe
641 # CXXFLAGSNO = $(CXXNOOPT) -Wall -Weffc++ -fPIC -pipe
642 # CFLAGS = -Wall -fPIC -pipe
643 # FFLAGS = $(CLIBFOPT) $(FOPT) -fno-second-underscore
644 # # rmkdepend flags for building dependencies of FORTRAN files
645 # DEPENDFFLAGS = $(FFLAGS)
651 # LDFLAGS = $(OPT) -Wl,-Map -Wl,$@.map
654 # SOFLAGS = -shared -Wl -O2
662 # # additional ROOT libraries
664 # LIBNOVER = `find /lib -name 'libNoVersion*.so' | xargs --replace basename {} .so | sed -e 's/lib/ -l/'`
667 # SYSLIBS := -ldl -lbsd -lg2c -L/usr/X11R6/lib -lX11 $(LIBNOVER)
673 # ../build/Makefile.linuxicc
674 # # -*- mode: makefile -*-
675 # # Makefile for AliRoot for Linux with the Intel icc compiler
677 # # System dependent commands
685 # # Compiler version:
686 # ICC_MAJOR := $(shell $(CXX) -V 2>&1 | awk '{ if (NR==1) print $$8 }' | \
688 # ICC_MINOR := $(shell $(CXX) -V 2>&1 | awk '{ if (NR==1) print $$8 }' | \
693 # # Global optimisation
698 # CXXNOOPT = $(NOOPT)
703 # CLIBDEFS = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ
706 # CLIBFOPT = $(CLIBDEFS)
709 # CXXFLAGS = $(CXXOPT)
710 # CXXFLAGSNO = $(CXXNOOPT)
712 # FFLAGS = $(CLIBFOPT) $(FOPT)
713 # # rmkdepend flags for building dependencies of FORTRAN files
714 # DEPENDFFLAGS = $(FFLAGS)
723 # SOFLAGS = -Wl,-soname,$$TMPLIB -shared $(OPT)
732 # # additional ROOT libraries
734 # LIBNOVER = `find /lib -name 'libNoVersion*.so' | xargs --replace basename {} .so | sed -e 's/lib/ -l/'`
737 # SYSLIBS := -lcrypt -L/usr/X11R6/lib -lX11 $(LIBNOVER) -L/usr/local/lib \
738 # -lXt -L$(shell which ifort | sed -e 's|bin/ifort|lib|') \
740 # ../build/Makefile.linuxx8664gcc
741 # # -*- mode: makefile -*-
742 # # Makefile to build AliRoot for Linux
744 # # System dependent commands
751 # CCMAJORV = $(shell $(CC) -dumpversion | cut -d. -f1)
752 # CCMINORV = $(shell $(CC) -dumpversion | cut -d. -f2)
753 # F77 = $(shell root-config --f77)
755 # # Global optimisation
760 # CXXNOOPT = $(NOOPT)
765 # CLIBDEFS = -DCERNLIB_LXIA64 -DCERNLIB_BLDLIB -DCERNLIB_CZ
768 # CLIBFOPT = $(CLIBDEFS)
771 # ifeq ($(CCMAJORV),2)
772 # CXXFLAGS = $(OPT) -W -Wall -fPIC -pipe -m64
773 # CXXFLAGSNO = $(NOOPT) -W -Wall -fPIC -pipe -m64
775 # ifeq ($(CCMAJORV),3)
776 # CXXFLAGS = $(OPT) -W -Wall -Weffc++ -Woverloaded-virtual -fPIC -pipe -fmessage-length=0 -Wno-long-long -pedantic-errors -ansi -Dlinux -m64
777 # CXXFLAGSNO = $(NOOPT) -W -Wall -Weffc++ -fPIC -pipe -fmessage-length=0 -Wno-long-long -pedantic-errors -ansi -m64
779 # ifeq ($(CCMAJORV),4)
780 # CXXFLAGS = $(OPT) -W -Wall -Weffc++ -Woverloaded-virtual -fPIC -pipe -fmessage-length=0 -Wno-long-long -pedantic-errors -ansi -Dlinux -m64
781 # CXXFLAGSNO = $(NOOPT) -W -Wall -Weffc++ -fPIC -pipe -fmessage-length=0 -Wno-long-long -pedantic-errors -ansi -m64
783 # CXXFLAGS = $(OPT) -W -Wall -Woverloaded-virtual -fPIC -pipe -fmessage-length=0 -Wno-long-long -ansi -Dlinux -m64
784 # CXXFLAGSNO = $(NOOPT) -W -Wall -Weffc++ -fPIC -pipe -fmessage-length=0 -Wno-long-long -ansi -m64
788 # CFLAGS = $(OPT) -Wall -Werror -fPIC -pipe -Wno-long-long -pedantic-errors -ansi -m64
789 # FFLAGS = $(CLIBFOPT) $(FOPT) -fno-second-underscore -fPIC -fno-f2c -m64
792 # FFLAGS +=-DFORTRAN_G95
794 # ifeq (gfortran,$(F77))
795 # FFLAGS +=-DFORTRAN_GFORTRAN
801 # # rmkdepend flags for building dependencies of FORTRAN files
802 # DEPENDFFLAGS = $(FFLAGS)
811 # SOFLAGS = $(OPT) -shared -Wl
815 # LIBNOVER = `find /lib64 -name 'libNoVersion*.so' | xargs --replace basename {} .so | sed -e 's/lib64/ -l/'`
817 # SYSLIBS := -ldl -lcrypt -L/usr/X11R6/lib64 -lX11 $(LIBNOVER)
820 # SHLIB += -L$(shell g95 --print-search-dirs | sed -n -e 's/install: //p') -lf95
822 # ifeq (gfortran,$(F77))
823 # SHLIB := $(shell gfortran -print-file-name=libgfortran.so)
824 # SHLIB += $(shell gfortran -print-file-name=libgfortranbegin.a)
844 # ../build/Makefile.macosx
845 # # -*- mode: makefile -*-
846 # # Makefile for AliRoot for MacOS X with gcc
851 # MACOSX_MAJOR := $(strip $(shell sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 1))
852 # MACOSX_MINOR := $(strip $(shell sw_vers | sed -n 's/ProductVersion://p' | cut -d . -f 2))
855 # FINK_ROOT := $(shell which fink | sed -e 's?/bin/fink??')
856 # ifeq (,$(FINK_ROOT))
857 # # No fink, build will probably fail, but we try a guess
858 # FINK_ROOT=/usr/local
864 # F77 = $(shell root-config --f77)
866 # # Global optimisation
871 # CXXNOOPT = $(NOOPT)
873 # FOPT = $(OPT) -fno-second-underscore
875 # FOPT += -fbounds-check
879 # CLIBDEFS = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ -DCERNLIB_PPC
882 # CLIBFOPT = $(CLIBDEFS)
884 # CXXSTF = -pipe -Wall -W -Wno-long-double -pipe -fbounds-check -fsigned-char -fno-common -fmessage-length=0 -Woverloaded-virtual -Weffc++ -Wconversion -Wshadow -fno-default-inline -fno-inline -I/usr/X11R6/include -I$(FINK_ROOT)/include
887 # CXXFLAGS = $(CXXOPT) $(CXXSTF)
889 # CXXFLAGSNO = $(CXXNOOPT) $(CXXSTF)
891 # CFLAGS = $(COPT) -Wall -W -fno-common -pipe -I$(FINK_ROOT)/include
893 # FFLAGS = $(CLIBFOPT) $(FOPT)
895 # FFLAGS += -ftrace=full
896 # FFLAGS +=-DFORTRAN_G95
898 # FFLAGS +=-DFORTRAN_GFORTRAN
901 # # rmkdepend flags for building dependencies of FORTRAN files
902 # DEPENDFFLAGS = $(FFLAGS)
907 # LD = export MACOSX_DEPLOYMENT_TARGET=$(MACOSX_MAJOR).$(MACOSX_MINOR) ; \
908 # unset LD_PREBIND ; \
910 # LDFLAGS = $(OPT) $(DICTLOAD)
913 # SOFLAGS := -bundle -undefined dynamic_lookup
918 # DYFLAGS = -dynamiclib -undefined dynamic_lookup -single_module
927 # DEPENDCXXFLAGS = $(CXXFLAGS) -I/usr/include/sys
929 # SYSLIBS := -L/usr/X11R6/lib -lX11
931 # EXEFLAGS := -bind_at_load
936 # SYSLIBS += -L$(shell g95 --print-search-dirs | sed -n -e 's/install: //p') -lf95
937 # DYLIB += -L$(shell g95 --print-search-dirs | sed -n -e 's/install: //p') -lf95
939 # SYSLIBS += -ldl $(shell $(F77) -print-file-name=libgfortran.dylib)
940 # SYSLIBS += $(shell $(F77) -print-file-name=libgfortranbegin.a)
942 # ../build/Makefile.macosxicc
943 # # -*- mode: makefile -*-
944 # # Makefile for AliRoot for MacOS X with gcc
949 # FINK_ROOT := $(shell which fink | sed -e 's?/bin/fink??')
950 # ifeq (,$(FINK_ROOT))
951 # # No fink, build will probably fail, but we try a guess
952 # FINK_ROOT=/usr/local
961 # # Global optimisation
966 # CXXNOOPT = $(NOOPT)
971 # CLIBDEFS = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ -DCERNLIB_PPC
974 # CLIBFOPT = $(CLIBDEFS)
977 # CXXFLAGS = $(CXXOPT) -fPIC -wd1476 -I/usr/X11R6/include -I$(FINK_ROOT)/include
979 # CXXFLAGSNO = $(CXXNOOPT)
981 # CFLAGS = $(COPT) -fPIC -restrict -I$(FINK_ROOT)/include
983 # FFLAGS = $(CLIBFOPT) $(FOPT)
984 # # rmkdepend flags for building dependencies of FORTRAN files
985 # DEPENDFFLAGS = $(FFLAGS)
991 # LDFLAGS = $(OPT) $(DICTLOAD)
994 # SOFLAGS := $(OPT) -dynamiclib -undefined dynamic_lookup -single_module
999 # DYFLAGS = -dynamiclib -undefined dynamic_lookup -single_module
1008 # DEPENDCXXFLAGS = $(CXXFLAGS) -I/usr/include/sys
1010 # EXEFLAGS := -bind_at_load
1014 # SYSLIBS := -L/usr/X11R6/lib -lX11 -lGL $(LIBNOVER) -L/usr/local/lib \
1015 # -lXt -L$(shell which ifort | sed -e 's|bin/ifort|lib|') \
1019 # ../build/Makefile.macosxxlc
1020 # # -*- mode: makefile -*-
1021 # # Makefile for AliRoot for MacOS X using the IBM xlc compiler
1028 # # Global optimisation
1029 # OPT = -qnoopt #-O3 -g
1033 # CXXNOOPT = $(NOOPT)
1038 # CLIBDEFS = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ
1041 # CLIBFOPT = $(shell echo $(CLIBDEFS) | sed -e's/-D/-WF,-D/g')
1044 # CXXFLAGS = $(CXXOPT) -qpic -I/sw/include \
1045 # -qflttrap=overflow:zerodivide:invalid:inexact:enable
1046 # CXXFLAGSNO = $(CXXNOOPT) -qpic -I/sw/include \
1047 # -qflttrap=overflow:zerodivide:invalid:inexact:enable
1048 # CFLAGS = -qpic -qextname -I/sw/include \
1049 # -qflttrap=overflow:zerodivide:invalid:inexact:enable
1050 # FFLAGS = $(CLIBFOPT) $(FOPT) -qpic \
1051 # -qflttrap=overflow:zerodivide:invalid:inexact:enable
1052 # # rmkdepend flags for building dependencies
1053 # DEPENDFFLAGS = $(FFLAGS)
1054 # DEPENDCXXFLAGS = $(CXXFLAGS) -I/usr/include/sys
1062 # SHLD := export MACOSX_DEPLOYMENT_TARGET=10.3 ; \
1063 # unset LD_PREBIND ; \
1065 # SOFLAGS := -bundle -undefined dynamic_lookup
1070 # DYLD := export MACOSX_DEPLOYMENT_TARGET=10.3 ; \
1071 # unset LD_PREBIND ; \
1073 # DYFLAGS = -qmkshrobj -undefined dynamic_lookup -single_module
1084 # SYSLIBS := -ldl -L/usr/X11R6/lib -lX11
1086 # EXEFLAGS := -Wl,-bind_at_load
1091 # ../build/Makefile.solarisCC5
1092 # # -*- mode: makefile -*-
1093 # # Makefile to build ALIROOT for SunOS
1095 # # System dependent commands
1100 # CXX = /opt/SUNWspro/bin/CC
1101 # CC = /opt/SUNWspro/bin/cc
1102 # F77 = /opt/SUNWspro/bin/f77
1104 # # Global optimisation
1109 # CXXNOOPT = $(NOOPT)
1114 # CLIBDEFS = -DCERNLIB_SUN -DCERNLIB_BLDLIB -DCERNLIB_CZ
1117 # CLIBFOPT = $(CLIBDEFS) -xpp=cpp
1120 # CXXFLAGS = $(CXXOPT) +w -KPIC -features=rtti -D_XOPEN_SOURCE -D_XOPEN_VERSION=4 -D__EXTENSIONS__
1121 # CXXFLAGSNO = $(CXXNOOPT) +w -KPIC -features=rtti
1122 # CFLAGS = $(COPT) -KPIC -erroff=%none
1123 # FFLAGS = $(FOPT) $(CLIBFOPT) $(CLIBDEFS) -KPIC
1124 # # rmkdepend flags for building dependencies of FORTRAN files
1125 # DEPENDFFLAGS = $(FFLAGS)
1133 # LD = /opt/SUNWspro/bin/CC
1134 # LDFLAGS = $(OPT) -Qoption ld -t
1137 # SOFLAGS = -G $(LDFLAGS) $(SHLIB)
1139 # SYSLIBS := -L/usr/dt/lib -L/usr/openwin/lib -L/usr/ccs/lib -lXm -lXt \
1140 # -lX11 -lm -lgen -ldl -lsocket -lsunmath -lfsu -lfui -lnsl
1142 # # Additional flags and libraries for building aliroot executable
1144 # EXEFLAGS := -O -Qoption ld -t
1150 # ../build/Makefile.win32gcc
1151 # # -*- mode: makefile -*-
1152 # # Makefile to build AliRoot for Linux
1154 # # System dependent commands
1162 # CCMAJORV = $(shell $(CC) -dumpversion | cut -d. -f1)
1163 # CCMINORV = $(shell $(CC) -dumpversion | cut -d. -f2)
1165 # # Global optimisation
1170 # CXXNOOPT = $(NOOPT)
1175 # CLIBDEFS = -DCERNLIB_LINUX -DCERNLIB_BLDLIB -DCERNLIB_CZ
1178 # CLIBFOPT = $(CLIBDEFS)
1181 # CXXFLAGS = $(OPT) -Wall -pipe -Woverloaded-virtual -Weffc++ -D_DLL
1182 # CXXFLAGSNO = $(NOOPT) -Wall -pipe -Woverloaded-virtual -Weffc++ -D_DLL
1183 # CFLAGS = $(OPT) -Wall -D_DLL
1184 # FFLAGS = $(CLIBFOPT) $(FOPT) -fno-second-underscore
1185 # # rmkdepend flags for building dependencies of FORTRAN files
1186 # DEPENDFFLAGS = $(FFLAGS)
1195 # SOFLAGS = $(OPT) -shared -Wl,--export-all-symbols -Wl,-soname=$$TMPLIB -Wl,--enable-auto-import -Wl,--enable-runtime-pseudo-reloc
1196 # SHLIB = $(shell root-config --libs) -lg2c
1204 # # additional ROOT libraries
1207 # SYSLIBS := -ldl -lg2c -lcrypt -L/usr/X11R6/lib -lX11