# rmtool - read-only NVIDIA RM host oracle (Open-IOV). # # Builds src/*.c into ./rmtool and a reusable lib/librmapi.a that rmtop links # against. No external SDK or library dependency. CC ?= gcc CFLAGS ?= -O2 -Wall -Wextra CPPFLAGS += -Iinclude PREFIX ?= /usr/local OBJS = src/main.o src/rm_api.o src/query.o src/output.o src/gpu.o \ src/engine.o src/mem.o src/nv2080.o LIBOBJS = src/rm_api.o src/query.o src/output.o LIB = lib/librmapi.a all: rmtool $(LIB) rmtool: $(OBJS) $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIB): $(LIBOBJS) @mkdir -p lib ar rcs $@ $(LIBOBJS) src/%.o: src/%.c include/rm_api.h include/rmtool.h $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $< install: rmtool install -d $(DESTDIR)$(PREFIX)/bin install -m 0755 rmtool $(DESTDIR)$(PREFIX)/bin/rmtool clean: rm -f $(OBJS) rmtool $(LIB) rmdir lib 2>/dev/null || true .PHONY: all install clean