From fd208ccbfcb8562b4302b618b3fc1d2601af17d5 Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Fri, 7 Jul 2023 04:02:40 -0300 Subject: [PATCH] ada: Pass -msmp when linking for ppc-vx6 --RTS=rtp-smp gprbuild and gnatmake won't pass --RTS=rtp-smp to the compiler driver for linking. The flag was not used during linking: the .spec files named as linker options were all we passed for the linker to get the -L flags for lib_smp and lib. There was a problem, though: although /lib_smp/ and /lib/ were to be searched in this order, and the specs files did that correctly, the compiler would search /lib/ first regardless, because STARTFILE_PREFIX_SPEC said so, and specs files cannot override that. With this patch, we make sure the rtp-smp runtime causes -msmp to be added to the command line passed to the compiler driver for linking, and a corresponding patch for the ppc-vxworks configuration makes the GCC compiler driver use this flag to select /lib_smp/ rather than /lib/. gcc/ada/ * libgnat/system-vxworks-ppc-rtp-smp.ads: Add -msmp to Linker_Options pragma. --- gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads b/gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads index d8c498fac7fe..e4b80a8415ee 100644 --- a/gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads +++ b/gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads @@ -120,6 +120,7 @@ package System is private + pragma Linker_Options ("-msmp"); pragma Linker_Options ("--specs=vxworks-smp-ppc-link.spec"); pragma Linker_Options ("--specs=vxworks-ppc-link.spec"); -- Setup proper set of -L's for this configuration -- 2.47.2