diff options
author | Jakub Jelinek <jakub@redhat.com> | 2017-01-17 10:38:48 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2017-01-17 10:38:48 +0100 |
commit | 3c36aa6ba2be894d4092a6ce8129d39ef846c964 (patch) | |
tree | cc0e0034b0345bc500f0910812bc430e4df80e30 /gcc | |
parent | 12314dc98976f0dc987ec8081e4672b76507e46e (diff) | |
download | gcc-3c36aa6ba2be894d4092a6ce8129d39ef846c964.zip gcc-3c36aa6ba2be894d4092a6ce8129d39ef846c964.tar.gz gcc-3c36aa6ba2be894d4092a6ce8129d39ef846c964.tar.bz2 |
re PR other/79046 (g++ -print-file-name=plugin uses full version number in path)
PR other/79046
* configure: Regenerated.
config/
* acx.m4 (GCC_BASE_VER): New m4 function.
(ACX_TOOL_DIRS): Require GCC_BASE_VER, for
--with-gcc-major-version-only use just major number from BASE-VER.
gcc/
* configure.ac: Add GCC_BASE_VER.
* Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
version from BASE-VER file.
(CFLAGS-gcc.o): Add -DBASEVER=$(BASEVER_s).
(gcc.o): Depend on $(BASEVER).
* common.opt (dumpfullversion): New option.
* gcc.c (driver_handle_option): Handle OPT_dumpfullversion.
* doc/invoke.texi: Document -dumpfullversion.
* doc/install.texi: Document --with-gcc-major-version-only.
* configure: Regenerated.
libatomic/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* testsuite/Makefile.in: Regenerated.
* configure: Regenerated.
* Makefile.in: Regenerated.
libgomp/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* testsuite/Makefile.in: Regenerated.
* configure: Regenerated.
* Makefile.in: Regenerated.
libgcc/
* configure.ac: Add GCC_BASE_VER.
* Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
version from BASE-VER file.
* configure: Regenerated.
libssp/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* configure: Regenerated.
* Makefile.in: Regenerated.
liboffloadmic/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* aclocal.m4: Include ../config/acx.m4.
* configure: Regenerated.
* Makefile.in: Regenerated.
libquadmath/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* configure: Regenerated.
* Makefile.in: Regenerated.
libmpx/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* configure: Regenerated.
* Makefile.in: Regenerated.
libada/
* configure.ac: Add GCC_BASE_VER.
* Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get
version from BASE-VER file.
* configure: Regenerated.
lto-plugin/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* configure: Regenerated.
* Makefile.in: Regenerated.
libitm/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* testsuite/Makefile.in: Regenerated.
* configure: Regenerated.
* Makefile.in: Regenerated.
fixincludes/
* configure.ac: Add GCC_BASE_VER.
* Makefile.in (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* configure: Regenerated.
libcilkrts/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* aclocal.m4: Include ../config/acx.m4.
* configure: Regenerated.
* Makefile.in: Regenerated.
libcc1/
* configure.ac: Add GCC_BASE_VER. For --with-gcc-major-version-only
use just major number from BASE-VER.
* configure: Regenerated.
* Makefile.in: Regenerated.
libobjc/
* configure.ac: Add GCC_BASE_VER.
* Makefile.in (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* configure: Regenerated.
libstdc++-v3/
* configure.ac: Add GCC_BASE_VER.
* fragment.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* po/Makefile.in: Regenerated.
* libsupc++/Makefile.in: Regenerated.
* testsuite/Makefile.in: Regenerated.
* src/Makefile.in: Regenerated.
* configure: Regenerated.
* Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* doc/Makefile.in: Regenerated.
* python/Makefile.in: Regenerated.
* src/c++11/Makefile.in: Regenerated.
* src/c++98/Makefile.in: Regenerated.
* src/filesystem/Makefile.in: Regenerated.
libvtv/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* testsuite/Makefile.in: Regenerated.
* configure: Regenerated.
* Makefile.in: Regenerated.
libsanitizer/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* libbacktrace/Makefile.in: Regenerated.
* interception/Makefile.in: Regenerated.
* asan/Makefile.in: Regenerated.
* ubsan/Makefile.in: Regenerated.
* configure: Regenerated.
* sanitizer_common/Makefile.in: Regenerated.
* lsan/Makefile.in: Regenerated.
* Makefile.in: Regenerated.
* tsan/Makefile.in: Regenerated.
libgfortran/
* configure.ac: Add GCC_BASE_VER.
* Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
get version from BASE-VER file.
* configure: Regenerated.
* Makefile.in: Regenerated.
From-SVN: r244521
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 14 | ||||
-rw-r--r-- | gcc/Makefile.in | 5 | ||||
-rw-r--r-- | gcc/common.opt | 3 | ||||
-rwxr-xr-x | gcc/configure | 23 | ||||
-rw-r--r-- | gcc/configure.ac | 3 | ||||
-rw-r--r-- | gcc/doc/install.texi | 4 | ||||
-rw-r--r-- | gcc/doc/invoke.texi | 15 | ||||
-rw-r--r-- | gcc/gcc.c | 4 |
8 files changed, 64 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6d443fc..bef211c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,17 @@ +2017-01-17 Jakub Jelinek <jakub@redhat.com> + + PR other/79046 + * configure.ac: Add GCC_BASE_VER. + * Makefile.in (version): Use @get_gcc_base_ver@ instead of cat to get + version from BASE-VER file. + (CFLAGS-gcc.o): Add -DBASEVER=$(BASEVER_s). + (gcc.o): Depend on $(BASEVER). + * common.opt (dumpfullversion): New option. + * gcc.c (driver_handle_option): Handle OPT_dumpfullversion. + * doc/invoke.texi: Document -dumpfullversion. + * doc/install.texi: Document --with-gcc-major-version-only. + * configure: Regenerated. + 2017-01-17 Richard Biener <rguenther@suse.de> PR tree-optimization/71433 diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 59fe4aa..7a7e27a 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -856,7 +856,7 @@ else REVISION_c := $(shell cat $(REVISION)) endif -version := $(BASEVER_c) +version := $(shell @get_gcc_base_ver@ $(BASEVER)) PATCHLEVEL_c := \ $(shell echo $(BASEVER_c) | sed -e 's/^[0-9]*\.[0-9]*\.\([0-9]*\)$$/\1/') @@ -2124,7 +2124,8 @@ DRIVER_DEFINES = \ $(if $(SHLIB),$(if $(filter yes,@enable_shared@),-DENABLE_SHARED_LIBGCC)) \ -DCONFIGURE_SPECS="\"@CONFIGURE_SPECS@\"" -CFLAGS-gcc.o += $(DRIVER_DEFINES) +CFLAGS-gcc.o += $(DRIVER_DEFINES) -DBASEVER=$(BASEVER_s) +gcc.o: $(BASEVER) specs.h : s-specs ; @true s-specs : Makefile diff --git a/gcc/common.opt b/gcc/common.opt index 693b743..ad6baa3 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -849,6 +849,9 @@ Driver dumpversion Driver +dumpfullversion +Driver + e Driver Joined Separate diff --git a/gcc/configure b/gcc/configure index 60cb979..c9e43fb 100755 --- a/gcc/configure +++ b/gcc/configure @@ -734,6 +734,7 @@ INCINTL LIBINTL_DEP LIBINTL USE_NLS +get_gcc_base_ver extra_opt_files extra_modes_file NATIVE_SYSTEM_HEADER_DIR @@ -918,6 +919,7 @@ with_multilib_list enable_rpath with_libiconv_prefix enable_sjlj_exceptions +with_gcc_major_version_only enable_secureplt enable_leading_mingw64_underscores enable_cld @@ -1721,6 +1723,8 @@ Optional Packages: --with-gnu-ld assume the C compiler uses GNU ld default=no --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib --without-libiconv-prefix don't search for libiconv in includedir and libdir + --with-gcc-major-version-only + use only GCC major number in filesystem paths --with-pic try to use only PIC/non-PIC objects [default=use both] --with-gnu-ld assume the C compiler uses GNU ld [default=no] @@ -11860,6 +11864,21 @@ static struct plugin_gcc_version gcc_version = {basever, datestamp, configuration_arguments}; EOF +# Determine what GCC version number to use in filesystem paths. + + get_gcc_base_ver="cat" + +# Check whether --with-gcc-major-version-only was given. +if test "${with_gcc_major_version_only+set}" = set; then : + withval=$with_gcc_major_version_only; if test x$with_gcc_major_version_only = xyes ; then + get_gcc_base_ver="sed -e 's/^\([0-9]*\).*\$\$/\1/'" + fi + +fi + + + + # Internationalization # If we haven't got the data from the intl directory, # assume NLS is disabled. @@ -18414,7 +18433,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 18417 "configure" +#line 18436 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -18520,7 +18539,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 18523 "configure" +#line 18542 "configure" #include "confdefs.h" #if HAVE_DLFCN_H diff --git a/gcc/configure.ac b/gcc/configure.ac index b73a807..33f9a0e 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -1794,6 +1794,9 @@ static struct plugin_gcc_version gcc_version = {basever, datestamp, EOF changequote([,])dnl +# Determine what GCC version number to use in filesystem paths. +GCC_BASE_VER + # Internationalization ZW_GNU_GETTEXT_SISTER_DIR diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index 4958773..713d225 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -894,6 +894,10 @@ ideas of what it is for. People use it as if it specified where to install part of GCC@. Perhaps they make this assumption because installing GCC creates the directory. +@item --with-gcc-major-version-only +Specifies that GCC should use only the major number rather than +@var{major}.@var{minor}.@var{patchlevel} in filesystem paths. + @item --with-native-system-header-dir=@var{dirname} Specifies that @var{dirname} is the directory that contains native system header files, rather than @file{/usr/include}. This option is most useful diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 99f193e..e0624da 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -529,7 +529,7 @@ Objective-C and Objective-C++ Dialects}. @item Developer Options @xref{Developer Options,,GCC Developer Options}. @gccoptlist{-d@var{letters} -dumpspecs -dumpmachine -dumpversion @gol --fchecking -fchecking=@var{n} -fdbg-cnt-list @gol +-dumpfullversion -fchecking -fchecking=@var{n} -fdbg-cnt-list @gol -fdbg-cnt=@var{counter-value-list} @gol -fdisable-ipa-@var{pass_name} @gol -fdisable-rtl-@var{pass_name} @gol @@ -13772,8 +13772,17 @@ Print the compiler's target machine (for example, @item -dumpversion @opindex dumpversion -Print the compiler version (for example, @code{3.0})---and don't do -anything else. +Print the compiler version (for example, @code{3.0}, @code{6.3.0} or @code{7})---and don't do +anything else. This is the compiler version used in filesystem paths, +specs, can be depending on how the compiler has been configured just +a single number (major version), two numbers separated by dot (major and +minor version) or three numbers separated by dots (major, minor and patchlevel +version). + +@item -dumpfullversion +@opindex dumpfullversion +Print the full compiler version, always 3 numbers separated by dots, +major, minor and patchlevel version. @item -dumpspecs @opindex dumpspecs @@ -3778,6 +3778,10 @@ driver_handle_option (struct gcc_options *opts, printf ("%s\n", spec_machine); exit (0); + case OPT_dumpfullversion: + printf ("%s\n", BASEVER); + exit (0); + case OPT__version: print_version = 1; |