123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- #!/usr/bin/env python
- from misc.utility.scons_hints import *
- from methods import print_error
- Import("env")
- env.drivers_sources = []
- supported = env.get("supported", [])
- # OS drivers
- SConscript("unix/SCsub")
- SConscript("windows/SCsub")
- # Sounds drivers
- SConscript("alsa/SCsub")
- if env["platform"] == "ios" or env["platform"] == "macos":
- SConscript("coreaudio/SCsub")
- SConscript("pulseaudio/SCsub")
- if env["platform"] == "windows":
- SConscript("wasapi/SCsub")
- if not env.msvc:
- SConscript("backtrace/SCsub")
- if env["xaudio2"]:
- if "xaudio2" not in supported:
- print_error("Target platform '{}' does not support the XAudio2 audio driver".format(env["platform"]))
- Exit(255)
- SConscript("xaudio2/SCsub")
- # Midi drivers
- SConscript("alsamidi/SCsub")
- SConscript("coremidi/SCsub")
- SConscript("winmidi/SCsub")
- # Graphics drivers
- if env["vulkan"]:
- SConscript("vulkan/SCsub")
- if env["d3d12"]:
- if "d3d12" not in supported:
- print_error("Target platform '{}' does not support the D3D12 rendering driver".format(env["platform"]))
- Exit(255)
- SConscript("d3d12/SCsub")
- if env["opengl3"]:
- SConscript("gl_context/SCsub")
- SConscript("gles3/SCsub")
- SConscript("egl/SCsub")
- if env["metal"]:
- if "metal" not in supported:
- print_error("Target platform '{}' does not support the Metal rendering driver".format(env["platform"]))
- Exit(255)
- SConscript("metal/SCsub")
- # Core dependencies
- SConscript("png/SCsub")
- env.add_source_files(env.drivers_sources, "*.cpp")
- lib = env.add_library("drivers", env.drivers_sources)
- env.Prepend(LIBS=[lib])
|