From: Laurent Carlier Date: Sun, 24 Jun 2012 07:51:27 +0000 (+0200) Subject: automake: convert libOSmesa X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=284325d97b3049e59e64daf784e2b3858f0ffcf5;p=mesa.git automake: convert libOSmesa This also currently fix the installation of libOSmesa. v2: Remove old Makefile, libOSmesa is now versioned, fix typos v3: Keep config substitution alphabetized v4: Update .gitignore v5: Libraries will be in the builddir, not the srcdir. Reviewed-by: Jon TURNEY Reviewed-by: Eric Anholt Tested-by: Matt Turner --- diff --git a/configure.ac b/configure.ac index 08ea5beb400..5390868a7da 100644 --- a/configure.ac +++ b/configure.ac @@ -1351,10 +1351,14 @@ if test "x$enable_osmesa" = xyes; then OSMESA_MESA_DEPS="" OSMESA_PC_LIB_PRIV="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS" fi + +OSMESA_VERSION=`echo "$VERSION" | $SED 's/\./:/g'` + AC_SUBST([OSMESA_LIB_DEPS]) AC_SUBST([OSMESA_MESA_DEPS]) AC_SUBST([OSMESA_PC_REQ]) AC_SUBST([OSMESA_PC_LIB_PRIV]) +AC_SUBST([OSMESA_VERSION]) dnl dnl gbm configuration @@ -2169,6 +2173,7 @@ AC_CONFIG_FILES([configs/current src/mesa/drivers/dri/r200/Makefile src/mesa/drivers/dri/radeon/Makefile src/mesa/drivers/dri/swrast/Makefile + src/mesa/drivers/osmesa/Makefile src/mesa/drivers/x11/Makefile src/mesa/gl.pc src/mesa/osmesa.pc]) diff --git a/src/mesa/drivers/osmesa/.gitignore b/src/mesa/drivers/osmesa/.gitignore new file mode 100644 index 00000000000..5fc607b9e2f --- /dev/null +++ b/src/mesa/drivers/osmesa/.gitignore @@ -0,0 +1 @@ +/Makefile diff --git a/src/mesa/drivers/osmesa/Makefile b/src/mesa/drivers/osmesa/Makefile deleted file mode 100644 index 39ab09af805..00000000000 --- a/src/mesa/drivers/osmesa/Makefile +++ /dev/null @@ -1,51 +0,0 @@ -# src/mesa/drivers/osmesa/Makefile for libOSMesa.so - -# Note that we may generate libOSMesa.so or libOSMesa16.so or libOSMesa32.so -# with this Makefile - - -TOP = ../../../.. - -include $(TOP)/configs/current - - - -SOURCES = osmesa.c - -OBJECTS = $(SOURCES:.c=.o) - -INCLUDE_DIRS = \ - -I$(TOP)/include \ - -I$(TOP)/src/mapi \ - -I$(TOP)/src/mesa \ - -I$(TOP)/src/mesa/main - -CORE_MESA = \ - $(TOP)/src/mesa/libmesa.a \ - $(TOP)/src/mapi/glapi/libglapi.a \ - $(TOP)/src/glsl/libglsl.a - -.c.o: - $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@ - - -default: $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME) - - -# libOSMesa can be used in conjuction with libGL or with all other Mesa -# sources. We can also build libOSMesa16/libOSMesa32 by setting -# -DCHAN_BITS=16/32. -$(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME): $(OBJECTS) $(CORE_MESA) - $(MKLIB) -o $(OSMESA_LIB) -linker '$(CXX)' -ldflags '$(LDFLAGS)' \ - -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \ - -install $(TOP)/$(LIB_DIR) -cplusplus $(MKLIB_OPTIONS) \ - -id $(INSTALL_LIB_DIR)/lib$(OSMESA_LIB).$(MESA_MAJOR).dylib \ - $(OSMESA_LIB_DEPS) $(OBJECTS) $(CORE_MESA) - - - -clean: - -rm -f *.o *~ - - -# XXX todo install rule? diff --git a/src/mesa/drivers/osmesa/Makefile.am b/src/mesa/drivers/osmesa/Makefile.am new file mode 100644 index 00000000000..3cf3005071a --- /dev/null +++ b/src/mesa/drivers/osmesa/Makefile.am @@ -0,0 +1,50 @@ + + +# Copyright © 2012 Laurent Carlier +# +# Permission is hereby granted, free of charge, to any person obtaining a +# copy of this software and associated documentation files (the "Software"), +# to deal in the Software without restriction, including without limitation +# the rights to use, copy, modify, merge, publish, distribute, sublicense, +# and/or sell copies of the Software, and to permit persons to whom the +# Software is furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice (including the next +# paragraph) shall be included in all copies or substantial portions of the +# Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +# IN THE SOFTWARE. + +# Hack to make some of the non-automake variables work. +TOP=$(top_builddir) + +AM_CFLAGS = \ + -I$(top_srcdir)/include \ + -I$(top_srcdir)/src/mapi \ + -I$(top_srcdir)/src/mesa/ \ + $(DEFINES) \ + $(API_DEFINES) + +if HAVE_OSMESA_DRIVER +lib_LTLIBRARIES = lib@OSMESA_LIB@.la +endif + +lib@OSMESA_LIB@_la_SOURCES = osmesa.c + +lib@OSMESA_LIB@_la_LDFLAGS = -module -version-number @OSMESA_VERSION@ -shared +lib@OSMESA_LIB@_la_LIBADD = \ + $(top_builddir)/src/mesa/libmesa.a \ + $(top_builddir)/src/mapi/glapi/libglapi.a \ + $(top_builddir)/src/glsl/libglsl.a + +# 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: lib@OSMESA_LIB@.la + $(MKDIR_P) $(top_builddir)/$(LIB_DIR); + ln -f .libs/lib@OSMESA_LIB@.so $(top_builddir)/$(LIB_DIR)/lib@OSMESA_LIB@.so;