source: rtems-tools/linkers/rld-cc.h @ 7461924

4.104.115
Last change on this file since 7461924 was 7461924, checked in by Chris Johns <chrisj@…>, on Sep 17, 2012 at 12:13:55 AM

Rename rld-gcc. Add -C option.

Add a -C (also --cc) option to allow the CC to be used when linking to be
provided by the user rather than using the path. This support allows user
who work with the full path to tools rather than the environment to make
use of the linker without them needing to play with environment table.

Rename rld-gcc.[h.cpp] to rld-cc.[h,cpp] because gcc may not be the
only compiler/linker used by the RTEMS project.

  • Property mode set to 100644
File size: 1.9 KB
Line 
1/*
2 * Copyright (c) 2011-2012, Chris Johns <chrisj@rtems.org>
3 *
4 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 */
16/**
17 * @file
18 *
19 * @ingroup rtems-ld
20 *
21 * @brief Various calls to CC.
22 *
23 */
24
25#if !defined (_RLD_CC_H_)
26#define _RLD_CC_H_
27
28#include <string>
29
30#include <rld-files.h>
31
32namespace rld
33{
34  namespace cc
35  {
36    extern std::string cc;             //< The CC executable.
37    extern std::string exec_prefix;    //< The CC executable prefix.
38    extern std::string march;          //< The CC machine architecture.
39    extern std::string mcpu;           //< The CC machine CPU.
40
41    extern std::string install_path;   //< The CC reported install path.
42    extern std::string programs_path;  //< The CC reported programs path.
43    extern std::string libraries_path; //< The CC reported libraries path.
44
45    /**
46     * Get the standard libraries paths from the compiler.
47     */
48    void get_standard_libpaths (rld::files::paths& libpaths);
49
50    /**
51     * Get the standard libraries. Optionally add the C++ library.
52     */
53    void get_standard_libs (rld::files::paths& libs,
54                            rld::files::paths& libpaths,
55                            bool               cpp = false);
56
57  }
58}
59
60#endif
Note: See TracBrowser for help on using the repository browser.