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 fully standalone libraries


The new Library_Standalone attribute is used to select the mode
for the standalone shared libraries.

   No       : This is not a standalone library. Library_Interface should
              not be set.

   Standard : elaboration/finalization local for the library.

   Full     : as above, but link only against static libraries.

Tested on x86_64-pc-linux-gnu, committed on trunk

2011-12-21  Pascal Obry  <obry@adacore.com>

	* prj-attr.adb, snames.ads-tmpl: Add Library_Standalone,
	Library_Fully_Standalone_Options and
	Library_Fully_Standalone_Supported attributes.
	* prj-nmsc.adb (Check_Library): Update check to take into
	account fully standalone libraries. Such shared libraries can
	only depend on static libraries.
	(Check_Stand_Alone_Library): Add support for fully standalone libraries.
	(Process_Project_Level_Simple_Attributes): Store value for
	configuration attribute Library_Fully_Standalone_Supported.
	* prj.ads, makeutl.adb (Standalone): New enumeration type.
	(Project_Data): Standalone_Library now of type Standlone.
	(Project_Configuration): Add Lib_Fully_Standalone_Supported
	field.
	(Default_Project_Config): Initialize new Lib_Fully_Standalone_Supported
	field.
	* clean.adb (Clean_Project): Adjust to new type for Standalone.
	* make.adb (Library_Phase): Adjust to new type for Standalone.
	(Gnatmake): Likewise.
	* mlib-prj.adb (Build_Library): Adjust to new type for
	Standalone.

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]