#!/usr/bin/make -f # -*- makefile -*- ############################################################################# # # GNU Make Debian package makefile for SRB2-data # # Copyright (C) 1998-2011 by Callum Dickinson # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # This file most likely will not need to be modified to make # branches of SRB2 capable of making their own Debian packages, # instead look at the /debian/control file for configuration. # ############################################################################# ############################################################################# # # !!!!!!!!!! DEPLOYER NOTE !!!!!!!!!! # # Variables to be templated are curly-braced ${PACKAGE_INSTALL_PATH} # Variables used by the rules script are parenthese'd $(DATADIR) # See [repo-root]/debian_template.sh # ############################################################################# # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # user/group of to-be-installed files ROOT_USER := 0 ROOT_GROUP := 0 MKDIR := mkdir -p INSTALL := install -o $(ROOT_USER) -g $(ROOT_GROUP) -m 644 MV := mv RM := rm -rf DIR := $(shell pwd) PACKAGE := $(shell cat $(DIR)/debian/control | grep 'Package:' | sed -e 's/Package: //g') ARCHIVEPATH := ${ASSET_ARCHIVE_PATH} ARCHIVEOPTIONALPATH := ${ASSET_ARCHIVE_OPTIONAL_PATH} GETOPTIONALFILES := ${ASSET_FILES_OPTIONAL_GET} DATADIR := $(shell echo "${PACKAGE_INSTALL_PATH}" | sed -e 's/^\///') RESOURCEDIR := . STAGINGDIR := $(RESOURCEDIR)/installer WGET := wget -P $(RESOURCEDIR) -c -nc build: $(MKDIR) $(DIR)/debian/tmp/$(DATADIR) > $(DIR)/debian/source/include-binaries # Copy data files to their install locations, and add data files to include-binaries if [ ! -d $(STAGINGDIR) ]; then \ mkdir -p "$(STAGINGDIR)"; \ $(WGET) $(ARCHIVEPATH); \ 7z x "$(RESOURCEDIR)/$(shell basename $(ARCHIVEPATH))" -aos; \ if [ "$(GETOPTIONALFILES)" = "1" ]; then \ $(WGET) $(ARCHIVEOPTIONALPATH); \ 7z x "$(RESOURCEDIR)/$(shell basename $(ARCHIVEOPTIONALPATH))" -aos; \ fi; \ fi # Install asset directory and add asset file to include-binaries cp -vr "$(STAGINGDIR)/." "$(DIR)/debian/tmp/$(DATADIR)" find "$(STAGINGDIR)" >> $(DIR)/debian/source/include-binaries binary-indep: # Generate install folder file echo $(DATADIR) > $(DIR)/debian/$(PACKAGE).install binary-arch: # only here to kill Lintian warning echo "no need to do any arch-specific stuff" binary: binary-indep dh_testdir dh_testroot dh_installchangelogs # dh_installdocs # dh_installexamples dh_install --sourcedir=$(DIR)/debian/tmp # dh_installmenu # dh_installdebconf # dh_installlogrotate # dh_installemacsen # dh_installpam # dh_installmime # dh_python # dh_installinit # dh_installcron # dh_installinfo # dh_installman # dh_link dh_compress dh_fixperms # dh_perl # dh_makeshlibs dh_installdeb # -dh_shlibdeps dh_gencontrol dh_md5sums dh_builddeb clean: $(RM) $(DIR)/debian/tmp/*; \ $(RM) $(DIR)/debian/$(PACKAGE).install; \ $(RM) $(DIR)/debian/files; \ clean-all: clean $(RM) $(RESOURCEDIR)/*.wad; \ $(RM) $(RESOURCEDIR)/*.dta; \ $(RM) $(RESOURCEDIR)/*.plr; \ $(RM) $(RESOURCEDIR)/*.wpn; \ $(RM) $(RESOURCEDIR)/*.srb; \ $(RM) $(RESOURCEDIR)/*.dll; \ $(RM) $(RESOURCEDIR)/*.txt; \ $(RM) $(DIR)/debian/source/include-binaries; \ .PHONY: all clean binary binary-arch binary-indep build