X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=Makefile;h=98dcb2f91b7b25fa2be7742c02d19a999e91ee2a;hb=1bae0620f35488b27873231e60106cd69f396824;hp=376b619c41c9dbfc89f7aeb83046f74aa9b6b494;hpb=41fbd079156f60e13f0f54510b05ea83221a9cda;p=xonotic%2Fnetradiant.git diff --git a/Makefile b/Makefile index 376b619c..98dcb2f9 100644 --- a/Makefile +++ b/Makefile @@ -44,9 +44,11 @@ TR ?= tr FIND ?= find DIFF ?= diff SED ?= sed - -# optional: -SVNVERSION ?= svnversion +GIT ?= git +SVN ?= svn +WGET ?= wget +MV ?= mv +UNZIP ?= unzip STDOUT_TO_DEVNULL ?= >/dev/null STDERR_TO_DEVNULL ?= 2>/dev/null @@ -75,8 +77,16 @@ LIBS_DL ?= -ldl # nothing on Win32 CPPFLAGS_ZLIB ?= LIBS_ZLIB ?= -lz DEPEND_ON_MAKEFILE ?= yes +DOWNLOAD_GAMEPACKS ?= yes +# set to no to disable gamepack, set to all to even download undistributable gamepacks + +# Support CHECK_DEPENDENCIES with DOWNLOAD_GAMEPACKS semantics +ifneq ($(CHECK_DEPENDENCIES),) +DEPENDENCIES_CHECK = $(patsubst yes,quiet,$(patsubst no,off,$(CHECK_DEPENDENCIES))) +else DEPENDENCIES_CHECK ?= quiet # or: off, verbose +endif # these are used on Win32 only GTKDIR ?= $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKGCONFIG) gtk+-2.0 --variable=prefix $(STDERR_TO_DEVNULL)) @@ -192,7 +202,8 @@ ifeq ($(OS),Darwin) A = a DLL = dylib MWINDOWS = - + MACVERSION ?= 16 + CPPFLAGS_COMMON += -DMACVERSION="$(MACVERSION)" # workaround for weird prints ECHO_NOLF = /bin/echo -n @@ -220,10 +231,10 @@ Q3MAP_VERSION = 2.5.17n # Executable extension RADIANT_EXECUTABLE := $(EXE) -SVN_VERSION := $(shell $(SVNVERSION) -n $(STDERR_TO_DEVNULL) | $(SED) 's/M$$//g; s/.*://g;') -ifneq ($(SVN_VERSION),) - RADIANT_VERSION := $(RADIANT_VERSION)-svn$(SVN_VERSION) - Q3MAP_VERSION := $(Q3MAP_VERSION)-svn$(SVN_VERSION) +GIT_VERSION := $(shell $(GIT) rev-parse --short HEAD $(STDERR_TO_DEVNULL)) +ifneq ($(GIT_VERSION),) + RADIANT_VERSION := $(RADIANT_VERSION)-git-$(GIT_VERSION) + Q3MAP_VERSION := $(Q3MAP_VERSION)-git-$(GIT_VERSION) endif CPPFLAGS += -DRADIANT_VERSION="\"$(RADIANT_VERSION)\"" -DRADIANT_MAJOR_VERSION="\"$(RADIANT_MAJOR_VERSION)\"" -DRADIANT_MINOR_VERSION="\"$(RADIANT_MINOR_VERSION)\"" -DRADIANT_ABOUTMSG="\"$(RADIANT_ABOUTMSG)\"" -DQ3MAP_VERSION="\"$(Q3MAP_VERSION)\"" -DRADIANT_EXECUTABLE="\"$(RADIANT_EXECUTABLE)\"" @@ -267,6 +278,7 @@ dependencies-check: checkbinary coreutils "$(CP_R)"; \ checkbinary coreutils "$(RM)"; \ checkbinary coreutils "$(RM_R)"; \ + checkbinary coreutils "$(MV)"; \ checkbinary coreutils "$(ECHO) test $(TEE_STDERR)"; \ checkbinary sed "$(SED)"; \ checkbinary findutils "$(FIND)"; \ @@ -276,6 +288,10 @@ dependencies-check: checkbinary binutils "$(RANLIB)"; \ checkbinary binutils "$(AR)"; \ checkbinary pkg-config "$(PKGCONFIG)"; \ + checkbinary unzip "$(UNZIP)"; \ + checkbinary git-core "$(GIT)"; \ + checkbinary subversion "$(SVN)"; \ + checkbinary wget "$(WGET)"; \ [ "$(OS)" = "Win32" ] && checkbinary mingw32 "$(WINDRES)"; \ [ -n "$(LDD)" ] && checkbinary libc6 "$(LDD)"; \ [ -n "$(OTOOL)" ] && checkbinary xcode "$(OTOOL)"; \ @@ -376,6 +392,7 @@ endif %.o: %.c $(if $(findstring $(DEPEND_ON_MAKEFILE),yes),$(wildcard Makefile*),) $(CC) $< $(CFLAGS) $(CFLAGS_COMMON) $(CPPFLAGS_EXTRA) $(CPPFLAGS_COMMON) $(CPPFLAGS) $(TARGET_ARCH) -c -o $@ + $(INSTALLDIR)/q3map2.$(EXE): LIBS_EXTRA := $(LIBS_XML) $(LIBS_GLIB) $(LIBS_PNG) $(LIBS_ZLIB) $(INSTALLDIR)/q3map2.$(EXE): CPPFLAGS_EXTRA := $(CPPFLAGS_XML) $(CPPFLAGS_GLIB) $(CPPFLAGS_PNG) -Itools/quake3/common -Ilibs -Iinclude $(INSTALLDIR)/q3map2.$(EXE): \ @@ -956,19 +973,12 @@ install-data: binaries $(MKDIR) $(INSTALLDIR)/games $(FIND) $(INSTALLDIR_BASE)/ -name .svn -exec $(RM_R) {} \; -prune [ "$(OS)" != "Darwin" ] || $(CP_R) setup/data/osx/NetRadiant.app/* $(INSTALLDIR_BASE)/NetRadiant.app/ - set -ex; \ - for GAME in games/*; do \ - if [ "$$GAME" = "games/*" ]; then \ - $(ECHO) "Game packs not found, please run"; \ - $(ECHO) " ./download-gamepacks.sh"; \ - $(ECHO) "and then try again!"; \ - else \ - CP="$(CP)" CP_R="$(CP_R)" $(SH) install-gamepack.sh "$$GAME" "$(INSTALLDIR)"; \ - fi; \ - done + DOWNLOAD_GAMEPACKS="$(DOWNLOAD_GAMEPACKS)" GIT="$(GIT)" SVN="$(SVN)" WGET="$(WGET)" RM_R="$(RM_R)" MV="$(MV)" UNZIP="$(UNZIP)" ECHO="$(ECHO)" SH="$(SH)" CP="$(CP)" CP_R="$(CP_R)" $(SH) install-gamepacks.sh "$(INSTALLDIR)" $(ECHO) $(RADIANT_MINOR_VERSION) > $(INSTALLDIR)/RADIANT_MINOR $(ECHO) $(RADIANT_MAJOR_VERSION) > $(INSTALLDIR)/RADIANT_MAJOR $(CP_R) setup/data/tools/* $(INSTALLDIR)/ + $(MKDIR) $(INSTALLDIR)/docs + $(CP_R) docs/* $(INSTALLDIR)/docs/ $(FIND) $(INSTALLDIR_BASE)/ -name .svn -exec $(RM_R) {} \; -prune .PHONY: install-dll