X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=Makefile;h=7dfc4d0bf5f821aa0a22d7e0c7f297d9fcfe28cd;hb=f0557f21878be17ddc75b1bc8f4f86da68c8e604;hp=b9f615525c1218780c6259a5454c4c9f5cf097cc;hpb=7489c542a7b7357a1c2bbc436d1d77c601833d3b;p=SXSI%2Fxpathcomp.git diff --git a/Makefile b/Makefile index b9f6155..7dfc4d0 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,10 @@ INLINE=1000 DEBUG=false -PROFILE=true +PROFILE=false VERBOSE=false -BASESRC=custom.ml ptset.ml finiteCofinite.ml tag.ml tagSet.ml options.ml tree.ml ata.ml -BASEMLI=sigs.mli ptset.mli finiteCofinite.mli tag.mli tagSet.mli options.mli tree.mli ata.mli +BASESRC=custom.ml memoizer.ml hcons.ml hlist.ml ptset.ml finiteCofinite.ml tag.ml tagSet.ml options.ml tree.ml ata.ml +BASEMLI=sigs.mli memoizer.mli hcons.mli hlist.mli ptset.mli finiteCofinite.mli tag.mli tagSet.mli options.mli tree.mli ata.mli MLSRCS = memory.ml $(BASESRC) ulexer.ml xPath.ml main.ml MLISRCS = memory.mli $(BASEMLI) ulexer.mli xPath.mli BASEOBJS= $(BASESRC:.ml=.cmx) @@ -17,9 +17,9 @@ OCAMLPACKAGES = str,unix,ulex,camlp4 PPINCLUDES=$(OCAMLINCLUDES:%=-ppopt %) -CXXSOURCES = XMLDocShredder.cpp SXSIStorageInterface.cpp StorageInterface.cpp OCamlDriver.cpp -CXXOBJECTS = $(CXXSOURCES:.cpp=.o) - +CXXSOURCES = results.c XMLDocShredder.cpp OCamlDriver.cpp +CXXOBJECTS1 = $(CXXSOURCES:.cpp=.o) +CXXOBJECTS = $(CXXOBJECTS1:.c=.o) CXXINCLUDES = \ -I/usr/include/libxml++-2.6 \ -I/usr/include/libxml2 \ @@ -36,6 +36,7 @@ CXXINCLUDES = \ -IXMLTree/TextCollection CXXFLAGS = -O3 -Wall $(INCLUDEDIRS) -fPIC -std=c++0x + ifeq ($(VERBOSE),true) HIDE= else @@ -44,15 +45,21 @@ endif ifeq ($(DEBUG), true) CXX = g++ -DDEBUG -OCAMLOPT = ocamlopt -g -cc "$(CXX)" +DEBUG_FLAGS = -g SYNT_DEBUG = -ppopt -DDEBUG else -CXX = g++ -OCAMLOPT = ocamlopt -nodynlink -cc "$(CXX)" -ccopt -O3 -ccopt -std=c++0x -noassert -inline $(INLINE) +CXX = g++ endif + ifeq ($(PROFILE), true) -SYNT_PROF = $(SYNT_DEBUG) -ppopt -DPROFILE +PROFILE_FLAGS = -p +SYNT_PROF = -ppopt -DPROFILE endif +SYNT_FLAGS = $(SYNT_DEBUG) $(SYNT_PROF) +OPT_FLAGS = $(DEBUG_FLAGS) $(PROFILE_FLAGS) -nodynlink + +OCAMLOPT = ocamlopt -cc "$(CXX)" $(OPT_FLAGS) -ccopt -O3 -ccopt -std=c++0x -noassert -inline $(INLINE) + OCAMLFIND = ocamlfind OCAMLMKLIB = ocamlmklib @@ -60,7 +67,7 @@ OCAMLDEP = ocamldep #Ugly but seems difficult with a makefile LINK=$(OCAMLOPT) -linkpkg `ocamlc -version | grep -q "3.11.0" && echo dynlink.cmxa` camlp4lib.cmxa -SYNTAX= -syntax camlp4o $(PPINCLUDES) -ppopt pa_macro.cmo $(SYNT_PROF) +SYNTAX= -syntax camlp4o $(PPINCLUDES) -ppopt pa_macro.cmo $(SYNT_FLAGS) @@ -101,26 +108,32 @@ libcamlshredder.a: $(CXXOBJECTS) XMLTree/XMLTree.a @echo [LIB] $@ $(HIDE) mkdir -p .libs/ $(HIDE) cd .libs/ && ar x ../XMLTree/XMLTree.a - $(HIDE) $(OCAMLMKLIB) -o camlshredder -custom $(CXXOBJECTS) ./.libs/*.o $(LIBS) + $(HIDE) $(OCAMLMKLIB) -o camlshredder -custom $(CXXOBJECTS) .libs/*.o $(LIBS) $(HIDE) rm -rf .libs clean: @echo [CLEAN] - $(HIDE) rm -f *~ *.cm* *.[oa] *.so main .libs + $(HIDE) rm -f *~ *.cm* *.[oa] *.so main + $(HIDE) rm -rf .libs -timeXMLTree: $(CXXOBJECTS) XMLTree/XMLTree.a timeXMLTree.cpp +timeXMLTree: $(CXXOBJECTS) XMLTree/XMLTree.a timeXMLTree.cpp myTimeXMLTree.cpp mkdir -p .libs/ cd .libs/ && ar x ../XMLTree/XMLTree.a $(CXX) -o timeXMLTree $(CXXFLAGS) $(CXXINCLUDES) XMLDocShredder.o \ SXSIStorageInterface.o StorageInterface.o ./.libs/*.o \ $(LIBS) timeXMLTree.cpp + $(CXX) -o myTimeXMLTree $(CXXFLAGS) $(CXXINCLUDES) XMLDocShredder.o \ + SXSIStorageInterface.o StorageInterface.o ./.libs/*.o \ + $(LIBS) myTimeXMLTree.cpp +# $(CXX) -o testXMLTree $(CXXFLAGS) $(CXXINCLUDES) XMLDocShredder.o \ +# SXSIStorageInterface.o StorageInterface.o ./.libs/*.o \ +# $(LIBS) testXMLTree.cpp rm -rf .libs -SXSIStorageInterface.o: SXSIStorageInterface.h SXSIStorageInterface.cpp StorageInterface.h -StorageInterface.o: StorageInterface.h -XMLDocShredder.o: XMLDocShredder.h XMLDocShredder.cpp SXSIStorageInterface.h StorageInterface.h -OCamlDriver.o: XMLDocShredder.h StorageInterface.h +XMLDocShredder.o: XMLDocShredder.h XMLDocShredder.cpp +OCamlDriver.o: XMLDocShredder.h +results.o: results.h compute_depend: @echo [DEP]