Fork me on GitHub

source: git/doc/genMakefile.tcl@ 04e2040

Last change on this file since 04e2040 was 4586f8f, checked in by Pavel Demin <pavel.demin@…>, 4 years ago

add validation directory to Makefile

  • Property mode set to 100644
File size: 13.5 KB
RevLine 
[d7d2da3]1#!/usr/bin/env tclsh
2
3set prefix "tmp/"
4set suffix " \\\n\t"
5
6set srcSuf {.$(SrcSuf)}
7set objSuf {.$(ObjSuf)}
[5b5a56b]8set pcmSuf {$(PcmSuf)}
[d7d2da3]9set exeSuf {$(ExeSuf)}
10
11proc dependencies {fileName firstLine {force 1} {command {}}} {
12 global suffix headerFiles sourceFiles
13
14 if {[info exists sourceFiles($fileName)]} return
15
16 set sourceFiles($fileName) 1
17
18 set list {}
19 set fid [open $fileName]
20 while {! [eof $fid]} {
21 set line [gets $fid]
22 if [regexp -- {^\s*#include\s*"((\w+/)+\w+\.(h|hh))"} $line] {
23 set elements [split $line {"}]
24 set file [lindex $elements 1]
25 if [file exists $file] {
26 lappend list $file
27 set headerFiles($file) 1
28 } elseif [file exists external/$file] {
29 lappend list external/$file
30 set headerFiles(external/$file) 1
[5b5a56b]31 }
[d7d2da3]32 }
33 }
[ded7435]34
[d7d2da3]35 if {[llength $list] > 0} {
36 puts -nonewline $firstLine
37 foreach file $list {puts -nonewline $suffix$file}
38 if {$command != {}} {
[af9008e]39 puts {}
[d7d2da3]40 puts $command
41 }
[af9008e]42 puts {}
[d7d2da3]43 } elseif {$force} {
44 puts -nonewline $firstLine
45 if {$command != {}} {
[af9008e]46 puts {}
[d7d2da3]47 puts $command
48 }
[af9008e]49 puts {}
[d7d2da3]50 }
51
[ded7435]52 close $fid
[d7d2da3]53}
54
[2eb25b1]55proc dictDeps {dictPrefix args} {
[d7d2da3]56
[5b5a56b]57 global prefix suffix srcSuf objSuf pcmSuf
[d7d2da3]58
[1df571a]59 set dict [lsort [eval glob -nocomplain $args]]
[ded7435]60
[d7d2da3]61 set dictSrcFiles {}
62 set dictObjFiles {}
63
64 foreach fileName $dict {
65 regsub {LinkDef\.h} $fileName {Dict} dictName
66 set dictName $prefix$dictName
[ded7435]67
[d7d2da3]68 lappend dictSrcFiles $dictName$srcSuf
69 lappend dictObjFiles $dictName$objSuf
[5b5a56b]70 lappend dictPcmFiles [file tail $dictName$pcmSuf]
[ded7435]71
[d7d2da3]72 dependencies $fileName "$dictName$srcSuf:$suffix$fileName"
[5b5a56b]73
[479f808]74 puts -nonewline $dictName$pcmSuf:$suffix
[5b5a56b]75 puts -nonewline $dictName$srcSuf
76 puts {}
[479f808]77
78 puts -nonewline [file tail $dictName$pcmSuf]:$suffix
79 puts -nonewline $dictName$pcmSuf
80 puts {}
[d7d2da3]81 }
[ded7435]82
[2eb25b1]83 puts -nonewline "${dictPrefix}_OBJ += $suffix"
[d7d2da3]84 puts [join $dictObjFiles $suffix]
[af9008e]85 puts {}
[d7d2da3]86
[2eb25b1]87 puts -nonewline "${dictPrefix}_PCM += $suffix"
[5b5a56b]88 puts [join $dictPcmFiles $suffix]
89 puts {}
[d7d2da3]90}
91
92proc sourceDeps {srcPrefix args} {
93
94 global prefix suffix srcSuf objSuf
[ded7435]95
[1df571a]96 set source [lsort [eval glob -nocomplain $args]]
[ded7435]97
[d7d2da3]98 set srcObjFiles {}
[2eb25b1]99 set srcObjFilesFastJet {}
[c41c262]100 set srcObjFilesPythia8 {}
[ded7435]101
[d7d2da3]102 foreach fileName $source {
103 regsub {\.cc} $fileName {} srcName
104 set srcObjName $prefix$srcName
[b65ca6b]105
[c41c262]106 if {$fileName == "modules/PileUpMergerPythia8.cc"} {
107 lappend srcObjFilesPythia8 $srcObjName$objSuf
[5cecbc1]108 } elseif {([string match {modules/FastJet*.cc} $fileName] || [string match {modules/RunPUPPI.cc} $fileName]) && $srcPrefix != {FASTJET}} {
[2eb25b1]109 continue
[c41c262]110 } else {
111 lappend srcObjFiles $srcObjName$objSuf
112 }
[ded7435]113
[d7d2da3]114 dependencies $fileName "$srcObjName$objSuf:$suffix$srcName$srcSuf"
115 }
116
[af9008e]117 puts -nonewline "${srcPrefix}_OBJ += $suffix"
[d7d2da3]118 puts [join $srcObjFiles $suffix]
[af9008e]119 puts {}
[b65ca6b]120
[c466459]121 puts {ifeq ($(HAS_PYTHIA8),true)}
[c41c262]122 puts -nonewline "${srcPrefix}_OBJ += $suffix"
123 puts [join $srcObjFilesPythia8 $suffix]
124 puts {endif}
[af9008e]125 puts {}
[d7d2da3]126}
127
128proc tclDeps {} {
129
130 global prefix suffix srcSuf objSuf
[ded7435]131
[1df571a]132 set source [lsort [glob -nocomplain {external/tcl/*.c}]]
[ded7435]133
[d7d2da3]134 set srcObjFiles {}
[ded7435]135
[d7d2da3]136 foreach fileName $source {
137 if {$fileName == "tcl/tclc.c" || $fileName == "tcl/tcl.c"} continue
[ded7435]138
[d7d2da3]139 regsub {\.c} $fileName {} srcName
140 set srcObjName $prefix$srcName
[ded7435]141
[d7d2da3]142 lappend srcObjFiles $srcObjName$objSuf
[ded7435]143
[d7d2da3]144 dependencies $fileName "$srcObjName$objSuf:$suffix$fileName"
145 }
[ded7435]146
[0d60c9d]147 puts -nonewline "TCL_OBJ += $suffix"
[d7d2da3]148 puts [join $srcObjFiles $suffix]
[af9008e]149 puts {}
[d7d2da3]150}
151
[af9008e]152proc executableDeps {args} {
[d7d2da3]153
154 global prefix suffix objSuf exeSuf
[ded7435]155
[1df571a]156 set executable [lsort [eval glob -nocomplain $args]]
[ded7435]157
[d7d2da3]158 set exeFiles {}
[ded7435]159
[d7d2da3]160 foreach fileName $executable {
161 regsub {\.cpp} $fileName {} exeObjName
162 set exeObjName $prefix$exeObjName
163 set exeName [file tail $exeObjName]
164
165 lappend exeFiles $exeName$exeSuf
166 lappend exeObjFiles $exeObjName$objSuf
[ded7435]167
[d7d2da3]168 puts "$exeName$exeSuf:$suffix$exeObjName$objSuf"
[af9008e]169 puts {}
[ded7435]170
[d7d2da3]171 dependencies $fileName "$exeObjName$objSuf:$suffix$fileName"
172 }
[ded7435]173
[d7d2da3]174 if [info exists exeFiles] {
[af9008e]175 puts -nonewline "EXECUTABLE += $suffix"
[d7d2da3]176 puts [join $exeFiles $suffix]
[af9008e]177 puts {}
[d7d2da3]178 }
179 if [info exists exeObjFiles] {
[af9008e]180 puts -nonewline "EXECUTABLE_OBJ += $suffix"
[d7d2da3]181 puts [join $exeObjFiles $suffix]
[af9008e]182 puts {}
[d7d2da3]183 }
184}
185
186proc headerDeps {} {
187 global suffix headerFiles
[ded7435]188
[d7d2da3]189 foreach fileName [array names headerFiles] {
190 dependencies $fileName "$fileName:" 0 "\t@touch \$@"
191 }
192}
193
194puts {
195#
196# Makefile for ExRootAnalysis
197#
198# Author: P. Demin - UCL, Louvain-la-Neuve
199#
200# multi-platform configuration is taken from ROOT (root/test/Makefile.arch)
201#
202
203include doc/Makefile.arch
204
[5b5a56b]205ROOT_MAJOR := $(shell $(RC) --version | cut -d'.' -f1)
[d7d2da3]206
207SrcSuf = cc
[5b5a56b]208PcmSuf = _rdict.pcm
[d7d2da3]209
[1716933]210CXXFLAGS += $(ROOTCFLAGS) -Wno-write-strings -D_FILE_OFFSET_BITS=64 -DDROP_CGAL -I. -Iexternal -Iexternal/tcl
[00bcbe6]211DELPHES_LIBS = $(shell $(RC) --libs) -lEG $(SYSLIBS)
[4888f89]212DISPLAY_LIBS = $(shell $(RC) --evelibs) -lGuiHtml $(SYSLIBS)
[d7d2da3]213
[af9008e]214ifneq ($(CMSSW_FWLITE_INCLUDE_PATH),)
215HAS_CMSSW = true
[41fec5e]216CXXFLAGS += -std=c++0x -I$(subst :, -I,$(CMSSW_FWLITE_INCLUDE_PATH))
[6427420]217OPT_LIBS += -L$(subst include,lib,$(subst :, -L,$(CMSSW_FWLITE_INCLUDE_PATH)))
[af9008e]218ifneq ($(CMSSW_RELEASE_BASE),)
219CXXFLAGS += -I$(CMSSW_RELEASE_BASE)/src
220endif
221ifneq ($(LD_LIBRARY_PATH),)
[6427420]222OPT_LIBS += -L$(subst include,lib,$(subst :, -L,$(LD_LIBRARY_PATH)))
[af9008e]223endif
[e8070b6]224OPT_LIBS += -lGenVector -lFWCoreFWLite -lDataFormatsFWLite -lDataFormatsCommon -lDataFormatsPatCandidates -lDataFormatsLuminosity -lSimDataFormatsGeneratorProducts -lCommonToolsUtils -lDataFormatsCommon
[af9008e]225endif
226
[71efbfe]227# check consistency
228ifneq ($(PROMC),)
[cdbca0d]229ifneq ($(PROIO),)
230$(error Attention: PROMC and PROIO env. variables are set simultaneously. You cannot compile ProMC and ProIO readers in one compilation process due to an inconsistency in protocol buffers libraries. The suggestion is to compile these two readers in two steps. First unset PROIO variable and then \"configure; make\". After this, unset PROMC, set PROIO, and run \"configure; make\". During runs, make sure shared libraries are set correctly.)
231endif
[71efbfe]232endif
233
[af9008e]234ifneq ($(PROMC),)
235HAS_PROMC = true
[71efbfe]236$(info ProMC event reader is requested)
[6427420]237CXXFLAGS += -I$(PROMC)/include -I$(PROMC)/src
238OPT_LIBS += -L$(PROMC)/lib -lpromc -lprotoc -lprotobuf -lprotobuf-lite -lcbook -lz
[af9008e]239endif
240
[71efbfe]241ifneq ($(PROIO),)
242HAS_PROIO = true
243$(info ProIO reader is requested)
[cdbca0d]244ifeq ($(PROTOBUF),)
245$(error but PROTOBUF variable is not set.)
246endif
247PROTOBUF_FILE=$(PROTOBUF)/lib/libprotobuf.a
248ifeq ("$(wildcard $(PROTOBUF_FILE))","")
249$(error PROTOBUF variable is set, but it does not point to valid $(PROTOBUF_FILE))
250endif
251ifeq ($(LZ4),)
252$(error but LZ4 variable is not set.)
253endif
254LZ4_FILE=$(LZ4)/lib/liblz4.so
255ifeq ("$(wildcard $(LZ4_FILE))","")
256$(error LZ4 variable is set, but it does not point to valid $(LZ4_FILE))
257endif
[71efbfe]258CXXFLAGS += -I$(PROIO)/include -I$(PROTOBUF)/include -I$(LZ4)/include -I$(PROIO)/src
[cdbca0d]259OPT_LIBS += -L$(PROTOBUF)/lib -lprotobuf -L$(PROIO)/lib -lproio -lproio.pb -lz -L$(LZ4)/lib -llz4
[71efbfe]260endif
261
[14de0c0]262ifeq ($(HAS_PYTHIA8),true)
[c41c262]263ifneq ($(PYTHIA8),)
[8c72f09]264CXXFLAGS += -I$(PYTHIA8)/include
265CXXFLAGS += -I$(PYTHIA8)/include/Pythia8
[4888f89]266OPT_LIBS += -L$(PYTHIA8)/lib -lpythia8 -ldl -lz
[c41c262]267endif
[14de0c0]268endif
[c41c262]269
[6427420]270DELPHES_LIBS += $(OPT_LIBS)
271DISPLAY_LIBS += $(OPT_LIBS)
272
[d7d2da3]273###
274
[2eb25b1]275NOFASTJET = libDelphesNoFastJet.$(DllSuf)
276NOFASTJETLIB = libDelphesNoFastJet.lib
277
[00bcbe6]278DELPHES = libDelphes.$(DllSuf)
279DELPHESLIB = libDelphes.lib
280
281DISPLAY = libDelphesDisplay.$(DllSuf)
282DISPLAYLIB = libDelphesDisplay.lib
[d7d2da3]283
[a63afb1]284VERSION = x.y.z
[d7d2da3]285DISTDIR = Delphes-$(VERSION)
286DISTTAR = $(DISTDIR).tar.gz
287
288all:
289
290}
291
[4586f8f]292executableDeps {converters/*.cpp} {examples/*.cpp} {validation/*.cpp}
[af9008e]293
[3873449]294executableDeps {readers/DelphesHepMC.cpp} {readers/DelphesLHEF.cpp} {readers/DelphesSTDHEP.cpp} {readers/DelphesROOT.cpp}
[af9008e]295
296puts {ifeq ($(HAS_CMSSW),true)}
297executableDeps {readers/DelphesCMSFWLite.cpp}
298puts {endif}
299puts {}
300
301puts {ifeq ($(HAS_PROMC),true)}
302executableDeps {readers/DelphesProMC.cpp}
303puts {endif}
304puts {}
305
[71efbfe]306puts {ifeq ($(HAS_PROIO),true)}
307executableDeps {readers/DelphesProIO.cpp}
308puts {endif}
309puts {}
310
[af9008e]311puts {ifeq ($(HAS_PYTHIA8),true)}
312executableDeps {readers/DelphesPythia8.cpp}
[0d60c9d]313dictDeps {DELPHES_DICT} {modules/Pythia8LinkDef.h}
[af9008e]314puts {endif}
315puts {}
[d7d2da3]316
[0d60c9d]317dictDeps {DELPHES_DICT} {classes/ClassesLinkDef.h} {modules/ModulesLinkDef.h} {external/ExRootAnalysis/ExRootAnalysisLinkDef.h}
[00bcbe6]318
[2eb25b1]319dictDeps {FASTJET_DICT} {modules/FastJetLinkDef.h}
320
[0d60c9d]321dictDeps {DISPLAY_DICT} {display/DisplayLinkDef.h}
[00bcbe6]322
[ff9fb2d9]323sourceDeps {DELPHES} {classes/*.cc} {modules/*.cc} {external/ExRootAnalysis/*.cc} {external/Hector/*.cc} {external/TrackCovariance/*.cc}
[2eb25b1]324
[cdbca0d]325sourceDeps {FASTJET} {modules/FastJet*.cc} {modules/RunPUPPI.cc} {external/PUPPI/*.cc} {external/fastjet/*.cc} {external/fastjet/tools/*.cc} {external/fastjet/plugins/*/*.cc} {external/fastjet/contribs/*/*.cc}
[d7d2da3]326
[00bcbe6]327sourceDeps {DISPLAY} {display/*.cc}
[d7d2da3]328
329tclDeps
330
331headerDeps
332
333puts {
334
335###
336
[5b5a56b]337ifeq ($(ROOT_MAJOR),6)
[2eb25b1]338all: $(NOFASTJET) $(DELPHES) $(DELPHES_DICT_PCM) $(FASTJET_DICT_PCM) $(EXECUTABLE)
[5b5a56b]339display: $(DISPLAY) $(DISPLAY_DICT_PCM)
340else
[2eb25b1]341all: $(NOFASTJET) $(DELPHES) $(EXECUTABLE)
[00bcbe6]342display: $(DISPLAY)
[5b5a56b]343endif
[00bcbe6]344
[2eb25b1]345$(NOFASTJET): $(DELPHES_DICT_OBJ) $(DELPHES_OBJ) $(TCL_OBJ)
346 @mkdir -p $(@D)
347 @echo ">> Building $@"
348ifeq ($(ARCH),aix5)
349 @$(MAKESHARED) $(OutPutOpt) $@ $(DELPHES_LIBS) -p 0 $^
350else
351ifeq ($(PLATFORM),macosx)
352# We need to make both the .dylib and the .so
353 @$(LD) $(SOFLAGS)$@ $(LDFLAGS) $^ $(OutPutOpt) $@ $(DELPHES_LIBS)
354ifneq ($(subst $(MACOSX_MINOR),,1234),1234)
355ifeq ($(MACOSX_MINOR),4)
356 @ln -sf $@ $(subst .$(DllSuf),.so,$@)
357endif
358endif
359else
360ifeq ($(PLATFORM),win32)
361 @bindexplib $* $^ > $*.def
362 @lib -nologo -MACHINE:IX86 $^ -def:$*.def $(OutPutOpt)$(NOFASTJETLIB)
363 @$(LD) $(SOFLAGS) $(LDFLAGS) $^ $*.exp $(DELPHES_LIBS) $(OutPutOpt)$@
364 @$(MT_DLL)
365else
366 @$(LD) $(SOFLAGS) $(LDFLAGS) $^ $(OutPutOpt) $@ $(DELPHES_LIBS)
367 @$(MT_DLL)
368endif
369endif
370endif
371
372$(DELPHES): $(DELPHES_DICT_OBJ) $(FASTJET_DICT_OBJ) $(DELPHES_OBJ) $(FASTJET_OBJ) $(TCL_OBJ)
[d7d2da3]373 @mkdir -p $(@D)
374 @echo ">> Building $@"
375ifeq ($(ARCH),aix5)
[00bcbe6]376 @$(MAKESHARED) $(OutPutOpt) $@ $(DELPHES_LIBS) -p 0 $^
[d7d2da3]377else
378ifeq ($(PLATFORM),macosx)
379# We need to make both the .dylib and the .so
[00bcbe6]380 @$(LD) $(SOFLAGS)$@ $(LDFLAGS) $^ $(OutPutOpt) $@ $(DELPHES_LIBS)
[d7d2da3]381ifneq ($(subst $(MACOSX_MINOR),,1234),1234)
382ifeq ($(MACOSX_MINOR),4)
383 @ln -sf $@ $(subst .$(DllSuf),.so,$@)
384endif
385endif
386else
387ifeq ($(PLATFORM),win32)
388 @bindexplib $* $^ > $*.def
[00bcbe6]389 @lib -nologo -MACHINE:IX86 $^ -def:$*.def $(OutPutOpt)$(DELPHESLIB)
390 @$(LD) $(SOFLAGS) $(LDFLAGS) $^ $*.exp $(DELPHES_LIBS) $(OutPutOpt)$@
[d7d2da3]391 @$(MT_DLL)
392else
[00bcbe6]393 @$(LD) $(SOFLAGS) $(LDFLAGS) $^ $(OutPutOpt) $@ $(DELPHES_LIBS)
394 @$(MT_DLL)
395endif
396endif
397endif
398
[2eb25b1]399$(DISPLAY): $(DELPHES_DICT_OBJ) $(FASTJET_DICT_OBJ) $(DISPLAY_DICT_OBJ) $(DELPHES_OBJ) $(FASTJET_OBJ) $(DISPLAY_OBJ) $(TCL_OBJ)
[00bcbe6]400 @mkdir -p $(@D)
401 @echo ">> Building $@"
402ifeq ($(ARCH),aix5)
403 @$(MAKESHARED) $(OutPutOpt) $@ $(DISPLAY_LIBS) -p 0 $^
404else
405ifeq ($(PLATFORM),macosx)
406# We need to make both the .dylib and the .so
407 @$(LD) $(SOFLAGS)$@ $(LDFLAGS) $^ $(OutPutOpt) $@ $(DISPLAY_LIBS)
408ifneq ($(subst $(MACOSX_MINOR),,1234),1234)
409ifeq ($(MACOSX_MINOR),4)
410 @ln -sf $@ $(subst .$(DllSuf),.so,$@)
411endif
412endif
413else
414ifeq ($(PLATFORM),win32)
415 @bindexplib $* $^ > $*.def
416 @lib -nologo -MACHINE:IX86 $^ -def:$*.def $(OutPutOpt)$(DISPLAYLIB)
417 @$(LD) $(SOFLAGS) $(LDFLAGS) $^ $*.exp $(DISPLAY_LIBS) $(OutPutOpt)$@
418 @$(MT_DLL)
419else
420 @$(LD) $(SOFLAGS) $(LDFLAGS) $^ $(OutPutOpt) $@ $(DISPLAY_LIBS)
[d7d2da3]421 @$(MT_DLL)
422endif
423endif
424endif
425
426clean:
[2eb25b1]427 @rm -f $(DELPHES_DICT_OBJ) $(DISPLAY_DICT_OBJ) $(DELPHES_OBJ) $(FASTJET_OBJ) $(DISPLAY_OBJ) $(TCL_OBJ) core
[00bcbe6]428 @rm -rf tmp
[d7d2da3]429
430distclean: clean
[2eb25b1]431 @rm -f $(NOFASTJET) $(NOFASTJETLIB) $(DELPHES) $(DELPHESLIB) $(DELPHES_DICT_PCM) $(FASTJET_DICT_PCM) $(DISPLAY) $(DISPLAYLIB) $(DISPLAY_DICT_PCM) $(EXECUTABLE)
[d7d2da3]432
433dist:
434 @echo ">> Building $(DISTTAR)"
435 @mkdir -p $(DISTDIR)
[a63afb1]436 @cp -a AUTHORS CHANGELOG CMakeLists.txt COPYING DelphesEnv.sh LICENSE NOTICE README README_4LHCb Makefile MinBias.pileup configure cards classes converters display doc examples external modules python readers validation $(DISTDIR)
[d7d2da3]437 @find $(DISTDIR) -depth -name .\* -exec rm -rf {} \;
438 @tar -czf $(DISTTAR) $(DISTDIR)
439 @rm -rf $(DISTDIR)
440
441###
442
[5b5a56b]443.SUFFIXES: .$(SrcSuf) .$(ObjSuf) .$(DllSuf) $(PcmSuf)
[d7d2da3]444
445%Dict.$(SrcSuf):
446 @mkdir -p $(@D)
447 @echo ">> Generating $@"
[0d60c9d]448 @rootcint -f $@ -c -Iexternal $<
[d7d2da3]449 @mv $@ $@.base
[0f2e086]450 @cat $< $@.base > $@
451 @rm $@.base
[d7d2da3]452
[7955405]453$(DELPHES_DICT_PCM): %Dict$(PcmSuf):
454 @echo ">> Copying $@"
455 @cp $< $@
456
457$(FASTJET_DICT_PCM): %Dict$(PcmSuf):
458 @echo ">> Copying $@"
459 @cp $< $@
460
461$(DISPLAY_DICT_PCM): %Dict$(PcmSuf):
[5b5a56b]462 @echo ">> Copying $@"
463 @cp $< $@
464
[00bcbe6]465$(DELPHES_OBJ): tmp/%.$(ObjSuf): %.$(SrcSuf)
466 @mkdir -p $(@D)
467 @echo ">> Compiling $<"
468 @$(CXX) $(CXXFLAGS) -c $< $(OutPutOpt)$@
469
[2eb25b1]470$(FASTJET_OBJ): tmp/%.$(ObjSuf): %.$(SrcSuf)
471 @mkdir -p $(@D)
472 @echo ">> Compiling $<"
473 @$(CXX) $(CXXFLAGS) -c $< $(OutPutOpt)$@
474
[00bcbe6]475$(DISPLAY_OBJ): tmp/%.$(ObjSuf): %.$(SrcSuf)
476 @mkdir -p $(@D)
477 @echo ">> Compiling $<"
478 @$(CXX) $(CXXFLAGS) -c $< $(OutPutOpt)$@
479
480$(DELPHES_DICT_OBJ): %.$(ObjSuf): %.$(SrcSuf)
[d7d2da3]481 @mkdir -p $(@D)
482 @echo ">> Compiling $<"
483 @$(CXX) $(CXXFLAGS) -c $< $(OutPutOpt)$@
484
[2eb25b1]485$(FASTJET_DICT_OBJ): %.$(ObjSuf): %.$(SrcSuf)
486 @mkdir -p $(@D)
487 @echo ">> Compiling $<"
488 @$(CXX) $(CXXFLAGS) -c $< $(OutPutOpt)$@
489
[00bcbe6]490$(DISPLAY_DICT_OBJ): %.$(ObjSuf): %.$(SrcSuf)
[d7d2da3]491 @mkdir -p $(@D)
492 @echo ">> Compiling $<"
493 @$(CXX) $(CXXFLAGS) -c $< $(OutPutOpt)$@
494
495$(TCL_OBJ): tmp/%.$(ObjSuf): %.c
496 @mkdir -p $(@D)
497 @echo ">> Compiling $<"
[9582d01]498 @$(CC) $(patsubst -std=%,,$(CXXFLAGS)) -c $< $(OutPutOpt)$@
[d7d2da3]499
500$(EXECUTABLE_OBJ): tmp/%.$(ObjSuf): %.cpp
501 @mkdir -p $(@D)
502 @echo ">> Compiling $<"
503 @$(CXX) $(CXXFLAGS) -c $< $(OutPutOpt)$@
504
[2eb25b1]505$(EXECUTABLE): %$(ExeSuf): $(DELPHES_DICT_OBJ) $(FASTJET_DICT_OBJ) $(DELPHES_OBJ) $(FASTJET_OBJ) $(TCL_OBJ)
[d7d2da3]506 @echo ">> Building $@"
[00bcbe6]507 @$(LD) $(LDFLAGS) $^ $(DELPHES_LIBS) $(OutPutOpt)$@
[d7d2da3]508
509###
510
511}
Note: See TracBrowser for help on using the repository browser.