# -*- mode: makefile -*- # # Makefile definitions included by the top Makefile # The macro below is expanded when 'realpath' is not built-in. # Built-in 'realpath' is available on GNU Make 3.81. realpath = $(shell cd $(1); pwd) ROOT_SRCDIR := $(call realpath, @top_srcdir@) ROOT_OBJDIR := $(call realpath, @top_builddir@) ifndef ROOT_SRCDIR $(error Error determining ROOT_SRCDIR) endif ifndef ROOT_OBJDIR $(error Error determining ROOT_OBJDIR) endif # The macro below strips off the source dir path to make a relative path name stripsrc = $(subst $(ROOT_SRCDIR)/,,$(1)) # This macro creates the list of pcm files to be passed to a library # dictionary generation step, something like # $(call pcm_rootcling_opt,$(TREELIBDEPM)) pcm_rootcling_opt = -m lib/libCore_rdict.pcm $(addprefix -m ,$(subst $(SOEXT),_rdict.pcm,$1)) # This macro returns the name of the pcm corresponding to a library # $(call pcmname,$(TREELIB)) pcmname = $(subst .$(SOEXT),_rdict.pcm,$1) # This macro returns the list of pcm's that are needed for a package # $(call pcmdep,TREE) # the argument is the upper case name of the library (see the Module.mk) pcmdep = lib/libCore_rdict.pcm $(subst .$(SOEXT),_rdict.pcm,$($1LIBDEPM)) # This macro builds the rootmap name starting from the library full path # $(call rmfName, TREELIB) # the argument is the upper case name of the library (see the Module.mk) rmfName = $(dir $1)$(subst .$(SOEXT),.rootmap,$(notdir $1)) # This macro returns the arguments to be passed to rootcling to properly # generate the rootmap file # $(call rootmapModule, TREELIB) # the argument is the upper case name of the library (see the Module.mk) rootmapModule = -rml $(notdir $1) -rmf $(call rmfName, $1) # This macro returns the argument to be passed to rootcling to # properly setup the pcm # $(call dictModule,TREE) # the argument is the upper case name of the library (see the Module.mk) dictModule = -s $($1LIB) $(call rootmapModule, $($1LIB)) $(call pcm_rootcling_opt, $($1LIBDEPM)) # This macro is used to setup the rule where the pcm depends on the # dictionary and the library's dependent pcm's # $(call pcmrule,TREE) # the argument is the upper case name of the library (see the Module.mk) pcmrule = $(call pcmname, $($1LIB)): $(call pcmdep, $1) $($1DS) noop = @true # "Do nothing really, this is just to make the rule stick" ARCH := @architecture@ HOST := @host@ @rootbuild@ USECONFIG := @useconfig@ MKLIBOPTIONS := @mkliboption@ EXTRA_CFLAGS := -Iinclude @cflags@ USERCONF_CFLAGS:= @usercflags@ EXTRA_CXXFLAGS := -Iinclude @cflags@ USERCONF_CXXFLAGS:= @usercxxflags@ EXTRA_LDFLAGS := @ldflags@ WERROR := @werror@ WINRTDEBUG := @winrtdebug@ CTORSINITARRAY := @ctorsinitarray@ CXXMKDEPFLAGS := @cxxmkdepflags@ GLBPATCHFLAGS := @glbpatchcflags@ EXTRA_AUTHFLAGS:= @srpextracflags@ @krb5extracflags@ @glbextracflags@ @sslextracflags@ BINDIR := @bindir@ LIBDIR := @libdir@ INCDIR := @incdir@ ETCDIR := @etcdir@ MANDIR := @mandir@ DATADIR := @datadir@ ELISPDIR := @elispdir@ TTFFONTDIR := @ttffontdir@ MACRODIR := @macrodir@ SRCDIR := @srcdir@ ICONPATH := @iconpath@ DOCDIR := @docdir@ TESTDIR := @testdir@ TUTDIR := @tutdir@ ACLOCALDIR := @aclocaldir@ BUILDX11 := @buildx11@ X11INCDIR := $(filter-out /usr/include, @x11incdir@) X11LIBDIR := @x11libdir@ XPMLIBDIR := @xpmlibdir@ XPMLIB := @xpmlib@ XFTLIB := @enable_xft@ BUILDCOCOA := @buildcocoa@ MACOSXVERS := @macosxvers@ OSXSDK := @osxsdk@ IOSVERS := @iosvers@ IOSSDK := @iossdk@ CXX11 := @c++11@ CXX14 := @c++14@ LIBCXX := @libc++@ EXPLICITLINK := @explicitlink@ ENABLETHREAD := @enable_thread@ OSTHREADFLAG := @threadflag@ OSTHREADLIBDIR := @threadlibdir@ OSTHREADLIB := @threadlib@ BUILTINFREETYPE:= @builtinfreetype@ BUILTINPCRE := @builtinpcre@ BUILTINZLIB := @builtinzlib@ ZLIBLIBDIR := @zliblibdir@ ZLIBCLILIB := @zliblib@ ZLIBINCDIR := $(filter-out /usr/include, @zlibincdir@) BUILTINLZMA := @builtinlzma@ LZMALIBDIR := @lzmalibdir@ LZMACLILIB := @lzmalib@ LZMAINCDIR := $(filter-out /usr/include, @lzmaincdir@) BUILDGL := @buildgl@ OPENGLLIBDIR := @opengllibdir@ OPENGLULIB := @openglulib@ OPENGLLIB := @opengllib@ OPENGLINCDIR := $(filter-out /usr/include, @openglincdir@) BUILDLDAP := @buildldap@ LDAPLIBDIR := @ldaplibdir@ LDAPCLILIB := @ldaplib@ LDAPINCDIR := $(filter-out /usr/include, @ldapincdir@) BUILDMYSQL := @buildmysql@ MYSQLLIBDIR := @mysqllibdir@ MYSQLCLILIB := @mysqllib@ MYSQLINCDIR := $(filter-out /usr/include, @mysqlincdir@) BUILDORACLE := @buildoracle@ ORACLELIBDIR := @oraclelibdir@ ORACLECLILIB := @oraclelib@ ORACLEINCDIR := $(filter-out /usr/include, @oracleincdir@) BUILDPGSQL := @buildpgsql@ PGSQLLIBDIR := @pgsqllibdir@ PGSQLCLILIB := @pgsqllib@ PGSQLINCDIR := $(filter-out /usr/include, @pgsqlincdir@) BUILDSQLITE := @buildsqlite@ SQLITELIBDIR := @sqlitelibdir@ SQLITECLILIB := @sqlitelib@ SQLITEINCDIR := $(filter-out /usr/include, @sqliteincdir@) BUILDSAPDB := @buildsapdb@ SAPDBLIBDIR := @sapdblibdir@ SAPDBCLILIB := @sapdblib@ SAPDBINCDIR := $(filter-out /usr/include, @sapdbincdir@) BUILDODBC := @buildodbc@ ODBCLIBDIR := @odbclibdir@ ODBCCLILIB := @odbclib@ ODBCINCDIR := $(filter-out /usr/include, @odbcincdir@) BUILDGEOCAD := @buildgeocad@ OCCLIBDIR := @occlibdir@ OCCLIB := @occlib@ OCCINCDIR := $(filter-out /usr/include, @occincdir@) BUILDQT := @buildqt@ BUILDQTGSI := @buildqtgsi@ QTLIBDIR := @qtlibdir@ QTLIB := @qtlib@ QTINCDIR := $(filter-out /usr/include, @qtincdir@) QTVERS := @qtvers@ QTMOCEXE := @qtmocexe@ BUILDRFIO := @buildrfio@ SHIFTLIBDIR := @shiftlibdir@ SHIFTLIB := @shiftlib@ SHIFTINCDIR := $(filter-out /usr/include, @shiftincdir@) SHIFTCFLAGS := @shiftcflags@ BUILDCASTOR := @buildcastor@ CASTORLIBDIR := @castorlibdir@ CASTORCLILIB := @castorlib@ CASTORINCDIR := $(filter-out /usr/include, @castorincdir@) CASTORCFLAGS := @castorcflags@ BUILDDAVIX := @builddavix@ DAVIXLIBDIR := @davixlibdir@ DAVIXCLILIB := @davixlib@ DAVIXINCDIR := $(filter-out /usr/include, @davixincdir@) BUILDDCAP := @builddcap@ DCAPLIBDIR := @dcaplibdir@ DCAPLIB := @dcaplib@ DCAPINCDIR := $(filter-out /usr/include, @dcapincdir@) BUILDFTGL := @buildftgl@ FTGLLIBDIR := @ftgllibdir@ FTGLLIBS := @ftgllibs@ FTGLINCDIR := $(filter-out /usr/include, @ftglincdir@) ifeq ($(BUILDFTGL), yes) FTGLCPPFLAGS := -DBUILTIN_FTGL endif BUILDGLEW := @buildglew@ GLEWLIBDIR := @glewlibdir@ GLEWLIBS := @glewlibs@ GLEWINCDIR := $(filter-out /usr/include, @glewincdir@) ifeq ($(BUILDGLEW), yes) GLEWCPPFLAGS := -DBUILTIN_GLEW endif BUILDGFAL := @buildgfal@ GFALLIBDIR := @gfallibdir@ GFALCLILIB := @gfallib@ GFALINCDIR := $(filter-out /usr/include, @gfalincdir@) SRMIFCEINCDIR := $(filter-out /usr/include, @srmifceincdir@) GLIB2INCDIR := $(filter-out /usr/include, @glib2incdir@) BUILDGLITE := @buildglite@ GLITELIBDIR := @glitelibdir@ GAWLIB := @glitelib@ GAW_CPPFLAGS := $(filter-out /usr/include, @gaw_cppflags@) BUILDMEMSTAT := @buildmemstat@ BUILDBONJOUR := @buildbonjour@ DNSSDLIBDIR := @dnssdlibdir@ DNSSDLIB := @dnssdlib@ DNSSDINCDIR := $(filter-out /usr/include, @dnssdincdir@) BUILDCHIRP := @buildchirp@ CHIRPLIBDIR := @chirplibdir@ CHIRPCLILIB := @chirplib@ CHIRPINCDIR := $(filter-out /usr/include, @chirpincdir@) BUILDHDFS := @buildhdfs@ HDFSLIBDIR := @hdfslibdir@ HDFSCLILIB := @hdfslib@ HDFSINCDIR := $(filter-out /usr/include, @hdfsincdir@) JNIINCDIR := $(filter-out /usr/include, @jniincdir@) $(filter-out /usr/include, @jniincdir@/linux) JVMCLILIB := @jvmlib@ JVMLIBDIR := @jvmlibdir@ BUILDALIEN := @buildalien@ ALIENLIBDIR := @alienlibdir@ ALIENCLILIB := @alienlib@ ALIENINCDIR := $(filter-out /usr/include, @alienincdir@) BUILDASIMAGE := @buildasimage@ BUILTINASIMAGE := @builtinafterimage@ ASEXTRALIB := @asextralib@ ASEXTRALIBDIR := @asextralibdir@ ASJPEGINCDIR := $(filter-out /usr/include, @asjpegincdir@) ASPNGINCDIR := $(filter-out /usr/include, @aspngincdir@) ASTIFFINCDIR := $(filter-out /usr/include, @astiffincdir@) ASINCDIR := $(filter-out /usr/include, @asimageincdir@) ASLIB := @asimagelib@ ASLIBDIR := @asimagelibdir@ BUILDFPYTHIA6 := @buildpythia6@ FPYTHIA6LIBDIR := @pythia6libdir@ FPYTHIA6LIB := @pythia6lib@ FPYTHIA6CPPFLAGS := @pythia6cppflags@ BUILDFPYTHIA8 := @buildpythia8@ FPYTHIA8INCDIR := $(filter-out /usr/include, @pythia8incdir@) FPYTHIA8LIBDIR := @pythia8libdir@ FPYTHIA8LIB := @pythia8lib@ BUILDFFTW3 := @buildfftw3@ FFTW3LIBDIR := @fftw3libdir@ FFTW3LIB := @fftw3lib@ FFTW3INCDIR := $(filter-out /usr/include, @fftw3incdir@) BUILDFITSIO := @buildfitsio@ CFITSIOLIBDIR := @cfitsiolibdir@ CFITSIOLIB := @cfitsiolib@ CFITSIOINCDIR := $(filter-out /usr/include, @cfitsioincdir@) BUILDGVIZ := @buildgviz@ GRAPHVIZLIBDIR := @gvizlibdir@ GRAPHVIZLIB := @gvizlib@ GRAPHVIZINCDIR := $(filter-out /usr/include, @gvizincdir@) GRAPHVIZCFLAGS := @gvizcflags@ BUILDPYTHON := @buildpython@ PYTHONLIBDIR := @pythonlibdir@ PYTHONLIB := @pythonlib@ PYTHONINCDIR := $(filter-out /usr/include, @pythonincdir@) PYTHONLIBFLAGS := @pythonlibflags@ BUILDRUBY := @buildruby@ RUBYLIBDIR := @rubylibdir@ RUBYLIB := @rubylib@ RUBYINCDIR := $(filter-out /usr/include, @rubyincdir@) BUILDXML := @buildxml@ XMLLIBDIR := @xmllibdir@ XMLCLILIB := @xmllib@ XMLINCDIR := $(filter-out /usr/include, @xmlincdir@) HASXRD := @hasxrd@ XRDINCDIR := @xrdincdir@ XRDLIBDIR := @xrdlibdir@ EXTRA_XRDFLAGS := @extraxrdflags@ XRDVERSION := @xrdversion@ HASXRDUTILS := @hasxrdutils@ XRDINCPRIVATE := @xrdincprivate@ BUILDNETXNG := @buildnetxng@ BUILDXPROOFD := @buildxproofd@ BUILDXRDCLT := @buildxrdclt@ SRPLIBDIR := @srplibdir@ SRPLIB := @srplib@ SRPINCDIR := $(filter-out /usr/include, @srpincdir@) BUILDSRPUTIL := @buildsrputil@ SRPUTILLIBDIR := @srputillibdir@ SRPUTILLIB := @srputillib@ SRPUTILINCDIR := $(filter-out /usr/include, @srputilincdir@) AFSLIB := @afslib@ AFSLIBDIR := @afslibdir@ AFSINCDIR := @afsincdir@ AFSEXTRACFLAGS := @afsextracflags@ AFSSHARED := @afsshared@ ALLOCLIB := @alloclib@ ALLOCLIBDIR := @alloclibdir@ BUILDKRB5 := @buildkrb5@ KRB5LIB := @krb5lib@ KRB5LIBDIR := @krb5libdir@ KRB5INCDIR := $(filter-out /usr/include, @krb5incdir@) KRB5INIT := @krb5init@ COMERRLIB := @comerrlib@ COMERRLIBDIR := @comerrlibdir@ RESOLVLIB := @resolvlib@ CRYPTOLIB := @cryptolib@ CRYPTOLIBDIR := @cryptolibdir@ BUILDGLOBUS := @buildglobus@ GLOBUSLIB := @globuslib@ GLOBUSLIBDIR := @globuslibdir@ GLOBUSINCDIR := $(filter-out /usr/include, @globusincdir@) BUILDMONALISA := @buildmonalisa@ MONALISALIBDIR := @monalisalibdir@ MONALISACLILIB := @monalisalib@ MONALISAINCDIR := $(filter-out /usr/include, @monalisaincdir@) SSLLIB := @ssllib@ SSLLIBDIR := @ssllibdir@ SSLINCDIR := $(filter-out /usr/include, @sslincdir@) SSLSHARED := @sslshared@ BUILTINLZMA := @builtinlzma@ LZMALIBDIR := @lzmalibdir@ LZMACLILIB := @lzmalib@ LZMAINCDIR := $(filter-out /usr/include, @lzmaincdir@) SHADOWFLAGS := @shadowpw@ SHADOWLIB := SHADOWLIBDIR := BUILDGENVECTOR := @buildgenvector@ BUILDMATHMORE := @buildmathmore@ GSLFLAGS := $(filter-out -I/usr/include, @gslflags@) GSLLIBDIR := @gsllibdir@ GSLLIBS := @gsllibs@ GSLVERSION := @gslversion@ BUILTINLLVM := @builtinllvm@ LLVMCONFIG := @llvmconfig@ BUILDROOFIT := @buildroofit@ BUILDMINUIT2 := @buildminuit2@ BUILDUNURAN := @buildunuran@ BUILDVC := @buildvc@ BUILDVDT := @buildvdt@ AVXCXXFLAG := @avxcxxflag@ SIMDCXXFLAGS := @avxcxxflag@ @ssecxxflags@ VCFLAGS := @abiversioncxxflag@ @vcflags@ BUILDGDML := @buildgdml@ BUILDTABLE := @buildtable@ BUILDTMVA := @buildtmva@ BUILDAFDSMGRD := @buildafdsmgrd@ AFDSMGRDAPMON := @afdsmgrdapmon@ BUILDHTTP := @buildhttp@ USEFASCGI := @usefastcgi@ FASTCGIINCDIR := @fastcgiincdir@ ifeq ($(USEFASCGI), no) FASTCGIFLAGS := -DHTTP_WITHOUT_FASTCGI endif CPPUNIT := @cppunit@ GCCXML := @gccxml@ INSTALL := cp -dpR INSTALLDATA := cp -dpR INSTALLDIR := mkdir -p RSYNC := rsync -au BUILDR := @buildr@ RLIBS := @rlibs@ RFLAGS := @rflags@ ROOTDRPMREL := 1