Initial commit.

This commit is contained in:
2026-01-10 21:58:42 +00:00
committed by Seán Healy
commit 9ab19b842d
7 changed files with 4528 additions and 0 deletions

18
Makefile Normal file
View 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