Initial commit.
This commit is contained in:
18
Makefile
Normal file
18
Makefile
Normal file
@@ -0,0 +1,18 @@
|
||||
CXX=g++
|
||||
LEX=flex
|
||||
YACC=bison
|
||||
CXXFLAGS?=-std=c++17
|
||||
# GCC 13+ can warn on Bison skeleton code even though it's guarded by `if (yyss != yyssa)`.
|
||||
CXXWARN?=-Wno-free-nonheap-object
|
||||
SRCDIR=src
|
||||
DISTDIR=dist
|
||||
$(shell mkdir -p $(DISTDIR))
|
||||
all: $(DISTDIR)/bibtex_compiler
|
||||
$(DISTDIR)/bibtex_lexer.cpp: $(SRCDIR)/bibtex_lexer.l
|
||||
$(LEX) -o $(DISTDIR)/bibtex_lexer.cpp $(SRCDIR)/bibtex_lexer.l
|
||||
$(DISTDIR)/bibtex_parser.cpp $(DISTDIR)/bibtex_parser.hpp: $(SRCDIR)/bibtex_parser.y
|
||||
$(YACC) -d -o $(DISTDIR)/bibtex_parser.cpp $(SRCDIR)/bibtex_parser.y
|
||||
$(DISTDIR)/bibtex_compiler: $(DISTDIR)/bibtex_lexer.cpp $(DISTDIR)/bibtex_parser.cpp $(DISTDIR)/bibtex_parser.hpp
|
||||
$(CXX) $(CXXFLAGS) $(CXXWARN) -o $(DISTDIR)/bibtex_compiler $(DISTDIR)/bibtex_lexer.cpp $(DISTDIR)/bibtex_parser.cpp
|
||||
clean:
|
||||
rm -f $(DISTDIR)/bibtex_lexer.cpp $(DISTDIR)/bibtex_parser.cpp $(DISTDIR)/bibtex_parser.hpp $(DISTDIR)/bibtex_compiler
|
||||
Reference in New Issue
Block a user