#!/usr/bin/env python Import("env") Import("env_modules") env_etcpak = env_modules.Clone() # Thirdparty source files thirdparty_obj = [] thirdparty_dir = "#thirdparty/etcpak/" thirdparty_sources = [ "Bitmap.cpp", "BitmapDownsampled.cpp", "BlockData.cpp", "ColorSpace.cpp", "DataProvider.cpp", "Debug.cpp", "Dither.cpp", "Error.cpp", "mmap.cpp", "ProcessDxtc.cpp", "ProcessRGB.cpp", "System.cpp", "Tables.cpp", "TaskDispatch.cpp", "Timing.cpp", "lz4/lz4.c", ] thirdparty_sources = [thirdparty_dir + file for file in thirdparty_sources] env_etcpak.Prepend(CPPPATH=[thirdparty_dir]) # Also requires libpng headers if env["builtin_libpng"]: env_etcpak.Prepend(CPPPATH=["#thirdparty/libpng"]) env_thirdparty = env_etcpak.Clone() env_thirdparty.disable_warnings() env_thirdparty.add_source_files(thirdparty_obj, thirdparty_sources) env.modules_sources += thirdparty_obj # Godot source files module_obj = [] env_etcpak.add_source_files(module_obj, "*.cpp") env.modules_sources += module_obj # Needed to force rebuilding the module files when the thirdparty library is updated. env.Depends(module_obj, thirdparty_obj)