From 4619f5a4dec9ad5895d2a8b569aaae2b0f8b5446 Mon Sep 17 00:00:00 2001 From: Mike Swanson Date: Tue, 31 Dec 2013 01:51:20 -0800 Subject: [PATCH] Makefile: dist target works again For now, Make is dependent on being run inside of the git repository, at least if something like `make VERSION=3.14` isn't used. Will be nice in the future if it can read from the VERSION file as a fallback. --- Makefile | 11 ++++---- scripts/makepkgs | 72 +++++++++++++++++++++++------------------------- 2 files changed, 39 insertions(+), 44 deletions(-) diff --git a/Makefile b/Makefile index 0033bd81..e2ecbdfb 100644 --- a/Makefile +++ b/Makefile @@ -26,6 +26,7 @@ # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +VERSION != git describe WADS=wads CPP=scripts/simplecpp DEUTEX=deutex @@ -151,15 +152,13 @@ $(WADS)/freedoom_sounds.wad : wadinfo.txt force rm -f $@ $(DEUTEX) $(DEUTEX_ARGS) -sounds -musics -build wadinfo.txt $@ - - -dist : $(OBJS) - scripts/makepkgs $(OBJS) - -doc: +doc: BUILD-SYSTEM.asc README.asc asciidoc BUILD-SYSTEM.asc asciidoc README.asc +dist: $(OBJS) doc + VERSION=$(VERSION) scripts/makepkgs $(OBJS) + clean: rm -f *.html deutex.log $(OBJS) \ ./wadinfo.txt ./wadinfo_sw.txt \ diff --git a/scripts/makepkgs b/scripts/makepkgs index 2c78c3ed..5ffcb5fb 100755 --- a/scripts/makepkgs +++ b/scripts/makepkgs @@ -1,6 +1,6 @@ #!/usr/bin/env python # -# Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +# Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2013 # Contributors to the Freedoom project. All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -34,76 +34,72 @@ import sys # Documentation files included with distributions. DIST_DOCS = [ - "NEWS", - "ChangeLog", - "COPYING", - "CREDITS", - "README" + "COPYING", + "CREDITS", + "README.html" ] # Most WADs are given a ZIP equal to their name, but some have different # names: DIR_NAMES = { - 'doom2' : 'freedoom-iwad', - 'doom1' : 'freedoom-demo', - 'doom' : 'freedoom-episodes', - 'freedoom' : 'freedoom-resource-wad', + 'doom2' : 'freedoom-iwad', + 'doom' : 'freedoom-ultimate', + 'freedoom' : 'freedoom-resource-wad', } # Run a command, displaying it before executing it. def run_command(command): - print "> " + command - os.system(command) + print("> " + command) + os.system(command) # Find the version to build: version = os.getenv("VERSION") if version is None: - raise Exception("Version not specified for release!") + raise Exception("Version not specified for release!") # Build all of the packages for filename in sys.argv[1:]: - path = os.path.dirname(filename) - basename = os.path.basename(filename) + path = os.path.dirname(filename) + basename = os.path.basename(filename) - # Cut off the extension, and build the directory name + # Cut off the extension, and build the directory name - pkgname = basename[0:-4] + pkgname = basename[0:-4] - if pkgname in DIR_NAMES: - base_dir = DIR_NAMES[pkgname] - else: - base_dir = pkgname + if pkgname in DIR_NAMES: + base_dir = DIR_NAMES[pkgname] + else: + base_dir = pkgname - # Append the version: + # Append the version: - base_dir += "-" + version + base_dir += "-" + version - # Replace underscores with hyphens: + # Replace underscores with hyphens: - base_dir = base_dir.replace("_", "-") + base_dir = base_dir.replace("_", "-") - full_path = path + "/" + base_dir + full_path = path + "/" + base_dir - # Create directory, and add files. + # Create directory, and add files. - run_command("mkdir %s" % full_path) + run_command("mkdir %s" % full_path) - for doc in DIST_DOCS + [ filename ]: - run_command("cp %s %s" % (doc, full_path)) + for doc in DIST_DOCS + [ filename ]: + run_command("cp %s %s" % (doc, full_path)) - # Change to the parent directory, and build the zip + # Change to the parent directory, and build the zip - orig_dir = os.getcwd() - - os.chdir(path) - run_command("rm -f %s.zip" % base_dir) - run_command("zip -r %s.zip %s" % (base_dir, base_dir)) - run_command("rm -rf %s" % base_dir) - os.chdir(orig_dir) + orig_dir = os.getcwd() + os.chdir(path) + run_command("rm -f %s.zip" % base_dir) + run_command("zip -r %s.zip %s" % (base_dir, base_dir)) + run_command("rm -rf %s" % base_dir) + os.chdir(orig_dir)