1    /* 
     2     *  Copyright (c) 2008 Texas Instruments and others.
     3     *  All rights reserved. This program and the accompanying materials
     4     *  are made available under the terms of the Eclipse Public License v1.0
     5     *  which accompanies this distribution, and is available at
     6     *  http://www.eclipse.org/legal/epl-v10.html
     7     * 
     8     *  Contributors:
     9     *      Texas Instruments - initial implementation
    10     * 
    11     * */
    12    /*!
    13     *  ======== Mingw.xdc ========
    14     *  MinGW native Windows target
    15     *
    16     *  This module defines a native target for Windows using the mingw compiler.
    17     *
    18     *  The mingw compiler is a freely available (www.mingw.org) port of GCC that
    19     *  can build Windows compatible libraries, DLLs, and executables.
    20     */
    21    metaonly module Mingw inherits gnu.targets.ITarget {
    22        override readonly config string name                 = "Mingw";     
    23        override readonly config string os                   = "Windows";   
    24        override readonly config string suffix               = "86GW";
    25        override readonly config string isa                  = "x86";       
    26        override readonly config xdc.bld.ITarget.Model model = {
    27            endian: "little"
    28        };
    29    
    30        override readonly config string rts = "gnu.targets.rts86GW";
    31    
    32        override config string platform = "host.platforms.PC";
    33        
    34        override config string LONGNAME = "/bin/mingw32-gcc.exe";
    35    
    36        /*!
    37         *  ======== cmdPrefix ========
    38         *  Prefix to put in front of each command
    39         *
    40         *  This string is put in front of every Command before being passed to
    41         *  the shell for execution.  This string can be used to run the compiler
    42         *  in emulation environments.  
    43         */
    44        config String cmdPrefix = "";
    45        
    46        override config ITarget.Options ccOpts = {
    47            prefix: "-Wunused",
    48            suffix: "-Dfar= "
    49        };
    50    
    51        override config ITarget.Options lnkOpts = {
    52            prefix: "",
    53            suffix: "-lstdc++ -L$(rootDir)/lib"
    54        };
    55            
    56        override readonly config xdc.bld.ITarget.StdTypes stdTypes = {
    57            t_IArg          : { size: 4, align: 4 },
    58            t_Char          : { size: 1, align: 1 },
    59            t_Double        : { size: 8, align: 4 },
    60            t_Float         : { size: 4, align: 4 },
    61            t_Fxn           : { size: 4, align: 4 },
    62            t_Int           : { size: 4, align: 4 },
    63            t_Int8          : { size: 1, align: 1 },
    64            t_Int16         : { size: 2, align: 2 },
    65            t_Int32         : { size: 4, align: 4 },
    66            t_Int64         : { size: 8, align: 4 },
    67            t_Long          : { size: 4, align: 4 },
    68            t_LDouble       : { size: 12, align: 4 },
    69            t_LLong         : { size: 8, align: 4 },
    70            t_Ptr           : { size: 4, align: 4 },
    71            t_Short         : { size: 2, align: 2 },
    72        };
    73    }
    74    /*
    75     *  @(#) gnu.targets; 1, 0, 1,348; 10-5-2009 09:49:34; /db/atree/library/trees/xdctargets/xdctargets-b21x/src/
    76     */
    77