Patchwork [meta-fsl-demos] vivante-gpu-sdk: Contribute recipe for Vivante GPU Samples

login
register
mail settings
Submitter Diego Rondini
Date May 21, 2013, 1:57 p.m.
Message ID <1369144657-4084-1-git-send-email-diego.ml@zoho.com>
Download mbox | patch
Permalink /patch/50253/
State Changes Requested
Delegated to: Otavio Salvador
Headers show

Comments

Diego Rondini - May 21, 2013, 1:57 p.m.
Initial contribution of a recipe for Vivate GPU Samples from Vivante GPU Sdk.

Signed-off-by: Diego Rondini <diego.ml@zoho.com>
---
 ...ation-of-the-GLES1.1-X11-Samples-in-Yocto.patch |  594 ++++++++++++++++++++
 .../0002-Don-t-build-missing-samples.patch         |   28 +
 .../vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb        |   35 ++
 3 files changed, 657 insertions(+)
 create mode 100644 recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch
 create mode 100644 recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missing-samples.patch
 create mode 100644 recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb
Diego Rondini - May 21, 2013, 2:06 p.m.
In data martedì 21 maggio 2013 15:57:37, Diego Rondini ha scritto:
> Initial contribution of a recipe for Vivate GPU Samples from Vivante GPU
> Sdk.
> 

Hi guys!

I've sent the patch for initial review. This is my first contribution to Yocto 
so I might be getting something wrong.

This first revision is still missing framebuffer support and GLES2.0 and OpenVG 
support, so the only working combination at the moment is GLES1.1 and X11.

Thanks for any review!

Diego
Otavio Salvador - May 21, 2013, 2:34 p.m.
On Tue, May 21, 2013 at 10:57 AM, Diego Rondini <diego.ml@zoho.com> wrote:

> Initial contribution of a recipe for Vivate GPU Samples from Vivante GPU
> Sdk.
>
> Signed-off-by: Diego Rondini <diego.ml@zoho.com>
>

Please change the commit log to be more assertive; something like:

---
vivante-gpu-sdk: Add recipe for GPU samples

Provides the samples provided by Vivante for use with the GPU.
---

Or something like that.


> ---
>  ...ation-of-the-GLES1.1-X11-Samples-in-Yocto.patch |  594
> ++++++++++++++++++++
>  .../0002-Don-t-build-missing-samples.patch         |   28 +
>  .../vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb        |   35 ++
>  3 files changed, 657 insertions(+)
>  create mode 100644
> recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch
>  create mode 100644
> recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missing-samples.patch
>  create mode 100644 recipes-graphics/vivante-gpu-sdk/
> vivante-gpu-sdk_1.00.bb
>
> diff --git
> a/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch
> b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch
> new file mode 100644
> index 0000000..dacfd36
> --- /dev/null
> +++
> b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch
> @@ -0,0 +1,594 @@
> +From 72ba888f8e33a95343be834d5d9f12ce5d8c00f2 Mon Sep 17 00:00:00 2001
> +From: Diego Rondini <diego.ml@zoho.com>
> +Date: Tue, 30 Apr 2013 10:52:25 +0200
> +Subject: [PATCH 1/2] Fix compilation of the GLES1.1 X11 Samples in Yocto
> +
> +This commit fixes the following build problems:
> +- gcc 4.7 compatibility (remove unsupported "-Wl" option);
> +- wrong compiler binary name (caused by an overwrite of CC and AR
> variables)
> +- unknown include and library paths (caused by forcing paths when not
> needed)
>

Missed signed-off-by and upstream-status.


> +---
> + Samples/GLES1.1/01_SimpleTriangle/Makefile.x11     |    9 +--------
> + Samples/GLES1.1/02_VertexColors/Makefile.x11       |    7 +------
> + .../GLES1.1/03_VertexTransformation/Makefile.x11   |    7 +------
> + .../04_ColoredVerticesInterpolation/Makefile.x11   |    7 +------
> + Samples/GLES1.1/05_GeometricObjects/Makefile.x11   |    7 +------
> + Samples/GLES1.1/06_Projection/Makefile.x11         |    7 +------
> + Samples/GLES1.1/07_BasicTexturing/Makefile.x11     |    7 +------
> + Samples/GLES1.1/08_Multitexturing/Makefile.x11     |    7 +------
> + Samples/GLES1.1/09_Alphablending/Makefile.x11      |    7 +------
> + Samples/GLES1.1/10_FilteringLights/Makefile.x11    |    7 +------
> + Samples/GLES1.1/11_LightingFog/Makefile.x11        |    7 +------
> + Samples/GLES1.1/12_Stencil/Makefile.x11            |    7 +------
> + Samples/GLES1.1/13_3DFonts/Makefile.x11            |    7 +------
> + .../14_ParticlesSpritesAnimation/Makefile.x11      |    7 +------
> + .../GLES1.1/15_ParticleAccelerator/Makefile.x11    |    7 +------
> + .../GLES1.1/16_VertexBufferObjects/Makefile.x11    |    7 +------
> + Samples/GLES1.1/17_Beizer/Makefile.x11             |    7 +------
> + 17 files changed, 17 insertions(+), 104 deletions(-)
> +
> +diff --git a/Samples/GLES1.1/01_SimpleTriangle/Makefile.x11
> b/Samples/GLES1.1/01_SimpleTriangle/Makefile.x11
> +index 1b86dbf..54c09ab 100755
> +--- a/Samples/GLES1.1/01_SimpleTriangle/Makefile.x11
> ++++ b/Samples/GLES1.1/01_SimpleTriangle/Makefile.x11
> +@@ -2,12 +2,6 @@ APPNAME                       := 01_SimpleTriangle
> + DESTDIR                       ?= .
> +
> +
> +-# Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +-
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +15,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -30,7 +23,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +       $(COMMON_DIR)/src/glu3.o
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/02_VertexColors/Makefile.x11
> b/Samples/GLES1.1/02_VertexColors/Makefile.x11
> +index 6d9d063..d2294e8 100755
> +--- a/Samples/GLES1.1/02_VertexColors/Makefile.x11
> ++++ b/Samples/GLES1.1/02_VertexColors/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -30,7 +25,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +       $(COMMON_DIR)/src/glu3.o
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/03_VertexTransformation/Makefile.x11
> b/Samples/GLES1.1/03_VertexTransformation/Makefile.x11
> +index b5574e0..8f41874 100755
> +--- a/Samples/GLES1.1/03_VertexTransformation/Makefile.x11
> ++++ b/Samples/GLES1.1/03_VertexTransformation/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -30,7 +25,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +       $(COMMON_DIR)/src/glu3.o
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/04_ColoredVerticesInterpolation/Makefile.x11
> b/Samples/GLES1.1/04_ColoredVerticesInterpolation/Makefile.x11
> +index c9346f2..9092b2b 100755
> +--- a/Samples/GLES1.1/04_ColoredVerticesInterpolation/Makefile.x11
> ++++ b/Samples/GLES1.1/04_ColoredVerticesInterpolation/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -29,7 +24,7 @@ OBJECTS_TUT += \
> +       ColoredVerticesInterpolation.o \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/05_GeometricObjects/Makefile.x11
> b/Samples/GLES1.1/05_GeometricObjects/Makefile.x11
> +index a2cec68..295fd77 100755
> +--- a/Samples/GLES1.1/05_GeometricObjects/Makefile.x11
> ++++ b/Samples/GLES1.1/05_GeometricObjects/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -30,7 +25,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +       $(COMMON_DIR)/src/glu3.o
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/06_Projection/Makefile.x11
> b/Samples/GLES1.1/06_Projection/Makefile.x11
> +index 84b674f..a33dcef 100755
> +--- a/Samples/GLES1.1/06_Projection/Makefile.x11
> ++++ b/Samples/GLES1.1/06_Projection/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -30,7 +25,7 @@ OBJECTS_TUT += \
> +       render.o \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/07_BasicTexturing/Makefile.x11
> b/Samples/GLES1.1/07_BasicTexturing/Makefile.x11
> +index a22a236..1278393 100755
> +--- a/Samples/GLES1.1/07_BasicTexturing/Makefile.x11
> ++++ b/Samples/GLES1.1/07_BasicTexturing/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       = .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -33,7 +28,7 @@ OBJECTS_TUT += \
> +
> + ASSETS        = BasicTexturing.bmp
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/08_Multitexturing/Makefile.x11
> b/Samples/GLES1.1/08_Multitexturing/Makefile.x11
> +index f8d244f..d8a3841 100755
> +--- a/Samples/GLES1.1/08_Multitexturing/Makefile.x11
> ++++ b/Samples/GLES1.1/08_Multitexturing/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> + ASSETS        = data
> +@@ -32,7 +27,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +       $(COMMON_DIR)/src/fslutil.o\
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/09_Alphablending/Makefile.x11
> b/Samples/GLES1.1/09_Alphablending/Makefile.x11
> +index aa9ab43..39c964a 100755
> +--- a/Samples/GLES1.1/09_Alphablending/Makefile.x11
> ++++ b/Samples/GLES1.1/09_Alphablending/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       = .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -33,7 +28,7 @@ OBJECTS_TUT += \
> +
> + ASSETS        = Alphablending.bmp
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/10_FilteringLights/Makefile.x11
> b/Samples/GLES1.1/10_FilteringLights/Makefile.x11
> +index d5f17c7..9ac6886 100755
> +--- a/Samples/GLES1.1/10_FilteringLights/Makefile.x11
> ++++ b/Samples/GLES1.1/10_FilteringLights/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       = .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -33,7 +28,7 @@ OBJECTS_TUT += \
> +
> + ASSETS        = FilteringLights.bmp
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/11_LightingFog/Makefile.x11
> b/Samples/GLES1.1/11_LightingFog/Makefile.x11
> +index a284335..d2f57c2 100755
> +--- a/Samples/GLES1.1/11_LightingFog/Makefile.x11
> ++++ b/Samples/GLES1.1/11_LightingFog/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> + ASSETS        = data
> +@@ -32,7 +27,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/12_Stencil/Makefile.x11
> b/Samples/GLES1.1/12_Stencil/Makefile.x11
> +index 7d86842..1823434 100755
> +--- a/Samples/GLES1.1/12_Stencil/Makefile.x11
> ++++ b/Samples/GLES1.1/12_Stencil/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       = .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -30,7 +25,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +       $(COMMON_DIR)/src/glu3.o
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/13_3DFonts/Makefile.x11
> b/Samples/GLES1.1/13_3DFonts/Makefile.x11
> +index 7075616..0499002 100755
> +--- a/Samples/GLES1.1/13_3DFonts/Makefile.x11
> ++++ b/Samples/GLES1.1/13_3DFonts/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -24,7 +20,6 @@ ASSETS       = data
> +
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -35,7 +30,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +       $(COMMON_DIR)/src/fslutil.o\
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/14_ParticlesSpritesAnimation/Makefile.x11
> b/Samples/GLES1.1/14_ParticlesSpritesAnimation/Makefile.x11
> +index ccf7a75..7be1e6d 100755
> +--- a/Samples/GLES1.1/14_ParticlesSpritesAnimation/Makefile.x11
> ++++ b/Samples/GLES1.1/14_ParticlesSpritesAnimation/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       = .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -33,7 +28,7 @@ OBJECTS_TUT += \
> +
> + ASSETS        = ParticlesSpritesAnimation.bmp
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/15_ParticleAccelerator/Makefile.x11
> b/Samples/GLES1.1/15_ParticleAccelerator/Makefile.x11
> +index 67bae20..72c557e 100755
> +--- a/Samples/GLES1.1/15_ParticleAccelerator/Makefile.x11
> ++++ b/Samples/GLES1.1/15_ParticleAccelerator/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> + ASSETS        = data
> +@@ -37,7 +32,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +       $(COMMON_DIR)/src/fslutil.o\
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/16_VertexBufferObjects/Makefile.x11
> b/Samples/GLES1.1/16_VertexBufferObjects/Makefile.x11
> +index 418f37d..a96e982 100755
> +--- a/Samples/GLES1.1/16_VertexBufferObjects/Makefile.x11
> ++++ b/Samples/GLES1.1/16_VertexBufferObjects/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       ?= .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> + ASSETS        = data
> +@@ -36,7 +31,7 @@ OBJECTS_TUT += \
> +       $(COMMON_DIR)/src/fsl_egl.o\
> +       $(COMMON_DIR)/src/fslutil.o\
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +diff --git a/Samples/GLES1.1/17_Beizer/Makefile.x11
> b/Samples/GLES1.1/17_Beizer/Makefile.x11
> +index 7fba8ce..1e18c51 100755
> +--- a/Samples/GLES1.1/17_Beizer/Makefile.x11
> ++++ b/Samples/GLES1.1/17_Beizer/Makefile.x11
> +@@ -3,11 +3,7 @@ DESTDIR                       = .
> +
> +
> + # Make command to use for dependencies
> +-CC = $(CROSS_COMPILE)gcc
> +-AR = $(CROSS_COMPILE)ar
> +
> +-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
> +-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
> + COMMON_DIR=../common
> +
> + BIN_TUT = $(DESTDIR)/$(APPNAME)
> +@@ -21,7 +17,6 @@ CFLAGS_TUT += \
> +       -DEGL_USE_X11 \
> +
> + CFLAGS_TUT += \
> +-      -I$(TARGET_PATH_INCLUDE) \
> +       -I$(COMMON_DIR)/inc \
> +
> +
> +@@ -33,7 +28,7 @@ OBJECTS_TUT += \
> +
> + ASSETS        = Beizer.bmp
> +
> +-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
> ++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
> +
> + $(BIN_TUT) : $(OBJECTS_TUT)
> +       @echo " LD " $@
> +--
> +1.7.9.5
> +
> diff --git
> a/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missing-samples.patch
> b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missing-samples.patch
> new file mode 100644
> index 0000000..1503848
> --- /dev/null
> +++
> b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missing-samples.patch
> @@ -0,0 +1,28 @@
> +From 97f3af7a44b41f3e46c54765ba415ba9f511fb81 Mon Sep 17 00:00:00 2001
> +From: Diego Rondini <diego.ml@zoho.com>
> +Date: Tue, 30 Apr 2013 12:46:38 +0200
> +Subject: [PATCH 2/2] Don't build missing samples
> +
> +Samples 18_VertexBufferObjects and 19_Beizer are not included in the
> package, so don't try to compile them.
>

Missed signed-off-by and upstream-status.


> +---
> + Samples/GLES1.1/Makefile.x11 |    4 +---
> + 1 file changed, 1 insertion(+), 3 deletions(-)
> +
> +diff --git a/Samples/GLES1.1/Makefile.x11 b/Samples/GLES1.1/Makefile.x11
> +index 003763d..1c95158 100755
> +--- a/Samples/GLES1.1/Makefile.x11
> ++++ b/Samples/GLES1.1/Makefile.x11
> +@@ -17,9 +17,7 @@ SUB_PROJECTS= \
> +       14_ParticlesSpritesAnimation \
> +       15_ParticleAccelerator \
> +       16_VertexBufferObjects \
> +-      17_Beizer \
> +-      18_VertexBufferObjects \
> +-      19_Beizer
> ++      17_Beizer
> +
> +
> + .PHONY: all
> +--
> +1.7.9.5
> +
> diff --git a/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk_1.00.bbb/recipes-graphics/vivante-gpu-sdk/
> vivante-gpu-sdk_1.00.bb
> new file mode 100644
> index 0000000..69bcd01
> --- /dev/null
> +++ b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb
> @@ -0,0 +1,35 @@
> +SUMMARY = "Vivante GPU SDK Samples"
> +DESCRIPTION = "Freescale's adaptation of Jeff Molofee demos"
>

Is this description accurate?


> +LICENSE = "Proprietary"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=b3ed4253a63ac8555ccab7c4c0aa29a1"
> +
> +PR = "r0"
>

Drop PR assignment.


> +inherit fsl-eula-unpack
> +
> +SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \
> +
> file://0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch;striplevel=1
> \
> +       file://0002-Don-t-build-missing-samples.patch;striplevel=1"
>

The striplevel 1 is the default so you can remove it.


> +SRC_URI[md5sum] = "344c9a260b46a00f86eb5cb73bf729e0"
> +SRC_URI[sha256sum] =
> "0f0a576ce1a08719ee1018832ae808ee723fad27a534c9739b5feec6d7435c57"
> +
> +S = "${WORKDIR}/${PN}-${PV}"
> +GLES11DIR = "${S}/Samples/GLES1.1"
>

You can avoid this setting:

WORKDIR = "${S}/Samples/GLES1.1"


> +VIVANTE_INSTALL_DIR = "/opt/${PN}"

+VIVANTE_INSTALL_DEST_DIR = "${D}${VIVANTE_INSTALL_DIR}"


I'd use these explicitly as the variable name is bigger than the content of
it ;-)


>
>
+do_compile () {
> +       cd "${GLES11DIR}"
>

This can be removed.


> +       oe_runmake -f Makefile.x11
> +}
> +
> +do_install () {
> +       cd "${GLES11DIR}"
>

This can be removed.


> +       install -d "${VIVANTE_INSTALL_DEST_DIR}"
> +       oe_runmake -f Makefile.x11 install
> +       cp -r bin/ "${VIVANTE_INSTALL_DEST_DIR}"
>

Uh? make install does not handle this?


> +}
> +
> +FILES_${PN} += "${VIVANTE_INSTALL_DIR}"
> +FILES_${PN}-dbg = "${VIVANTE_INSTALL_DIR}/*/*/.debug"
Diego Rondini - May 21, 2013, 3:27 p.m.
In data martedì 21 maggio 2013 11:34:54, Otavio Salvador ha scritto:
> On Tue, May 21, 2013 at 10:57 AM, Diego Rondini <diego.ml@zoho.com> wrote:
> > Initial contribution of a recipe for Vivate GPU Samples from Vivante GPU
> > Sdk.
> > 
> > Signed-off-by: Diego Rondini <diego.ml@zoho.com>
> 
> Please change the commit log to be more assertive; something like:
> 
> ---
> vivante-gpu-sdk: Add recipe for GPU samples
> 
> Provides the samples provided by Vivante for use with the GPU.
> ---
> 
> Or something like that.
> 

Ack.

> > ---
> > 
> >  ...ation-of-the-GLES1.1-X11-Samples-in-Yocto.patch |  594
> > 
> > ++++++++++++++++++++
> > 
> >  .../0002-Don-t-build-missing-samples.patch         |   28 +
> >  .../vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb        |   35 ++
> >  3 files changed, 657 insertions(+)
> >  create mode 100644
> > 
> > recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of-t
> > he-GLES1.1-X11-Samples-in-Yocto.patch> 
> >  create mode 100644
> > 
> > recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missing-
> > samples.patch> 
> >  create mode 100644 recipes-graphics/vivante-gpu-sdk/
> > 
> > vivante-gpu-sdk_1.00.bb
> > 
> > diff --git
> > a/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of
> > -the-GLES1.1-X11-Samples-in-Yocto.patch
> > b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-o
> > f-the-GLES1.1-X11-Samples-in-Yocto.patch new file mode 100644
> > index 0000000..dacfd36
> > --- /dev/null
> > +++
> > b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of
> > -the-GLES1.1-X11-Samples-in-Yocto.patch @@ -0,0 +1,594 @@
> > +From 72ba888f8e33a95343be834d5d9f12ce5d8c00f2 Mon Sep 17 00:00:00 2001
> > +From: Diego Rondini <diego.ml@zoho.com>
> > +Date: Tue, 30 Apr 2013 10:52:25 +0200
> > +Subject: [PATCH 1/2] Fix compilation of the GLES1.1 X11 Samples in Yocto
> > +
> > +This commit fixes the following build problems:
> > +- gcc 4.7 compatibility (remove unsupported "-Wl" option);
> > +- wrong compiler binary name (caused by an overwrite of CC and AR
> > variables)
> > +- unknown include and library paths (caused by forcing paths when not
> > needed)
> 
> Missed signed-off-by and upstream-status.
> 

Ok, will add.

> > +---
> > + Samples/GLES1.1/01_SimpleTriangle/Makefile.x11     |    9 +--------
> > + Samples/GLES1.1/02_VertexColors/Makefile.x11       |    7 +------
> > + .../GLES1.1/03_VertexTransformation/Makefile.x11   |    7 +------
[snip]
> > diff --git
> > a/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missin
> > g-samples.patch
> > b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missi
> > ng-samples.patch new file mode 100644
> > index 0000000..1503848
> > --- /dev/null
> > +++
> > b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missin
> > g-samples.patch @@ -0,0 +1,28 @@
> > +From 97f3af7a44b41f3e46c54765ba415ba9f511fb81 Mon Sep 17 00:00:00 2001
> > +From: Diego Rondini <diego.ml@zoho.com>
> > +Date: Tue, 30 Apr 2013 12:46:38 +0200
> > +Subject: [PATCH 2/2] Don't build missing samples
> > +
> > +Samples 18_VertexBufferObjects and 19_Beizer are not included in the
> > package, so don't try to compile them.
> 
> Missed signed-off-by and upstream-status.
> 

Ok, will add.

> > +---
> > + Samples/GLES1.1/Makefile.x11 |    4 +---
> > + 1 file changed, 1 insertion(+), 3 deletions(-)
> > +
> > +diff --git a/Samples/GLES1.1/Makefile.x11 b/Samples/GLES1.1/Makefile.x11
> > +index 003763d..1c95158 100755
> > +--- a/Samples/GLES1.1/Makefile.x11
> > ++++ b/Samples/GLES1.1/Makefile.x11
> > +@@ -17,9 +17,7 @@ SUB_PROJECTS= \
> > +       14_ParticlesSpritesAnimation \
> > +       15_ParticleAccelerator \
> > +       16_VertexBufferObjects \
> > +-      17_Beizer \
> > +-      18_VertexBufferObjects \
> > +-      19_Beizer
> > ++      17_Beizer
> > +
> > +
> > + .PHONY: all
> > +--
> > +1.7.9.5
> > +
> > diff --git
> > a/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk_1.00.bbb/recipes-graph
> > ics/vivante-gpu-sdk/ vivante-gpu-sdk_1.00.bb
> > new file mode 100644
> > index 0000000..69bcd01
> > --- /dev/null
> > +++ b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb
> > @@ -0,0 +1,35 @@
> > +SUMMARY = "Vivante GPU SDK Samples"
> > +DESCRIPTION = "Freescale's adaptation of Jeff Molofee demos"
> 
> Is this description accurate?
> 

These are the first lines of every source file:
/*
 * This code was created by Jeff Molofee '99
 * (ported to Linux by Ti Leggett '01)
 * (ported to i.mx51, i.mx31 and x11 by Freescale '10)
 * If you've found this code useful, please let him know.
 *
 * Visit Jeff at http://nehe.gamedev.net/
 *
 */

I know the description is not the best one can produce, but this is not an 
established project, nor a one man/enterprise work. At least the X11 part is 
not Vivante's nor Freescale's specific at all.

> > +LICENSE = "Proprietary"
> > +LIC_FILES_CHKSUM = "file://COPYING;md5=b3ed4253a63ac8555ccab7c4c0aa29a1"
> > +
> > +PR = "r0"
> 
> Drop PR assignment.
> 

Ok, will do.

> > +inherit fsl-eula-unpack
> > +
> > +SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \
> > +
> > file://0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch;stri
> > plevel=1 \
> > +       file://0002-Don-t-build-missing-samples.patch;striplevel=1"
> 
> The striplevel 1 is the default so you can remove it.
> 

Ok, will do.

> > +SRC_URI[md5sum] = "344c9a260b46a00f86eb5cb73bf729e0"
> > +SRC_URI[sha256sum] =
> > "0f0a576ce1a08719ee1018832ae808ee723fad27a534c9739b5feec6d7435c57"
> > +
> > +S = "${WORKDIR}/${PN}-${PV}"
> > +GLES11DIR = "${S}/Samples/GLES1.1"
> 
> You can avoid this setting:
> 
> WORKDIR = "${S}/Samples/GLES1.1"
> 

I'll have multiple "workdirs", as this initial version is just for GLES1.1, 
but Samples folder has three subfolders:
GLES1.1
GLES2.0
OpenVG
each one has its own Makefile, and no common Makefile. I'm not interested in 
creating a common Makefile with a patch, as they might even get packaged 
separately in the future according to chipset support.
According to that, would you still use just:
WORKDIR = "${S}/Samples/GLES1.1"

> > +VIVANTE_INSTALL_DIR = "/opt/${PN}"
> 
> > +VIVANTE_INSTALL_DEST_DIR = "${D}${VIVANTE_INSTALL_DIR}"
> 
> 
> I'd use these explicitly as the variable name is bigger than the content of
> it ;-)
> 

Shorter code is not necessarily better or clearer code. However if you want 
I'll follow your suggestion.

> 
> 
> 
> +do_compile () {
> 
> > +       cd "${GLES11DIR}"
> 
> This can be removed.
> 

This is related to the multiple subfolders (GLES1.1, GLES2.0, OpenVG) which 
will come later, so let's discuss the "WORKDIR" issue.

> > +       oe_runmake -f Makefile.x11
> > +}
> > +
> > +do_install () {
> > +       cd "${GLES11DIR}"
> 
> This can be removed.
> 

As above.

> > +       install -d "${VIVANTE_INSTALL_DEST_DIR}"
> > +       oe_runmake -f Makefile.x11 install
> > +       cp -r bin/ "${VIVANTE_INSTALL_DEST_DIR}"
> 
> Uh? make install does not handle this?
> 

This is not in any way an "established project which installs in standard 
paths". It's more a "bunch of samples patched in the years, started quite some 
time ago, and intended just to be compiled and started locally by the learning 
developer".

> > +}
> > +
> > +FILES_${PN} += "${VIVANTE_INSTALL_DIR}"
> > +FILES_${PN}-dbg = "${VIVANTE_INSTALL_DIR}/*/*/.debug"

Thanks for your review. If you can clear out the WORKDIR vs multiple Makefiles 
in subdirs issue I'll post the updated patch.

Bests,
Diego
Otavio Salvador - May 21, 2013, 4:13 p.m.
On Tue, May 21, 2013 at 12:27 PM, Diego <diego.ml@zoho.com> wrote:

> In data martedì 21 maggio 2013 11:34:54, Otavio Salvador ha scritto:
> ...
>
> > +++ b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb
> > > @@ -0,0 +1,35 @@
> > > +SUMMARY = "Vivante GPU SDK Samples"
> > > +DESCRIPTION = "Freescale's adaptation of Jeff Molofee demos"
> >
> > Is this description accurate?
> >
>
> These are the first lines of every source file:
> /*
>  * This code was created by Jeff Molofee '99
>  * (ported to Linux by Ti Leggett '01)
>  * (ported to i.mx51, i.mx31 and x11 by Freescale '10)
>  * If you've found this code useful, please let him know.
>  *
>  * Visit Jeff at http://nehe.gamedev.net/
>  *
>  */
>
> I know the description is not the best one can produce, but this is not an
> established project, nor a one man/enterprise work. At least the X11 part
> is
> not Vivante's nor Freescale's specific at all.


What about:

"Set of sample applications compatible with Vivante GPU"

?

...
>
> > +SRC_URI[md5sum] = "344c9a260b46a00f86eb5cb73bf729e0"
> > > +SRC_URI[sha256sum] =
> > > "0f0a576ce1a08719ee1018832ae808ee723fad27a534c9739b5feec6d7435c57"
> > > +
> > > +S = "${WORKDIR}/${PN}-${PV}"
> > > +GLES11DIR = "${S}/Samples/GLES1.1"
> >
> > You can avoid this setting:
> >
> > WORKDIR = "${S}/Samples/GLES1.1"
> >
>
> I'll have multiple "workdirs", as this initial version is just for GLES1.1,
> but Samples folder has three subfolders:
> GLES1.1
> GLES2.0
> OpenVG
> each one has its own Makefile, and no common Makefile. I'm not interested
> in
> creating a common Makefile with a patch, as they might even get packaged
> separately in the future according to chipset support.
> According to that, would you still use just:
> WORKDIR = "${S}/Samples/GLES1.1"
>

I agree here; you can try to get the patch already supporting them. I'd use
a 'for' loop to handle it, if possible.


> > > +VIVANTE_INSTALL_DIR = "/opt/${PN}"
> >
> > > +VIVANTE_INSTALL_DEST_DIR = "${D}${VIVANTE_INSTALL_DIR}"
> >
> >
> > I'd use these explicitly as the variable name is bigger than the content
> of
> > it ;-)
> >
>
> Shorter code is not necessarily better or clearer code. However if you want
> I'll follow your suggestion.
>

The problem with this is someone looking in the recipe needs to go there
and check what is the value of it. I think it is an indirection which does
not make it easier to read. We shouldn't keep changing this values so an
indirection here does not add much I think.

...
>
> > +       install -d "${VIVANTE_INSTALL_DEST_DIR}"
>
> > +       oe_runmake -f Makefile.x11 install
> > > +       cp -r bin/ "${VIVANTE_INSTALL_DEST_DIR}"
> >
> > Uh? make install does not handle this?
> >
>
> This is not in any way an "established project which installs in standard
> paths". It's more a "bunch of samples patched in the years, started quite
> some
> time ago, and intended just to be compiled and started locally by the
> learning
> developer".


Arrg! I see.


> > > +}
> > > +
> > > +FILES_${PN} += "${VIVANTE_INSTALL_DIR}"
> > > +FILES_${PN}-dbg = "${VIVANTE_INSTALL_DIR}/*/*/.debug"
>
> Thanks for your review. If you can clear out the WORKDIR vs multiple
> Makefiles
> in subdirs issue I'll post the updated patch.
>

Thanks by working on this; this will be of great value for users :-)

Regards,

Patch

diff --git a/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch
new file mode 100644
index 0000000..dacfd36
--- /dev/null
+++ b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch
@@ -0,0 +1,594 @@ 
+From 72ba888f8e33a95343be834d5d9f12ce5d8c00f2 Mon Sep 17 00:00:00 2001
+From: Diego Rondini <diego.ml@zoho.com>
+Date: Tue, 30 Apr 2013 10:52:25 +0200
+Subject: [PATCH 1/2] Fix compilation of the GLES1.1 X11 Samples in Yocto
+
+This commit fixes the following build problems:
+- gcc 4.7 compatibility (remove unsupported "-Wl" option);
+- wrong compiler binary name (caused by an overwrite of CC and AR variables)
+- unknown include and library paths (caused by forcing paths when not needed)
+---
+ Samples/GLES1.1/01_SimpleTriangle/Makefile.x11     |    9 +--------
+ Samples/GLES1.1/02_VertexColors/Makefile.x11       |    7 +------
+ .../GLES1.1/03_VertexTransformation/Makefile.x11   |    7 +------
+ .../04_ColoredVerticesInterpolation/Makefile.x11   |    7 +------
+ Samples/GLES1.1/05_GeometricObjects/Makefile.x11   |    7 +------
+ Samples/GLES1.1/06_Projection/Makefile.x11         |    7 +------
+ Samples/GLES1.1/07_BasicTexturing/Makefile.x11     |    7 +------
+ Samples/GLES1.1/08_Multitexturing/Makefile.x11     |    7 +------
+ Samples/GLES1.1/09_Alphablending/Makefile.x11      |    7 +------
+ Samples/GLES1.1/10_FilteringLights/Makefile.x11    |    7 +------
+ Samples/GLES1.1/11_LightingFog/Makefile.x11        |    7 +------
+ Samples/GLES1.1/12_Stencil/Makefile.x11            |    7 +------
+ Samples/GLES1.1/13_3DFonts/Makefile.x11            |    7 +------
+ .../14_ParticlesSpritesAnimation/Makefile.x11      |    7 +------
+ .../GLES1.1/15_ParticleAccelerator/Makefile.x11    |    7 +------
+ .../GLES1.1/16_VertexBufferObjects/Makefile.x11    |    7 +------
+ Samples/GLES1.1/17_Beizer/Makefile.x11             |    7 +------
+ 17 files changed, 17 insertions(+), 104 deletions(-)
+
+diff --git a/Samples/GLES1.1/01_SimpleTriangle/Makefile.x11 b/Samples/GLES1.1/01_SimpleTriangle/Makefile.x11
+index 1b86dbf..54c09ab 100755
+--- a/Samples/GLES1.1/01_SimpleTriangle/Makefile.x11
++++ b/Samples/GLES1.1/01_SimpleTriangle/Makefile.x11
+@@ -2,12 +2,6 @@ APPNAME			:= 01_SimpleTriangle
+ DESTDIR			?= .
+ 
+ 
+-# Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+-
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +15,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -30,7 +23,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 	$(COMMON_DIR)/src/glu3.o
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/02_VertexColors/Makefile.x11 b/Samples/GLES1.1/02_VertexColors/Makefile.x11
+index 6d9d063..d2294e8 100755
+--- a/Samples/GLES1.1/02_VertexColors/Makefile.x11
++++ b/Samples/GLES1.1/02_VertexColors/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -30,7 +25,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 	$(COMMON_DIR)/src/glu3.o
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/03_VertexTransformation/Makefile.x11 b/Samples/GLES1.1/03_VertexTransformation/Makefile.x11
+index b5574e0..8f41874 100755
+--- a/Samples/GLES1.1/03_VertexTransformation/Makefile.x11
++++ b/Samples/GLES1.1/03_VertexTransformation/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -30,7 +25,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 	$(COMMON_DIR)/src/glu3.o
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL  -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/04_ColoredVerticesInterpolation/Makefile.x11 b/Samples/GLES1.1/04_ColoredVerticesInterpolation/Makefile.x11
+index c9346f2..9092b2b 100755
+--- a/Samples/GLES1.1/04_ColoredVerticesInterpolation/Makefile.x11
++++ b/Samples/GLES1.1/04_ColoredVerticesInterpolation/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -29,7 +24,7 @@ OBJECTS_TUT += \
+ 	ColoredVerticesInterpolation.o \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/05_GeometricObjects/Makefile.x11 b/Samples/GLES1.1/05_GeometricObjects/Makefile.x11
+index a2cec68..295fd77 100755
+--- a/Samples/GLES1.1/05_GeometricObjects/Makefile.x11
++++ b/Samples/GLES1.1/05_GeometricObjects/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -30,7 +25,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 	$(COMMON_DIR)/src/glu3.o
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/06_Projection/Makefile.x11 b/Samples/GLES1.1/06_Projection/Makefile.x11
+index 84b674f..a33dcef 100755
+--- a/Samples/GLES1.1/06_Projection/Makefile.x11
++++ b/Samples/GLES1.1/06_Projection/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -30,7 +25,7 @@ OBJECTS_TUT += \
+ 	render.o \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/07_BasicTexturing/Makefile.x11 b/Samples/GLES1.1/07_BasicTexturing/Makefile.x11
+index a22a236..1278393 100755
+--- a/Samples/GLES1.1/07_BasicTexturing/Makefile.x11
++++ b/Samples/GLES1.1/07_BasicTexturing/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -33,7 +28,7 @@ OBJECTS_TUT += \
+ 
+ ASSETS	= BasicTexturing.bmp
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/08_Multitexturing/Makefile.x11 b/Samples/GLES1.1/08_Multitexturing/Makefile.x11
+index f8d244f..d8a3841 100755
+--- a/Samples/GLES1.1/08_Multitexturing/Makefile.x11
++++ b/Samples/GLES1.1/08_Multitexturing/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ ASSETS	= data
+@@ -32,7 +27,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 	$(COMMON_DIR)/src/fslutil.o\
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/09_Alphablending/Makefile.x11 b/Samples/GLES1.1/09_Alphablending/Makefile.x11
+index aa9ab43..39c964a 100755
+--- a/Samples/GLES1.1/09_Alphablending/Makefile.x11
++++ b/Samples/GLES1.1/09_Alphablending/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -33,7 +28,7 @@ OBJECTS_TUT += \
+ 
+ ASSETS	= Alphablending.bmp
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/10_FilteringLights/Makefile.x11 b/Samples/GLES1.1/10_FilteringLights/Makefile.x11
+index d5f17c7..9ac6886 100755
+--- a/Samples/GLES1.1/10_FilteringLights/Makefile.x11
++++ b/Samples/GLES1.1/10_FilteringLights/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -33,7 +28,7 @@ OBJECTS_TUT += \
+ 
+ ASSETS	= FilteringLights.bmp
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/11_LightingFog/Makefile.x11 b/Samples/GLES1.1/11_LightingFog/Makefile.x11
+index a284335..d2f57c2 100755
+--- a/Samples/GLES1.1/11_LightingFog/Makefile.x11
++++ b/Samples/GLES1.1/11_LightingFog/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ ASSETS	= data	
+@@ -32,7 +27,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/12_Stencil/Makefile.x11 b/Samples/GLES1.1/12_Stencil/Makefile.x11
+index 7d86842..1823434 100755
+--- a/Samples/GLES1.1/12_Stencil/Makefile.x11
++++ b/Samples/GLES1.1/12_Stencil/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -30,7 +25,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 	$(COMMON_DIR)/src/glu3.o
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/13_3DFonts/Makefile.x11 b/Samples/GLES1.1/13_3DFonts/Makefile.x11
+index 7075616..0499002 100755
+--- a/Samples/GLES1.1/13_3DFonts/Makefile.x11
++++ b/Samples/GLES1.1/13_3DFonts/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -24,7 +20,6 @@ ASSETS	= data
+ 
+ 	
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -35,7 +30,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 	$(COMMON_DIR)/src/fslutil.o\
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/14_ParticlesSpritesAnimation/Makefile.x11 b/Samples/GLES1.1/14_ParticlesSpritesAnimation/Makefile.x11
+index ccf7a75..7be1e6d 100755
+--- a/Samples/GLES1.1/14_ParticlesSpritesAnimation/Makefile.x11
++++ b/Samples/GLES1.1/14_ParticlesSpritesAnimation/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -33,7 +28,7 @@ OBJECTS_TUT += \
+ 
+ ASSETS	= ParticlesSpritesAnimation.bmp
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/15_ParticleAccelerator/Makefile.x11 b/Samples/GLES1.1/15_ParticleAccelerator/Makefile.x11
+index 67bae20..72c557e 100755
+--- a/Samples/GLES1.1/15_ParticleAccelerator/Makefile.x11
++++ b/Samples/GLES1.1/15_ParticleAccelerator/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 
+ ASSETS	= data
+@@ -37,7 +32,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 	$(COMMON_DIR)/src/fslutil.o\
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/16_VertexBufferObjects/Makefile.x11 b/Samples/GLES1.1/16_VertexBufferObjects/Makefile.x11
+index 418f37d..a96e982 100755
+--- a/Samples/GLES1.1/16_VertexBufferObjects/Makefile.x11
++++ b/Samples/GLES1.1/16_VertexBufferObjects/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			?= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 
+ ASSETS	= data
+@@ -36,7 +31,7 @@ OBJECTS_TUT += \
+ 	$(COMMON_DIR)/src/fsl_egl.o\
+ 	$(COMMON_DIR)/src/fslutil.o\
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+diff --git a/Samples/GLES1.1/17_Beizer/Makefile.x11 b/Samples/GLES1.1/17_Beizer/Makefile.x11
+index 7fba8ce..1e18c51 100755
+--- a/Samples/GLES1.1/17_Beizer/Makefile.x11
++++ b/Samples/GLES1.1/17_Beizer/Makefile.x11
+@@ -3,11 +3,7 @@ DESTDIR			= .
+ 
+ 
+ # Make command to use for dependencies
+-CC = $(CROSS_COMPILE)gcc
+-AR = $(CROSS_COMPILE)ar
+ 
+-TARGET_PATH_LIB = $(ROOTFS)/usr/lib
+-TARGET_PATH_INCLUDE = $(ROOTFS)/usr/include
+ COMMON_DIR=../common
+ 
+ BIN_TUT = $(DESTDIR)/$(APPNAME)
+@@ -21,7 +17,6 @@ CFLAGS_TUT += \
+ 	-DEGL_USE_X11 \
+ 
+ CFLAGS_TUT += \
+-	-I$(TARGET_PATH_INCLUDE) \
+ 	-I$(COMMON_DIR)/inc \
+ 	
+ 
+@@ -33,7 +28,7 @@ OBJECTS_TUT += \
+ 
+ ASSETS	= Beizer.bmp
+ 
+-DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl -Wl,--library-path=$(TARGET_PATH_LIB),-rpath-link=$(TARGET_PATH_LIB)
++DEPS_TUT = -lstdc++ -lm -lGLESv1_CM -lEGL -lX11 -ldl
+ 
+ $(BIN_TUT) : $(OBJECTS_TUT)
+ 	@echo " LD " $@
+-- 
+1.7.9.5
+
diff --git a/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missing-samples.patch b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missing-samples.patch
new file mode 100644
index 0000000..1503848
--- /dev/null
+++ b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk/0002-Don-t-build-missing-samples.patch
@@ -0,0 +1,28 @@ 
+From 97f3af7a44b41f3e46c54765ba415ba9f511fb81 Mon Sep 17 00:00:00 2001
+From: Diego Rondini <diego.ml@zoho.com>
+Date: Tue, 30 Apr 2013 12:46:38 +0200
+Subject: [PATCH 2/2] Don't build missing samples
+
+Samples 18_VertexBufferObjects and 19_Beizer are not included in the package, so don't try to compile them.
+---
+ Samples/GLES1.1/Makefile.x11 |    4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/Samples/GLES1.1/Makefile.x11 b/Samples/GLES1.1/Makefile.x11
+index 003763d..1c95158 100755
+--- a/Samples/GLES1.1/Makefile.x11
++++ b/Samples/GLES1.1/Makefile.x11
+@@ -17,9 +17,7 @@ SUB_PROJECTS= \
+ 	14_ParticlesSpritesAnimation \
+ 	15_ParticleAccelerator \
+ 	16_VertexBufferObjects \
+-	17_Beizer \
+-	18_VertexBufferObjects \
+-	19_Beizer
++	17_Beizer
+ 	
+ 
+ .PHONY: all
+-- 
+1.7.9.5
+
diff --git a/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb
new file mode 100644
index 0000000..69bcd01
--- /dev/null
+++ b/recipes-graphics/vivante-gpu-sdk/vivante-gpu-sdk_1.00.bb
@@ -0,0 +1,35 @@ 
+SUMMARY = "Vivante GPU SDK Samples"
+DESCRIPTION = "Freescale's adaptation of Jeff Molofee demos"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b3ed4253a63ac8555ccab7c4c0aa29a1"
+
+PR = "r0"
+
+inherit fsl-eula-unpack
+
+SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \
+	file://0001-Fix-compilation-of-the-GLES1.1-X11-Samples-in-Yocto.patch;striplevel=1 \
+	file://0002-Don-t-build-missing-samples.patch;striplevel=1"
+
+SRC_URI[md5sum] = "344c9a260b46a00f86eb5cb73bf729e0"
+SRC_URI[sha256sum] = "0f0a576ce1a08719ee1018832ae808ee723fad27a534c9739b5feec6d7435c57"
+
+S = "${WORKDIR}/${PN}-${PV}"
+GLES11DIR = "${S}/Samples/GLES1.1"
+VIVANTE_INSTALL_DIR = "/opt/${PN}"
+VIVANTE_INSTALL_DEST_DIR = "${D}${VIVANTE_INSTALL_DIR}"
+
+do_compile () {
+	cd "${GLES11DIR}"
+	oe_runmake -f Makefile.x11
+}
+
+do_install () {
+	cd "${GLES11DIR}"
+	install -d "${VIVANTE_INSTALL_DEST_DIR}"
+	oe_runmake -f Makefile.x11 install
+	cp -r bin/ "${VIVANTE_INSTALL_DEST_DIR}"
+}
+
+FILES_${PN} += "${VIVANTE_INSTALL_DIR}"
+FILES_${PN}-dbg = "${VIVANTE_INSTALL_DIR}/*/*/.debug"