File indexing completed on 2026-04-05 08:11:42
0001
0002 CXX = g++
0003 CXXSTD = -std=c++20
0004 CXXWARN = -Wall -Wextra -Wpedantic
0005 OPTFLAGS = -O2
0006 PIC = -fPIC
0007
0008
0009 ORT_PREFIX ?= /home/jingyu/Downloads/onnxruntime-linux-x64-1.19.2
0010
0011
0012 ORT_INC = $(ORT_PREFIX)/include
0013 ORT_LIBDIR = $(ORT_PREFIX)/lib
0014
0015
0016 JSON_INC ?= $(OFFLINE_MAIN)/include
0017
0018
0019 WITH_ONNX ?= 1
0020
0021
0022 SRCS = PtCalculator.cc
0023 OBJS = $(SRCS:.cc=.o)
0024 TARGET_SO = libPtCalc.so
0025
0026
0027 INCFLAGS = -I.
0028 ifeq ($(WITH_ONNX),1)
0029 INCFLAGS += -I$(ORT_INC)
0030 endif
0031 ifneq ($(strip $(JSON_INC)),)
0032 INCFLAGS += -I$(JSON_INC)
0033 endif
0034
0035
0036 CXXFLAGS = $(CXXSTD) $(CXXWARN) $(OPTFLAGS) $(PIC) $(INCFLAGS)
0037 LDFLAGS = -shared
0038 LDLIBS =
0039
0040 ifeq ($(WITH_ONNX),1)
0041 CXXFLAGS += -DPTCALC_WITH_ONNX=1
0042 LDFLAGS += -Wl,-rpath,$(ORT_LIBDIR) -L$(ORT_LIBDIR)
0043 LDLIBS += -lonnxruntime
0044 else
0045 CXXFLAGS += -DPTCALC_WITH_ONNX=0
0046 endif
0047
0048
0049 all: $(TARGET_SO)
0050
0051 $(TARGET_SO): $(OBJS)
0052 $(CXX) $(CXXFLAGS) -o $@ $^ $(LDFLAGS) $(LDLIBS)
0053 @echo "Built $@"
0054
0055 %.o: %.cc
0056 $(CXX) $(CXXFLAGS) -c $< -o $@
0057
0058 clean:
0059 rm -f $(OBJS) $(TARGET_SO)
0060
0061 print-%:
0062 @echo '$*=$($*)'