diff options
Diffstat (limited to 'linkers/rld-rap.h')
-rw-r--r-- | linkers/rld-rap.h | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/linkers/rld-rap.h b/linkers/rld-rap.h deleted file mode 100644 index 19969e3..0000000 --- a/linkers/rld-rap.h +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright (c) 2012, Chris Johns <chrisj@rtems.org> - * - * Permission to use, copy, modify, and/or distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ -/** - * @file - * - * @ingroup rtems-ld - * - * @brief RTEMS Linker RTEMS Application (RAP) Format management. - * - */ - -#if !defined (_RLD_RAP_H_) -#define _RLD_RAP_H_ - -#include <rld-files.h> - -namespace rld -{ - namespace rap - { - /** - * Output details or not. - */ - extern bool add_obj_details; - - /** - * Store the path of object files. - */ - extern std::string rpath; - - /** - * The RAP relocation bit masks. - */ - #define RAP_RELOC_RELA (1UL << 31) - #define RAP_RELOC_STRING (1UL << 31) - #define RAP_RELOC_STRING_EMBED (1UL << 30) - - /** - * The sections of interest in a RAP file. - */ - enum sections - { - rap_text = 0, - rap_const = 1, - rap_ctor = 2, - rap_dtor = 3, - rap_data = 4, - rap_bss = 5, - rap_secs = 6 - }; - - /** - * Return the name of a section. - */ - const char* section_name (int sec); - - /** - * Write a RAP format file. - * - * The symbol table is provided to allow incremental linking at some point - * in the future. I suspect this will also require extra options being - * added to control symbol visibility in the RAP file. For example an - * "application" may be self contained and does not need to export any - * symbols therefore no symbols are added and the only ones are part of the - * relocation records to bind to base image symbols. Another case is the - * need for an application to export symbols because it is using dlopen to - * load modules. Here the symbols maybe 'all' or it could be a user - * maintained list that are exported. - * - * @param app The application image to write too. - * @param init The application's initialisation entry point. - * @param fini The application's finish entry point . - * @param objects The list of object files in the application. - * @param symbols The symbol table used to create the application. - */ - void write (files::image& app, - const std::string& init, - const std::string& fini, - const files::object_list& objects, - const symbols::table& symbols); - } -} - -#endif |