godot/modules/webp/SCsub
Rémi Verschelde d52b70fb5e SCons: Always use env.Prepend for CPPPATH
Include paths are processed from left to right, so we use Prepend to
ensure that paths to bundled thirdparty files will have precedence over
system paths (e.g. `/usr/include` should have lowest priority).
2019-04-30 13:12:06 +02:00

137 lines
4.0 KiB
Python

#!/usr/bin/env python
Import('env')
Import('env_modules')
env_webp = env_modules.Clone()
# Thirdparty source files
if env['builtin_libwebp']:
thirdparty_dir = "#thirdparty/libwebp/"
thirdparty_sources = [
"dec/alpha_dec.c",
"dec/buffer_dec.c",
"dec/frame_dec.c",
"dec/idec_dec.c",
"dec/io_dec.c",
"dec/quant_dec.c",
"dec/tree_dec.c",
"dec/vp8_dec.c",
"dec/vp8l_dec.c",
"dec/webp_dec.c",
"demux/anim_decode.c",
"demux/demux.c",
"dsp/alpha_processing.c",
"dsp/alpha_processing_mips_dsp_r2.c",
"dsp/alpha_processing_neon.c",
"dsp/alpha_processing_sse2.c",
"dsp/alpha_processing_sse41.c",
"dsp/cost.c",
"dsp/cost_mips32.c",
"dsp/cost_mips_dsp_r2.c",
"dsp/cost_neon.c",
"dsp/cost_sse2.c",
"dsp/cpu.c",
"dsp/dec.c",
"dsp/dec_clip_tables.c",
"dsp/dec_mips32.c",
"dsp/dec_mips_dsp_r2.c",
"dsp/dec_msa.c",
"dsp/dec_neon.c",
"dsp/dec_sse2.c",
"dsp/dec_sse41.c",
"dsp/enc.c",
"dsp/enc_mips32.c",
"dsp/enc_mips_dsp_r2.c",
"dsp/enc_msa.c",
"dsp/enc_neon.c",
"dsp/enc_sse2.c",
"dsp/enc_sse41.c",
"dsp/filters.c",
"dsp/filters_mips_dsp_r2.c",
"dsp/filters_msa.c",
"dsp/filters_neon.c",
"dsp/filters_sse2.c",
"dsp/lossless.c",
"dsp/lossless_enc.c",
"dsp/lossless_enc_mips32.c",
"dsp/lossless_enc_mips_dsp_r2.c",
"dsp/lossless_enc_msa.c",
"dsp/lossless_enc_neon.c",
"dsp/lossless_enc_sse2.c",
"dsp/lossless_enc_sse41.c",
"dsp/lossless_mips_dsp_r2.c",
"dsp/lossless_msa.c",
"dsp/lossless_neon.c",
"dsp/lossless_sse2.c",
"dsp/rescaler.c",
"dsp/rescaler_mips32.c",
"dsp/rescaler_mips_dsp_r2.c",
"dsp/rescaler_msa.c",
"dsp/rescaler_neon.c",
"dsp/rescaler_sse2.c",
"dsp/ssim.c",
"dsp/ssim_sse2.c",
"dsp/upsampling.c",
"dsp/upsampling_mips_dsp_r2.c",
"dsp/upsampling_msa.c",
"dsp/upsampling_neon.c",
"dsp/upsampling_sse2.c",
"dsp/upsampling_sse41.c",
"dsp/yuv.c",
"dsp/yuv_mips32.c",
"dsp/yuv_mips_dsp_r2.c",
"dsp/yuv_neon.c",
"dsp/yuv_sse2.c",
"dsp/yuv_sse41.c",
"enc/alpha_enc.c",
"enc/analysis_enc.c",
"enc/backward_references_cost_enc.c",
"enc/backward_references_enc.c",
"enc/config_enc.c",
"enc/cost_enc.c",
"enc/filter_enc.c",
"enc/frame_enc.c",
"enc/histogram_enc.c",
"enc/iterator_enc.c",
"enc/near_lossless_enc.c",
"enc/picture_csp_enc.c",
"enc/picture_enc.c",
"enc/picture_psnr_enc.c",
"enc/picture_rescale_enc.c",
"enc/picture_tools_enc.c",
"enc/predictor_enc.c",
"enc/quant_enc.c",
"enc/syntax_enc.c",
"enc/token_enc.c",
"enc/tree_enc.c",
"enc/vp8l_enc.c",
"enc/webp_enc.c",
"mux/anim_encode.c",
"mux/muxedit.c",
"mux/muxinternal.c",
"mux/muxread.c",
"utils/bit_reader_utils.c",
"utils/bit_writer_utils.c",
"utils/color_cache_utils.c",
"utils/filters_utils.c",
"utils/huffman_encode_utils.c",
"utils/huffman_utils.c",
"utils/quant_levels_dec_utils.c",
"utils/quant_levels_utils.c",
"utils/random_utils.c",
"utils/rescaler_utils.c",
"utils/thread_utils.c",
"utils/utils.c",
]
thirdparty_sources = [thirdparty_dir + "src/" + file for file in thirdparty_sources]
env_webp.Prepend(CPPPATH=[thirdparty_dir, thirdparty_dir + "src/"])
env_thirdparty = env_webp.Clone()
env_thirdparty.disable_warnings()
env_thirdparty.add_source_files(env.modules_sources, thirdparty_sources)
# Godot source files
env_webp.add_source_files(env.modules_sources, "*.cpp")