rntviewer/Makefile

30 lines
1.2 KiB
Makefile
Raw Normal View History

2024-07-10 15:04:11 +00:00
CXX = clang++
2024-07-10 17:38:16 +00:00
CFLAGS = -Wall -Wextra -pedantic
INC = -Ithird_party -Ithird_party/imgui
2024-07-11 06:49:20 +00:00
ROOT = $(HOME)/root_build/debug
2024-07-10 19:52:48 +00:00
ROOTFLAGS = -std=c++17 -m64 -I$(ROOT)/include
2024-07-11 14:29:44 +00:00
ROOTLIBS = -L$(ROOT)/lib -lCore -lRIO -lROOTNTuple -lxxhash -Wl,-rpath,$(ROOT)/lib -pthread
2024-07-10 19:52:48 +00:00
LIBS = -lglfw
MOLD = mold -run
2024-07-10 15:04:11 +00:00
2024-07-11 14:49:18 +00:00
.PHONY: all clean
2024-07-11 14:29:44 +00:00
all: build/imgui.o build/root_stuff.o noasan
2024-07-10 17:38:16 +00:00
2024-07-11 14:49:18 +00:00
clean:
rm build/*.o rntviewer
build/imgui.o: src/imgui_inc.cpp third_party/imgui/imgui.h
2024-07-10 17:38:16 +00:00
$(CXX) -O3 -fPIC -c -Ithird_party/imgui $< -o $@
2024-07-11 14:29:44 +00:00
build/root_stuff.o: src/PseudoMiniFile.cxx
2024-07-11 14:49:18 +00:00
$(CXX) -O3 -fPIC -c $(ROOTFLAGS) $< -o $@
2024-07-10 17:38:16 +00:00
2024-07-11 14:49:18 +00:00
d: build/root_stuff.o build/imgui.o
2024-07-11 14:29:44 +00:00
$(MOLD) $(CXX) -DDEBUG -g -O0 -DENABLE_ASAN $(CFLAGS) -fsanitize=undefined $(INC) $(ROOTFLAGS) -o rntviewer src/rntviewer.cpp build/imgui.o build/root_stuff.o -lasan $(ROOTLIBS) $(LIBS)
2024-07-11 12:00:43 +00:00
2024-07-11 14:49:18 +00:00
noasan: build/root_stuff.o build/imgui.o
2024-07-11 14:29:44 +00:00
$(MOLD) $(CXX) -DDEBUG -g -O0 $(CFLAGS) -fsanitize=undefined $(INC) $(ROOTFLAGS) -o rntviewer src/rntviewer.cpp build/imgui.o build/root_stuff.o $(ROOTLIBS) $(LIBS)
2024-07-10 15:04:11 +00:00
2024-07-11 14:49:18 +00:00
r: build/root_stuff.o build/imgui.o
2024-07-11 14:29:44 +00:00
$(MOLD) $(CXX) -O2 $(CFLAGS) $(INC) $(ROOTFLAGS) -o rntviewer src/rntviewer.cpp build/imgui.o build/root_stuff.o $(ROOTLIBS) $(LIBS)