[Nrage-input] Update Makefile to generate version.h

This commit is contained in:
oddMLan 2020-02-10 02:56:42 -07:00
parent f7ddabc9c7
commit c637d66d9f
2 changed files with 47 additions and 8 deletions

View File

@ -1,6 +1,28 @@
CXX := g++ IS_GIT := $(if $(shell git rev-parse --show-toplevel 2>/dev/null),1)
LD := g++ IS_HG := $(if $(shell hg root 2>/dev/null),1)
WINDRES := windres
ifeq ($(IS_HG),1)
$(info This is a hg repository)
GIT_VERSION := "hg:$(shell hg identify --id)"
VERSION_BUILD := 0
endif
ifeq ($(IS_GIT),1)
$(info This is a git repository)
GIT_VERSION := "git:$(shell git describe --always --long --dirty=+ 2>/dev/null)"
VERSION_BUILD := 0
endif
ifeq ($(or $(IS_GIT),$(IS_HG)),)
$(info Not inside a repository)
GIT_VERSION := "?"
VERSION_BUILD := 0
endif
CXX ?= g++
LD := $(CXX)
WINDRES ?= windres
OBJECTS := \ OBJECTS := \
Debug.o \ Debug.o \
@ -18,6 +40,8 @@ RESOURCE := NRagePluginV2.res
TARGET := PJ64_NRage.dll TARGET := PJ64_NRage.dll
CPPFLAGS := \ CPPFLAGS := \
-DGIT_VERSION=\"$(GIT_VERSION)\" \
-DVERSION_BUILD=$(VERSION_BUILD) \
-DNOMINMAX -DNOMINMAX
CXXFLAGS := \ CXXFLAGS := \
@ -33,8 +57,13 @@ LIBS := \
-lgdi32 \ -lgdi32 \
-lole32 \ -lole32 \
-loleaut32 \ -loleaut32 \
-luuid \ -luuid
-static -lwinpthread
ifeq ($(DYN_WINPTHREAD),1)
LIBS += -lwinpthread
else
LIBS += -static -lwinpthread
endif
LDFLAGS := \ LDFLAGS := \
-mwindows \ -mwindows \
@ -45,17 +74,23 @@ DEPFILES := $(addprefix .deps/,$(OBJECTS:.o=.d))
.PHONY: all clean .PHONY: all clean
all: .deps $(TARGET) all: .deps Version.h $(TARGET)
-include $(DEPFILES) -include $(DEPFILES)
clean: clean:
rm -f $(TARGET) $(OBJECTS) $(RESOURCE) $(DEPFILES) -rm -f $(TARGET)
rm -rf .deps -rm -f $(OBJECTS) $(RESOURCE)
-rm -f $(DEPFILES)
-rm -rf .deps
-rm -f Version.h
.deps: .deps:
mkdir -p $@ mkdir -p $@
Version.h: Version.h.in
cp $< $@
%.res: %.rc %.res: %.rc
$(WINDRES) -O coff -o $@ -i $< $(WINDRES) -O coff -o $@ -i $<

View File

@ -26,8 +26,12 @@
#define VERSION_MAJOR 2 #define VERSION_MAJOR 2
#define VERSION_MINOR 5 #define VERSION_MINOR 5
#define VERSION_REVISION 3 #define VERSION_REVISION 3
#ifndef VERSION_BUILD
#define VERSION_BUILD 9999 #define VERSION_BUILD 9999
#endif
#ifndef GIT_VERSION
#define GIT_VERSION "" #define GIT_VERSION ""
#endif
#define VER_FILE_DESCRIPTION_STR "N-Rage for Project64" #define VER_FILE_DESCRIPTION_STR "N-Rage for Project64"
#define VER_FILE_VERSION VERSION_MAJOR, VERSION_MINOR, VERSION_REVISION, VERSION_BUILD #define VER_FILE_VERSION VERSION_MAJOR, VERSION_MINOR, VERSION_REVISION, VERSION_BUILD