From cdae8d0559d41f9464ab54e2967e23a0ee06a358 Mon Sep 17 00:00:00 2001 From: Marc Poulhiès Date: Tue, 13 Dec 2022 21:16:22 +0100 Subject: Enable support for building libgccjit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit libgccjit is still under development and, despite its name, may also be used for ahead-of-time compilation. Documentation can be found on the gcc website: https://gcc.gnu.org/onlinedocs/jit/internals/index.html https://gcc.gnu.org/wiki/JIT With this change it's possible to enable the building of the libgccjit. It's enabled as a language (with --enable-languages=jit) even if not a language frontend at all. The main changes are related to the requirement of having everything host side built as Position Independent Code (PIC) with --enable-host-shared. GCC has the needed logic for building its dependencies (mpc, gmp, mpfr, ...) correctly when built "in-tree", which is not the case with crosstool-ng (see https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=05048fc29f0) Signed-off-by: Marc Poulhiès --- scripts/build/companion_libs/130-cloog.sh | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'scripts/build/companion_libs/130-cloog.sh') diff --git a/scripts/build/companion_libs/130-cloog.sh b/scripts/build/companion_libs/130-cloog.sh index 9ee897ab..5170b53b 100644 --- a/scripts/build/companion_libs/130-cloog.sh +++ b/scripts/build/companion_libs/130-cloog.sh @@ -83,6 +83,10 @@ do_cloog_backend() { cloog_opts+=( --with-isl=system --with-isl-prefix="${prefix}" ) cloog_opts+=( --without-osl ) + if [ "${CT_CC_LANG_JIT}" = "y" ]; then + cloog_opts+=("--with-pic") + fi + CT_DoLog EXTRA "Configuring CLooG" CT_DoExecLog CFG \ -- cgit v1.2.3