mesa: upgrade to 9.1.3
Merge mesa-PV.bb and mesa-PV.inc as the is no point to the split now we're only building one variant of Mesa. Drop 0002-cross-compile.patch isn't needed as libtool is used instead of mklib. However, as libtool is used instead of mklib add fix-glsl-cross.patch to work around build failures caused by the cross libtool being used to build host binaries. Add EGL-Mutate-NativeDisplayType-depending-on-config.patch to build correctly in a non-X11 environment. Drop dont-fail-if-libX11-isnt-installed.patch and fix-egl-compilation-without-x11-headers.patch as they were backports. license.html had some formatting and typo fixes, update the checksum. (From OE-Core rev: d7033f4441183e53bf7fc8aa2293a9ec156a28dd) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
78e8ce465b
commit
7aa250c8b3
|
@ -1,13 +0,0 @@
|
|||
SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \
|
||||
file://0002-cross-compile.patch \
|
||||
file://cross-glsl.patch \
|
||||
file://dont-fail-if-libX11-isnt-installed.patch \
|
||||
file://fix-egl-compilation-without-x11-headers.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "dc45d1192203e418163e0017640e1cfc"
|
||||
SRC_URI[sha256sum] = "75bf31f26c6e7b5515e610c1005fd1be1f7eeb2c9e6859848dab879c355ad64e"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://docs/license.html;md5=012f69938d81b766472fd0d240df38a4"
|
||||
|
||||
S = "${WORKDIR}/Mesa-${PV}"
|
|
@ -1,94 +0,0 @@
|
|||
cross compile
|
||||
|
||||
This patch is ported from WindRiver linux and to fix cross compile
|
||||
failure.
|
||||
|
||||
And original commits are:
|
||||
commit 8d5ccc8113e1b51b0529a00c18a4aba956247e1b
|
||||
commit 5c4212084b871a0c0fb7d174280ec9a634637deb
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Kang Kai <kai.kang@windriver.com>
|
||||
---
|
||||
bin/mklib | 24 ++++++++++++------------
|
||||
1 file changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/bin/mklib b/bin/mklib
|
||||
index 9bac29e..b33aa90 100755
|
||||
--- a/bin/mklib
|
||||
+++ b/bin/mklib
|
||||
@@ -49,8 +49,8 @@ expand_archives() {
|
||||
/*) ;;
|
||||
*) FILE="$ORIG_DIR/$FILE" ;;
|
||||
esac
|
||||
- MEMBERS=`ar t $FILE`
|
||||
- ar x $FILE
|
||||
+ MEMBERS=`${AR} t $FILE`
|
||||
+ ${AR} x $FILE
|
||||
for MEMBER in $MEMBERS ; do
|
||||
NEWFILES="$NEWFILES $DIR/$MEMBER"
|
||||
done
|
||||
@@ -77,7 +77,7 @@ expand_archives() {
|
||||
make_ar_static_lib() {
|
||||
OPTS=$1
|
||||
shift;
|
||||
- RANLIB=$1
|
||||
+ USE_RANLIB=$1
|
||||
shift;
|
||||
LIBNAME=$1
|
||||
shift;
|
||||
@@ -87,11 +87,11 @@ make_ar_static_lib() {
|
||||
rm -f ${LIBNAME}
|
||||
|
||||
# make static lib
|
||||
- ar ${OPTS} ${LIBNAME} ${OBJECTS}
|
||||
+ ${AR} ${OPTS} ${LIBNAME} ${OBJECTS}
|
||||
|
||||
# run ranlib
|
||||
- if [ ${RANLIB} = 1 ] ; then
|
||||
- ranlib ${LIBNAME}
|
||||
+ if [ ${USE_RANLIB} = 1 ] ; then
|
||||
+ ${RANLIB} ${LIBNAME}
|
||||
fi
|
||||
|
||||
echo ${LIBNAME}
|
||||
@@ -313,9 +313,9 @@ case $ARCH in
|
||||
if [ "x$LINK" = "x" ] ; then
|
||||
# -linker was not specified so set default link command now
|
||||
if [ $CPLUSPLUS = 1 ] ; then
|
||||
- LINK=g++
|
||||
+ LINK=$CXX
|
||||
else
|
||||
- LINK=gcc
|
||||
+ LINK=$CC
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -535,9 +535,9 @@ case $ARCH in
|
||||
if [ "x$LINK" = "x" ] ; then
|
||||
# -linker was not specified so set default link command now
|
||||
if [ $CPLUSPLUS = 1 ] ; then
|
||||
- LINK=g++
|
||||
+ LINK=$CXX
|
||||
else
|
||||
- LINK=gcc
|
||||
+ LINK=$CC
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -903,9 +903,9 @@ case $ARCH in
|
||||
if [ "x$LINK" = "x" ] ; then
|
||||
# -linker was not specified so set default link command now
|
||||
if [ $CPLUSPLUS = 1 ] ; then
|
||||
- LINK=g++
|
||||
+ LINK=${CXX}
|
||||
else
|
||||
- LINK=gcc
|
||||
+ LINK=${CC}
|
||||
fi
|
||||
fi
|
||||
|
||||
--
|
||||
1.7.10.4
|
||||
|
|
@ -0,0 +1,358 @@
|
|||
From d52a7ec5dcdf3936bd727b854831efb90acfd2ba Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Fri, 24 May 2013 17:20:27 +0100
|
||||
Subject: [PATCH] EGL: Mutate NativeDisplayType depending on config
|
||||
|
||||
If we go through ./configure without enabling X11 anywhere, then set the
|
||||
fallback types for EGL NativeDisplay and friends, rather than assuming
|
||||
X11/Xlib.
|
||||
|
||||
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
||||
---
|
||||
configure.ac | 9 +++
|
||||
include/EGL/eglplatform.h | 146 ------------------------------------------
|
||||
include/EGL/eglplatform.h.in | 146 ++++++++++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 155 insertions(+), 146 deletions(-)
|
||||
delete mode 100644 include/EGL/eglplatform.h
|
||||
create mode 100644 include/EGL/eglplatform.h.in
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 4a98996..6fa77da 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1576,12 +1576,20 @@ fi
|
||||
|
||||
EGL_PLATFORMS="$egl_platforms"
|
||||
|
||||
+if echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1; then
|
||||
+ MESA_EGL_NO_X11_HEADERS=0
|
||||
+else
|
||||
+ MESA_EGL_NO_X11_HEADERS=1
|
||||
+fi
|
||||
+
|
||||
AM_CONDITIONAL(HAVE_EGL_PLATFORM_X11, echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1)
|
||||
AM_CONDITIONAL(HAVE_EGL_PLATFORM_WAYLAND, echo "$egl_platforms" | grep 'wayland' >/dev/null 2>&1)
|
||||
AM_CONDITIONAL(HAVE_EGL_PLATFORM_DRM, echo "$egl_platforms" | grep 'drm' >/dev/null 2>&1)
|
||||
AM_CONDITIONAL(HAVE_EGL_PLATFORM_FBDEV, echo "$egl_platforms" | grep 'fbdev' >/dev/null 2>&1)
|
||||
AM_CONDITIONAL(HAVE_EGL_PLATFORM_NULL, echo "$egl_platforms" | grep 'null' >/dev/null 2>&1)
|
||||
|
||||
+AC_SUBST([MESA_EGL_NO_X11_HEADERS])
|
||||
+
|
||||
AM_CONDITIONAL(HAVE_EGL_DRIVER_DRI2, test "x$HAVE_EGL_DRIVER_DRI2" != "x")
|
||||
AM_CONDITIONAL(HAVE_EGL_DRIVER_GLX, test "x$HAVE_EGL_DRIVER_GLX" != "x")
|
||||
|
||||
@@ -2053,6 +2061,7 @@ CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS"
|
||||
|
||||
dnl Substitute the config
|
||||
AC_CONFIG_FILES([Makefile
|
||||
+ include/EGL/eglplatform.h
|
||||
src/Makefile
|
||||
src/egl/Makefile
|
||||
src/egl/drivers/Makefile
|
||||
diff --git a/include/EGL/eglplatform.h b/include/EGL/eglplatform.h
|
||||
deleted file mode 100644
|
||||
index 17fdc61..0000000
|
||||
--- a/include/EGL/eglplatform.h
|
||||
+++ /dev/null
|
||||
@@ -1,146 +0,0 @@
|
||||
-#ifndef __eglplatform_h_
|
||||
-#define __eglplatform_h_
|
||||
-
|
||||
-/*
|
||||
-** Copyright (c) 2007-2009 The Khronos Group Inc.
|
||||
-**
|
||||
-** Permission is hereby granted, free of charge, to any person obtaining a
|
||||
-** copy of this software and/or associated documentation files (the
|
||||
-** "Materials"), to deal in the Materials without restriction, including
|
||||
-** without limitation the rights to use, copy, modify, merge, publish,
|
||||
-** distribute, sublicense, and/or sell copies of the Materials, and to
|
||||
-** permit persons to whom the Materials are furnished to do so, subject to
|
||||
-** the following conditions:
|
||||
-**
|
||||
-** The above copyright notice and this permission notice shall be included
|
||||
-** in all copies or substantial portions of the Materials.
|
||||
-**
|
||||
-** THE MATERIALS ARE 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
|
||||
-** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
-*/
|
||||
-
|
||||
-/* Platform-specific types and definitions for egl.h
|
||||
- * $Revision: 12306 $ on $Date: 2010-08-25 09:51:28 -0700 (Wed, 25 Aug 2010) $
|
||||
- *
|
||||
- * Adopters may modify khrplatform.h and this file to suit their platform.
|
||||
- * You are encouraged to submit all modifications to the Khronos group so that
|
||||
- * they can be included in future versions of this file. Please submit changes
|
||||
- * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
|
||||
- * by filing a bug against product "EGL" component "Registry".
|
||||
- */
|
||||
-
|
||||
-#include <KHR/khrplatform.h>
|
||||
-
|
||||
-/* Macros used in EGL function prototype declarations.
|
||||
- *
|
||||
- * EGL functions should be prototyped as:
|
||||
- *
|
||||
- * EGLAPI return-type EGLAPIENTRY eglFunction(arguments);
|
||||
- * typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments);
|
||||
- *
|
||||
- * KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h
|
||||
- */
|
||||
-
|
||||
-#ifndef EGLAPI
|
||||
-#define EGLAPI KHRONOS_APICALL
|
||||
-#endif
|
||||
-
|
||||
-#ifndef EGLAPIENTRY
|
||||
-#define EGLAPIENTRY KHRONOS_APIENTRY
|
||||
-#endif
|
||||
-#define EGLAPIENTRYP EGLAPIENTRY*
|
||||
-
|
||||
-/* The types NativeDisplayType, NativeWindowType, and NativePixmapType
|
||||
- * are aliases of window-system-dependent types, such as X Display * or
|
||||
- * Windows Device Context. They must be defined in platform-specific
|
||||
- * code below. The EGL-prefixed versions of Native*Type are the same
|
||||
- * types, renamed in EGL 1.3 so all types in the API start with "EGL".
|
||||
- *
|
||||
- * Khronos STRONGLY RECOMMENDS that you use the default definitions
|
||||
- * provided below, since these changes affect both binary and source
|
||||
- * portability of applications using EGL running on different EGL
|
||||
- * implementations.
|
||||
- */
|
||||
-
|
||||
-#if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */
|
||||
-#ifndef WIN32_LEAN_AND_MEAN
|
||||
-#define WIN32_LEAN_AND_MEAN 1
|
||||
-#endif
|
||||
-#include <windows.h>
|
||||
-
|
||||
-typedef HDC EGLNativeDisplayType;
|
||||
-typedef HBITMAP EGLNativePixmapType;
|
||||
-typedef HWND EGLNativeWindowType;
|
||||
-
|
||||
-#elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */
|
||||
-
|
||||
-typedef int EGLNativeDisplayType;
|
||||
-typedef void *EGLNativeWindowType;
|
||||
-typedef void *EGLNativePixmapType;
|
||||
-
|
||||
-#elif defined(WL_EGL_PLATFORM)
|
||||
-
|
||||
-typedef struct wl_display *EGLNativeDisplayType;
|
||||
-typedef struct wl_egl_pixmap *EGLNativePixmapType;
|
||||
-typedef struct wl_egl_window *EGLNativeWindowType;
|
||||
-
|
||||
-#elif defined(__GBM__)
|
||||
-
|
||||
-typedef struct gbm_device *EGLNativeDisplayType;
|
||||
-typedef struct gbm_bo *EGLNativePixmapType;
|
||||
-typedef void *EGLNativeWindowType;
|
||||
-
|
||||
-#elif defined(ANDROID) /* Android */
|
||||
-
|
||||
-struct ANativeWindow;
|
||||
-struct egl_native_pixmap_t;
|
||||
-
|
||||
-typedef struct ANativeWindow *EGLNativeWindowType;
|
||||
-typedef struct egl_native_pixmap_t *EGLNativePixmapType;
|
||||
-typedef void *EGLNativeDisplayType;
|
||||
-
|
||||
-#elif defined(__unix__)
|
||||
-
|
||||
-#ifdef MESA_EGL_NO_X11_HEADERS
|
||||
-
|
||||
-typedef void *EGLNativeDisplayType;
|
||||
-typedef khronos_uint32_t EGLNativePixmapType;
|
||||
-typedef khronos_uint32_t EGLNativeWindowType;
|
||||
-
|
||||
-#else
|
||||
-
|
||||
-/* X11 (tentative) */
|
||||
-#include <X11/Xlib.h>
|
||||
-#include <X11/Xutil.h>
|
||||
-
|
||||
-typedef Display *EGLNativeDisplayType;
|
||||
-typedef Pixmap EGLNativePixmapType;
|
||||
-typedef Window EGLNativeWindowType;
|
||||
-
|
||||
-#endif /* MESA_EGL_NO_X11_HEADERS */
|
||||
-
|
||||
-#else
|
||||
-#error "Platform not recognized"
|
||||
-#endif
|
||||
-
|
||||
-/* EGL 1.2 types, renamed for consistency in EGL 1.3 */
|
||||
-typedef EGLNativeDisplayType NativeDisplayType;
|
||||
-typedef EGLNativePixmapType NativePixmapType;
|
||||
-typedef EGLNativeWindowType NativeWindowType;
|
||||
-
|
||||
-
|
||||
-/* Define EGLint. This must be a signed integral type large enough to contain
|
||||
- * all legal attribute names and values passed into and out of EGL, whether
|
||||
- * their type is boolean, bitmask, enumerant (symbolic constant), integer,
|
||||
- * handle, or other. While in general a 32-bit integer will suffice, if
|
||||
- * handles are 64 bit types, then EGLint should be defined as a signed 64-bit
|
||||
- * integer type.
|
||||
- */
|
||||
-typedef khronos_int32_t EGLint;
|
||||
-
|
||||
-#endif /* __eglplatform_h */
|
||||
diff --git a/include/EGL/eglplatform.h.in b/include/EGL/eglplatform.h.in
|
||||
new file mode 100644
|
||||
index 0000000..5126c92
|
||||
--- /dev/null
|
||||
+++ b/include/EGL/eglplatform.h.in
|
||||
@@ -0,0 +1,146 @@
|
||||
+#ifndef __eglplatform_h_
|
||||
+#define __eglplatform_h_
|
||||
+
|
||||
+/*
|
||||
+** Copyright (c) 2007-2009 The Khronos Group Inc.
|
||||
+**
|
||||
+** Permission is hereby granted, free of charge, to any person obtaining a
|
||||
+** copy of this software and/or associated documentation files (the
|
||||
+** "Materials"), to deal in the Materials without restriction, including
|
||||
+** without limitation the rights to use, copy, modify, merge, publish,
|
||||
+** distribute, sublicense, and/or sell copies of the Materials, and to
|
||||
+** permit persons to whom the Materials are furnished to do so, subject to
|
||||
+** the following conditions:
|
||||
+**
|
||||
+** The above copyright notice and this permission notice shall be included
|
||||
+** in all copies or substantial portions of the Materials.
|
||||
+**
|
||||
+** THE MATERIALS ARE 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
|
||||
+** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
+*/
|
||||
+
|
||||
+/* Platform-specific types and definitions for egl.h
|
||||
+ * $Revision: 12306 $ on $Date: 2010-08-25 09:51:28 -0700 (Wed, 25 Aug 2010) $
|
||||
+ *
|
||||
+ * Adopters may modify khrplatform.h and this file to suit their platform.
|
||||
+ * You are encouraged to submit all modifications to the Khronos group so that
|
||||
+ * they can be included in future versions of this file. Please submit changes
|
||||
+ * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
|
||||
+ * by filing a bug against product "EGL" component "Registry".
|
||||
+ */
|
||||
+
|
||||
+#include <KHR/khrplatform.h>
|
||||
+
|
||||
+/* Macros used in EGL function prototype declarations.
|
||||
+ *
|
||||
+ * EGL functions should be prototyped as:
|
||||
+ *
|
||||
+ * EGLAPI return-type EGLAPIENTRY eglFunction(arguments);
|
||||
+ * typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments);
|
||||
+ *
|
||||
+ * KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h
|
||||
+ */
|
||||
+
|
||||
+#ifndef EGLAPI
|
||||
+#define EGLAPI KHRONOS_APICALL
|
||||
+#endif
|
||||
+
|
||||
+#ifndef EGLAPIENTRY
|
||||
+#define EGLAPIENTRY KHRONOS_APIENTRY
|
||||
+#endif
|
||||
+#define EGLAPIENTRYP EGLAPIENTRY*
|
||||
+
|
||||
+/* The types NativeDisplayType, NativeWindowType, and NativePixmapType
|
||||
+ * are aliases of window-system-dependent types, such as X Display * or
|
||||
+ * Windows Device Context. They must be defined in platform-specific
|
||||
+ * code below. The EGL-prefixed versions of Native*Type are the same
|
||||
+ * types, renamed in EGL 1.3 so all types in the API start with "EGL".
|
||||
+ *
|
||||
+ * Khronos STRONGLY RECOMMENDS that you use the default definitions
|
||||
+ * provided below, since these changes affect both binary and source
|
||||
+ * portability of applications using EGL running on different EGL
|
||||
+ * implementations.
|
||||
+ */
|
||||
+
|
||||
+#if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */
|
||||
+#ifndef WIN32_LEAN_AND_MEAN
|
||||
+#define WIN32_LEAN_AND_MEAN 1
|
||||
+#endif
|
||||
+#include <windows.h>
|
||||
+
|
||||
+typedef HDC EGLNativeDisplayType;
|
||||
+typedef HBITMAP EGLNativePixmapType;
|
||||
+typedef HWND EGLNativeWindowType;
|
||||
+
|
||||
+#elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */
|
||||
+
|
||||
+typedef int EGLNativeDisplayType;
|
||||
+typedef void *EGLNativeWindowType;
|
||||
+typedef void *EGLNativePixmapType;
|
||||
+
|
||||
+#elif defined(WL_EGL_PLATFORM)
|
||||
+
|
||||
+typedef struct wl_display *EGLNativeDisplayType;
|
||||
+typedef struct wl_egl_pixmap *EGLNativePixmapType;
|
||||
+typedef struct wl_egl_window *EGLNativeWindowType;
|
||||
+
|
||||
+#elif defined(__GBM__)
|
||||
+
|
||||
+typedef struct gbm_device *EGLNativeDisplayType;
|
||||
+typedef struct gbm_bo *EGLNativePixmapType;
|
||||
+typedef void *EGLNativeWindowType;
|
||||
+
|
||||
+#elif defined(ANDROID) /* Android */
|
||||
+
|
||||
+struct ANativeWindow;
|
||||
+struct egl_native_pixmap_t;
|
||||
+
|
||||
+typedef struct ANativeWindow *EGLNativeWindowType;
|
||||
+typedef struct egl_native_pixmap_t *EGLNativePixmapType;
|
||||
+typedef void *EGLNativeDisplayType;
|
||||
+
|
||||
+#elif defined(__unix__)
|
||||
+
|
||||
+#if @MESA_EGL_NO_X11_HEADERS@
|
||||
+
|
||||
+typedef void *EGLNativeDisplayType;
|
||||
+typedef khronos_uint32_t EGLNativePixmapType;
|
||||
+typedef khronos_uint32_t EGLNativeWindowType;
|
||||
+
|
||||
+#else
|
||||
+
|
||||
+/* X11 (tentative) */
|
||||
+#include <X11/Xlib.h>
|
||||
+#include <X11/Xutil.h>
|
||||
+
|
||||
+typedef Display *EGLNativeDisplayType;
|
||||
+typedef Pixmap EGLNativePixmapType;
|
||||
+typedef Window EGLNativeWindowType;
|
||||
+
|
||||
+#endif /* MESA_EGL_NO_X11_HEADERS */
|
||||
+
|
||||
+#else
|
||||
+#error "Platform not recognized"
|
||||
+#endif
|
||||
+
|
||||
+/* EGL 1.2 types, renamed for consistency in EGL 1.3 */
|
||||
+typedef EGLNativeDisplayType NativeDisplayType;
|
||||
+typedef EGLNativePixmapType NativePixmapType;
|
||||
+typedef EGLNativeWindowType NativeWindowType;
|
||||
+
|
||||
+
|
||||
+/* Define EGLint. This must be a signed integral type large enough to contain
|
||||
+ * all legal attribute names and values passed into and out of EGL, whether
|
||||
+ * their type is boolean, bitmask, enumerant (symbolic constant), integer,
|
||||
+ * handle, or other. While in general a 32-bit integer will suffice, if
|
||||
+ * handles are 64 bit types, then EGLint should be defined as a signed 64-bit
|
||||
+ * integer type.
|
||||
+ */
|
||||
+typedef khronos_int32_t EGLint;
|
||||
+
|
||||
+#endif /* __eglplatform_h */
|
||||
--
|
||||
1.7.10.4
|
||||
|
|
@ -1,632 +0,0 @@
|
|||
Respect CC_FOR_BUILD when building glsl_compiler, so we don't need a
|
||||
mesa-dri-glsl-native anymore.
|
||||
|
||||
Upstream-Status: Backport (from master)
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index b46f897..3765cd3 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -10,7 +10,7 @@ AC_INIT([Mesa], [9.0.1],
|
||||
[https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa])
|
||||
AC_CONFIG_AUX_DIR([bin])
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
-AC_CANONICAL_HOST
|
||||
+AC_CANONICAL_SYSTEM
|
||||
AM_INIT_AUTOMAKE([foreign])
|
||||
|
||||
dnl http://people.gnome.org/~walters/docs/build-api.txt
|
||||
@@ -24,9 +24,6 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
||||
|
||||
m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
|
||||
|
||||
-LT_PREREQ([2.2])
|
||||
-LT_INIT([disable-static])
|
||||
-
|
||||
dnl Set internal versions
|
||||
OSMESA_VERSION=8
|
||||
AC_SUBST([OSMESA_VERSION])
|
||||
@@ -45,7 +42,9 @@ LIBKMS_XORG_REQUIRED=1.0.0
|
||||
dnl Check for progs
|
||||
AC_PROG_CPP
|
||||
AC_PROG_CC
|
||||
+AX_PROG_CC_FOR_BUILD
|
||||
AC_PROG_CXX
|
||||
+AX_PROG_CXX_FOR_BUILD
|
||||
AM_PROG_CC_C_O
|
||||
AM_PROG_AS
|
||||
AC_CHECK_PROGS([MAKE], [gmake make])
|
||||
@@ -54,6 +53,9 @@ AC_PROG_SED
|
||||
AC_PROG_MKDIR_P
|
||||
AC_PATH_PROG([MKDEP], [makedepend])
|
||||
|
||||
+LT_PREREQ([2.2])
|
||||
+LT_INIT([disable-static])
|
||||
+
|
||||
if test "x$MKDEP" = "x"; then
|
||||
AC_MSG_ERROR([makedepend is required to build Mesa])
|
||||
fi
|
||||
@@ -155,6 +157,21 @@ dnl Cache LDFLAGS and CPPFLAGS so we can add to them and restore later
|
||||
_SAVE_LDFLAGS="$LDFLAGS"
|
||||
_SAVE_CPPFLAGS="$CPPFLAGS"
|
||||
|
||||
+dnl build host compiler macros
|
||||
+DEFINES_FOR_BUILD=""
|
||||
+AC_SUBST([DEFINES_FOR_BUILD])
|
||||
+case "$build_os" in
|
||||
+linux*|*-gnu*|gnu*)
|
||||
+ DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD -D_GNU_SOURCE"
|
||||
+ ;;
|
||||
+solaris*)
|
||||
+ DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD -DSVR4"
|
||||
+ ;;
|
||||
+cygwin*)
|
||||
+ DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD"
|
||||
+ ;;
|
||||
+esac
|
||||
+
|
||||
dnl Compiler macros
|
||||
DEFINES=""
|
||||
AC_SUBST([DEFINES])
|
||||
@@ -172,6 +189,7 @@ esac
|
||||
|
||||
dnl Add flags for gcc and g++
|
||||
if test "x$GCC" = xyes; then
|
||||
+ CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -Wall -std=c99"
|
||||
CFLAGS="$CFLAGS -Wall -std=c99"
|
||||
|
||||
# Enable -Werror=implicit-function-declaration and
|
||||
@@ -199,13 +217,16 @@ if test "x$GCC" = xyes; then
|
||||
CFLAGS=$save_CFLAGS
|
||||
|
||||
# Work around aliasing bugs - developers should comment this out
|
||||
+ CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -fno-strict-aliasing"
|
||||
CFLAGS="$CFLAGS -fno-strict-aliasing"
|
||||
|
||||
# gcc's builtin memcmp is slower than glibc's
|
||||
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43052
|
||||
+ CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -fno-builtin-memcmp"
|
||||
CFLAGS="$CFLAGS -fno-builtin-memcmp"
|
||||
fi
|
||||
if test "x$GXX" = xyes; then
|
||||
+ CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -Wall"
|
||||
CXXFLAGS="$CXXFLAGS -Wall"
|
||||
|
||||
# Enable -fvisibility=hidden if using a gcc that supports it
|
||||
@@ -222,10 +243,12 @@ if test "x$GXX" = xyes; then
|
||||
CXXFLAGS=$save_CXXFLAGS
|
||||
|
||||
# Work around aliasing bugs - developers should comment this out
|
||||
+ CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -fno-strict-aliasing"
|
||||
CXXFLAGS="$CXXFLAGS -fno-strict-aliasing"
|
||||
|
||||
# gcc's builtin memcmp is slower than glibc's
|
||||
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43052
|
||||
+ CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -fno-builtin-memcmp"
|
||||
CXXFLAGS="$CXXFLAGS -fno-builtin-memcmp"
|
||||
fi
|
||||
|
||||
@@ -309,6 +332,14 @@ AC_ARG_ENABLE([debug],
|
||||
[enable_debug=no]
|
||||
)
|
||||
if test "x$enable_debug" = xyes; then
|
||||
+ DEFINES_FOR_BUILD="$DEFINES_FOR_BUILD -DDEBUG"
|
||||
+ if test "x$GCC_FOR_BUILD" = xyes; then
|
||||
+ CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -g"
|
||||
+ fi
|
||||
+ if test "x$GXX_FOR_BUILD" = xyes; then
|
||||
+ CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -g"
|
||||
+ fi
|
||||
+
|
||||
DEFINES="$DEFINES -DDEBUG"
|
||||
if test "x$GCC" = xyes; then
|
||||
CFLAGS="$CFLAGS -g"
|
||||
@@ -1960,6 +1991,7 @@ AC_CONFIG_FILES([configs/current
|
||||
src/gbm/Makefile
|
||||
src/gbm/main/gbm.pc
|
||||
src/glsl/Makefile
|
||||
+ src/glsl/builtin_compiler/Makefile
|
||||
src/glsl/glcpp/Makefile
|
||||
src/glsl/tests/Makefile
|
||||
src/glx/Makefile
|
||||
diff --git a/m4/ax_prog_cc_for_build.m4 b/m4/ax_prog_cc_for_build.m4
|
||||
new file mode 100644
|
||||
index 0000000..6369809
|
||||
--- /dev/null
|
||||
+++ b/m4/ax_prog_cc_for_build.m4
|
||||
@@ -0,0 +1,125 @@
|
||||
+# ===========================================================================
|
||||
+# http://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html
|
||||
+# ===========================================================================
|
||||
+#
|
||||
+# SYNOPSIS
|
||||
+#
|
||||
+# AX_PROG_CC_FOR_BUILD
|
||||
+#
|
||||
+# DESCRIPTION
|
||||
+#
|
||||
+# This macro searches for a C compiler that generates native executables,
|
||||
+# that is a C compiler that surely is not a cross-compiler. This can be
|
||||
+# useful if you have to generate source code at compile-time like for
|
||||
+# example GCC does.
|
||||
+#
|
||||
+# The macro sets the CC_FOR_BUILD and CPP_FOR_BUILD macros to anything
|
||||
+# needed to compile or link (CC_FOR_BUILD) and preprocess (CPP_FOR_BUILD).
|
||||
+# The value of these variables can be overridden by the user by specifying
|
||||
+# a compiler with an environment variable (like you do for standard CC).
|
||||
+#
|
||||
+# It also sets BUILD_EXEEXT and BUILD_OBJEXT to the executable and object
|
||||
+# file extensions for the build platform, and GCC_FOR_BUILD to `yes' if
|
||||
+# the compiler we found is GCC. All these variables but GCC_FOR_BUILD are
|
||||
+# substituted in the Makefile.
|
||||
+#
|
||||
+# LICENSE
|
||||
+#
|
||||
+# Copyright (c) 2008 Paolo Bonzini <bonzini@gnu.org>
|
||||
+#
|
||||
+# Copying and distribution of this file, with or without modification, are
|
||||
+# permitted in any medium without royalty provided the copyright notice
|
||||
+# and this notice are preserved. This file is offered as-is, without any
|
||||
+# warranty.
|
||||
+
|
||||
+#serial 5
|
||||
+
|
||||
+AU_ALIAS([AC_PROG_CC_FOR_BUILD], [AX_PROG_CC_FOR_BUILD])
|
||||
+AC_DEFUN([AX_PROG_CC_FOR_BUILD], [dnl
|
||||
+AC_REQUIRE([AC_PROG_CC])dnl
|
||||
+AC_REQUIRE([AC_PROG_CPP])dnl
|
||||
+AC_REQUIRE([AC_EXEEXT])dnl
|
||||
+AC_REQUIRE([AC_CANONICAL_SYSTEM])dnl
|
||||
+
|
||||
+dnl Use the standard macros, but make them use other variable names
|
||||
+dnl
|
||||
+pushdef([ac_cv_prog_CPP], ac_cv_build_prog_CPP)dnl
|
||||
+pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl
|
||||
+pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl
|
||||
+pushdef([ac_cv_prog_cc_cross], ac_cv_build_prog_cc_cross)dnl
|
||||
+pushdef([ac_cv_prog_cc_g], ac_cv_build_prog_cc_g)dnl
|
||||
+pushdef([ac_cv_exeext], ac_cv_build_exeext)dnl
|
||||
+pushdef([ac_cv_objext], ac_cv_build_objext)dnl
|
||||
+pushdef([ac_exeext], ac_build_exeext)dnl
|
||||
+pushdef([ac_objext], ac_build_objext)dnl
|
||||
+pushdef([CC], CC_FOR_BUILD)dnl
|
||||
+pushdef([CPP], CPP_FOR_BUILD)dnl
|
||||
+pushdef([CFLAGS], CFLAGS_FOR_BUILD)dnl
|
||||
+pushdef([CPPFLAGS], CPPFLAGS_FOR_BUILD)dnl
|
||||
+pushdef([LDFLAGS], LDFLAGS_FOR_BUILD)dnl
|
||||
+pushdef([host], build)dnl
|
||||
+pushdef([host_alias], build_alias)dnl
|
||||
+pushdef([host_cpu], build_cpu)dnl
|
||||
+pushdef([host_vendor], build_vendor)dnl
|
||||
+pushdef([host_os], build_os)dnl
|
||||
+pushdef([ac_cv_host], ac_cv_build)dnl
|
||||
+pushdef([ac_cv_host_alias], ac_cv_build_alias)dnl
|
||||
+pushdef([ac_cv_host_cpu], ac_cv_build_cpu)dnl
|
||||
+pushdef([ac_cv_host_vendor], ac_cv_build_vendor)dnl
|
||||
+pushdef([ac_cv_host_os], ac_cv_build_os)dnl
|
||||
+pushdef([ac_cpp], ac_build_cpp)dnl
|
||||
+pushdef([ac_compile], ac_build_compile)dnl
|
||||
+pushdef([ac_link], ac_build_link)dnl
|
||||
+
|
||||
+save_cross_compiling=$cross_compiling
|
||||
+save_ac_tool_prefix=$ac_tool_prefix
|
||||
+cross_compiling=no
|
||||
+ac_tool_prefix=
|
||||
+
|
||||
+AC_PROG_CC
|
||||
+AC_PROG_CPP
|
||||
+AC_EXEEXT
|
||||
+
|
||||
+ac_tool_prefix=$save_ac_tool_prefix
|
||||
+cross_compiling=$save_cross_compiling
|
||||
+
|
||||
+dnl Restore the old definitions
|
||||
+dnl
|
||||
+popdef([ac_link])dnl
|
||||
+popdef([ac_compile])dnl
|
||||
+popdef([ac_cpp])dnl
|
||||
+popdef([ac_cv_host_os])dnl
|
||||
+popdef([ac_cv_host_vendor])dnl
|
||||
+popdef([ac_cv_host_cpu])dnl
|
||||
+popdef([ac_cv_host_alias])dnl
|
||||
+popdef([ac_cv_host])dnl
|
||||
+popdef([host_os])dnl
|
||||
+popdef([host_vendor])dnl
|
||||
+popdef([host_cpu])dnl
|
||||
+popdef([host_alias])dnl
|
||||
+popdef([host])dnl
|
||||
+popdef([LDFLAGS])dnl
|
||||
+popdef([CPPFLAGS])dnl
|
||||
+popdef([CFLAGS])dnl
|
||||
+popdef([CPP])dnl
|
||||
+popdef([CC])dnl
|
||||
+popdef([ac_objext])dnl
|
||||
+popdef([ac_exeext])dnl
|
||||
+popdef([ac_cv_objext])dnl
|
||||
+popdef([ac_cv_exeext])dnl
|
||||
+popdef([ac_cv_prog_cc_g])dnl
|
||||
+popdef([ac_cv_prog_cc_cross])dnl
|
||||
+popdef([ac_cv_prog_cc_works])dnl
|
||||
+popdef([ac_cv_prog_gcc])dnl
|
||||
+popdef([ac_cv_prog_CPP])dnl
|
||||
+
|
||||
+dnl Finally, set Makefile variables
|
||||
+dnl
|
||||
+BUILD_EXEEXT=$ac_build_exeext
|
||||
+BUILD_OBJEXT=$ac_build_objext
|
||||
+AC_SUBST(BUILD_EXEEXT)dnl
|
||||
+AC_SUBST(BUILD_OBJEXT)dnl
|
||||
+AC_SUBST([CFLAGS_FOR_BUILD])dnl
|
||||
+AC_SUBST([CPPFLAGS_FOR_BUILD])dnl
|
||||
+AC_SUBST([LDFLAGS_FOR_BUILD])dnl
|
||||
+])
|
||||
diff --git a/m4/ax_prog_cxx_for_build.m4 b/m4/ax_prog_cxx_for_build.m4
|
||||
new file mode 100644
|
||||
index 0000000..ecf8db9
|
||||
--- /dev/null
|
||||
+++ b/m4/ax_prog_cxx_for_build.m4
|
||||
@@ -0,0 +1,109 @@
|
||||
+# ===========================================================================
|
||||
+# http://www.gnu.org/software/autoconf-archive/ax_prog_cxx_for_build.html
|
||||
+# ===========================================================================
|
||||
+#
|
||||
+# SYNOPSIS
|
||||
+#
|
||||
+# AX_PROG_CXX_FOR_BUILD
|
||||
+#
|
||||
+# DESCRIPTION
|
||||
+#
|
||||
+# This macro searches for a C++ compiler that generates native executables,
|
||||
+# that is a C++ compiler that surely is not a cross-compiler. This can be
|
||||
+# useful if you have to generate source code at compile-time like for
|
||||
+# example GCC does.
|
||||
+#
|
||||
+# The macro sets the CXX_FOR_BUILD and CXXCPP_FOR_BUILD macros to anything
|
||||
+# needed to compile or link (CXX_FOR_BUILD) and preprocess (CXXCPP_FOR_BUILD).
|
||||
+# The value of these variables can be overridden by the user by specifying
|
||||
+# a compiler with an environment variable (like you do for standard CXX).
|
||||
+#
|
||||
+# LICENSE
|
||||
+#
|
||||
+# Copyright (c) 2008 Paolo Bonzini <bonzini@gnu.org>
|
||||
+# Copyright (c) 2012 Avionic Design GmbH
|
||||
+#
|
||||
+# Based on the AX_PROG_CC_FOR_BUILD macro by Paolo Bonzini.
|
||||
+#
|
||||
+# Copying and distribution of this file, with or without modification, are
|
||||
+# permitted in any medium without royalty provided the copyright notice
|
||||
+# and this notice are preserved. This file is offered as-is, without any
|
||||
+# warranty.
|
||||
+
|
||||
+#serial 5
|
||||
+
|
||||
+AU_ALIAS([AC_PROG_CXX_FOR_BUILD], [AX_PROG_CXX_FOR_BUILD])
|
||||
+AC_DEFUN([AX_PROG_CXX_FOR_BUILD], [dnl
|
||||
+AC_REQUIRE([AX_PROG_CC_FOR_BUILD])dnl
|
||||
+AC_REQUIRE([AC_PROG_CXX])dnl
|
||||
+AC_REQUIRE([AC_PROG_CXXCPP])dnl
|
||||
+AC_REQUIRE([AC_CANONICAL_SYSTEM])dnl
|
||||
+
|
||||
+dnl Use the standard macros, but make them use other variable names
|
||||
+dnl
|
||||
+pushdef([ac_cv_prog_CXXCPP], ac_cv_build_prog_CXXCPP)dnl
|
||||
+pushdef([ac_cv_prog_gxx], ac_cv_build_prog_gxx)dnl
|
||||
+pushdef([ac_cv_prog_cxx_works], ac_cv_build_prog_cxx_works)dnl
|
||||
+pushdef([ac_cv_prog_cxx_cross], ac_cv_build_prog_cxx_cross)dnl
|
||||
+pushdef([ac_cv_prog_cxx_g], ac_cv_build_prog_cxx_g)dnl
|
||||
+pushdef([CXX], CXX_FOR_BUILD)dnl
|
||||
+pushdef([CXXCPP], CXXCPP_FOR_BUILD)dnl
|
||||
+pushdef([CXXFLAGS], CXXFLAGS_FOR_BUILD)dnl
|
||||
+pushdef([CPPFLAGS], CPPFLAGS_FOR_BUILD)dnl
|
||||
+pushdef([CXXCPPFLAGS], CXXCPPFLAGS_FOR_BUILD)dnl
|
||||
+pushdef([host], build)dnl
|
||||
+pushdef([host_alias], build_alias)dnl
|
||||
+pushdef([host_cpu], build_cpu)dnl
|
||||
+pushdef([host_vendor], build_vendor)dnl
|
||||
+pushdef([host_os], build_os)dnl
|
||||
+pushdef([ac_cv_host], ac_cv_build)dnl
|
||||
+pushdef([ac_cv_host_alias], ac_cv_build_alias)dnl
|
||||
+pushdef([ac_cv_host_cpu], ac_cv_build_cpu)dnl
|
||||
+pushdef([ac_cv_host_vendor], ac_cv_build_vendor)dnl
|
||||
+pushdef([ac_cv_host_os], ac_cv_build_os)dnl
|
||||
+pushdef([ac_cxxcpp], ac_build_cxxcpp)dnl
|
||||
+pushdef([ac_compile], ac_build_compile)dnl
|
||||
+pushdef([ac_link], ac_build_link)dnl
|
||||
+
|
||||
+save_cross_compiling=$cross_compiling
|
||||
+save_ac_tool_prefix=$ac_tool_prefix
|
||||
+cross_compiling=no
|
||||
+ac_tool_prefix=
|
||||
+
|
||||
+AC_PROG_CXX
|
||||
+AC_PROG_CXXCPP
|
||||
+
|
||||
+ac_tool_prefix=$save_ac_tool_prefix
|
||||
+cross_compiling=$save_cross_compiling
|
||||
+
|
||||
+dnl Restore the old definitions
|
||||
+dnl
|
||||
+popdef([ac_link])dnl
|
||||
+popdef([ac_compile])dnl
|
||||
+popdef([ac_cxxcpp])dnl
|
||||
+popdef([ac_cv_host_os])dnl
|
||||
+popdef([ac_cv_host_vendor])dnl
|
||||
+popdef([ac_cv_host_cpu])dnl
|
||||
+popdef([ac_cv_host_alias])dnl
|
||||
+popdef([ac_cv_host])dnl
|
||||
+popdef([host_os])dnl
|
||||
+popdef([host_vendor])dnl
|
||||
+popdef([host_cpu])dnl
|
||||
+popdef([host_alias])dnl
|
||||
+popdef([host])dnl
|
||||
+popdef([CXXCPPFLAGS])dnl
|
||||
+popdef([CPPFLAGS])dnl
|
||||
+popdef([CXXFLAGS])dnl
|
||||
+popdef([CXXCPP])dnl
|
||||
+popdef([CXX])dnl
|
||||
+popdef([ac_cv_prog_cxx_g])dnl
|
||||
+popdef([ac_cv_prog_cxx_cross])dnl
|
||||
+popdef([ac_cv_prog_cxx_works])dnl
|
||||
+popdef([ac_cv_prog_gxx])dnl
|
||||
+popdef([ac_cv_prog_CXXCPP])dnl
|
||||
+
|
||||
+dnl Finally, set Makefile variables
|
||||
+dnl
|
||||
+AC_SUBST([CXXFLAGS_FOR_BUILD])dnl
|
||||
+AC_SUBST([CXXCPPFLAGS_FOR_BUILD])dnl
|
||||
+])
|
||||
diff --git a/src/glsl/Makefile.am b/src/glsl/Makefile.am
|
||||
index 1ecc003..6fb3d2d 100644
|
||||
--- a/src/glsl/Makefile.am
|
||||
+++ b/src/glsl/Makefile.am
|
||||
@@ -19,9 +19,7 @@
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
# IN THE SOFTWARE.
|
||||
|
||||
-
|
||||
-# builtin_compiler is built before libglsl to generate builtin_function.cpp for libglsl.
|
||||
-# For this to work, a dummy version of builtin_function.cpp, builtin_stubs.cpp, is used.
|
||||
+SUBDIRS = builtin_compiler glcpp
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/include \
|
||||
@@ -38,32 +36,23 @@ AM_LFLAGS = --nounistd -o$(LEX_OUTPUT_ROOT).c
|
||||
|
||||
include Makefile.sources
|
||||
|
||||
-noinst_LTLIBRARIES = libglslcommon.la libglsl.la
|
||||
-noinst_PROGRAMS = glsl_compiler glsl_test builtin_compiler
|
||||
+noinst_LTLIBRARIES = libglsl.la
|
||||
+noinst_PROGRAMS = glsl_compiler glsl_test
|
||||
|
||||
-# common sources for builtin_compiler and libglsl
|
||||
-libglslcommon_la_SOURCES = \
|
||||
+libglsl_la_SOURCES = \
|
||||
glsl_lexer.ll \
|
||||
glsl_parser.cc \
|
||||
$(LIBGLSL_FILES) \
|
||||
- $(LIBGLSL_CXX_FILES)
|
||||
-
|
||||
-libglslcommon_la_LIBADD = glcpp/libglcpp.la
|
||||
-
|
||||
-# common sources for builtin_compiler and glsl_compiler
|
||||
-GLSL2_SOURCES = \
|
||||
- $(top_srcdir)/src/mesa/program/hash_table.c \
|
||||
- $(top_srcdir)/src/mesa/program/symbol_table.c \
|
||||
- $(GLSL_COMPILER_CXX_FILES)
|
||||
-
|
||||
-libglsl_la_SOURCES = \
|
||||
+ $(LIBGLSL_CXX_FILES) \
|
||||
builtin_function.cpp
|
||||
|
||||
-libglsl_la_LIBADD = libglslcommon.la
|
||||
+libglsl_la_LIBADD = glcpp/libglcpp.la
|
||||
libglsl_la_LDFLAGS =
|
||||
|
||||
glsl_compiler_SOURCES = \
|
||||
- $(GLSL2_SOURCES)
|
||||
+ $(top_srcdir)/src/mesa/program/hash_table.c \
|
||||
+ $(top_srcdir)/src/mesa/program/symbol_table.c \
|
||||
+ $(GLSL_COMPILER_CXX_FILES)
|
||||
|
||||
glsl_compiler_LDADD = libglsl.la
|
||||
|
||||
@@ -76,12 +65,6 @@ glsl_test_SOURCES = \
|
||||
|
||||
glsl_test_LDADD = libglsl.la
|
||||
|
||||
-builtin_compiler_SOURCES = \
|
||||
- $(GLSL2_SOURCES) \
|
||||
- builtin_stubs.cpp
|
||||
-
|
||||
-builtin_compiler_LDADD = libglslcommon.la
|
||||
-
|
||||
# automake <=1.11 and automake >=1.12 have different conventions for naming C++ header files
|
||||
# made by yacc. To work with both, we write our own rule rather than using automake's.
|
||||
# When (if) we require automake >=1.12 in configure.ac, this can be removed, and we can use
|
||||
@@ -89,16 +72,11 @@ builtin_compiler_LDADD = libglslcommon.la
|
||||
glsl_parser.cc glsl_parser.h: glsl_parser.yy
|
||||
$(AM_V_GEN) $(YACC) -v -o glsl_parser.cc -p "_mesa_glsl_" --defines=glsl_parser.h $<
|
||||
|
||||
-BUILT_SOURCES = glsl_parser.h builtin_function.cpp
|
||||
-CLEANFILES = glsl_lexer.cc glsl_parser.cc $(BUILT_SOURCES)
|
||||
-
|
||||
-builtin_function.cpp: $(srcdir)/builtins/profiles/* $(srcdir)/builtins/ir/* $(srcdir)/builtins/glsl/* $(srcdir)/builtins/tools/generate_builtins.py $(srcdir)/builtins/tools/texture_builtins.py builtin_compiler$(EXEEXT)
|
||||
- $(AM_V_GEN) $(PYTHON2) $(PYTHON_FLAGS) $(srcdir)/builtins/tools/generate_builtins.py ./builtin_compiler > builtin_function.cpp || rm -f builtin_function.cpp
|
||||
-
|
||||
-glcpp/libglcpp.la:
|
||||
- cd glcpp ; $(MAKE) $(AM_MAKEFLAGS)
|
||||
+BUILT_SOURCES = glsl_parser.h
|
||||
+CLEANFILES = glsl_lexer.cc glsl_parser.cc $(BUILT_SOURCES) builtin_function.cpp
|
||||
|
||||
-SUBDIRS = glcpp
|
||||
+builtin_function.cpp: $(srcdir)/builtins/profiles/* $(srcdir)/builtins/ir/* $(srcdir)/builtins/glsl/* $(srcdir)/builtins/tools/generate_builtins.py $(srcdir)/builtins/tools/texture_builtins.py builtin_compiler/builtin_compiler$(BUILD_EXEEXT)
|
||||
+ $(AM_V_GEN) $(PYTHON2) $(PYTHON_FLAGS) $(srcdir)/builtins/tools/generate_builtins.py builtin_compiler/builtin_compiler$(BUILD_EXEEXT) > builtin_function.cpp || rm -f builtin_function.cpp
|
||||
|
||||
# Provide compatibility with scripts for the old Mesa build system for
|
||||
# a while by putting a link to the library in the current directory.
|
||||
diff --git a/src/glsl/builtin_compiler/Makefile.am b/src/glsl/builtin_compiler/Makefile.am
|
||||
new file mode 100644
|
||||
index 0000000..72032b5
|
||||
--- /dev/null
|
||||
+++ b/src/glsl/builtin_compiler/Makefile.am
|
||||
@@ -0,0 +1,68 @@
|
||||
+# Copyright © 2012 Jon TURNEY
|
||||
+# Copyright © 2012 Thierry Reding
|
||||
+#
|
||||
+# 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.
|
||||
+
|
||||
+CC = @CC_FOR_BUILD@
|
||||
+CFLAGS = @CFLAGS_FOR_BUILD@
|
||||
+CPP = @CPP_FOR_BUILD@
|
||||
+CPPFLAGS = @CPPFLAGS_FOR_BUILD@
|
||||
+CXX = @CXX_FOR_BUILD@
|
||||
+CXXFLAGS = @CXXFLAGS_FOR_BUILD@
|
||||
+LD = @LD_FOR_BUILD@
|
||||
+LDFLAGS = @LDFLAGS_FOR_BUILD@
|
||||
+
|
||||
+AM_CFLAGS = \
|
||||
+ -I $(top_srcdir)/include \
|
||||
+ -I $(top_srcdir)/src/mapi \
|
||||
+ -I $(top_srcdir)/src/mesa \
|
||||
+ -I $(GLSL_SRCDIR) \
|
||||
+ -I $(GLSL_SRCDIR)/glcpp \
|
||||
+ $(DEFINES_FOR_BUILD)
|
||||
+
|
||||
+AM_CXXFLAGS = $(AM_CFLAGS)
|
||||
+
|
||||
+AM_YFLAGS = -v -d -p "glcpp_parser_"
|
||||
+AM_LFLAGS = --nounistd -o$(LEX_OUTPUT_ROOT).c
|
||||
+
|
||||
+include ../Makefile.sources
|
||||
+
|
||||
+noinst_PROGRAMS = builtin_compiler
|
||||
+
|
||||
+builtin_compiler_SOURCES = \
|
||||
+ $(GLSL_SRCDIR)/glcpp/glcpp-lex.l \
|
||||
+ $(GLSL_SRCDIR)/glcpp/glcpp-parse.y \
|
||||
+ $(LIBGLCPP_FILES) \
|
||||
+ $(GLSL_SRCDIR)/glsl_lexer.ll \
|
||||
+ $(GLSL_SRCDIR)/glsl_parser.cc \
|
||||
+ $(LIBGLSL_FILES) \
|
||||
+ $(LIBGLSL_CXX_FILES) \
|
||||
+ $(top_srcdir)/src/mesa/program/hash_table.c \
|
||||
+ $(top_srcdir)/src/mesa/program/symbol_table.c \
|
||||
+ $(GLSL_COMPILER_CXX_FILES) \
|
||||
+ builtin_stubs.cpp
|
||||
+
|
||||
+BUILT_SOURCES = \
|
||||
+ glcpp-lex.c \
|
||||
+ glcpp-parse.c \
|
||||
+ glcpp-parse.h \
|
||||
+ glsl_lexer.cc
|
||||
+
|
||||
+CLEANFILES = $(BUILT_SOURCES)
|
||||
diff --git a/src/glsl/builtin_compiler/builtin_stubs.cpp b/src/glsl/builtin_compiler/builtin_stubs.cpp
|
||||
new file mode 100644
|
||||
index 0000000..dfa5d32
|
||||
--- /dev/null
|
||||
+++ b/src/glsl/builtin_compiler/builtin_stubs.cpp
|
||||
@@ -0,0 +1,39 @@
|
||||
+/*
|
||||
+ * Copyright © 2010 Intel Corporation
|
||||
+ *
|
||||
+ * 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.
|
||||
+ */
|
||||
+
|
||||
+#include <stdio.h>
|
||||
+#include "glsl_parser_extras.h"
|
||||
+
|
||||
+/* A dummy file. When compiling prototypes, we don't care about builtins.
|
||||
+ * We really don't want to half-compile builtin_functions.cpp and fail, though.
|
||||
+ */
|
||||
+void
|
||||
+_mesa_glsl_release_functions(void)
|
||||
+{
|
||||
+}
|
||||
+
|
||||
+void
|
||||
+_mesa_glsl_initialize_functions(_mesa_glsl_parse_state *state)
|
||||
+{
|
||||
+ (void) state;
|
||||
+}
|
||||
diff --git a/src/glsl/builtin_stubs.cpp b/src/glsl/builtin_stubs.cpp
|
||||
deleted file mode 100644
|
||||
index dfa5d32..0000000
|
||||
--- a/src/glsl/builtin_stubs.cpp
|
||||
+++ /dev/null
|
||||
@@ -1,39 +0,0 @@
|
||||
-/*
|
||||
- * Copyright © 2010 Intel Corporation
|
||||
- *
|
||||
- * 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.
|
||||
- */
|
||||
-
|
||||
-#include <stdio.h>
|
||||
-#include "glsl_parser_extras.h"
|
||||
-
|
||||
-/* A dummy file. When compiling prototypes, we don't care about builtins.
|
||||
- * We really don't want to half-compile builtin_functions.cpp and fail, though.
|
||||
- */
|
||||
-void
|
||||
-_mesa_glsl_release_functions(void)
|
||||
-{
|
||||
-}
|
||||
-
|
||||
-void
|
||||
-_mesa_glsl_initialize_functions(_mesa_glsl_parse_state *state)
|
||||
-{
|
||||
- (void) state;
|
||||
-}
|
|
@ -1,36 +0,0 @@
|
|||
Upstream-Status: Backport
|
||||
|
||||
From d6b06474f69129eb41ecd85d6b3bb0eb7b9dccb3 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Tue, 9 Oct 2012 14:27:06 +1100
|
||||
Subject: [PATCH] build: Don't fail if libX11 isn't installed
|
||||
|
||||
configure.ac would previously refuse to complete if libX11 wasn't
|
||||
installed, even if we'd disabled GLX and weren't building an X11 EGL
|
||||
platform. Make the check simply set the no_x variable that's used (but
|
||||
never set) immediately below for what looks like this very case.
|
||||
|
||||
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
||||
Reviewed-by: Matt Turner <mattst88@gmail.com>
|
||||
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
|
||||
(cherry picked from commit 4004620d34a580c8fdb965d9b640e97453fc8b28)
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index eb273b9..b384b44 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -836,7 +836,7 @@ if test "x$enable_dri" = xyes; then
|
||||
fi
|
||||
|
||||
dnl Find out if X is available.
|
||||
-PKG_CHECK_MODULES([X11], [x11])
|
||||
+PKG_CHECK_MODULES([X11], [x11], [no_x=no], [no_x=yes])
|
||||
|
||||
dnl Try to tell the user that the --x-* options are only used when
|
||||
dnl pkg-config is not available. This must be right after AC_PATH_XTRA.
|
||||
--
|
||||
1.7.10.4
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
Upstream-Status: Submitted
|
||||
|
||||
Picked from mesa-dev mailing list: http://marc.info/?l=mesa3d-dev&m=133053004130468
|
||||
|
||||
From: Benjamin Franzke <benjaminfranzke@googlemail.com>
|
||||
Date: Wed, 29 Feb 2012 15:36:23 +0100
|
||||
Subject: [PATCH] configure: Fix egl compilation without x11 headers
|
||||
|
||||
We dont want eglplatform.h to typedef egl native types
|
||||
to x11 types, when x11 headers are not available.
|
||||
---
|
||||
configure.ac | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index b384b44..8eb8459 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1262,6 +1262,10 @@ if test "x$enable_egl" = xyes; then
|
||||
|
||||
AC_CHECK_FUNC(mincore, [DEFINES="$DEFINES -DHAVE_MINCORE"])
|
||||
|
||||
+ if test "$have_x" != yes; then
|
||||
+ DEFINES="$DEFINES -DMESA_EGL_NO_X11_HEADERS"
|
||||
+ fi
|
||||
+
|
||||
if test "$enable_static" != yes; then
|
||||
# build egl_glx when libGL is built
|
||||
if test "x$enable_glx" = xyes; then
|
||||
--
|
||||
1.7.10.4
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
The target libtool is used when building host binaries, which predictably
|
||||
doesn't work.
|
||||
|
||||
Upstream-Status: Submitted (https://bugs.freedesktop.org/show_bug.cgi?id=44618)
|
||||
Signed-off-by: Jonathan Liu <net147@gmail.com>
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
diff --git a/src/glsl/builtin_compiler/Makefile.am b/src/glsl/builtin_compiler/Makefile.am
|
||||
index e11a17f..8ebe0a2 100644
|
||||
--- a/src/glsl/builtin_compiler/Makefile.am
|
||||
+++ b/src/glsl/builtin_compiler/Makefile.am
|
||||
@@ -64,6 +64,8 @@ AM_CXXFLAGS = $(AM_CFLAGS)
|
||||
include ../Makefile.sources
|
||||
|
||||
noinst_PROGRAMS = builtin_compiler
|
||||
+
|
||||
+if !CROSS_COMPILING
|
||||
noinst_LTLIBRARIES = libglslcore.la libglcpp.la
|
||||
|
||||
libglcpp_la_SOURCES = \
|
||||
@@ -73,6 +75,7 @@ libglcpp_la_SOURCES = \
|
||||
libglslcore_la_SOURCES = \
|
||||
$(BUILTIN_COMPILER_GENERATED_CXX_FILES) \
|
||||
$(LIBGLSL_FILES)
|
||||
+endif
|
||||
|
||||
builtin_compiler_SOURCES = \
|
||||
$(top_srcdir)/src/mesa/main/hash_table.c \
|
||||
@@ -81,4 +84,14 @@ builtin_compiler_SOURCES = \
|
||||
$(top_srcdir)/src/mesa/program/symbol_table.c \
|
||||
$(BUILTIN_COMPILER_CXX_FILES) \
|
||||
$(GLSL_COMPILER_CXX_FILES)
|
||||
+
|
||||
+if CROSS_COMPILING
|
||||
+builtin_compiler_SOURCES += \
|
||||
+ $(LIBGLCPP_GENERATED_FILES) \
|
||||
+ $(LIBGLCPP_FILES) \
|
||||
+ $(BUILTIN_COMPILER_GENERATED_CXX_FILES) \
|
||||
+ $(LIBGLSL_FILES)
|
||||
+builtin_compiler_CPPFLAGS = $(AM_CPPFLAGS)
|
||||
+else
|
||||
builtin_compiler_LDADD = libglslcore.la libglcpp.la
|
||||
+endif
|
|
@ -1,4 +0,0 @@
|
|||
require mesa-common.inc
|
||||
require mesa-${PV}.inc
|
||||
require mesa.inc
|
||||
PR = "${INC_PR}.1"
|
|
@ -0,0 +1,14 @@
|
|||
SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \
|
||||
file://EGL-Mutate-NativeDisplayType-depending-on-config.patch \
|
||||
file://fix-glsl-cross.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "952ccd03547ed72333b64e1746cf8ada"
|
||||
SRC_URI[sha256sum] = "8d5dac2202d0355bff5cfd183582ec8167d1d1227b7bb7a669acecbeaa52d766"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://docs/license.html;md5=42d77d95cba529a3637129be87d6555d"
|
||||
|
||||
S = "${WORKDIR}/Mesa-${PV}"
|
||||
|
||||
require mesa-common.inc
|
||||
require mesa.inc
|
Loading…
Reference in New Issue