This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH] configure.ac: honor --with-gcc-major-version in gcc-driver-name.h (PR jit/85384, variant)
- From: Jakub Jelinek <jakub at redhat dot com>
- To: David Malcolm <dmalcolm at redhat dot com>, Jeff Law <law at redhat dot com>, DJ Delorie <dj at redhat dot com>, Alexandre Oliva <aoliva at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org, jit at gcc dot gnu dot org
- Date: Fri, 13 Apr 2018 19:23:23 +0200
- Subject: [PATCH] configure.ac: honor --with-gcc-major-version in gcc-driver-name.h (PR jit/85384, variant)
- References: <1523566281-53547-1-git-send-email-dmalcolm@redhat.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Thu, Apr 12, 2018 at 04:51:21PM -0400, David Malcolm wrote:
> This patch updates gcc/configure.ac to use gcc_base_ver.
>
> I had to drop the \$\$ from the sed expression to get it to work
> within the configure script; I'm not entirely sure what their purpose
> is. Without them, it's still matching on the first group of numeric
> characters in BASE-VER.
>
> Tested with and without --with-gcc-major-version; in each case,
> gcc-driver-name.h is correctly determined.
>
> Fixes the linker issue reported downstream in
> https://bugzilla.redhat.com/show_bug.cgi?id=1566178
> and fixes the driver not found issue with:
> gcc_jit_context_set_bool_use_external_driver (ctxt, 1);
>
> Successfully bootstrapped & regrtested on x86_64-pc-linux-gnu.
>
> OK for trunk?
>
> config/ChangeLog:
> PR jit/85384
> * acx.m4 (GCC_BASE_VER): Remove \$\$ from sed expression.
>
> gcc/ChangeLog:
> PR jit/85384
> * configure.ac (gcc-driver-name.h): Honor --with-gcc-major-version
> by using gcc_base_ver to generate a gcc_driver_version, and use
> it when generating GCC_DRIVER_NAME.
> * configure.ac: Regenerate.
Here is the variant I've talked about in patch form. Bootstrapped/regtested
on x86_64-linux and i686-linux and tested with
--enable-languages=jit --enable-host-shared --disable-bootstrap
and
--enable-languages=jit --enable-host-shared --disable-bootstrap --with-gcc-major-version-only
Ok for trunk?
2018-04-13 Jakub Jelinek <jakub@redhat.com>
PR jit/85384
* configure.ac (GCC_DRIVER_NAME): For --with-gcc-major-version-only
use just major version in the driver filename rather than full
version.
* configure: Regenerated.
--- gcc/configure.ac.jj 2018-04-12 10:22:56.179162225 +0200
+++ gcc/configure.ac 2018-04-13 16:16:02.712459619 +0200
@@ -6499,8 +6499,14 @@ AC_DEFINE_UNQUOTED(DIAGNOSTICS_COLOR_DEF
# Generate gcc-driver-name.h containing GCC_DRIVER_NAME for the benefit
# of jit/jit-playback.c.
+changequote(,)dnl
+gcc_driver_version=$gcc_BASEVER
+if test x$with_gcc_major_version_only = xyes ; then
+ gcc_driver_version=`echo $gcc_BASEVER | sed -e 's/^\([0-9]*\).*$/\1/'`
+fi
+changequote([,])dnl
cat > gcc-driver-name.h <<EOF
-#define GCC_DRIVER_NAME "${target_noncanonical}-gcc-${gcc_BASEVER}${exeext}"
+#define GCC_DRIVER_NAME "${target_noncanonical}-gcc-${gcc_driver_version}${exeext}"
EOF
# Check whether --enable-default-pie was given.
--- gcc/configure.jj 2018-04-12 10:22:56.256162248 +0200
+++ gcc/configure 2018-04-13 16:16:17.551468697 +0200
@@ -30084,8 +30084,12 @@ _ACEOF
# Generate gcc-driver-name.h containing GCC_DRIVER_NAME for the benefit
# of jit/jit-playback.c.
+gcc_driver_version=$gcc_BASEVER
+if test x$with_gcc_major_version_only = xyes ; then
+ gcc_driver_version=`echo $gcc_BASEVER | sed -e 's/^\([0-9]*\).*$/\1/'`
+fi
cat > gcc-driver-name.h <<EOF
-#define GCC_DRIVER_NAME "${target_noncanonical}-gcc-${gcc_BASEVER}${exeext}"
+#define GCC_DRIVER_NAME "${target_noncanonical}-gcc-${gcc_driver_version}${exeext}"
EOF
# Check whether --enable-default-pie was given.
Jakub