On 28/05/14 01:55, Axel Davy wrote: > Signed-off-by: Axel Davy <axel.d...@ens.fr> Hi Axel
Can you give the scons build a try. I suspect that this patch will leave it in somewhat broken state. > --- > src/Makefile.am | 4 +++- > src/loader/Makefile.am | 21 ++++++++++++++++--- > src/loader/loader.c | 27 > +++++++++++++++++++++++++ > src/mesa/drivers/dri/common/xmlconfig.h | 2 ++ > src/mesa/drivers/dri/common/xmlpool/t_options.h | 14 +++++++++++++ > 5 files changed, 64 insertions(+), 4 deletions(-) > > diff --git a/src/Makefile.am b/src/Makefile.am > index 9d1580f..d4a7090 100644 > --- a/src/Makefile.am > +++ b/src/Makefile.am > @@ -19,12 +19,14 @@ > # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER > DEALINGS > # IN THE SOFTWARE. > > -SUBDIRS = gtest loader mapi > +SUBDIRS = gtest mapi > > if NEED_OPENGL_COMMON > SUBDIRS += glsl mesa > endif > > +SUBDIRS += loader > + > if HAVE_DRI_GLX > SUBDIRS += glx > endif > diff --git a/src/loader/Makefile.am b/src/loader/Makefile.am > index bddf7ac..3503a51 100644 > --- a/src/loader/Makefile.am > +++ b/src/loader/Makefile.am > @@ -29,6 +29,23 @@ libloader_la_CPPFLAGS = \ > $(VISIBILITY_CFLAGS) \ > $(LIBUDEV_CFLAGS) > > +libloader_la_SOURCES = $(LOADER_C_FILES) > +libloader_la_LIBADD = $() > + Please drop the "$()" > +if NEED_OPENGL_COMMON > +libloader_la_CPPFLAGS += \ > + -I$(top_srcdir)/src/mesa/drivers/dri/common/ \ Out of tree builds will fail without -I$(top_builddir)/src/mesa/drivers/dri/common/ \ and possibly similar treatment for the other two > + -I$(top_srcdir)/src/mesa/ \ > + -I$(top_srcdir)/src/mapi/ \ > + -DUSE_DRICONF > + > +libloader_la_SOURCES += \ > + $(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c > + > +libloader_la_LIBADD += \ > + -lexpat EXPAT_LIBS might be better. > +endif > + > if !HAVE_LIBDRM > libloader_la_CPPFLAGS += \ > -D__NOT_HAVE_DRM_H > @@ -36,8 +53,6 @@ else > libloader_la_CPPFLAGS += \ > $(LIBDRM_CFLAGS) > > -libloader_la_LIBADD = \ > +libloader_la_LIBADD += \ > $(LIBDRM_LIBS) > endif > - > -libloader_la_SOURCES = $(LOADER_C_FILES) > diff --git a/src/loader/loader.c b/src/loader/loader.c > index 3d504f7..e9a8c46 100644 > --- a/src/loader/loader.c > +++ b/src/loader/loader.c > @@ -74,6 +74,10 @@ > #include <unistd.h> > #include <stdlib.h> > #include <errno.h> > +#ifdef USE_DRICONF > +#include "xmlconfig.h" > +#include "xmlpool.h" > +#endif > #endif > #include "loader.h" > > @@ -310,9 +314,22 @@ drm_open_device(const char *device_name) > return fd; > } > > +#ifdef USE_DRICONF > +const char __driConfigOptionsLoader[] = > +DRI_CONF_BEGIN > + DRI_CONF_SECTION_INITIALIZATION > + DRI_CONF_DEVICE_ID_PATH_TAG() > + DRI_CONF_SECTION_END > +DRI_CONF_END; > +#endif > + > int loader_get_user_preferred_fd(int default_fd, int *different_device) > { > struct udev *udev; > +#ifdef USE_DRICONF > + driOptionCache defaultInitOptions; > + driOptionCache userInitOptions; > +#endif > const char *dri_prime = getenv("DRI_PRIME"); > char *prime = NULL; > int is_different_device = 0, fd = default_fd; > @@ -324,6 +341,16 @@ int loader_get_user_preferred_fd(int default_fd, int > *different_device) > > if (dri_prime) > prime = strdup(dri_prime); > +#ifdef USE_DRICONF > + else { > + driParseOptionInfo(&defaultInitOptions, __driConfigOptionsLoader); > + driParseConfigFiles(&userInitOptions, &defaultInitOptions, 0, > "loader"); > + if (driCheckOption(&userInitOptions, "device_id", DRI_STRING)) > + prime = strdup(driQueryOptionstr(&userInitOptions, "device_id")); > + driDestroyOptionCache(&userInitOptions); > + driDestroyOptionInfo(&defaultInitOptions); > + } > +#endif > > if (prime == NULL) { > *different_device = 0; > diff --git a/src/mesa/drivers/dri/common/xmlconfig.h > b/src/mesa/drivers/dri/common/xmlconfig.h > index 786caae..a4daa6b 100644 > --- a/src/mesa/drivers/dri/common/xmlconfig.h > +++ b/src/mesa/drivers/dri/common/xmlconfig.h > @@ -30,6 +30,8 @@ > #ifndef __XMLCONFIG_H > #define __XMLCONFIG_H > > +#include <GL/gl.h> > + ^^ This is rather ugly, although the GL* types used throughout kind of mandate it :\ Thanks Emil _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev