srcdir = .
top_srcdir = ..
top_builddir = ..
DEFS = -DMYSQL_SERVER \
			-DHAVE_CONFIG_H
HEADERS = $(noinst_HEADERS)
YACCCC = bison++
noinst_HEADERS = sparqlParser.h FlexLexer.h sparqlFrob.h
CXX = g++
CPPFLAGS = 
CXXFLAGS = -g  -DDBUG_ON -DSAFE_MUTEX -DBIG_JOINS=1 -felide-constructors -fno-rtti -O0   -fno-implicit-templates -fno-exceptions -fno-rtti $(NDB_CXXFLAGS)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include -I$(top_srcdir)/sql -I$(top_srcdir)/regex
LEX = flex++
LM_CFLAGS = 
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)

sparqlParser.h:	sparqlParser.yy
	$(YACCCC) -p sparql -d -v -o $*.cc -h $*.h  $*.yy
	#$(YACCCC) -d -v -o $*.cc -h $*.h $*.yy
	sed "s/YY_sparqlParser_CLASS(YY_sparqlParser_CONSTRUCTOR_PARAM);/\\0\\x0a virtual ~YY_sparqlParser_CLASS() {;}/1" < $*.cc > $*.tmp
	mv $*.tmp $*.cc
	sed "s/YY_sparqlParser_CLASS(YY_sparqlParser_CONSTRUCTOR_PARAM);/\\0\\x0a virtual ~YY_sparqlParser_CLASS() {;}/1" < $*.h > $*.tmp
	mv $*.tmp $*.h
sparqlParser.cc: sparqlParser.h

sparqlParser.o:	sparqlParser.cc sparqlParser.h $(HEADERS)
		$(CXXCOMPILE) $(LM_CFLAGS) -c $<

sparqlScanner.cc:	sparqlScanner.ll
	$(LEX) -o$*.cc $*.ll

sparqlScanner.o:	sparqlScanner.cc $(HEADERS)
		$(CXXCOMPILE) $(LM_CFLAGS) -c $<

libsparql.so: sparqlScanner.o sparqlParser.o
	gcc -g -shared -o libsparql.so sparqlScanner.o sparqlParser.o

