17 lines
893 B
Plaintext
17 lines
893 B
Plaintext
LEXER = flex
|
|
PARSER = bison
|
|
CXX = g++
|
|
CXXFLAGS = -pedantic -std=c++17 -Wall -Wno-unused-parameter -Wno-reorder -Wno-sign-compare -Wno-address -Wno-noexcept-type -Wno-unknown-attributes -Wno-unknown-warning-option
|
|
CPPFLAGS =
|
|
LDFLAGS =
|
|
LIBS =
|
|
|
|
SRC_DIR = .
|
|
BUILD_DIR = build
|
|
PROG = true
|
|
|
|
: foreach $(SRC_DIR)/*.yy |> $(PARSER) -b %BArgGrammarParser %f |> $(SRC_DIR)/%BArgGrammarParser.tab.cc $(SRC_DIR)/%BArgGrammarParser.tab.hh
|
|
: foreach $(SRC_DIR)/*.ll | $(SRC_DIR)/*.hh |> $(LEXER) %f |> $(SRC_DIR)/%BArgGrammarScannerDef.cpp
|
|
: foreach $(SRC_DIR)/*.cpp $(SRC_DIR)/*.cc | $(SRC_DIR)/*.hh |> $(CXX) $(CPPFLAGS) $(CXXFLAGS) -I $(SRC_DIR) -c %f -o %o |> $(BUILD_DIR)/%B.o
|
|
: $(BUILD_DIR)/*.o |> $(CXX) $(LDFLAGS) $(LIBS) %f -o %o |> $(PROG)
|