Our intention is still that it's not abi stable, so make the package version number get included in the library name. Now you can parallel install dricore-using drivers from multiple mesa versions. We can put it into lib now that we're following library versioning rules (assuming that ABIs don't change within a single Mesa point release). LD_LIBRARY_PATH still doesn't work with a non-/, non-/usr prefix because libtool uses rpath instead of runpath for nonstandard prefixes.tags/instanced_arrays-v2
| @@ -41,8 +41,6 @@ LLVM_LIBS = @LLVM_LIBS@ | |||
| LLVM_INCLUDEDIR = @LLVM_INCLUDEDIR@ | |||
| GLW_CFLAGS = @GLW_CFLAGS@ | |||
| GLX_TLS = @GLX_TLS@ | |||
| DRI_CFLAGS = @DRI_CFLAGS@ | |||
| DRI_CXXFLAGS = @DRI_CXXFLAGS@ | |||
| # dlopen | |||
| DLOPEN_LIBS = @DLOPEN_LIBS@ | |||
| @@ -124,8 +122,6 @@ GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drive | |||
| # Driver specific build vars | |||
| DRI_DIRS = @DRI_DIRS@ | |||
| DRICORE_LIBS = @DRICORE_LIBS@ | |||
| DRICORE_LIB_DEPS = @DRICORE_LIB_DEPS@ | |||
| EGL_PLATFORMS = @EGL_PLATFORMS@ | |||
| EGL_CLIENT_APIS = @EGL_CLIENT_APIS@ | |||
| @@ -83,9 +83,6 @@ GLESv2_LIB_GLOB = $(GLESv2_LIB_NAME)* | |||
| VG_LIB_GLOB = $(VG_LIB_NAME)* | |||
| GLAPI_LIB_GLOB = $(GLAPI_LIB_NAME)* | |||
| DRI_CFLAGS = $(CFLAGS) | |||
| DRI_CXXFLAGS = $(CXXFLAGS) | |||
| # Optional assembly language optimization files for libGL | |||
| MESA_ASM_FILES = | |||
| @@ -1085,25 +1085,15 @@ AC_SUBST([GLAPI_LIB_DEPS]) | |||
| dnl Setup default DRI CFLAGS | |||
| DRI_CFLAGS='$(CFLAGS)' | |||
| DRI_CXXFLAGS='$(CXXFLAGS)' | |||
| DRI_LIB_DEPS='$(TOP)/src/mesa/libmesa.a' | |||
| MESA_MODULES='$(TOP)/src/mesa/libmesa.a' | |||
| if test "x$enable_dri" = xyes && test "x$driglx_direct" = xyes ; then | |||
| DRICORE_LIBS='$(TOP)/$(LIB_DIR)/libdricore.so' | |||
| DRICORE_LIB_DEPS='-L$(TOP)/$(LIB_DIR) -Wl,-R$(DRI_DRIVER_INSTALL_DIR)' | |||
| DRI_LIB_DEPS='-L$(TOP)/$(LIB_DIR) -Wl,-R$(DRI_DRIVER_INSTALL_DIR) -ldricore' | |||
| DRI_CFLAGS='$(CFLAGS_NOVISIBILITY) -DUSE_DRICORE' | |||
| DRI_CXXFLAGS='$(CXXFLAGS_NOVISIBILITY) -DUSE_DRICORE' | |||
| MESA_MODULES='$(DRICORE_LIBS)' | |||
| DRI_LIB_DEPS="-L\$(TOP)/\$(LIB_DIR) -ldricore$VERSION" | |||
| MESA_MODULES="\$(TOP)/\$(LIB_DIR)/libdricore$VERSION.so" | |||
| HAVE_DRICORE=yes | |||
| fi | |||
| AM_CONDITIONAL(HAVE_DRICORE, test x$HAVE_DRICORE = xyes) | |||
| AC_SUBST([DRICORE_LIBS]) | |||
| AC_SUBST([DRICORE_LIB_DEPS]) | |||
| AC_SUBST([DRI_CXXFLAGS]) | |||
| AC_SUBST([DRI_CFLAGS]) | |||
| AC_SUBST([MESA_MODULES]) | |||
| AC_SUBST([HAVE_XF86VIDMODE]) | |||
| @@ -32,13 +32,11 @@ AM_CPPFLAGS = \ | |||
| $(API_DEFINES) \ | |||
| $(DEFINES) | |||
| dridir = $(libdir)/dri | |||
| AM_CFLAGS = $(CFLAGS_NOVISIBILITY) -DUSE_DRICORE | |||
| AM_CXXFLAGS = $(CXXFLAGS_NOVISIBILITY) -DUSE_DRICORE | |||
| AM_CCASFLAGS = $(CFLAGS_NOVISIBILITY) -DUSE_DRICORE | |||
| libdricore_la_SOURCES = \ | |||
| libdricore@VERSION@_la_SOURCES = \ | |||
| $(MESA_FILES) \ | |||
| $(MESA_CXX_FILES) \ | |||
| $(LIBGLCPP_GENERATED_FILES) \ | |||
| @@ -47,8 +45,8 @@ libdricore_la_SOURCES = \ | |||
| $(LIBGLSL_CXX_FILES) \ | |||
| $(BUILTIN_COMPILER_GENERATED_CXX_FILES) \ | |||
| $(top_srcdir)/src/glsl/builtin_function.cpp | |||
| libdricore_la_LDFLAGS = -module -avoid-version -shared | |||
| libdricore_la_LIBADD = libdricore-asm.la | |||
| libdricore@VERSION@_la_LDFLAGS = -version-number 1:0 | |||
| libdricore@VERSION@_la_LIBADD = libdricore-asm.la | |||
| # This is separated from libdricore to avoid conflics in object | |||
| # outputs between main/clip.c and sparc/clip.c. The documented way to | |||
| @@ -72,16 +70,18 @@ endif | |||
| if HAVE_DRICORE | |||
| noinst_LTLIBRARIES = libdricore-asm.la | |||
| dri_LTLIBRARIES = libdricore.la | |||
| lib_LTLIBRARIES = libdricore@VERSION@.la | |||
| # Provide compatibility with scripts for the old Mesa build system for | |||
| # a while by putting a link to the driver into /lib of the build tree. | |||
| all-local: libdricore.la | |||
| all-local: libdricore@VERSION@.la | |||
| $(MKDIR_P) $(top_builddir)/$(LIB_DIR); | |||
| ln -f .libs/libdricore.so $(top_builddir)/$(LIB_DIR)/libdricore.so; | |||
| ln -f .libs/libdricore@VERSION@.so.1.0.0 $(top_builddir)/$(LIB_DIR)/libdricore@VERSION@.so.1; | |||
| ln -sf libdricore@VERSION@.so.1 $(top_builddir)/$(LIB_DIR)/libdricore@VERSION@.so | |||
| endif | |||
| CLEANFILES = \ | |||
| $(top_builddir)/$(LIB_DIR)/libdricore.so | |||
| $(top_builddir)/$(LIB_DIR)/libdricore@VERSION@.so.1 \ | |||
| $(top_builddir)/$(LIB_DIR)/libdricore@VERSION@.so | |||
| -include $(DEPENDS) | |||