simpliest c++ example
This commit is contained in:
parent
d587646b32
commit
909a43114b
9 changed files with 73 additions and 221 deletions
34
makefile
34
makefile
|
|
@ -1,44 +1,32 @@
|
|||
CXX = g++
|
||||
ARGS = -std=c++17
|
||||
ARGS = -std=c++17
|
||||
BISON = /opt/homebrew/opt/bison/bin/bison
|
||||
FLEX = flex
|
||||
|
||||
TARGET = build/py2rb
|
||||
|
||||
$(TARGET): build/lexer.o build/parser.o build/ParserCtx.o build/main.o build/config.o
|
||||
$(TARGET): build/parser.o build/lexer.o build/main.o
|
||||
$(CXX) $^ -o $@
|
||||
|
||||
build/lexer.hpp build/lexer.cpp: src/lexer.l build/parser.hpp build
|
||||
$(FLEX) --header-file=build/lexer.hpp -o build/lexer.cpp src/lexer.l
|
||||
build/parser.cpp build/parser.hpp: src/parser.y | build
|
||||
$(BISON) -d -o build/parser.cpp src/parser.y
|
||||
|
||||
build/parser.hpp build/parser.cpp: src/parser.y build
|
||||
$(BISON) -d -v -o build/parser.cpp src/parser.y
|
||||
build/lexer.cpp build/lexer.hpp: src/lexer.l build/parser.hpp | build
|
||||
$(FLEX) --header-file=build/lexer.hpp -o build/lexer.cpp src/lexer.l
|
||||
|
||||
build/lexer.o: build/lexer.cpp build
|
||||
$(CXX) -c $(ARGS) $< -o $@
|
||||
build/%.o: build/%.cpp
|
||||
$(CXX) -c $(ARGS) $< -o $@
|
||||
|
||||
build/parser.o: build/parser.cpp build
|
||||
$(CXX) -c $(ARGS) $< -o $@
|
||||
|
||||
build/ParserCtx.o: src/ParserCtx.cpp build
|
||||
$(CXX) -c $(ARGS) $< -o $@
|
||||
|
||||
build/main.o: src/main.cpp build
|
||||
$(CXX) -c $(ARGS) $< -o $@
|
||||
|
||||
build/config.o: src/config.cpp build
|
||||
$(CXX) -c $(ARGS) $< -o $@
|
||||
build/main.o: src/main.cpp | build
|
||||
$(CXX) -c $(ARGS) $< -o $@
|
||||
|
||||
build:
|
||||
mkdir -p build
|
||||
|
||||
clean:
|
||||
clean:
|
||||
rm -rf build
|
||||
|
||||
run: $(TARGET)
|
||||
$(TARGET)
|
||||
|
||||
run_lexer: $(TARGET)
|
||||
$(TARGET) -l
|
||||
|
||||
.PHONY: clean run
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue