diff options
-rw-r--r-- | configs/autoconf.in | 2 | ||||
-rw-r--r-- | configure.ac | 10 | ||||
-rw-r--r-- | src/mesa/Makefile | 17 | ||||
-rw-r--r-- | src/mesa/drivers/osmesa/.gitignore | 7 | ||||
-rw-r--r-- | src/mesa/drivers/osmesa/Makefile | 53 | ||||
-rw-r--r-- | src/mesa/drivers/osmesa/Makefile.am | 82 | ||||
-rw-r--r-- | src/mesa/osmesa.pc.in (renamed from src/mesa/drivers/osmesa/osmesa.pc.in) | 10 |
7 files changed, 78 insertions, 103 deletions
diff --git a/configs/autoconf.in b/configs/autoconf.in index bb8f2c3c901..0ec51716603 100644 --- a/configs/autoconf.in +++ b/configs/autoconf.in @@ -129,6 +129,8 @@ MOTIF_CFLAGS = @MOTIF_CFLAGS@ # Library/program dependencies GL_LIB_DEPS = $(EXTRA_LIB_PATH) @GL_LIB_DEPS@ +OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @OSMESA_MESA_DEPS@ \ + $(EXTRA_LIB_PATH) @OSMESA_LIB_DEPS@ EGL_LIB_DEPS = $(EXTRA_LIB_PATH) @EGL_LIB_DEPS@ GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLU_MESA_DEPS@ \ $(EXTRA_LIB_PATH) @GLU_LIB_DEPS@ diff --git a/configure.ac b/configure.ac index 1700058338d..1353c28c9ea 100644 --- a/configure.ac +++ b/configure.ac @@ -302,8 +302,6 @@ xnono ) enable_static=yes ;; esac -AM_CONDITIONAL(BUILD_STATIC, test "x$enable_static" = xyes) -AM_CONDITIONAL(BUILD_SHARED, test "x$enable_shared" = xyes) dnl dnl mklib options @@ -1336,9 +1334,6 @@ x16|x32) AC_MSG_ERROR([OSMesa bits '$osmesa_bits' is not a valid option]) ;; esac -AM_CONDITIONAL(HAVE_OSMESA8, test "x$osmesa_bits" = x8) -AM_CONDITIONAL(HAVE_OSMESA16, test "x$osmesa_bits" = x16) -AM_CONDITIONAL(HAVE_OSMESA32, test "x$osmesa_bits" = x32) if test "x$enable_osmesa" = xyes; then # only link libraries with osmesa if shared @@ -1347,9 +1342,12 @@ if test "x$enable_osmesa" = xyes; then else OSMESA_LIB_DEPS="" fi + OSMESA_MESA_DEPS="" OSMESA_PC_LIB_PRIV="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS" fi AC_SUBST([OSMESA_LIB_DEPS]) +AC_SUBST([OSMESA_MESA_DEPS]) +AC_SUBST([OSMESA_PC_REQ]) AC_SUBST([OSMESA_PC_LIB_PRIV]) dnl @@ -1934,8 +1932,6 @@ AC_CONFIG_FILES([configs/autoconf src/mesa/drivers/dri/r200/Makefile src/mesa/drivers/dri/radeon/Makefile src/mesa/drivers/dri/swrast/Makefile - src/mesa/drivers/osmesa/osmesa.pc - src/mesa/drivers/osmesa/Makefile tests/Makefile tests/glx/Makefile]) diff --git a/src/mesa/Makefile b/src/mesa/Makefile index 80e9562bb8c..0e15d61bd8d 100644 --- a/src/mesa/Makefile +++ b/src/mesa/Makefile @@ -189,6 +189,15 @@ gl_pcedit = sed \ gl.pc: gl.pc.in $(gl_pcedit) $< > $@ +osmesa_pcedit = sed \ + $(pcedit) \ + -e 's,@OSMESA_LIB@,$(OSMESA_LIB),' \ + -e 's,@OSMESA_PC_REQ@,$(OSMESA_PC_REQ),' \ + -e 's,@OSMESA_PC_LIB_PRIV@,$(OSMESA_PC_LIB_PRIV),' + +osmesa.pc: osmesa.pc.in + $(osmesa_pcedit) $< > $@ + install-headers: $(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/GL $(INSTALL) -m 644 $(TOP)/include/GL/*.h \ @@ -201,8 +210,12 @@ install-libgl: default gl.pc install-headers $(DESTDIR)$(INSTALL_LIB_DIR) $(INSTALL) -m 644 gl.pc $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig -install-osmesa: default - cd drivers/osmesa && $(MAKE) install +install-osmesa: default osmesa.pc + $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR) + $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig + $(MINSTALL) $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_GLOB) \ + $(DESTDIR)$(INSTALL_LIB_DIR) + $(INSTALL) -m 644 osmesa.pc $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig install-dri: default cd drivers/dri && $(MAKE) install diff --git a/src/mesa/drivers/osmesa/.gitignore b/src/mesa/drivers/osmesa/.gitignore deleted file mode 100644 index 1d0b65f4273..00000000000 --- a/src/mesa/drivers/osmesa/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -.deps -.libs -Makefile -Makefile.in -libOSMesa.la -libOSMesa16.la -libOSMesa32.la diff --git a/src/mesa/drivers/osmesa/Makefile b/src/mesa/drivers/osmesa/Makefile new file mode 100644 index 00000000000..005f4d5ba55 --- /dev/null +++ b/src/mesa/drivers/osmesa/Makefile @@ -0,0 +1,53 @@ +# 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 + +OSMESA_LIB_DEPS := -L$(TOP)/$(LIB_DIR) -l$(GLAPI_LIB) $(OSMESA_LIB_DEPS) + +.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 deleted file mode 100644 index 514e95d0013..00000000000 --- a/src/mesa/drivers/osmesa/Makefile.am +++ /dev/null @@ -1,82 +0,0 @@ - - -# Copyright © 2012 Matt Turner <[email protected]> -# -# 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_srcdir) - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = osmesa.pc - -AM_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src/mapi \ - -I$(top_srcdir)/src/mesa \ - -I$(top_srcdir)/src/mesa/main - -LIBADD = \ - $(top_srcdir)/src/mesa/libmesa.a \ - $(top_srcdir)/src/mapi/glapi/libglapi.a \ - $(top_srcdir)/src/glsl/libglsl.a \ - $(OSMESA_LIB_DEPS) - -if BUILD_SHARED -LIBOSMESA = lib$(OSMESA_LIB).so -endif - -if BUILD_STATIC -LIBOSMESA = lib$(OSMESA_LIB).a -endif - -if HAVE_OSMESA8 -lib_LTLIBRARIES = libOSMesa.la - -libOSMesa_la_SOURCES = osmesa.c -libOSMesa_la_LDFLAGS = -no-undefined -version-info 8:0:0 #FIXME -libOSMesa_la_LIBADD = $(LIBADD) -endif - -if HAVE_OSMESA16 -lib_LTLIBRARIES = libOSMesa16.la - -libOSMesa16_la_SOURCES = osmesa.c -libOSMesa16_la_LDFLAGS = -no-undefined -version-info 8:0:0 # FIXME -libOSMesa16_la_LIBADD = $(LIBADD) -endif - -if HAVE_OSMESA32 -lib_LTLIBRARIES = libOSMesa32.la - -libOSMesa32_la_SOURCES = osmesa.c -libOSMesa32_la_LDFLAGS = -no-undefined -version-info 8:0:0 # FIXME -libOSMesa32_la_LIBADD = $(LIBADD) -endif - -# Provide compatibility with scripts for the old Mesa build system for -# a while by putting a link to the library into /lib of the build tree. -all-local: lib$(OSMESA_LIB).la - $(MKDIR_P) $(top_builddir)/$(LIB_DIR); -if BUILD_SHARED - ln -f .libs/$(LIBOSMESA).8.0.0 $(top_builddir)/$(LIB_DIR)/$(LIBOSMESA).8.0.0; - ln -f .libs/$(LIBOSMESA).8 $(top_builddir)/$(LIB_DIR)/$(LIBOSMESA).8; -endif - ln -f .libs/$(LIBOSMESA) $(top_builddir)/$(LIB_DIR)/$(LIBOSMESA); diff --git a/src/mesa/drivers/osmesa/osmesa.pc.in b/src/mesa/osmesa.pc.in index ae7a20daa71..05327f40aa0 100644 --- a/src/mesa/drivers/osmesa/osmesa.pc.in +++ b/src/mesa/osmesa.pc.in @@ -1,11 +1,11 @@ -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ +prefix=@INSTALL_DIR@ +exec_prefix=${prefix} +libdir=@INSTALL_LIB_DIR@ +includedir=@INSTALL_INC_DIR@ Name: osmesa Description: Mesa Off-screen Rendering library -Requires: +Requires: @OSMESA_PC_REQ@ Version: @VERSION@ Libs: -L${libdir} -l@OSMESA_LIB@ Libs.private: @OSMESA_PC_LIB_PRIV@ |