Changeset 8f2eca0 in mainline


Ignore:
Timestamp:
2013-07-25T10:51:36Z (11 years ago)
Author:
Vojtech Horky <vojtechhorky@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
98f7830
Parents:
f03c3da
Message:

Add support for *-helenos-* toolchain

Files:
5 edited

Legend:

Unmodified
Added
Removed
  • HelenOS.config

    rf03c3da r8f2eca0  
    291291@ "gcc_cross" GNU C Compiler (cross-compiler)
    292292@ "gcc_native" GNU C Compiler (native)
     293@ "gcc_helenos" GNU C Compiler (HelenOS-specific cross-compiler)
    293294@ "icc" Intel C Compiler
    294295@ "clang" Clang
     
    299300@ "gcc_native" GNU C Compiler (native)
    300301@ "icc" Intel C Compiler
     302@ "gcc_helenos" GNU C Compiler (HelenOS-specific cross-compiler)
    301303! [PLATFORM=ia64] COMPILER (choice)
    302304
     
    304306@ "gcc_cross" GNU C Compiler (cross-compiler)
    305307@ "gcc_native" GNU C Compiler (native)
     308@ "gcc_helenos" GNU C Compiler (HelenOS-specific cross-compiler)
    306309! [PLATFORM=mips32|PLATFORM=mips64|PLATFORM=ppc32] COMPILER (choice)
    307310
     
    309312@ "gcc_cross" GNU C Compiler (cross-compiler)
    310313@ "gcc_native" GNU C Compiler (native)
     314@ "gcc_helenos" GNU C Compiler (HelenOS-specific cross-compiler)
    311315@ "clang" Clang
    312316! [PLATFORM=abs32le|PLATFORM=arm32|PLATFORM=sparc64] COMPILER (choice)
     
    319323@ "ia32" Intel IA-32
    320324@ "mips32" MIPS 32-bit
    321 ! [PLATFORM=abs32le&COMPILER=gcc_cross] CROSS_TARGET (choice)
     325! [PLATFORM=abs32le&(COMPILER=gcc_cross|COMPILER=gcc_helenos)] CROSS_TARGET (choice)
    322326
    323327
  • boot/Makefile.build

    rf03c3da r8f2eca0  
    7575endif
    7676
     77ifeq ($(COMPILER),gcc_helenos)
     78        CFLAGS = $(GCC_CFLAGS) $(EXTRA_CFLAGS)
     79        DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
     80endif
     81
     82
    7783ifeq ($(COMPILER),icc)
    7884        CFLAGS = $(ICC_CFLAGS) $(EXTRA_CFLAGS)
  • kernel/Makefile

    rf03c3da r8f2eca0  
    167167
    168168ifeq ($(COMPILER),gcc_cross)
     169        CFLAGS = $(GCC_CFLAGS)
     170        DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
     171        INSTRUMENTATION = -finstrument-functions
     172endif
     173
     174ifeq ($(COMPILER),gcc_helenos)
    169175        CFLAGS = $(GCC_CFLAGS)
    170176        DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
  • tools/autotool.py

    rf03c3da r8f2eca0  
    186186        gnu_target = None
    187187        clang_target = None
     188        helenos_target = None
    188189        cc_args = []
    189190       
     
    195196                        gnu_target = "arm-linux-gnueabi"
    196197                        clang_target = "arm-unknown-linux"
     198                        helenos_target = "arm-helenos-gnueabi"
    197199               
    198200                if (config['CROSS_TARGET'] == "ia32"):
    199201                        gnu_target = "i686-pc-linux-gnu"
    200202                        clang_target = "i386-unknown-linux"
     203                        helenos_target = "i686-pc-helenos"
    201204               
    202205                if (config['CROSS_TARGET'] == "mips32"):
    203206                        gnu_target = "mipsel-linux-gnu"
    204207                        clang_target = "mipsel-unknown-linux"
     208                        helenos_target = "mipsel-helenos"
    205209                        common['CC_ARGS'].append("-mabi=32")
    206210       
     
    209213                gnu_target = "amd64-linux-gnu"
    210214                clang_target = "x86_64-unknown-linux"
     215                helenos_target = "amd64-helenos"
    211216       
    212217        if (config['PLATFORM'] == "arm32"):
     
    214219                gnu_target = "arm-linux-gnueabi"
    215220                clang_target = "arm-unknown-linux"
     221                helenos_target = "arm-helenos-gnueabi"
    216222       
    217223        if (config['PLATFORM'] == "ia32"):
     
    219225                gnu_target = "i686-pc-linux-gnu"
    220226                clang_target = "i386-unknown-linux"
     227                helenos_target = "i686-pc-helenos"
    221228       
    222229        if (config['PLATFORM'] == "ia64"):
    223230                target = config['PLATFORM']
    224231                gnu_target = "ia64-pc-linux-gnu"
     232                helenos_target = "ia64-pc-helenos"
    225233       
    226234        if (config['PLATFORM'] == "mips32"):
     
    232240                        gnu_target = "mipsel-linux-gnu"
    233241                        clang_target = "mipsel-unknown-linux"
     242                        helenos_target = "mipsel-helenos"
    234243               
    235244                if ((config['MACHINE'] == "bmalta")):
     
    237246                        gnu_target = "mips-linux-gnu"
    238247                        clang_target = "mips-unknown-linux"
     248                        helenos_target = "mips-helenos"
    239249       
    240250        if (config['PLATFORM'] == "mips64"):
     
    246256                        gnu_target = "mips64el-linux-gnu"
    247257                        clang_target = "mips64el-unknown-linux"
     258                        helenos_target = "mips64el-helenos"
    248259       
    249260        if (config['PLATFORM'] == "ppc32"):
     
    251262                gnu_target = "ppc-linux-gnu"
    252263                clang_target = "powerpc-unknown-linux"
     264                helenos_target = "ppc-helenos"
    253265       
    254266        if (config['PLATFORM'] == "sparc64"):
     
    256268                gnu_target = "sparc64-linux-gnu"
    257269                clang_target = "sparc-unknown-linux"
    258        
    259         return (target, cc_args, gnu_target, clang_target)
     270                helenos_target = "sparc64-helenos"
     271       
     272        return (target, cc_args, gnu_target, clang_target, helenos_target)
    260273
    261274def check_app(args, name, details):
     
    697710                cross_prefix = "/usr/local/cross"
    698711       
     712        # HelenOS cross-compiler prefix
     713        if ('CROSS_HELENOS_PREFIX' in os.environ):
     714                cross_helenos_prefix = os.environ['CROSS_HELENOS_PREFIX']
     715        else:
     716                cross_helenos_prefix = "/usr/local/cross-helenos"
     717       
    699718        # Prefix binutils tools on Solaris
    700719        if (os.uname()[0] == "SunOS"):
     
    719738                common['CC_ARGS'] = []
    720739                if (config['COMPILER'] == "gcc_cross"):
    721                         target, cc_args, gnu_target, clang_target = get_target(config)
     740                        target, cc_args, gnu_target, clang_target, helenos_target = get_target(config)
    722741                       
    723742                        if (target is None) or (gnu_target is None):
     
    727746                        path = "%s/%s/bin" % (cross_prefix, target)
    728747                        prefix = "%s-" % gnu_target
     748                       
     749                        check_gcc(path, prefix, common, PACKAGE_CROSS)
     750                        check_binutils(path, prefix, common, PACKAGE_CROSS)
     751                       
     752                        check_common(common, "GCC")
     753                        common['CC'] = common['GCC']
     754                        common['CC_ARGS'].extend(cc_args)
     755               
     756                if (config['COMPILER'] == "gcc_helenos"):
     757                        target, cc_args, gnu_target, clang_target, helenos_target = get_target(config)
     758                       
     759                        if (target is None) or (helenos_target is None):
     760                                print_error(["Unsupported compiler target for GNU GCC.",
     761                                             "Please contact the developers of HelenOS."])
     762                       
     763                        path = "%s/%s/bin" % (cross_helenos_prefix, target)
     764                        prefix = "%s-" % helenos_target
    729765                       
    730766                        check_gcc(path, prefix, common, PACKAGE_CROSS)
  • uspace/Makefile.common

    rf03c3da r8f2eca0  
    243243endif
    244244
     245ifeq ($(COMPILER),gcc_helenos)
     246        CFLAGS += $(GCC_CFLAGS) $(EXTRA_CFLAGS)
     247        DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
     248endif
     249
    245250ifeq ($(COMPILER),gcc_native)
    246251        CFLAGS += $(GCC_CFLAGS) $(EXTRA_CFLAGS)
Note: See TracChangeset for help on using the changeset viewer.