Matthias Klose f1baee38ff Allow to build libgccjit with a soname bound to the GCC major version
When configuring GCC with --program-suffix=-$(BASE_VERSION) to allow
installation multiple GCC versions in parallel, the executable of the
driver (gcc-$(BASE_VERSION)) gets recorded in the libgccjit.so.0
library.  Assuming, that you only install the libgccjit.so.0 library
from the newest GCC, you have a libgccjit installed, which always calls
back to the newest installed version of GCC.  I'm not saying that the
ABI is changing, but I'd like to see the libgccjit calling out to the
corresponding compiler, and therefore installing a libgccjit with a
soname that matches the GCC major version.

The downside is having to rebuild packages built against libgccjit with
each major GCC version, but looking at the reverse dependencies, at
least for package builds, only emacs is using libgccjit.

My plan to use this feature is to build a libgccjit0 using the default
GCC (e.g. gcc-14), and a libgccjit15, when building a newer GCC. When
changing the GCC default to 15, building a libgccjit0 from gcc-15, and a
libgccjit14 from gcc-14.

When configuring without --enable-versioned-jit, the behavior is unchanged.

2025-03-13  Matthias Klose  <doko@ubuntu.com>

gcc/
	* configure.ac: Add option --enable-versioned-jit.
	* configure: Regenerate.
	* Makefile.in: Move from jit/Make-lang.in, setting value from
	configure.ac.
	* doc/install.texi: Document option --enable-versioned-jit.

gcc/jit/
	* Make-lang.in (LIBGCCJIT_VERSION_NUM): Move to ../Makefile.in.
2025-03-13 07:22:02 +01:00
2025-01-02 11:59:57 +01:00
2024-11-26 00:19:26 +00:00
2025-03-13 00:18:24 +00:00
2024-07-12 00:17:52 +00:00
2024-07-08 00:17:01 +00:00
2025-02-12 00:17:11 +00:00
2025-01-02 11:59:57 +01:00
2025-01-11 00:19:49 +00:00
2025-02-11 00:17:27 +00:00
2025-01-02 11:59:57 +01:00
2025-03-13 00:18:24 +00:00
2025-01-02 11:59:57 +01:00
2024-10-26 00:19:39 +00:00
2025-03-11 00:17:58 +00:00
2025-03-13 00:18:24 +00:00
2025-02-28 00:16:37 +00:00
2024-11-21 00:20:27 +00:00
2025-02-23 00:17:00 +00:00
2025-01-02 11:59:57 +01:00
2025-01-03 00:17:15 +00:00
2025-01-02 11:59:57 +01:00
2025-03-13 00:18:24 +00:00
2025-01-03 00:17:15 +00:00
2025-01-07 00:18:08 +00:00
2025-01-02 11:59:57 +01:00
2025-03-13 00:18:24 +00:00
2025-01-02 11:59:57 +01:00
2025-03-07 00:17:19 +00:00
2025-03-12 00:18:35 +00:00
2024-09-12 22:51:00 +08:00
2025-03-13 00:18:24 +00:00
2025-03-11 07:48:27 +01:00
2025-03-11 07:48:27 +01:00
2024-11-19 12:27:33 +01:00

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the files whose
names start with COPYING for copying permission.  The manuals, and
some of the runtime libraries, are under different terms; see the
individual source files for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs/ for how to report bugs usefully.

Copyright years on GCC source files may be listed using range
notation, e.g., 1987-2012, indicating that every year in the range,
inclusive, is a copyrightable year that could otherwise be listed
individually.
Description
No description provided
Readme 2.7 GiB
Languages
C++ 30.7%
C 30.1%
Ada 14.4%
D 6.1%
Go 5.7%
Other 12.5%