[Mesa-dev] [PATCH] automake: Honor GL_LIB for mangled/custom lib names
Brad King
brad.king at kitware.com
Wed Jul 11 09:40:13 PDT 2012
Commit 2d4b77c7 (automake: Convert src/mesa/drivers/x11/Makefile to
automake, 2012-06-12) dropped the old Makefile, which used GL_LIB, and
replaced it with a Makefile.am hard-coding the name "GL". This broke
handling of --enable-mangling and --with-gl-lib-name options which
depend on GL_LIB to specify the GL library name.
Use "@GL_LIB@" in src/mesa/drivers/x11/Makefile.am to configure the
library name. Also simplify src/glx/Makefile.am using this approach.
While at it, fix the compatibility link we create in "lib" for the
software-only driver to use version GL_MAJOR instead of hard-coding "1".
---
On 07/11/2012 11:24 AM, Eric Anholt wrote:
> Brad King <brad.king at kitware.com> writes:
>> Upon closer inspection it *does* obviously drop use of GL_LIB.
>> Now "libGL" is hard-coded in "Makefile.am". Naive replacement
>> like that below is not valid automake code AFAICT. I'm not
>> familiar enough with automake to know how to make the library
>> name configurable. Does anyone know?
>
> For the OSMesa changes, Laurent Carlier used @OSMESA_LIB@, so if you did
> this patch using @GL_LIB@, it would at least be consistent with that.
Great, thanks! Here is a patch.
-Brad
src/glx/Makefile.am | 25 +++++++------------------
src/mesa/drivers/x11/Makefile.am | 16 ++++++++--------
2 files changed, 15 insertions(+), 26 deletions(-)
diff --git a/src/glx/Makefile.am b/src/glx/Makefile.am
index 37a938d..26a4ca9 100644
--- a/src/glx/Makefile.am
+++ b/src/glx/Makefile.am
@@ -47,15 +47,7 @@ AM_CFLAGS = \
$(GLPROTO_CFLAGS) \
$(X11_INCLUDES)
-if HAVE_MANGLED_GL
-MANGLED_GL_LIB = libMangledGL.la
-else
-NORMAL_GL_LIB = libGL.la
-endif
-
-lib_LTLIBRARIES = \
- $(NORMAL_GL_LIB) \
- $(MANGLED_GL_LIB)
+lib_LTLIBRARIES = lib at GL_LIB@.la
noinst_LTLIBRARIES = libglx.la
@@ -109,20 +101,17 @@ GL_LDFLAGS = \
-Wl,-Bsymbolic \
-version-number 1:2 -no-undefined
-libGL_la_SOURCES =
-libMangledGL_la_SOURCES =
-libGL_la_LIBADD = $(GL_LIBS)
-libMangledGL_la_LIBADD = $(GL_LIBS)
-libGL_la_LDFLAGS = $(GL_LDFLAGS)
-libMangledGL_la_LDFLAGS = $(GL_LDFLAGS)
+lib at GL_LIB@_la_SOURCES =
+lib at GL_LIB@_la_LIBADD = $(GL_LIBS)
+lib at GL_LIB@_la_LDFLAGS = $(GL_LDFLAGS)
# 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.
if !HAVE_MANGLED_GL
-all-local: $(NORMAL_GL_LIB) $(MANGLED_GL_LIB)
+all-local: lib at GL_LIB@.la
$(MKDIR_P) $(top_builddir)/$(LIB_DIR);
- ln -f .libs/libGL.so.1.2.0 $(top_builddir)/$(LIB_DIR)/libGL.so.1
- ln -sf libGL.so.1 $(top_builddir)/$(LIB_DIR)/libGL.so
+ ln -f .libs/lib at GL_LIB@.so.1.2.0 $(top_builddir)/$(LIB_DIR)/lib at GL_LIB@.so.1
+ ln -sf lib at GL_LIB@.so.1 $(top_builddir)/$(LIB_DIR)/lib at GL_LIB@.so
endif
$(GLAPI_LIB):
diff --git a/src/mesa/drivers/x11/Makefile.am b/src/mesa/drivers/x11/Makefile.am
index cced238..3d7a888 100644
--- a/src/mesa/drivers/x11/Makefile.am
+++ b/src/mesa/drivers/x11/Makefile.am
@@ -33,10 +33,10 @@ AM_CPPFLAGS = \
$(DEFINES)
if HAVE_X11_DRIVER
-lib_LTLIBRARIES = libGL.la
+lib_LTLIBRARIES = lib at GL_LIB@.la
endif
-libGL_la_SOURCES = \
+lib at GL_LIB@_la_SOURCES = \
glxapi.h \
glxheader.h \
xfonts.h \
@@ -55,20 +55,20 @@ GL_MAJOR = 1
GL_MINOR = 6
GL_PATCH = 0
-libGL_la_LIBADD = \
+lib at GL_LIB@_la_LIBADD = \
$(top_builddir)/src/mesa/libmesa.a \
$(top_builddir)/src/mapi/glapi/libglapi.a
-libGL_la_LDFLAGS = \
+lib at GL_LIB@_la_LDFLAGS = \
-version-number $(GL_MAJOR):$(GL_MINOR):$(GL_PATCH) \
$(GL_LIB_DEPS)
if HAVE_SHARED_GLAPI
-libGL_la_LDFLAGS += -L$(top_builddir)/$(LIB_DIR) -l$(GLAPI_LIB)
+lib at GL_LIB@_la_LDFLAGS += -L$(top_builddir)/$(LIB_DIR) -l$(GLAPI_LIB)
endif
# 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: libGL.la
+all-local: lib at GL_LIB@.la
$(MKDIR_P) $(top_builddir)/$(LIB_DIR);
- ln -f .libs/libGL.so.$(GL_MAJOR).$(GL_MINOR).$(GL_PATCH) $(top_builddir)/$(LIB_DIR)/libGL.so.1
- ln -sf libGL.so.1 $(top_builddir)/$(LIB_DIR)/libGL.so
+ ln -f .libs/lib at GL_LIB@.so.$(GL_MAJOR).$(GL_MINOR).$(GL_PATCH) $(top_builddir)/$(LIB_DIR)/lib at GL_LIB@.so.$(GL_MAJOR)
+ ln -sf lib at GL_LIB@.so.$(GL_MAJOR) $(top_builddir)/$(LIB_DIR)/lib at GL_LIB@.so
--
1.7.10
More information about the mesa-dev
mailing list