changeset 2908:176273e40559

Default to gcc -m32 when building synth on a 64-bit box.
author bartv
date Sun, 23 Aug 2009 11:45:12 +0000
parents 346d39396846
children 3e777a018dc7
files packages/hal/synth/i386linux/current/ChangeLog packages/hal/synth/i386linux/current/cdl/hal_synth_i386.cdl
diffstat 2 files changed, 27 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/packages/hal/synth/i386linux/current/ChangeLog
+++ b/packages/hal/synth/i386linux/current/ChangeLog
@@ -7,6 +7,15 @@ 2009-08-11  Bart Veer  <bartv@ecoscentri
 	include/pkgconf/mlt_synth_i386_rom.ldi, src/vectors.s: add TLS
 	support.
 
+2009-07-14  Bart Veer  <bartv@ecoscentric.com>
+
+	* cdl/hal_synth_i386.cdl: when building on x86_64 machines, use
+	gcc -m32 instead of i686-pc-linux-gnu.
+
+2009-07-09  Bart Veer  <bartv@ecoscentric.com>
+
+	* src/syscall-i386-linux-1.0.S: add rename() system call.
+
 2009-01-31  Bart Veer <bartv@ecoscentric.com>
 
 	* cdl/hal_synth_i386.cdl: update compiler flags for gcc 4.x
--- a/packages/hal/synth/i386linux/current/cdl/hal_synth_i386.cdl
+++ b/packages/hal/synth/i386linux/current/cdl/hal_synth_i386.cdl
@@ -8,7 +8,7 @@
 ## ####ECOSGPLCOPYRIGHTBEGIN####                                            
 ## -------------------------------------------                              
 ## This file is part of eCos, the Embedded Configurable Operating System.   
-## Copyright (C) 1998, 1999, 2000, 2001, 2002, 2005 Free Software Foundation, Inc.
+## Copyright (C) 1998, 1999, 2000, 2001, 2002, 2005, 2009 Free Software Foundation, Inc.
 ##
 ## eCos is free software; you can redistribute it and/or modify it under    
 ## the terms of the GNU General Public License as published by the Free     
@@ -104,11 +104,13 @@ cdl_package CYGPKG_HAL_SYNTH_I386 {
             display "Global command prefix"
             flavor  data
             no_define
-	    if { ($tcl_platform(os) == "Linux") && [string match "i*86" $tcl_platform(machine)] } {
-		default_value { "" }
-	    } else {
-		default_value { "i686-pc-linux-gnu" }
-	    }
+            if { ($tcl_platform(os) == "Linux") && [string match "i*86" $tcl_platform(machine)] } {
+                default_value { "" }
+            } elseif { ($tcl_platform(os) == "Linux") && [string equal "x86_64" $tcl_platform(machine)] } {
+                default_value { "" }
+            } else {
+                default_value { "i686-pc-linux-gnu" }
+            }
             description "
                 This option specifies the command prefix used when
                 invoking the build tools. You must be using gcc-2.95.2 or
@@ -120,7 +122,11 @@ cdl_package CYGPKG_HAL_SYNTH_I386 {
             display "Global compiler flags"
             flavor  data
             no_define
-            default_value { CYGBLD_GLOBAL_WARNFLAGS . " -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions " }
+            if { ($tcl_platform(os) == "Linux") && [string equal "x86_64" $tcl_platform(machine)] } {
+                default_value { CYGBLD_GLOBAL_WARNFLAGS . " -m32 -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions " }
+            } else {
+                default_value { CYGBLD_GLOBAL_WARNFLAGS . " -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions " }
+            }
             description   "
                 This option controls the global compiler flags which
                 are used to compile all packages by
@@ -132,7 +138,11 @@ cdl_package CYGPKG_HAL_SYNTH_I386 {
             display "Global linker flags"
             flavor  data
             no_define
-            default_value { "-g -nostdlib -Wl,--gc-sections -Wl,-static" }
+            if { ($tcl_platform(os) == "Linux") && [string equal "x86_64" $tcl_platform(machine)] } {
+                default_value { "-m32 -g -nostdlib -Wl,--gc-sections -Wl,-static" }
+            } else {
+                default_value { "-g -nostdlib -Wl,--gc-sections -Wl,-static" }
+            }
             description   "
                 This option controls the global linker flags. Individual
                 packages may define options which override these global flags."