Jakob Bornecrantz <ja...@vmware.com> writes: > ----- Original Message ----- >> Jakob Bornecrantz <ja...@vmware.com> writes: >> >> >> +libws_loader_la_LIBADD = \ >> >> + $(top_srcdir)/src/gallium/winsys/sw/null/libws_null.la >> >> + >> >> +if HAVE_XLIB_LOADER_GALLIUM >> >> +libws_loader_la_LIBADD += \ >> >> + $(top_srcdir)/src/gallium/winsys/sw/xlib/libws_xlib.la >> >> +AM_CFLAGS += -DHAVE_WS_LOADER_XLIB >> >> +endif >> > >> > Ah so this explains the not sorting winsys dir, this shouldn't >> > be done on the winsys this is for the target to keep track of. >> > Just as it is the targets job to link libdrm. >> > >> >> I had the feeling that letting a winsys link to another wouldn't be >> much of a problem, especially if all the winsys build system is >> going to be converted to automake and we're going to get a more >> automated dependency tracking. But, if we don't want to relax >> that restriction anyway, the other possibility would be to define >> a GALLIUM_WS_LOADER_LIBS variable at configure time containing all >> the objects a target has to pull in order to link to the winsys >> loader. Would that be OK with you? > > Sounds good with me. Under the scons build we usually put that > calculation in the targets [1][2], but I guess for automake we > want a more centralized approach. >
Updated patch series follows. I've used the configure variable approach to avoid having to replicate the same logic in every target that makes use of winsys/loader. '[PATCH 09/15] configure.ac: Don't sort GALLIUM_WINSYS_DIRS' isn't necessary now. Jakob Bornecrantz <ja...@vmware.com> writes: > I'm not against this and the other change per say, I just > wished all of the winsys's where converted at the same time. OK, I'm also leaving out the automake conversion of winsys/null and winsys/xlib for a future patch series. Thanks. Francisco Jerez (12): gallium/util: Define util_strchrnul. gallium/tgsi/ureg: Lift the restriction on releasing temporaries over UREG_MAX_TEMP. gallium/tgsi/ureg: Support local temporary emission. st/mesa: Use local temporary registers. gallium/tgsi: Add new 'has_label' opcode info flag, and fix tgsi_text.c to use it. gallium/tgsi: Fix tgsi_build_full_immediate() for non-float data types. gallium/tgsi/text: Parse immediates of non-float data types. gallium/tgsi/text: Replace open-coded integer parsing with parse_int(). gallium: Add winsys loader for device enumeration and driver multiplexing. gallium: Add "pipe-loader" target. gallium/tests/trivial: Switch to the winsys loader. gallium/gbm: Switch to the winsys loader. configs/autoconf.in | 3 + configure.ac | 33 ++ src/gallium/auxiliary/tgsi/tgsi_build.c | 30 +- src/gallium/auxiliary/tgsi/tgsi_info.c | 352 ++++++++++---------- src/gallium/auxiliary/tgsi/tgsi_info.h | 1 + src/gallium/auxiliary/tgsi/tgsi_text.c | 88 +++-- src/gallium/auxiliary/tgsi/tgsi_ureg.c | 85 +++-- src/gallium/auxiliary/tgsi/tgsi_ureg.h | 3 + src/gallium/auxiliary/util/u_string.h | 24 +- src/gallium/state_trackers/gbm/gbm_drm.c | 5 +- .../state_trackers/gbm/gbm_gallium_drmint.h | 3 + src/gallium/targets/gbm/Makefile | 170 +--------- src/gallium/targets/gbm/gbm.c | 44 ++- src/gallium/targets/gbm/pipe_i915.c | 27 -- src/gallium/targets/gbm/pipe_loader.c | 192 ----------- src/gallium/targets/gbm/pipe_loader.h | 48 --- src/gallium/targets/gbm/pipe_nouveau.c | 21 -- src/gallium/targets/gbm/pipe_r300.c | 27 -- src/gallium/targets/gbm/pipe_r600.c | 26 -- src/gallium/targets/gbm/pipe_swrast.c | 22 -- src/gallium/targets/gbm/pipe_vmwgfx.c | 27 -- src/gallium/targets/pipe-loader/Makefile | 165 +++++++++ src/gallium/targets/pipe-loader/pipe_i915.c | 27 ++ src/gallium/targets/pipe-loader/pipe_nouveau.c | 21 ++ src/gallium/targets/pipe-loader/pipe_r300.c | 27 ++ src/gallium/targets/pipe-loader/pipe_r600.c | 26 ++ src/gallium/targets/pipe-loader/pipe_swrast.c | 22 ++ src/gallium/targets/pipe-loader/pipe_vmwgfx.c | 27 ++ src/gallium/tests/trivial/Makefile | 25 +- src/gallium/tests/trivial/quad-tex.c | 24 +- src/gallium/tests/trivial/tri.c | 24 +- src/gallium/winsys/loader/Makefile.am | 34 ++ src/gallium/winsys/loader/ws_loader.c | 102 ++++++ src/gallium/winsys/loader/ws_loader.h | 144 ++++++++ src/gallium/winsys/loader/ws_loader_drm.c | 218 ++++++++++++ src/gallium/winsys/loader/ws_loader_priv.h | 47 +++ src/gallium/winsys/loader/ws_loader_sw.c | 107 ++++++ src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 8 +- 38 files changed, 1411 insertions(+), 868 deletions(-) _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev