ld/
[deliverable/binutils-gdb.git] / ld / emultempl / vxworks.em
CommitLineData
4f471f39
RS
1if test -n "$VXWORKS_BASE_EM_FILE" ; then
2. "${srcdir}/emultempl/${VXWORKS_BASE_EM_FILE}.em"
3fi
4
5cat >>e${EMULATION_NAME}.c <<EOF
6
7static int force_dynamic;
8
9static void
10vxworks_after_open (void)
11{
12 ${LDEMUL_AFTER_OPEN-gld${EMULATION_NAME}_after_open} ();
13
14 if (force_dynamic
15 && link_info.input_bfds
55e6e397 16 && output_bfd->xvec->flavour == bfd_target_elf_flavour
4f471f39
RS
17 && !_bfd_elf_link_create_dynamic_sections (link_info.input_bfds,
18 &link_info))
19 einfo ("%X%P: Cannot create dynamic sections %E\n");
20
21 if (!force_dynamic
22 && !link_info.shared
55e6e397 23 && output_bfd->xvec->flavour == bfd_target_elf_flavour
4f471f39
RS
24 && elf_hash_table (&link_info)->dynamic_sections_created)
25 einfo ("%X%P: Dynamic sections created in non-dynamic link\n");
26}
27
28EOF
29
30PARSE_AND_LIST_PROLOGUE=$PARSE_AND_LIST_PROLOGUE'
31enum {
32 OPTION_FORCE_DYNAMIC = 501
33};
34'
35
36PARSE_AND_LIST_LONGOPTS=$PARSE_AND_LIST_LONGOPTS'
37 {"force-dynamic", no_argument, NULL, OPTION_FORCE_DYNAMIC},
38'
39
40PARSE_AND_LIST_OPTIONS=$PARSE_AND_LIST_OPTIONS'
41 fprintf (file, _("\
42 --force-dynamic Always create dynamic sections\n"));
43'
44
45PARSE_AND_LIST_ARGS_CASES=$PARSE_AND_LIST_ARGS_CASES'
46 case OPTION_FORCE_DYNAMIC:
47 force_dynamic = 1;
48 break;
49'
50
51LDEMUL_AFTER_OPEN=vxworks_after_open
This page took 0.060767 seconds and 4 git commands to generate.