19 lines
680 B
Makefile
19 lines
680 B
Makefile
CXX = clang++
|
|
CFLAGS = -Wall -Wextra -pedantic
|
|
INC = -Ithird_party -Ithird_party/imgui
|
|
ROOT = /opt/root/build
|
|
ROOTFLAGS = -std=c++17 -m64 -I$(ROOT)/include
|
|
ROOTLIBS = -L$(ROOT)/lib -lCore -lRIO -lROOTNTuple -Wl,-rpath,$(ROOT)/lib -pthread
|
|
LIBS = -lglfw
|
|
MOLD = mold -run
|
|
|
|
all: build/imgui.o d
|
|
|
|
build/imgui.o: src/imgui_inc.cpp third_party/imgui/imgui.h
|
|
$(CXX) -O3 -fPIC -c -Ithird_party/imgui $< -o $@
|
|
|
|
d:
|
|
$(MOLD) $(CXX) -DDEBUG -g -O0 $(CFLAGS) -fsanitize=undefined $(INC) $(ROOTFLAGS) -o rntviewer src/rntviewer.cpp build/imgui.o -lasan $(ROOTLIBS) $(LIBS)
|
|
|
|
r:
|
|
$(MOLD) $(CXX) -O2 $(CFLAGS) $(INC) $(ROOTFLAGS) -o rntviewer src/rntviewer.cpp build/imgui.o $(ROOTLIBS) $(LIBS)
|