This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Ada] Add support for emitting one "rpath" switch per directory.


On some platforms, like darwin, the linker option "rpath" does not support
a list of directories as parameter, under the form

  -rpath dir1:dir2:dir3

but requires one "rpath" parameter per directory:

  -rpath dir1  -rpath dir2  -rpath dir3

This patch fixes the GNAT tools that drive the linker in order to support the
above.

This is needed so that programs compiled through commands such as

  gnatmake hello.adb -bargs -shared

can find the dynamic library.

Tested on x86_64-darwin, committed on trunk

2009-04-22  Nicolas Setton  <setton@adacore.com>

	* link.c: Add flag __gnat_separate_run_path_options.

	* mlib.adb (Separate_Run_Path_Options): New subprogram.

	* mlib.ads (Separate_Run_Path_Options): Declare.

	* gnatcmd.adb (Process_Link): Add support for emitting one "rpath"
	switch per directory, rather than one "rpath" switch listing all
	directories.

	* gnatlink.adb (Process_Binder_File): Likewise.

	* make.adb (Gnatmake): Likewise.

Attachment: difs
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]