What is the purpose of CXX's and FC's predeps, postdeps, and friends?

Christian Feld <[email protected]> Tue, 18 Feb 2025 09:49:59 +0100
Newsgroups gmane.comp.gnu.libtool.general
Message-ID <[email protected]>
Dear libtoolers,

the macro _LT_SYS_HIDDEN_LIBDEPS sets the _LT_TAGDECLs

   predep_objects,
   postdep_objects,
   predeps (always empty),
   postdeps,
   compiler_lib_search_dirs, and
   compiler_lib_search_path.

_LT_SYS_HIDDEN_LIBDEPS is expanded for CXX and FC only.
It uses $output_verbose_link_cmd to determine the values of the above 
variables. output_verbose_link_cmd is set in _LT_LANG_CXX_CONFIG and 
_LT_DARWIN_LINKER_FEATURES only. Thus, if there is no CXX and we are not 
on DARWIN, output_verbose_link_cmd in not set and for FC the above 
variables are not set.

Is this coupling between FC and CXX and FC and DARWIN intended?

What is the purpose of these variables? I'm sure there is a purpose, as 
_LT_LANG_CXX_CONFIG takes quite some effort to set 
output_verbose_link_cmd, 13 times in total. But why extract libs and 
path from the verbose linker output of the CXX compiler, if we use the 
same compiler for linking later on (at least this is what I experience 
on Linux)?
What is different for C, F77, GCJ, and GO that we don't need to evaluate 
the verbose linker output there? Do we need the variables for FC?

BTW, _LT_SYS_HIDDEN_LIBDEPS contains code for F77, GCJ, and GO that is 
never used as _LT_SYS_HIDDEN_LIBDEPS is not expanded for these tags.

Thanks,
Christian

-- 
Christian Feld
Jülich Supercomputing Centre
📧 [email protected]
http://www.fz-juelich.de/jsc

---------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------
Forschungszentrum Jülich GmbH
52425 Jülich
Sitz der Gesellschaft: Jülich
Eingetragen im Handelsregister des Amtsgerichts Düren Nr. HR B 3498
Vorsitzender des Aufsichtsrats: MinDir Stefan Müller
Geschäftsführung: Prof. Dr. Astrid Lambrecht (Vorsitzende),
Dr. Stephanie Bauer (stellv. Vorsitzende), Prof. Dr. Ir. Pieter Jansens
---------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------
smime.p7s (application/pkcs7-signature, 6 KB) - not displayed