[Mesa-dev] [PATCH v2 1/2] clover: make llvm >= 3.5.0 and c++11 mandatory

2015-04-20 Thread EdB
Clover not longer compile with llvm <= 3.5.0 since e1d363b3.
e1d363b3 implies c++11 and llvm 3.5.0 CXXFLAGS provided it.
No one seems to have noticed it, it's now official.
---
 configure.ac | 32 +++-
 1 file changed, 11 insertions(+), 21 deletions(-)

diff --git a/configure.ac b/configure.ac
index 325b936..095e23e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1865,6 +1865,13 @@ strip_unwanted_llvm_flags() {
-e 's/-fstack-protector-strong\>//g'
 }
 
+llvm_check_version_for() {
+if test "${LLVM_VERSION_INT}${LLVM_VERSION_PATCH}" -lt "${1}0${2}${3}"; 
then
+AC_MSG_ERROR([LLVM $1.$2.$3 or newer is required for $4])
+fi
+}
+
+
 
 if test -z "$with_gallium_drivers"; then
 enable_gallium_llvm=no
@@ -1919,22 +1926,10 @@ if test "x$enable_gallium_llvm" = xyes; then
 fi
 
 if test "x$enable_opencl" = xyes; then
+llvm_check_version_for "3" "5" "0" "opencl"
+
 LLVM_COMPONENTS="${LLVM_COMPONENTS} all-targets ipo linker 
instrumentation"
-# LLVM 3.3 >= 177971 requires IRReader
-if $LLVM_CONFIG --components | grep -qw 'irreader'; then
-LLVM_COMPONENTS="${LLVM_COMPONENTS} irreader"
-fi
-# LLVM 3.4 requires Option
-if $LLVM_CONFIG --components | grep -qw 'option'; then
-LLVM_COMPONENTS="${LLVM_COMPONENTS} option"
-fi
-# Current OpenCL/Clover and LLVM 3.5 require ObjCARCOpts and 
ProfileData
-if $LLVM_CONFIG --components | grep -qw 'objcarcopts'; then
-LLVM_COMPONENTS="${LLVM_COMPONENTS} objcarcopts"
-fi
-if $LLVM_CONFIG --components | grep -qw 'profiledata'; then
-LLVM_COMPONENTS="${LLVM_COMPONENTS} profiledata"
-fi
+LLVM_COMPONENTS="${LLVM_COMPONENTS} irreader option objcarcopts 
profiledata"
 fi
 DEFINES="${DEFINES} -DHAVE_LLVM=0x0$LLVM_VERSION_INT 
-DLLVM_VERSION_PATCH=$LLVM_VERSION_PATCH"
 MESA_LLVM=1
@@ -2058,12 +2053,7 @@ radeon_llvm_check() {
 if test "x$enable_gallium_llvm" != "xyes"; then
 AC_MSG_ERROR([--enable-gallium-llvm is required when building $1])
 fi
-LLVM_REQUIRED_VERSION_MAJOR="3"
-LLVM_REQUIRED_VERSION_MINOR="4"
-LLVM_REQUIRED_VERSION_PATCH="2"
-if test "${LLVM_VERSION_INT}${LLVM_VERSION_PATCH}" -lt 
"${LLVM_REQUIRED_VERSION_MAJOR}0${LLVM_REQUIRED_VERSION_MINOR}${LLVM_REQUIRED_VERSION_PATCH}";
 then
-AC_MSG_ERROR([LLVM 
$LLVM_REQUIRED_VERSION_MAJOR.$LLVM_REQUIRED_VERSION_MINOR.$LLVM_REQUIRED_VERSION_PATCH
 or newer is required for $1])
-fi
+llvm_check_version_for "3" "4" "2" $1 
 if test true && $LLVM_CONFIG --targets-built | grep -qvw 'R600' ; then
 AC_MSG_ERROR([LLVM R600 Target not enabled.  You can enable it when 
building the LLVM
   sources with the --enable-experimental-targets=R600
-- 
2.1.0

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH v2 1/2] clover: make llvm >= 3.5.0 and c++11 mandatory

2015-04-20 Thread Francisco Jerez
EdB  writes:

> Clover not longer compile with llvm <= 3.5.0 since e1d363b3.
> e1d363b3 implies c++11 and llvm 3.5.0 CXXFLAGS provided it.
> No one seems to have noticed it, it's now official.
> ---

I haven't carefully reviewed the series, but I'm fine with dropping
support for LLVM 3.5.  For the series:
Acked-by: Francisco Jerez 

>  configure.ac | 32 +++-
>  1 file changed, 11 insertions(+), 21 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index 325b936..095e23e 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -1865,6 +1865,13 @@ strip_unwanted_llvm_flags() {
>   -e 's/-fstack-protector-strong\>//g'
>  }
>  
> +llvm_check_version_for() {
> +if test "${LLVM_VERSION_INT}${LLVM_VERSION_PATCH}" -lt "${1}0${2}${3}"; 
> then
> +AC_MSG_ERROR([LLVM $1.$2.$3 or newer is required for $4])
> +fi
> +}
> +
> +
>  
>  if test -z "$with_gallium_drivers"; then
>  enable_gallium_llvm=no
> @@ -1919,22 +1926,10 @@ if test "x$enable_gallium_llvm" = xyes; then
>  fi
>  
>  if test "x$enable_opencl" = xyes; then
> +llvm_check_version_for "3" "5" "0" "opencl"
> +
>  LLVM_COMPONENTS="${LLVM_COMPONENTS} all-targets ipo linker 
> instrumentation"
> -# LLVM 3.3 >= 177971 requires IRReader
> -if $LLVM_CONFIG --components | grep -qw 'irreader'; then
> -LLVM_COMPONENTS="${LLVM_COMPONENTS} irreader"
> -fi
> -# LLVM 3.4 requires Option
> -if $LLVM_CONFIG --components | grep -qw 'option'; then
> -LLVM_COMPONENTS="${LLVM_COMPONENTS} option"
> -fi
> -# Current OpenCL/Clover and LLVM 3.5 require ObjCARCOpts and 
> ProfileData
> -if $LLVM_CONFIG --components | grep -qw 'objcarcopts'; then
> -LLVM_COMPONENTS="${LLVM_COMPONENTS} objcarcopts"
> -fi
> -if $LLVM_CONFIG --components | grep -qw 'profiledata'; then
> -LLVM_COMPONENTS="${LLVM_COMPONENTS} profiledata"
> -fi
> +LLVM_COMPONENTS="${LLVM_COMPONENTS} irreader option objcarcopts 
> profiledata"
>  fi
>  DEFINES="${DEFINES} -DHAVE_LLVM=0x0$LLVM_VERSION_INT 
> -DLLVM_VERSION_PATCH=$LLVM_VERSION_PATCH"
>  MESA_LLVM=1
> @@ -2058,12 +2053,7 @@ radeon_llvm_check() {
>  if test "x$enable_gallium_llvm" != "xyes"; then
>  AC_MSG_ERROR([--enable-gallium-llvm is required when building $1])
>  fi
> -LLVM_REQUIRED_VERSION_MAJOR="3"
> -LLVM_REQUIRED_VERSION_MINOR="4"
> -LLVM_REQUIRED_VERSION_PATCH="2"
> -if test "${LLVM_VERSION_INT}${LLVM_VERSION_PATCH}" -lt 
> "${LLVM_REQUIRED_VERSION_MAJOR}0${LLVM_REQUIRED_VERSION_MINOR}${LLVM_REQUIRED_VERSION_PATCH}";
>  then
> -AC_MSG_ERROR([LLVM 
> $LLVM_REQUIRED_VERSION_MAJOR.$LLVM_REQUIRED_VERSION_MINOR.$LLVM_REQUIRED_VERSION_PATCH
>  or newer is required for $1])
> -fi
> +llvm_check_version_for "3" "4" "2" $1 
>  if test true && $LLVM_CONFIG --targets-built | grep -qvw 'R600' ; then
>  AC_MSG_ERROR([LLVM R600 Target not enabled.  You can enable it when 
> building the LLVM
>sources with the --enable-experimental-targets=R600
> -- 
> 2.1.0
>
> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


signature.asc
Description: PGP signature
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH v2 1/2] clover: make llvm >= 3.5.0 and c++11 mandatory

2015-04-20 Thread Tom Stellard
On Mon, Apr 20, 2015 at 09:34:03PM +0300, Francisco Jerez wrote:
> EdB  writes:
> 
> > Clover not longer compile with llvm <= 3.5.0 since e1d363b3.
> > e1d363b3 implies c++11 and llvm 3.5.0 CXXFLAGS provided it.
> > No one seems to have noticed it, it's now official.
> > ---
> 
> I haven't carefully reviewed the series, but I'm fine with dropping
> support for LLVM 3.5.  For the series:
> Acked-by: Francisco Jerez 
> 

I've pushed this series, thanks!

-Tom

> >  configure.ac | 32 +++-
> >  1 file changed, 11 insertions(+), 21 deletions(-)
> >
> > diff --git a/configure.ac b/configure.ac
> > index 325b936..095e23e 100644
> > --- a/configure.ac
> > +++ b/configure.ac
> > @@ -1865,6 +1865,13 @@ strip_unwanted_llvm_flags() {
> > -e 's/-fstack-protector-strong\>//g'
> >  }
> >  
> > +llvm_check_version_for() {
> > +if test "${LLVM_VERSION_INT}${LLVM_VERSION_PATCH}" -lt 
> > "${1}0${2}${3}"; then
> > +AC_MSG_ERROR([LLVM $1.$2.$3 or newer is required for $4])
> > +fi
> > +}
> > +
> > +
> >  
> >  if test -z "$with_gallium_drivers"; then
> >  enable_gallium_llvm=no
> > @@ -1919,22 +1926,10 @@ if test "x$enable_gallium_llvm" = xyes; then
> >  fi
> >  
> >  if test "x$enable_opencl" = xyes; then
> > +llvm_check_version_for "3" "5" "0" "opencl"
> > +
> >  LLVM_COMPONENTS="${LLVM_COMPONENTS} all-targets ipo linker 
> > instrumentation"
> > -# LLVM 3.3 >= 177971 requires IRReader
> > -if $LLVM_CONFIG --components | grep -qw 'irreader'; then
> > -LLVM_COMPONENTS="${LLVM_COMPONENTS} irreader"
> > -fi
> > -# LLVM 3.4 requires Option
> > -if $LLVM_CONFIG --components | grep -qw 'option'; then
> > -LLVM_COMPONENTS="${LLVM_COMPONENTS} option"
> > -fi
> > -# Current OpenCL/Clover and LLVM 3.5 require ObjCARCOpts and 
> > ProfileData
> > -if $LLVM_CONFIG --components | grep -qw 'objcarcopts'; then
> > -LLVM_COMPONENTS="${LLVM_COMPONENTS} objcarcopts"
> > -fi
> > -if $LLVM_CONFIG --components | grep -qw 'profiledata'; then
> > -LLVM_COMPONENTS="${LLVM_COMPONENTS} profiledata"
> > -fi
> > +LLVM_COMPONENTS="${LLVM_COMPONENTS} irreader option 
> > objcarcopts profiledata"
> >  fi
> >  DEFINES="${DEFINES} -DHAVE_LLVM=0x0$LLVM_VERSION_INT 
> > -DLLVM_VERSION_PATCH=$LLVM_VERSION_PATCH"
> >  MESA_LLVM=1
> > @@ -2058,12 +2053,7 @@ radeon_llvm_check() {
> >  if test "x$enable_gallium_llvm" != "xyes"; then
> >  AC_MSG_ERROR([--enable-gallium-llvm is required when building $1])
> >  fi
> > -LLVM_REQUIRED_VERSION_MAJOR="3"
> > -LLVM_REQUIRED_VERSION_MINOR="4"
> > -LLVM_REQUIRED_VERSION_PATCH="2"
> > -if test "${LLVM_VERSION_INT}${LLVM_VERSION_PATCH}" -lt 
> > "${LLVM_REQUIRED_VERSION_MAJOR}0${LLVM_REQUIRED_VERSION_MINOR}${LLVM_REQUIRED_VERSION_PATCH}";
> >  then
> > -AC_MSG_ERROR([LLVM 
> > $LLVM_REQUIRED_VERSION_MAJOR.$LLVM_REQUIRED_VERSION_MINOR.$LLVM_REQUIRED_VERSION_PATCH
> >  or newer is required for $1])
> > -fi
> > +llvm_check_version_for "3" "4" "2" $1 
> >  if test true && $LLVM_CONFIG --targets-built | grep -qvw 'R600' ; then
> >  AC_MSG_ERROR([LLVM R600 Target not enabled.  You can enable it 
> > when building the LLVM
> >sources with the --enable-experimental-targets=R600
> > -- 
> > 2.1.0
> >
> > ___
> > mesa-dev mailing list
> > mesa-dev@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/mesa-dev




> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev