mirror of
https://github.com/void-linux/void-packages.git
synced 2025-04-16 14:17:02 +02:00
endless-sky: work with --install-sandbox
This commit is contained in:
parent
dedfc79c27
commit
f3180e2f83
1 changed files with 66 additions and 4 deletions
|
@ -1,6 +1,8 @@
|
|||
We need to patch for PREFIX and s/games/bin anyway,
|
||||
let's patch $DESTDIR, too
|
||||
--- a/SConstruct
|
||||
+++ b/SConstruct
|
||||
@@ -41,7 +41,7 @@
|
||||
@@ -37,7 +37,7 @@ opts.AddVariables(
|
||||
PathVariable("BUILDDIR", "Directory to store compiled object files in", "build", PathVariable.PathIsDirCreate),
|
||||
PathVariable("BIN_DIR", "Directory to store binaries in", ".", PathVariable.PathIsDirCreate),
|
||||
PathVariable("DESTDIR", "Destination root directory, e.g. if building a package", "", PathVariable.PathAccept),
|
||||
|
@ -9,12 +11,72 @@
|
|||
)
|
||||
opts.Update(env)
|
||||
Help(opts.GenerateHelpText(env))
|
||||
@@ -150,7 +150,7 @@
|
||||
@@ -157,22 +157,22 @@ env.AlwaysBuild("test")
|
||||
|
||||
|
||||
# Install the binary:
|
||||
-env.Install("$DESTDIR$PREFIX/games", sky)
|
||||
+env.Install("$DESTDIR$PREFIX/bin", sky)
|
||||
+install = env.Install("$PREFIX/bin", sky)
|
||||
|
||||
# Install the desktop file:
|
||||
env.Install("$DESTDIR$PREFIX/share/applications", "endless-sky.desktop")
|
||||
-env.Install("$DESTDIR$PREFIX/share/applications", "endless-sky.desktop")
|
||||
+install += env.Install("$PREFIX/share/applications", "endless-sky.desktop")
|
||||
|
||||
# Install app center metadata:
|
||||
-env.Install("$DESTDIR$PREFIX/share/appdata", "endless-sky.appdata.xml")
|
||||
+install += env.Install("$PREFIX/share/appdata", "endless-sky.appdata.xml")
|
||||
|
||||
# Install icons, keeping track of all the paths.
|
||||
# Most Ubuntu apps supply 16, 22, 24, 32, 48, and 256, and sometimes others.
|
||||
sizes = ["16x16", "22x22", "24x24", "32x32", "48x48", "128x128", "256x256", "512x512"]
|
||||
icons = []
|
||||
for size in sizes:
|
||||
- destination = "$DESTDIR$PREFIX/share/icons/hicolor/" + size + "/apps/endless-sky.png"
|
||||
+ destination = "$PREFIX/share/icons/hicolor/" + size + "/apps/endless-sky.png"
|
||||
icons.append(destination)
|
||||
- env.InstallAs(destination, "icons/icon_" + size + ".png")
|
||||
+ install += env.InstallAs(destination, "icons/icon_" + size + ".png")
|
||||
|
||||
# If any of those icons changed, also update the cache.
|
||||
# Do not update the cache if we're not installing into "usr".
|
||||
@@ -181,28 +181,30 @@ if env.get("PREFIX").startswith("/usr/")
|
||||
env.Command(
|
||||
[],
|
||||
icons,
|
||||
- "gtk-update-icon-cache -t $DESTDIR$PREFIX/share/icons/hicolor/")
|
||||
+ "gtk-update-icon-cache -t $PREFIX/share/icons/hicolor/")
|
||||
|
||||
# Install the man page.
|
||||
env.Command(
|
||||
- "$DESTDIR$PREFIX/share/man/man6/endless-sky.6.gz",
|
||||
+ "$PREFIX/share/man/man6/endless-sky.6.gz",
|
||||
"endless-sky.6",
|
||||
"gzip -c $SOURCE > $TARGET")
|
||||
|
||||
# Install the data files.
|
||||
def RecursiveInstall(env, target, source):
|
||||
rootIndex = len(env.Dir(source).abspath) + 1
|
||||
+ install = []
|
||||
for node in env.Glob(pathjoin(source, '*')):
|
||||
if node.isdir():
|
||||
name = node.abspath[rootIndex:]
|
||||
- RecursiveInstall(env, pathjoin(target, name), node.abspath)
|
||||
+ install += RecursiveInstall(env, pathjoin(target, name), node.abspath)
|
||||
else:
|
||||
- env.Install(target, node)
|
||||
-RecursiveInstall(env, "$DESTDIR$PREFIX/share/games/endless-sky/data", "data")
|
||||
-RecursiveInstall(env, "$DESTDIR$PREFIX/share/games/endless-sky/images", "images")
|
||||
-RecursiveInstall(env, "$DESTDIR$PREFIX/share/games/endless-sky/sounds", "sounds")
|
||||
-env.Install("$DESTDIR$PREFIX/share/games/endless-sky", "credits.txt")
|
||||
-env.Install("$DESTDIR$PREFIX/share/games/endless-sky", "keys.txt")
|
||||
+ install += env.Install(target, node)
|
||||
+ return install
|
||||
+install += RecursiveInstall(env, "$PREFIX/share/games/endless-sky/data", "data")
|
||||
+install += RecursiveInstall(env, "$PREFIX/share/games/endless-sky/images", "images")
|
||||
+install += RecursiveInstall(env, "$PREFIX/share/games/endless-sky/sounds", "sounds")
|
||||
+install += env.Install("$PREFIX/share/games/endless-sky", "credits.txt")
|
||||
+install += env.Install("$PREFIX/share/games/endless-sky", "keys.txt")
|
||||
|
||||
# Make the word "install" in the command line do an installation.
|
||||
-env.Alias("install", "$DESTDIR$PREFIX")
|
||||
+env.Alias("install", install)
|
||||
|
|
Loading…
Add table
Reference in a new issue