~ubuntu-branches/ubuntu/utopic/binutils-arm64-cross/utopic

« back to all changes in this revision

Viewing changes to binutils-2.23.52.20130611/ld/emultempl/rxelf.em

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2013-06-20 17:38:09 UTC
  • Revision ID: package-import@ubuntu.com-20130620173809-app8lzgvymy5fg6c
Tags: 0.7
Build-depend on binutils-source (>= 2.23.52.20130620-1~).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# This shell script emits a C file. -*- C -*-
 
2
#   Copyright 2009, 2011  Free Software Foundation, Inc.
 
3
#
 
4
# This file is part of the GNU Binutils.
 
5
#
 
6
# This program is free software; you can redistribute it and/or modify
 
7
# it under the terms of the GNU General Public License as published by
 
8
# the Free Software Foundation; either version 3 of the License, or
 
9
# (at your option) any later version.
 
10
#
 
11
# This program is distributed in the hope that it will be useful,
 
12
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 
13
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
14
# GNU General Public License for more details.
 
15
#
 
16
# You should have received a copy of the GNU General Public License
 
17
# along with this program; if not, write to the Free Software
 
18
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
 
19
# MA 02110-1301, USA.
 
20
#
 
21
 
 
22
# This file is sourced from elf32.em, and defines extra rx-elf
 
23
# specific routines.
 
24
#
 
25
test -z "$TARGET2_TYPE" && TARGET2_TYPE="rel"
 
26
fragment <<EOF
 
27
 
 
28
static bfd_boolean no_flag_mismatch_warnings = TRUE;
 
29
static bfd_boolean ignore_lma = TRUE;
 
30
 
 
31
/* This is a convenient point to tell BFD about target specific flags.
 
32
   After the output has been created, but before inputs are read.  */
 
33
static void
 
34
rx_elf_create_output_section_statements (void)
 
35
{
 
36
  extern void bfd_elf32_rx_set_target_flags (bfd_boolean, bfd_boolean);
 
37
 
 
38
  bfd_elf32_rx_set_target_flags (no_flag_mismatch_warnings, ignore_lma);
 
39
}
 
40
 
 
41
EOF
 
42
 
 
43
# Define some shell vars to insert bits of code into the standard elf
 
44
# parse_args and list_options functions.
 
45
#
 
46
PARSE_AND_LIST_PROLOGUE='
 
47
#define OPTION_NO_FLAG_MISMATCH_WARNINGS        301
 
48
#define OPTION_IGNORE_LMA                       302
 
49
#define OPTION_NO_IGNORE_LMA                    303
 
50
#define OPTION_FLAG_MISMATCH_WARNINGS           304
 
51
'
 
52
 
 
53
PARSE_AND_LIST_LONGOPTS='
 
54
  { "no-flag-mismatch-warnings", no_argument, NULL, OPTION_NO_FLAG_MISMATCH_WARNINGS},
 
55
  { "flag-mismatch-warnings", no_argument, NULL, OPTION_FLAG_MISMATCH_WARNINGS},
 
56
  { "ignore-lma", no_argument, NULL, OPTION_IGNORE_LMA},
 
57
  { "no-ignore-lma", no_argument, NULL, OPTION_NO_IGNORE_LMA},
 
58
'
 
59
 
 
60
PARSE_AND_LIST_OPTIONS='
 
61
  fprintf (file, _("  --no-flag-mismatch-warnings Don'\''t warn about objects with incompatible\n"
 
62
                   "                                endian or dsp settings\n"));
 
63
  fprintf (file, _("  --flag-mismatch-warnings    Warn about objects with incompatible\n"
 
64
                   "                                endian, dsp or ABI settings\n"));
 
65
  fprintf (file, _("  --ignore-lma                Ignore segment LMAs [default]\n"
 
66
                   "                                (for Renesas Tools compatibility)\n"));
 
67
  fprintf (file, _("  --no-ignore-lma             Don'\''t ignore segment LMAs\n"));
 
68
'
 
69
 
 
70
PARSE_AND_LIST_ARGS_CASES='
 
71
    case OPTION_NO_FLAG_MISMATCH_WARNINGS:
 
72
      no_flag_mismatch_warnings = TRUE;
 
73
      break;
 
74
 
 
75
    case OPTION_FLAG_MISMATCH_WARNINGS:
 
76
      no_flag_mismatch_warnings = FALSE;
 
77
      break;
 
78
 
 
79
    case OPTION_IGNORE_LMA:
 
80
      ignore_lma = TRUE;
 
81
      break;
 
82
 
 
83
    case OPTION_NO_IGNORE_LMA:
 
84
      ignore_lma = FALSE;
 
85
      break;
 
86
'
 
87
 
 
88
LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS=rx_elf_create_output_section_statements