diff options
author | Matt Turner <mattst88@gmail.com> | 2012-08-20 14:44:01 -0700 |
---|---|---|
committer | Matt Turner <mattst88@gmail.com> | 2012-08-28 20:53:27 -0700 |
commit | 0c7b1419ff5b1dc7fd7a27ff221785bafa5ca4c1 (patch) | |
tree | 76d9d554d47af3bdb1a70bb2200f01ea3924d27b | |
parent | b1d3e8308a0f41e766f1b5769a820e12e50391ba (diff) |
build: Allow linking against OSMesa instead of libGL
-rw-r--r-- | Makefile.am | 6 | ||||
-rw-r--r-- | configure.ac | 24 |
2 files changed, 24 insertions, 6 deletions
diff --git a/Makefile.am b/Makefile.am index 23ae5e7..332b96c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -30,8 +30,8 @@ AM_CPPFLAGS = -DLIBRARYBUILD \ -I$(top_srcdir)/src/libnurbs/internals \ -I$(top_srcdir)/src/libnurbs/interface \ -I$(top_srcdir)/src/libnurbs/nurbtess -AM_CFLAGS = $(GL_CFLAGS) $(WARNCFLAGS) -AM_CXXFLAGS = $(GL_CFLAGS) $(WARNCXXFLAGS) +AM_CFLAGS = $(GL_CFLAGS) $(OSMESA_CFLAGS) $(WARNCFLAGS) +AM_CXXFLAGS = $(GL_CFLAGS) $(OSMESA_CFLAGS) $(WARNCXXFLAGS) GLU_LIBRARY_VERSION=1:3:1 lib_LTLIBRARIES = libGLU.la @@ -125,5 +125,5 @@ libGLU_la_SOURCES = \ src/libnurbs/nurbtess/sampleMonoPoly.cc \ src/libnurbs/nurbtess/sampledLine.cc \ src/libnurbs/nurbtess/searchTree.cc -libGLU_la_LIBADD = $(GL_LIBS) +libGLU_la_LIBADD = $(GL_LIBS) $(OSMESA_LIBS) libGLU_la_LDFLAGS = -version-number $(GLU_LIBRARY_VERSION) -no-undefined -export-symbols-regex '^glu' diff --git a/configure.ac b/configure.ac index e0ee467..68ff97a 100644 --- a/configure.ac +++ b/configure.ac @@ -47,9 +47,26 @@ m4_ifndef([PKG_PROG_PKG_CONFIG], ACLOCAL="aclocal -I/other/macro/dir" before running autoreconf.])]) PKG_PROG_PKG_CONFIG() -dnl Get the pkg-config definitions for libGL. We include a fallback -dnl path for GL implementation that don't provide a .pc file -PKG_CHECK_MODULES(GL, [gl], [], [ +AC_ARG_ENABLE(osmesa, + AS_HELP_STRING([--enable-osmesa], + [Enable use of OSMesa instead of libGL]), + [OSMESA="$enableval"], + [OSMESA=no]) + +dnl Get the pkg-config definitions for libGL/OSMesa. We include a fallback +dnl path for implementations that don't provide a .pc file +if test "x$OSMESA" = "xyes"; then + PKG_CHECK_MODULES(OSMESA, [osmesa], [], [ + AC_CHECK_HEADER([GL/osmesa.h], + [], + AC_MSG_ERROR([OSMesa not found])) + AC_CHECK_LIB([OSMesa], + [glBegin], + [OSMESA_LIBS=-lOSMesa], + AC_MSG_ERROR([OSMesa required])) + ]) +else + PKG_CHECK_MODULES(GL, [gl], [], [ AC_CHECK_HEADER([GL/gl.h], [], AC_MSG_ERROR([GL not found])) @@ -58,6 +75,7 @@ PKG_CHECK_MODULES(GL, [gl], [], [ [GL_LIBS=-lGL], AC_MSG_ERROR([GL required])) ]) +fi dnl Set up C warning flags. if test "x$GCC" = xyes; then |