HyriseSQLParser/Makefile

52 lines
966 B
Makefile
Raw Normal View History

#
# make source (build the source code into build/)
#
# make library
#
#
#
#
2014-12-15 18:32:46 +01:00
# directories
BIN = bin
SRC = src
SRCSQL = src/lib/sql
SRCPARSER = src/parser
2014-12-15 18:32:46 +01:00
# files
PARSERFILES = $(SRCPARSER)/bison_parser.cpp $(SRCPARSER)/flex_lexer.cpp
LIBCPP = $(shell find $(SRC)/ -name '*.cpp' -not -path "$(SRCPARSER)/*") $(SRCPARSER)/bison_parser.cpp $(SRCPARSER)/flex_lexer.cpp
LIBOBJ = $(LIBCPP:%.cpp=%.o)
LIBHEADERS = $(shell find $(SRCSQL)/ -name '*.h') $(SRC)/SQLParser.h
# compile & link flages
CC = g++
CFLAGS = -std=c++11 -Wall -fPIC
LIBFLAGS = -shared
TARGET = libsqlparser.so
2014-12-15 18:32:46 +01:00
all: library
library: $(LIBOBJ)
$(CC) $(LIBFLAGS) -o $(TARGET) $(LIBOBJ)
2014-12-15 18:32:46 +01:00
%.o: %.cpp $(PARSERFILES)
$(CC) $(CFLAGS) -c -o $@ $<
$(SRCPARSER)/bison_parser.cpp: parser
$(SRCPARSER)/flex_lexer.cpp: parser
parser:
make -C $(SRCPARSER)/
clean:
find $(SRC) -type f -name '*.o' -delete
cleanparser:
make -C $(SRCPARSER)/ clean
2014-12-18 12:11:26 +01:00
FORCE: