diff options
author | Peng Fan <van.freenix@gmail.com> | 2013-08-04 22:35:42 +0800 |
---|---|---|
committer | Peng Fan <van.freenix@gmail.com> | 2013-08-04 22:35:42 +0800 |
commit | 7f982b32bd276d08c5273353073cc6958aaaecac (patch) | |
tree | 9cf9103f590d0466d1ca81e072f5dfa6087f832b /rld-rap.cpp | |
parent | 370435add497e97985d184b282a0b60413c3f9ca (diff) |
Add rpath support
Diffstat (limited to 'rld-rap.cpp')
-rw-r--r-- | rld-rap.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/rld-rap.cpp b/rld-rap.cpp index 99bc4a3..f54f7f3 100644 --- a/rld-rap.cpp +++ b/rld-rap.cpp @@ -48,6 +48,11 @@ namespace rld bool add_obj_details = true; /** + * Store the path of object files. + */ + std::string rpath; + + /** * The names of the RAP sections. */ static const char* section_names[rap_secs] = @@ -1440,6 +1445,7 @@ namespace rld section_details s_details; + if (rld::verbose () >= RLD_VERBOSE_TRACE) { std::cout << "rap:file details" << std::endl @@ -1448,6 +1454,19 @@ namespace rld comp << (uint32_t)(objs.size ()); + /* rpath for rap file */ + if (rld::verbose () >= RLD_VERBOSE_TRACE) + { + std::cout << "rap:file rpath=" << rld::rap::rpath << std::endl; + } + + comp << (uint32_t)rld::rap::rpath.length (); + + if (rld::rap::rpath.length () > 0) + { + strtable += rld::rap::rpath; + } + for (objects::iterator oi = objs.begin (); oi != objs.end (); ++oi) |