[game-data-packager] 03/09: Move all files derived from data/*.yaml into out/vfs/
Simon McVittie
smcv at debian.org
Mon Jan 4 09:04:49 UTC 2016
This is an automated email from the git hooks/post-receive script.
smcv pushed a commit to branch master
in repository game-data-packager.
commit 64c3b5405f06c3351aa30622ef792d8169a9f755
Author: Simon McVittie <smcv at debian.org>
Date: Mon Jan 4 00:56:32 2016 +0000
Move all files derived from data/*.yaml into out/vfs/
---
Makefile | 32 ++++++++++++++------------------
game_data_packager/__init__.py | 21 ++++++++++++++++-----
2 files changed, 30 insertions(+), 23 deletions(-)
diff --git a/Makefile b/Makefile
index f214eab..a7ab191 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,3 @@
-DIRS := ./out
GDP_MIRROR ?= localhost
bindir := /usr/games
PYTHON := python3
@@ -24,26 +23,25 @@ png += $(patsubst ./data/%.svg,./out/%.png,$(wildcard ./data/*.svg))
png += out/memento-mori.png
svgz := $(patsubst ./data/%.svg,./out/%.svgz,$(filter-out ./data/memento-mori-2.svg,$(wildcard ./data/*.svg)))
in_yaml := $(wildcard ./data/*.yaml)
-json := $(patsubst ./data/%.yaml,./out/%.json,$(in_yaml))
+json := $(patsubst ./data/%.yaml,./out/vfs/%.json,$(in_yaml))
copyright := $(patsubst ./data/%,./out/%,$(wildcard ./data/*.copyright))
dot_in := $(patsubst ./data/%,./out/%,$(wildcard ./data/*.in))
-default: $(DIRS) $(png) $(svgz) $(json) $(copyright) $(dot_in) \
+default: $(png) $(svgz) $(json) $(copyright) $(dot_in) \
out/bash_completion out/changelog.gz out/copyright \
out/game-data-packager out/vfs.zip
out/%: data/%
+ mkdir -p out
if [ -L $< ]; then cp -a $< $@ ; else install -m644 $< $@ ; fi
-out/%.json: data/%.yaml
+out/vfs/%.json: data/%.yaml
+ mkdir -p out/vfs
$(PYTHON) tools/yaml2json.py $< $@
out/vfs.zip: $(json)
+ mkdir -p out
rm -f out/vfs.zip
- rm -fr out/vfs
- mkdir out/vfs
- cp out/*.json out/*.files out/*.size_and_md5 out/vfs/
- cp out/*.sha1sums out/*.sha256sums out/*.groups out/vfs/
if [ -n "$(BUILD_DATE)" ]; then \
touch --date='$(BUILD_DATE)' out/vfs/*; \
fi
@@ -51,37 +49,41 @@ out/vfs.zip: $(json)
env TZ=UTC zip ../vfs.zip -9 -X -q -@
out/bash_completion: $(in_yaml)
+ mkdir -p out
$(PYTHON) tools/bash_completion.py > ./out/bash_completion
chmod 0644 ./out/bash_completion
out/changelog.gz: debian/changelog
+ mkdir -p out
gzip -nc9 debian/changelog > ./out/changelog.gz
chmod 0644 ./out/changelog.gz
out/game-data-packager: run
+ mkdir -p out
install run out/game-data-packager
out/%.svg: data/%.svg
+ mkdir -p out
inkscape --export-plain-svg=$@ $<
out/memento-mori.svg: data/memento-mori-2.svg
+ mkdir -p out
inkscape --export-plain-svg=$@ --export-id=layer1 --export-id-only $<
out/memento-mori.png: out/memento-mori.svg
inkscape --export-png=$@ -w96 -h96 $<
out/%.png: data/%.xpm
+ mkdir -p out
convert $< $@
out/%.png: data/%.svg
+ mkdir -p out
inkscape --export-png=$@ -w96 -h96 $<
out/%.svgz: out/%.svg
gzip -nc $< > $@
-$(DIRS):
- mkdir -p $@
-
clean:
rm -f ./out/bash_completion
rm -f ./out/changelog.gz
@@ -90,23 +92,17 @@ clean:
rm -f ./out/*.control.in
rm -f ./out/*.copyright
rm -f ./out/*.copyright.in
- rm -f ./out/*.files
- rm -f ./out/*.groups
rm -f ./out/*.preinst.in
rm -f ./out/*.png
- rm -f ./out/*.sha1sums
- rm -f ./out/*.sha256sums
- rm -f ./out/*.size_and_md5
rm -f ./out/*.svgz
rm -f ./out/*.svg
- rm -f ./out/*.json
rm -f ./out/vfs.zip
rm -f ./out/index.html
rm -fr out/vfs
rm -rf game_data_packager/__pycache__
rm -rf game_data_packager/games/__pycache__
rm -rf tools/__pycache__
- for d in $(DIRS); do [ ! -d "$$d" ] || rmdir "$$d"; done
+ test ! -d out || rmdir out
check:
LC_ALL=C $(PYFLAKES3) game_data_packager/*.py game_data_packager/*/*.py runtime/*.py tools/*.py || :
diff --git a/game_data_packager/__init__.py b/game_data_packager/__init__.py
index 618b475..82be35d 100644
--- a/game_data_packager/__init__.py
+++ b/game_data_packager/__init__.py
@@ -34,7 +34,7 @@ from .build import (HashedFile,
PackagingTask)
from .config import read_config
from .gog import run_gog_meta_mode
-from .paths import (DATADIR,USE_VFS)
+from .paths import (DATADIR, USE_VFS)
from .util import ascii_safe
from .steam import run_steam_meta_mode
from .version import (GAME_PACKAGE_VERSION, DISTRO, ASSETS)
@@ -1050,20 +1050,26 @@ class GameData(object):
for line in rawdata.splitlines():
self._add_hash(line.rstrip('\n'), alg)
else:
- filename = os.path.join(DATADIR, '%s.files' % self.shortname)
+ vfs = os.path.join(DATADIR, 'vfs')
+
+ if not os.path.isdir(vfs):
+ vfs = DATADIR
+
+
+ filename = os.path.join(vfs, '%s.files' % self.shortname)
if os.path.isfile(filename):
logger.debug('... %s', filename)
data = json.load(open(filename, encoding='utf-8'))
self._populate_files(data)
- filename = os.path.join(DATADIR, '%s.groups' % self.shortname)
+ filename = os.path.join(vfs, '%s.groups' % self.shortname)
if os.path.isfile(filename):
logger.debug('... %s', filename)
stream = open(filename, encoding='utf-8')
self._populate_groups(stream)
for alg in ('sha1', 'sha256', 'size_and_md5'):
- filename = os.path.join(DATADIR, '%s.%s%s' %
+ filename = os.path.join(vfs, '%s.%s%s' %
(self.shortname, alg,
'' if alg == 'size_and_md5' else 'sums'))
if os.path.isfile(filename):
@@ -1280,7 +1286,12 @@ def load_games(game='*', use_vfs=USE_VFS, use_yaml=False):
yamldata = open(yamlfile, encoding='utf-8').read()
load_game(progress, games, yamlfile, yamldata)
else:
- for jsonfile in glob.glob(os.path.join(DATADIR, game + '.json')):
+ vfs = os.path.join(DATADIR, 'vfs')
+
+ if not os.path.isdir(vfs):
+ vfs = DATADIR
+
+ for jsonfile in glob.glob(os.path.join(vfs, game + '.json')):
jsondata = open(jsonfile, encoding='utf-8').read()
load_game(progress, games, jsonfile, jsondata)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/game-data-packager.git
More information about the Pkg-games-commits
mailing list