Add build support for webp images.
This commit is contained in:
parent
2c0b0bac68
commit
f44acd68c2
8 changed files with 48 additions and 9 deletions
|
@ -390,8 +390,7 @@ if env["prereqs"]:
|
|||
have_client_prereqs = have_client_prereqs & conf.CheckLib("vorbisfile") & conf.CheckOgg()
|
||||
have_client_prereqs = have_client_prereqs & conf.CheckPNG()
|
||||
have_client_prereqs = have_client_prereqs & conf.CheckJPG()
|
||||
# have_client_prereqs = have_client_prereqs & conf.CheckOpenGL()
|
||||
# have_client_prereqs = have_client_prereqs & conf.CheckGLEW()
|
||||
have_client_prereqs = have_client_prereqs & conf.CheckWebP()
|
||||
have_client_prereqs = have_client_prereqs & conf.CheckCairo(min_version = "1.10")
|
||||
have_client_prereqs = have_client_prereqs & conf.CheckPango("cairo", require_version = "1.22.0")
|
||||
have_client_prereqs = have_client_prereqs & conf.CheckPKG("fontconfig")
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 6.1 MiB |
BIN
data/core/images/maps/background.webp
Normal file
BIN
data/core/images/maps/background.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.3 MiB |
|
@ -62,7 +62,7 @@
|
|||
|
||||
[images]
|
||||
game_title="maps/titlescreen.png"
|
||||
game_title_background="maps/background.jpg"
|
||||
game_title_background="maps/background.webp"
|
||||
game_logo="misc/logo.png"
|
||||
game_logo_background="misc/logo-bg.png"
|
||||
|
||||
|
|
45
scons/sdl.py
45
scons/sdl.py
|
@ -191,6 +191,44 @@ def CheckPNG(context):
|
|||
context.Result("no")
|
||||
return False
|
||||
|
||||
def CheckWebP(context):
|
||||
test_program = '''
|
||||
#include <SDL_image.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
SDL_RWops *src;
|
||||
char *testimage = "$TESTFILE";
|
||||
|
||||
src = SDL_RWFromFile(testimage, "rb");
|
||||
if (src == NULL) {
|
||||
exit(2);
|
||||
}
|
||||
exit(!IMG_isWEBP(src));
|
||||
}
|
||||
\n
|
||||
'''
|
||||
nodepath = File("data/core/images/maps/background.webp").rfile().abspath.replace("\\", "\\\\")
|
||||
test_program1 = context.env.Clone(TESTFILE = nodepath).subst(test_program)
|
||||
context.Message("Checking for WebP support in SDL... ")
|
||||
if context.env["host"]:
|
||||
context.Result("n/a (cross-compile)")
|
||||
return True
|
||||
(result, output) = context.TryRun(test_program1, ".c")
|
||||
if result:
|
||||
context.Result("yes")
|
||||
return True
|
||||
else:
|
||||
test_program2 = context.env.Clone(TESTFILE = "data/core/images/maps/background.webp").subst(test_program)
|
||||
(result, output) = context.TryRun(test_program2, ".c")
|
||||
if result:
|
||||
context.Result("yes")
|
||||
return True
|
||||
else:
|
||||
context.Result("no")
|
||||
return False
|
||||
|
||||
def CheckJPG(context):
|
||||
test_program = '''
|
||||
#include <SDL_image.h>
|
||||
|
@ -209,7 +247,7 @@ def CheckJPG(context):
|
|||
}
|
||||
\n
|
||||
'''
|
||||
nodepath = File("data/core/images/maps/background.jpg").rfile().abspath.replace("\\", "\\\\")
|
||||
nodepath = File("attic/northlands.jpg").rfile().abspath.replace("\\", "\\\\")
|
||||
test_program1 = context.env.Clone(TESTFILE = nodepath).subst(test_program)
|
||||
context.Message("Checking for JPG support in SDL... ")
|
||||
if context.env["host"]:
|
||||
|
@ -220,7 +258,7 @@ def CheckJPG(context):
|
|||
context.Result("yes")
|
||||
return True
|
||||
else:
|
||||
test_program2 = context.env.Clone(TESTFILE = "data/core/images/maps/background.jpg").subst(test_program)
|
||||
test_program2 = context.env.Clone(TESTFILE = "attic/northlands.jpg").subst(test_program)
|
||||
(result, output) = context.TryRun(test_program2, ".c")
|
||||
if result:
|
||||
context.Result("yes")
|
||||
|
@ -232,4 +270,5 @@ def CheckJPG(context):
|
|||
config_checks = { 'CheckSDL' : CheckSDL,
|
||||
'CheckOgg' : CheckOgg,
|
||||
'CheckPNG' : CheckPNG,
|
||||
'CheckJPG' : CheckJPG }
|
||||
'CheckJPG' : CheckJPG,
|
||||
'CheckWebP' : CheckWebP }
|
||||
|
|
|
@ -8,7 +8,7 @@ command -v isutf8 >/dev/null || { echo "Install 'isutf8' from moreutils to use t
|
|||
exit_code=0
|
||||
|
||||
find src/ -type f -not -path "src/modules/*" -print0 | xargs -0 isutf8 -- || exit_code=1
|
||||
for ex in png ogg jpg wav gif xcf bin; do args+=(! -name "*.$ex"); done
|
||||
for ex in png ogg jpg wav gif xcf bin webp; do args+=(! -name "*.$ex"); done
|
||||
find data/ -type f "${args[@]}" ! -name "test_cve_2018_1999023_2.cfg" -print0 | xargs -0 isutf8 -- || exit_code=1
|
||||
find po/ -type f -print0 | xargs -0 isutf8 -- || exit_code=1
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
VALVEFILE=com.valvesoftware.SteamRuntime.Sdk-amd64,i386-scout-sysroot.Dockerfile
|
||||
VALVETAR=com.valvesoftware.SteamRuntime.Sdk-amd64,i386-scout-sysroot.tar.gz
|
||||
VALVE_SNAPSHOT=0.20211207.0
|
||||
VALVE_SNAPSHOT=0.20220119.0
|
||||
|
||||
DOCKERBASEIMAGE=steamrt_scout_amd64
|
||||
DOCKERLOCALIMAGE=wesnoth/wesnoth:steamrt-master
|
||||
|
|
|
@ -6,8 +6,9 @@
|
|||
"sdl2",
|
||||
{
|
||||
"name": "sdl2-image",
|
||||
"features": [ "libjpeg-turbo" ]
|
||||
"features": [ "libjpeg-turbo", "libwebp" ]
|
||||
},
|
||||
"libwebp",
|
||||
{
|
||||
"name": "sdl2-mixer",
|
||||
"features": [ "libvorbis", "dynamic-load" ]
|
||||
|
|
Loading…
Add table
Reference in a new issue