handle /ALTERNATENAME directive

This commit is contained in:
Nikita Smith authored and Ryan Fleury committed 2025-06-25 10:53:22 -07:00
1 parent 60d3f25057
commit 73fe9d223a
13 files changed
+142 -99

No files matched your search

+16 -6
View File
@@ -232,10 +232,23 @@ typedef enum
LNK_ManifestOpt_No,
} LNK_ManifestOpt;
typedef struct LNK_AltName
{
String8 from;
String8 to;
} LNK_AltName;
typedef struct LNK_AltNameNode
{
struct LNK_AltNameNode *next;
LNK_AltName data;
} LNK_AltNameNode;
typedef struct LNK_AltNameList
{
String8List from_list;
String8List to_list;
U64 count;
LNK_AltNameNode *first;
LNK_AltNameNode *last;
} LNK_AltNameList;
typedef struct LNK_MergeDirective
@@ -556,10 +569,7 @@ internal void lnk_cmd_switch_parse_string_copy(Arena *arena, String8 obj_path, S
////////////////////////////////
internal void lnk_alt_name_list_concat_in_place(LNK_AltNameList *list, LNK_AltNameList *to_concat);
internal B32 lnk_parse_alt_name_directive (Arena *arena, String8 input, LNK_AltNameList *list_out);
internal String8 * lnk_parse_alt_name_directive_list(Arena *arena, String8List list, LNK_AltNameList *list_out);
internal B32 lnk_parse_alt_name_directive(String8 input, LNK_AltName *alt_out);
internal B32 lnk_parse_export_directive_ex(Arena *arena, String8List directive, String8 obj_path, String8 lib_path, PE_ExportParse *export_out);
internal B32 lnk_parse_export_directive(Arena *arena, String8 directive, String8 obj_path, String8 lib_path, PE_ExportParse *export_out);