OLD | NEW |
1 /* plugin-api.h -- External linker plugin API. */ | 1 /* plugin-api.h -- External linker plugin API. */ |
2 | 2 |
3 /* Copyright 2009, 2010 Free Software Foundation, Inc. | 3 /* Copyright 2009, 2010 Free Software Foundation, Inc. |
4 Written by Cary Coutant <ccoutant@google.com>. | 4 Written by Cary Coutant <ccoutant@google.com>. |
5 | 5 |
6 This file is part of binutils. | 6 This file is part of binutils. |
7 | 7 |
8 This program is free software; you can redistribute it and/or modify | 8 This program is free software; you can redistribute it and/or modify |
9 it under the terms of the GNU General Public License as published by | 9 it under the terms of the GNU General Public License as published by |
10 the Free Software Foundation; either version 3 of the License, or | 10 the Free Software Foundation; either version 3 of the License, or |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 { | 59 { |
60 LD_PLUGIN_API_VERSION = 1 | 60 LD_PLUGIN_API_VERSION = 1 |
61 }; | 61 }; |
62 | 62 |
63 /* The type of output file being generated by the linker. */ | 63 /* The type of output file being generated by the linker. */ |
64 | 64 |
65 enum ld_plugin_output_file_type | 65 enum ld_plugin_output_file_type |
66 { | 66 { |
67 LDPO_REL, | 67 LDPO_REL, |
68 LDPO_EXEC, | 68 LDPO_EXEC, |
69 LDPO_DYN | 69 LDPO_DYN, |
| 70 LDPO_PIE |
70 }; | 71 }; |
71 | 72 |
72 /* An input file managed by the plugin library. */ | 73 /* An input file managed by the plugin library. */ |
73 | 74 |
74 struct ld_plugin_input_file | 75 struct ld_plugin_input_file |
75 { | 76 { |
76 const char *name; | 77 const char *name; |
77 int fd; | 78 int fd; |
78 off_t offset; | 79 off_t offset; |
79 off_t filesize; | 80 off_t filesize; |
(...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
391 | 392 |
392 typedef | 393 typedef |
393 enum ld_plugin_status | 394 enum ld_plugin_status |
394 (*ld_plugin_onload) (struct ld_plugin_tv *tv); | 395 (*ld_plugin_onload) (struct ld_plugin_tv *tv); |
395 | 396 |
396 #ifdef __cplusplus | 397 #ifdef __cplusplus |
397 } | 398 } |
398 #endif | 399 #endif |
399 | 400 |
400 #endif /* !defined(PLUGIN_API_H) */ | 401 #endif /* !defined(PLUGIN_API_H) */ |
OLD | NEW |