Hi,
This series reworks some of our configure options to make Gallium easier to configure.
First, there is a new option --with-gallium-drivers=DIRS, which replaces the current heap of options --enable-gallium-DRIVER. --disable-gallium is removed as well, instead, --with-gallium-drivers= without parameters should be used to disable Gallium.
--enable-gallium-egl is removed. having --enable-egl and --with-gallium-drivers=somedriver is sufficient.
--with-state-trackers is removed as well. The list of state trackers is automatically deduced from the --enable-API options (the vega,egl state trackers) and --with-driver=dri|xlib (the dri,glx state trackers). Some state trackers lack an enable flag now, so these two have been added to make the list complete: --enable-xorg and --enable-d3d1x.
In order to be able to "git bisect run" through this change, you can specify both the old and new options at the same time. Those that are unsupported are ignored.
Other than that, I am enabling r600g by default and removing r300g and r600g from scons. I am not a fan of having multiple build systems and most people prefer autoconf anyway. It's not like anybody needs to build those drivers on Windows.
Please review.
BTW, one issue remains:
In order to build a Gallium EGL driver, st/dri or st/xorg must be enabled (so that the driver's winsys dir is included), even though EGL and its APIs are an entirely separate project. configure.ac has no control over it. The EGL drivers are hardcoded in src/gallium/targets/egl and are compiled if their winsyses are compiled as well.
Marek Olšák (6):
configure.ac: remove redundant option --enable-gallium-egl
configure.ac: remove --with-state-trackers
configure.ac: add option --with-gallium-drivers=DIRS
configure.ac: build r600g by default
scons: remove r300g from the build system
scons: remove r600g from the build system
Makefile | 1 -
configure.ac | 394 ++++++++-----------------
src/gallium/SConscript | 14 +-
src/gallium/drivers/r300/SConscript | 44 ---
src/gallium/drivers/r600/SConscript | 37 ---
src/gallium/targets/dri-r300/SConscript | 26 --
src/gallium/targets/dri-r600/SConscript | 25 --
src/gallium/targets/egl-static/SConscript | 9 -
src/gallium/winsys/SConscript | 8 -
src/gallium/winsys/r600/drm/SConscript | 29 --
src/gallium/winsys/radeon/drm/SConscript | 22 --
src/mesa/drivers/dri/r300/compiler/SConscript | 51 ----
12 files changed, 128 insertions(+), 532 deletions(-)
delete mode 100644 src/gallium/drivers/r300/SConscript
delete mode 100644 src/gallium/drivers/r600/SConscript
delete mode 100644 src/gallium/targets/dri-r300/SConscript
delete mode 100644 src/gallium/targets/dri-r600/SConscript
delete mode 100644 src/gallium/winsys/r600/drm/SConscript
delete mode 100644 src/gallium/winsys/radeon/drm/SConscript
delete mode 100755 src/mesa/drivers/dri/r300/compiler/SConscript
Best regards
Marek