This adds support for building the classic swrast implementation. This driver has been tested with glxinfo and glxgears.
Signed-off-by: Dylan Baker <dylanx.c.ba...@intel.com> --- meson.build | 2 ++ meson_options.txt | 2 +- src/mesa/drivers/dri/meson.build | 3 ++ src/mesa/drivers/dri/{ => swrast}/meson.build | 45 ++++++--------------------- 4 files changed, 16 insertions(+), 36 deletions(-) copy src/mesa/drivers/dri/{ => swrast}/meson.build (53%) diff --git a/meson.build b/meson.build index 79ee1a33459..bff40f697d3 100644 --- a/meson.build +++ b/meson.build @@ -73,10 +73,12 @@ endif with_dri = false with_dri_i965 = false +with_dri_swrast = false _drivers = get_option('dri-drivers') if _drivers != '' _split = _drivers.split(',') with_dri_i965 = _split.contains('i965') + with_dri_swrast = _split.contains('swrast') with_dri = true endif diff --git a/meson_options.txt b/meson_options.txt index 6dde267de95..029626d69a4 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -22,7 +22,7 @@ option('platforms', type : 'string', value : 'x11,wayland', description : 'comma separated list of window systems to support. wayland, x11, surfaceless, drm, etc.') option('dri3', type : 'combo', value : 'auto', choices : ['auto', 'yes', 'no'], description : 'enable support for dri3') -option('dri-drivers', type : 'string', value : 'i965', +option('dri-drivers', type : 'string', value : 'swrast,i965', description : 'comma separated list of dri drivers to build.') option('dri-drivers-path', type : 'string', value : '', description : 'Location of dri drivers. Default: $libdir/dri.') diff --git a/src/mesa/drivers/dri/meson.build b/src/mesa/drivers/dri/meson.build index 9e0e9638aa4..cc2272eff6d 100644 --- a/src/mesa/drivers/dri/meson.build +++ b/src/mesa/drivers/dri/meson.build @@ -22,6 +22,9 @@ subdir('common') dri_drivers = [] dri_link = [] +if with_dri_swrast + subdir('swrast') +endif if with_dri_i965 subdir('i965') endif diff --git a/src/mesa/drivers/dri/meson.build b/src/mesa/drivers/dri/swrast/meson.build similarity index 53% copy from src/mesa/drivers/dri/meson.build copy to src/mesa/drivers/dri/swrast/meson.build index 9e0e9638aa4..5ceb1e33e3e 100644 --- a/src/mesa/drivers/dri/meson.build +++ b/src/mesa/drivers/dri/swrast/meson.build @@ -18,38 +18,13 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # SOFTWARE. -subdir('common') - -dri_drivers = [] -dri_link = [] -if with_dri_i965 - subdir('i965') -endif - -if with_dri - libmesa_dri_drivers = shared_library( - 'mesa_dri_drivers', - dummy_cpp, # see meson #2180 - link_whole : dri_drivers, - link_with : [libmegadriver_stub, libdricommon, libxmlconfig, libglapi, - libmesa_util, libnir, libmesa_classic], - dependencies : [dep_selinux, dep_libdrm, dep_expat, dep_m, dep_thread, - dep_dl], - link_args : [ld_args_bsymbolic, ld_args_gc_sections], - ) - - pkg.generate( - name : 'dri', - filebase : 'dri', - description : 'Direct Rendering Infrastructure', - version : meson.project_version(), - requires_private : ['libdrm >= 2.4.75'], # FIXME: don't hardcode this - ) - - meson.add_install_script( - join_paths(meson.source_root(), 'bin/install_megadrivers.py'), - libmesa_dri_drivers.full_path(), - dri_drivers_path, - dri_link, - ) -endif +libswrast_dri = static_library( + 'swrast_dri', + files('swrast.c', 'swrast_priv.h'), + c_args : [c_vis_args], + include_directories : [inc_common, inc_dri_common], + dependencies : dep_libdrm, +) + +dri_drivers += libswrast_dri +dri_link += 'swrast_dri.so' -- 2.14.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev