From 4973341a7d985b4d211b0b2ce14d95e2c05dbd37 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 21 Aug 2007 23:37:56 +0000 Subject: Implement --whole-archive. --- gold/archive.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'gold/archive.h') diff --git a/gold/archive.h b/gold/archive.h index 193a9e2..ddd665f 100644 --- a/gold/archive.h +++ b/gold/archive.h @@ -79,14 +79,28 @@ class Archive // Get a view into the underlying file. const unsigned char* - get_view(off_t start, off_t size) - { return this->input_file_->file().get_view(start, size); } + get_view(off_t start, off_t size, off_t* pbytes = NULL) + { return this->input_file_->file().get_view(start, size, pbytes); } + + // Read the archive symbol map. + void + read_armap(off_t start, off_t size); // Read an archive member header at OFF. Return the size of the // member, and set *PNAME to the name. off_t read_header(off_t off, std::string* pname); + // Interpret an archive header HDR at OFF. Return the size of the + // member, and set *PNAME to the name. + off_t + interpret_header(const Archive_header* hdr, off_t off, std::string* pname); + + // Include all the archive members in the link. + void + include_all_members(const General_options&, Symbol_table*, Layout*, + Input_objects*); + // Include an archive member in the link. void include_member(const General_options&, Symbol_table*, Layout*, -- cgit v1.1