[game-data-packager] 05/25: packaging: allow systems to override pkgdocdir, pkglicensedir

Simon McVittie smcv at debian.org
Sun Oct 9 21:26:05 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 7c28092eada72a8c91988b2b2a5b6a0277e02c41
Author: Simon McVittie <smcv at debian.org>
Date:   Sun Oct 9 12:26:39 2016 +0100

    packaging: allow systems to override pkgdocdir, pkglicensedir
    
    I'm hoping to add support for generating Flatpak extensions containing
    the non-distributable game data, along the same lines as
    <https://cgit.freedesktop.org/xdg-app/freedesktop-sdk-images/tree/make-nvidia-image.sh>
    for nVidia drivers. Each extension only contains one directory,
    and I'm planning to use $install_to for that, so we'll need to
    redirect $pkgdocdir and $pkglicensedir to be below $install_to.
---
 game_data_packager/build.py              |  9 +++++----
 game_data_packager/packaging/__init__.py | 11 +++++++++--
 2 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/game_data_packager/build.py b/game_data_packager/build.py
index fc9ac6c..3d80f6a 100644
--- a/game_data_packager/build.py
+++ b/game_data_packager/build.py
@@ -1175,8 +1175,9 @@ class PackagingTask(object):
                  if not f.license:
                      continue
                  license_file = f.install_as
-                 licenses.add(os.path.join('/', self.packaging.LICENSEDIR,
-                     package.name, license_file))
+                 licenses.add(os.path.join('/',
+                     self.packaging.substitute('$pkglicensedir', package.name),
+                     license_file))
                  if os.path.splitext(license_file)[0].lower() == 'license':
                      self.packaging.override_lintian(destdir, package.name,
                              'extra-license-file',
@@ -1475,7 +1476,7 @@ class PackagingTask(object):
         if not self.check_complete(package, log=True):
             return False
 
-        pkgdocdir = os.path.join(self.packaging.DOCDIR, package.name)
+        pkgdocdir = self.packaging.substitute('$pkgdocdir', package.name)
         dest_pkgdocdir = os.path.join(destdir, pkgdocdir.strip('/'))
         mkdir_p(dest_pkgdocdir)
         shutil.copyfile(os.path.join(DATADIR, 'changelog.gz'),
@@ -1914,7 +1915,7 @@ class PackagingTask(object):
 
                 if os.path.isdir(path) and path not in paths:
                     paths.append(path)
-                path = os.path.join('/', self.packaging.DOCDIR, package.name)
+                path = self.packaging.substitute('$pkgdocdir', package.name)
                 if os.path.isdir(path) and path not in paths:
                     paths.append(path)
 
diff --git a/game_data_packager/packaging/__init__.py b/game_data_packager/packaging/__init__.py
index c378f54..edcb5ad 100644
--- a/game_data_packager/packaging/__init__.py
+++ b/game_data_packager/packaging/__init__.py
@@ -140,10 +140,17 @@ class PackagingSystem(metaclass=ABCMeta):
                 bindir=self.BINDIR,
                 docdir=self.DOCDIR,
                 licensedir=self.LICENSEDIR,
-                pkgdocdir=self.DOCDIR + '/' + package,
-                pkglicensedir=self.LICENSEDIR + '/' + package,
+                pkgdocdir=self._get_pkgdocdir(package),
+                pkglicensedir=self._get_pkglicensedir(package),
+                prefix=self.PREFIX,
                 )
 
+    def _get_pkgdocdir(self, package):
+        return '/'.join((self.DOCDIR, package))
+
+    def _get_pkglicensedir(self, package):
+        return '/'.join((self.LICENSEDIR, package))
+
     def override_lintian(self, destdir, package, tag, args):
         pass
 

-- 
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