Changeset 31bf375 in rtems-tools


Ignore:
Timestamp:
Sep 5, 2014, 8:18:11 AM (5 years ago)
Author:
Chris Johns <chrisj@…>
Branches:
4.10, 4.11, master
Children:
b233be7
Parents:
7ccb670
Message:

Remove march/mcpu and add RTEMS BSP and cflags support.

Location:
linkers
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • linkers/rtems-ld.cpp

    r7ccb670 r31bf375  
    4343#include <rld-process.h>
    4444#include <rld-resolver.h>
     45#include <rld-rtems.h>
    4546
    4647#ifndef HAVE_KILL
     
    7475  { "runtime-lib", required_argument,      NULL,           'P' },
    7576  { "one-file",    no_argument,            NULL,           's' },
     77  { "rtems",       required_argument,      NULL,           'r' },
     78  { "rtems-bsp",   required_argument,      NULL,           'B' },
    7679  { NULL,          0,                      NULL,            0 }
    7780};
     
    118121            << " -s        : Include archive elf object files (also --one-file)" << std::endl
    119122            << " -Wl,opts  : link compatible flags, ignored" << std::endl
     123            << " -r path   : RTEMS path (also --rtems)" << std::endl
     124            << " -B bsp    : RTEMS arch/bsp (also --rtems-bsp)" << std::endl
    120125            << "Output Formats:" << std::endl
    121126            << " rap     - RTEMS application (LZ77, single image)" << std::endl
     
    193198    bool                 warnings = false;
    194199    bool                 one_file = false;
     200    bool                 arch_bsp_load = false;
    195201
    196202    libpaths.push_back (".");
     
    198204    while (true)
    199205    {
    200       int opt = ::getopt_long (argc, argv, "hvwVMnsSb:E:o:O:L:l:c:e:d:u:C:W:R:P:", rld_opts, NULL);
     206      int opt = ::getopt_long (argc, argv, "hvwVMnsSb:E:o:O:L:l:c:e:d:u:C:W:R:P:r:B:", rld_opts, NULL);
    201207      if (opt < 0)
    202208        break;
     
    306312          break;
    307313
     314        case 'r':
     315          rld::rtems::path = optarg;
     316          break;
     317
     318        case 'B':
     319          rld::rtems::arch_bsp = optarg;
     320          arch_bsp_load = true;
     321          break;
     322
    308323        case '?':
    309324          usage (3);
     
    336351        (output_type != "archive"))
    337352      throw rld::error ("invalid output format", "options");
     353
     354    /*
     355     * Load the arch/bsp value if provided.
     356     */
     357    if (arch_bsp_load)
     358      rld::rtems::load_cc ();
    338359
    339360    /*
  • linkers/rtems-tld.cpp

    r7ccb670 r31bf375  
    4646#include <rld-config.h>
    4747#include <rld-process.h>
     48#include <rld-rtems.h>
    4849
    4950#ifndef HAVE_KILL
     
    738739  { "keep",        no_argument,            NULL,           'k' },
    739740  { "exec-prefix", required_argument,      NULL,           'E' },
    740   { "march",       required_argument,      NULL,           'a' },
    741   { "mcpu",        required_argument,      NULL,           'c' },
     741  { "cflags",      required_argument,      NULL,           'c' },
     742  { "rtems",       required_argument,      NULL,           'r' },
     743  { "rtems-bsp",   required_argument,      NULL,           'B' },
    742744  { "config",      required_argument,      NULL,           'C' },
    743745  { NULL,          0,                      NULL,            0 }
     
    757759            << " -E prefix : the RTEMS tool prefix (also --exec-prefix)" << std::endl
    758760            << " -c cflags : C compiler flags (also --cflags)" << std::endl
     761            << " -r path   : RTEMS path (also --rtems)" << std::endl
     762            << " -B bsp    : RTEMS arch/bsp (also --rtems-bsp)" << std::endl
    759763            << " -C ini    : user configuration INI file (also --config)" << std::endl;
    760764  ::exit (exit_code);
     
    809813    std::string        trace = "tracer";
    810814    bool               exec_prefix_set = false;
    811 #if HAVE_WARNINGS
    812     bool               warnings = false;
    813 #endif
     815    bool               arch_bsp_load = false;
    814816
    815817    while (true)
    816818    {
    817       int opt = ::getopt_long (argc, argv, "hvwkVE:c:C:", rld_opts, NULL);
     819      int opt = ::getopt_long (argc, argv, "hvwkVE:c:C:r:B:", rld_opts, NULL);
    818820      if (opt < 0)
    819821        break;
     
    850852          break;
    851853
     854        case 'r':
     855          rld::rtems::path = optarg;
     856          break;
     857
     858        case 'B':
     859          rld::rtems::arch_bsp = optarg;
     860          arch_bsp_load = true;
     861          break;
     862
    852863        case 'C':
    853864          configuration = optarg;
     
    869880    if (rld::verbose ())
    870881      std::cout << "RTEMS Trace Linker " << rld::version () << std::endl;
     882
     883    /*
     884     * Load the arch/bsp value if provided.
     885     */
     886    if (arch_bsp_load)
     887      rld::rtems::load_cc ();
    871888
    872889    /*
  • linkers/wscript

    r7ccb670 r31bf375  
    9595    #
    9696    rld_source = ['ConvertUTF.c',
     97                  'pkgconfig.cpp',
    9798                  'rld-config.cpp',
    9899                  'rld-elf.cpp',
     
    104105                  'rld-process.cpp',
    105106                  'rld-resolver.cpp',
     107                  'rld-rtems.cpp',
    106108                  'rld-symbols.cpp',
    107109                  'rld-rap.cpp',
     
    133135    #
    134136    bld.program(target = 'rtems-ld',
    135                 source = ['rtems-ld.cpp', 'pkgconfig.cpp'],
     137                source = ['rtems-ld.cpp'],
    136138                defines = ['HAVE_CONFIG_H=1', 'RTEMS_VERSION=' + bld.env.RTEMS_VERSION],
    137139                includes = ['.'] + bld.includes,
     
    145147    #
    146148    bld.program(target = 'rtems-ra',
    147                 source = ['rtems-ra.cpp', 'pkgconfig.cpp'],
     149                source = ['rtems-ra.cpp'],
    148150                defines = ['HAVE_CONFIG_H=1', 'RTEMS_VERSION=' + bld.env.RTEMS_VERSION],
    149151                includes = ['.'] + bld.includes,
Note: See TracChangeset for help on using the changeset viewer.