BINARY = looking-glass-host.exe CFLAGS = -g -O3 -march=native -Wall -Werror -I./ -I../common # -DDEBUG LDFLAGS = -lshlwapi -ldxgi -ld3d11 -lsetupapi -luuid -lole32 -lmfplat -lmfuuid CFLAGS += -ffast-math CFLAGS += -fdata-sections -ffunction-sections CFLAGS += -I../ -I. LDFLAGS += -Wl,--gc-sections -mwindows CFLAGS += -DWINVER=0x0602 -DUNICODE PREFIX ?= x86_64-w64-mingw32- STRIP = $(PREFIX)strip CC = $(PREFIX)cc CXX = $(PREFIX)c++ LD = $(CXX) BUILD ?= .build BIN ?= bin CFLAGS += -DBUILD_VERSION='"$(shell git describe --always --long --dirty --abbrev=10 --tags)"' OBJS = main.o \ CrashHandler.o \ MultiMemcpy.o \ IVSHMEM.o \ Service.o \ Capture/DXGI.o ifeq ($(ENABLE_TRACING),1) CFLAGS += -DENABLE_TRACING OBJS += TraceUtil.o endif ifeq ($(CONFIG_CAPTURE_NVFBC),1) CFLAGS += -DCONFIG_CAPTURE_NVFBC=1 -I../vendor OBJS += Capture/NvFBC.o endif BUILD_OBJS = $(foreach obj,$(OBJS),$(BUILD)/$(obj)) all: $(BIN)/$(BINARY) $(BUILD)/%.o: %.c @mkdir -p $(dir $@) $(CC) -c $(CFLAGS) -o $@ $< $(BUILD)/%.o: %.cpp @mkdir -p $(dir $@) $(CXX) -c $(CFLAGS) -o $@ $< $(BIN)/$(BINARY): $(BUILD_OBJS) @mkdir -p $(dir $@) $(LD) -o $@ $^ $(LDFLAGS) $(STRIP) -s $@ clean: rm -rf $(BUILD) $(BIN) .PHONY: clean