[OE-core] [PATCH 1/4] mesa-dri/xlib: use target commands in mklib file
Martin Jansa
martin.jansa at gmail.com
Thu Oct 13 09:13:53 UTC 2011
On Thu, Oct 13, 2011 at 05:05:33PM +0800, Kang Kai wrote:
> the bin/mklib file in mesa-dri/xlib source code uses commands on
> hosts, this may cause build failed on some platform.
>
> Patches are from WindRiver Linux, and CQID are:
> WIND00266791
> WIND00266497
Please check my mesa patchset in
openembedded-core-contrib/jansa/x11-v4
and please test it if it still applies to mesa-git too
And mesa-use-target-commands-in-mklib.patch doesn't have Upstream-Status
Regards,
>
> Signed-off-by: Kang Kai <kai.kang at windriver.com>
> ---
> .../mesa-use-target-commands-in-mklib.patch | 104 ++++++++++++++++++++
> meta/recipes-graphics/mesa/mesa-dri_7.11.bb | 3 +-
> meta/recipes-graphics/mesa/mesa-xlib_7.11.bb | 3 +-
> 3 files changed, 108 insertions(+), 2 deletions(-)
> create mode 100644 meta/recipes-graphics/mesa/mesa-dri/mesa-use-target-commands-in-mklib.patch
>
> diff --git a/meta/recipes-graphics/mesa/mesa-dri/mesa-use-target-commands-in-mklib.patch b/meta/recipes-graphics/mesa/mesa-dri/mesa-use-target-commands-in-mklib.patch
> new file mode 100644
> index 0000000..1bc2a57
> --- /dev/null
> +++ b/meta/recipes-graphics/mesa/mesa-dri/mesa-use-target-commands-in-mklib.patch
> @@ -0,0 +1,104 @@
> +This patch is merged from WindRiver linux commits, and it is to avoid build failed on some platform because of using the commands on host.
> +
> +And original commits are:
> +
> +commit 8d5ccc8113e1b51b0529a00c18a4aba956247e1b
> +Author: Yulong Pei <Yulong.pei at windriver.com>
> +Date: Tue Apr 12 22:14:10 2011 +0800
> +
> + fix mesa-dri build fails on x86-64
> +
> + CQID: WIND00266791
> +
> + 1. mesa-dri uses it's own script (mklib) to generate libraries, and it
> + calls the host's ar/ranlib/gcc/g++. This fixes mklib so that it calls the
> + cross-compiling tools properly.
> +
> + 2. override PYTHON2 with 'python', 'python2' is not available in host-tools python.
> + Only 'python' and 'python2.6' are provided. So force configure to use 'python'.
> +
> + And the above two changes are ported from mesa-xlib.
> +
> + Signed-off-by: Randy MacLeod <Randy.MacLeod at windriver.com>
> +
> +commit 5c4212084b871a0c0fb7d174280ec9a634637deb
> +Author: Bowen <Bowen.zhu at windriver.com>
> +Date: Mon Apr 11 16:25:02 2011 +0800
> +
> + Fix freeglut build failed for mips64_octeon-glibc_std_xapps
> +
> + CQID: 266497
> +
> + freeglut build failed on some hosts, because of mesa-xlib uses host ar command,
> + in some hosts, host ar command can't recognize target library, which will make some
> + symbols in libGL undefined.
> +
> + The fix is modifing mklib script in mesa-xlib, change fixed "ar" command to variable
> + $AR that set by our LDAT.
> +
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Kang Kai <kai.kang at windriver.com>
> +
> +--- Mesa-7.10.2/bin/mklib.orig 2011-09-28 16:15:34.170000074 +0800
> ++++ Mesa-7.10.2/bin/mklib 2011-09-28 16:15:42.370000073 +0800
> +@@ -49,8 +49,8 @@
> + /*) ;;
> + *) 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 @@
> + make_ar_static_lib() {
> + OPTS=$1
> + shift;
> +- RANLIB=$1
> ++ USE_RANLIB=$1
> + shift;
> + LIBNAME=$1
> + shift;
> +@@ -87,11 +87,11 @@
> + 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 @@
> + 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
> +
> +@@ -531,9 +531,9 @@
> + 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
> +
> diff --git a/meta/recipes-graphics/mesa/mesa-dri_7.11.bb b/meta/recipes-graphics/mesa/mesa-dri_7.11.bb
> index 6fc8d95..0f026b1 100644
> --- a/meta/recipes-graphics/mesa/mesa-dri_7.11.bb
> +++ b/meta/recipes-graphics/mesa/mesa-dri_7.11.bb
> @@ -9,11 +9,12 @@ LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat
> DEPENDS = "${PROTO_DEPS} ${LIB_DEPS} makedepend-native python-native"
> DEPENDS += "mesa-dri-glsl-native"
>
> -PR = "r5"
> +PR = "r6"
>
> SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \
> file://crossfix.patch \
> file://uclibc.patch \
> + file://mesa-use-target-commands-in-mklib.patch \
> "
>
> SRC_URI[md5sum] = "ff03aca82d0560009a076a87c888cf13"
> diff --git a/meta/recipes-graphics/mesa/mesa-xlib_7.11.bb b/meta/recipes-graphics/mesa/mesa-xlib_7.11.bb
> index ea4acc6..3301068 100644
> --- a/meta/recipes-graphics/mesa/mesa-xlib_7.11.bb
> +++ b/meta/recipes-graphics/mesa/mesa-xlib_7.11.bb
> @@ -4,6 +4,7 @@ FILESPATH =. "${FILE_DIRNAME}/mesa-dri:"
>
> SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \
> file://uclibc.patch \
> + file://mesa-use-target-commands-in-mklib.patch \
> "
>
> SRC_URI[md5sum] = "ff03aca82d0560009a076a87c888cf13"
> @@ -17,7 +18,7 @@ LIB_DEPS = "virtual/libx11 libxext libxxf86vm libxdamage libxfixes libxml2-nativ
> DEPENDS = "${PROTO_DEPS} ${LIB_DEPS} makedepend-native"
>
> PE = "1"
> -PR = "r1"
> +PR = "r2"
>
> EXTRA_OECONF += "--with-driver=xlib --without-gallium-drivers"
>
> --
> 1.7.5.1.300.gc565c
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
--
Martin 'JaMa' Jansa jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20111013/fb844414/attachment-0002.sig>
More information about the Openembedded-core
mailing list