From 25d517877dd7725e67c2d094031a023c41ec6f05 Mon Sep 17 00:00:00 2001 From: gdisirio Date: Wed, 23 Apr 2008 08:36:16 +0000 Subject: [PATCH] git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@275 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- demos/ARM7-AT91SAM7X-GCC/Makefile | 9 ++++++--- demos/ARM7-AT91SAM7X-GCC/Makefile.thumb | 9 ++++++--- demos/ARM7-LPC214x-G++/Makefile | 12 ++++++++---- demos/ARM7-LPC214x-G++/Makefile.thumb | 12 ++++++++---- demos/ARM7-LPC214x-GCC-minimal/Makefile | 9 ++++++--- demos/ARM7-LPC214x-GCC-minimal/Makefile.thumb | 9 ++++++--- demos/ARM7-LPC214x-GCC/Makefile | 9 ++++++--- demos/ARM7-LPC214x-GCC/Makefile.thumb | 9 ++++++--- docs/Doxyfile | 2 +- docs/index.html | 2 +- readme.txt | 7 +++++++ 11 files changed, 61 insertions(+), 28 deletions(-) diff --git a/demos/ARM7-AT91SAM7X-GCC/Makefile b/demos/ARM7-AT91SAM7X-GCC/Makefile index ea39d57e2..6c6d8f783 100644 --- a/demos/ARM7-AT91SAM7X-GCC/Makefile +++ b/demos/ARM7-AT91SAM7X-GCC/Makefile @@ -101,7 +101,7 @@ TOPT = -mthumb -D THUMB # chconf.h. # NOTE: -falign-functions=16 may improve the performance, not always, but # increases the code size. -OPT = -O2 -ggdb -fomit-frame-pointer +OPT = -O2 -ggdb -fomit-frame-pointer -mabi=apcs-gnu #OPT += -ffixed-r7 #OPT += -falign-functions=16 @@ -138,10 +138,13 @@ ifneq ($(TSRC),) LDFLAGS += -mthumb-interwork else # Pure THUMB case, THUMB C code cannot be called by ARM asm code directly. - CPFLAGS += -D THUMB_NO_INTERWORKING - LDFLAGS += -mthumb + CPFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + LDFLAGS += -mno-thumb-interwork -mthumb ASFLAGS += -D THUMB_NO_INTERWORKING endif +else + CPFLAGS += -mno-thumb-interwork + LDFLAGS += -mno-thumb-interwork endif # Generate dependency information diff --git a/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb b/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb index 50883c63f..212886957 100644 --- a/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb +++ b/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb @@ -101,7 +101,7 @@ TOPT = -mthumb -D THUMB # chconf.h. # NOTE: -falign-functions=16 may improve the performance, not always, but # increases the code size. -OPT = -Os -ggdb -fomit-frame-pointer +OPT = -Os -ggdb -fomit-frame-pointer -mabi=apcs-gnu #OPT += -ffixed-r7 #OPT += -falign-functions=16 @@ -138,10 +138,13 @@ ifneq ($(TSRC),) LDFLAGS += -mthumb-interwork else # Pure THUMB case, THUMB C code cannot be called by ARM asm code directly. - CPFLAGS += -D THUMB_NO_INTERWORKING - LDFLAGS += -mthumb + CPFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + LDFLAGS += -mno-thumb-interwork -mthumb ASFLAGS += -D THUMB_NO_INTERWORKING endif +else + CPFLAGS += -mno-thumb-interwork + LDFLAGS += -mno-thumb-interwork endif # Generate dependency information diff --git a/demos/ARM7-LPC214x-G++/Makefile b/demos/ARM7-LPC214x-G++/Makefile index e05b79362..6c04023a8 100644 --- a/demos/ARM7-LPC214x-G++/Makefile +++ b/demos/ARM7-LPC214x-G++/Makefile @@ -111,7 +111,7 @@ TOPT = -mthumb -D THUMB # chconf.h. # NOTE: -falign-functions=16 may improve the performance, not always, but # increases the code size. -OPT = -O2 -ggdb -fomit-frame-pointer +OPT = -O2 -ggdb -fomit-frame-pointer -mabi=apcs-gnu #OPT += -ffixed-r7 OPT += -falign-functions=16 @@ -161,11 +161,15 @@ ifneq ($(TSRC),) LDFLAGS += -mthumb-interwork else # Pure THUMB case, THUMB C code cannot be called by ARM asm code directly. - CFLAGS += -D THUMB_NO_INTERWORKING - CPPFLAGS += -D THUMB_NO_INTERWORKING - LDFLAGS += -mthumb + CFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + CPPFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + LDFLAGS += -mno-thumb-interwork -mthumb ASFLAGS += -D THUMB_NO_INTERWORKING endif +else + CPFLAGS += -mno-thumb-interwork + CPPFLAGS += -mno-thumb-interwork + LDFLAGS += -mno-thumb-interwork endif # Generate dependency information diff --git a/demos/ARM7-LPC214x-G++/Makefile.thumb b/demos/ARM7-LPC214x-G++/Makefile.thumb index 16ab4d33f..9171d2b72 100644 --- a/demos/ARM7-LPC214x-G++/Makefile.thumb +++ b/demos/ARM7-LPC214x-G++/Makefile.thumb @@ -111,7 +111,7 @@ TOPT = -mthumb -D THUMB # chconf.h. # NOTE: -falign-functions=16 may improve the performance, not always, but # increases the code size. -OPT = -O2 -ggdb -fomit-frame-pointer +OPT = -O2 -ggdb -fomit-frame-pointer -mabi=apcs-gnu #OPT += -ffixed-r7 OPT += -falign-functions=16 @@ -161,11 +161,15 @@ ifneq ($(TSRC),) LDFLAGS += -mthumb-interwork else # Pure THUMB case, THUMB C code cannot be called by ARM asm code directly. - CFLAGS += -D THUMB_NO_INTERWORKING - CPPFLAGS += -D THUMB_NO_INTERWORKING - LDFLAGS += -mthumb + CFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + CPPFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + LDFLAGS += -mno-thumb-interwork -mthumb ASFLAGS += -D THUMB_NO_INTERWORKING endif +else + CPFLAGS += -mno-thumb-interwork + CPPFLAGS += -mno-thumb-interwork + LDFLAGS += -mno-thumb-interwork endif # Generate dependency information diff --git a/demos/ARM7-LPC214x-GCC-minimal/Makefile b/demos/ARM7-LPC214x-GCC-minimal/Makefile index 7d7e8874c..fc941b4ce 100644 --- a/demos/ARM7-LPC214x-GCC-minimal/Makefile +++ b/demos/ARM7-LPC214x-GCC-minimal/Makefile @@ -99,7 +99,7 @@ TOPT = -mthumb -D THUMB # chconf.h. # NOTE: -falign-functions=16 may improve the performance, not always, but # increases the code size. -OPT = -O2 -ggdb -fomit-frame-pointer +OPT = -O2 -ggdb -fomit-frame-pointer -mabi=apcs-gnu #OPT += -ffixed-r7 OPT += -falign-functions=16 @@ -136,10 +136,13 @@ ifneq ($(TSRC),) LDFLAGS += -mthumb-interwork else # Pure THUMB case, THUMB C code cannot be called by ARM asm code directly. - CPFLAGS += -D THUMB_NO_INTERWORKING - LDFLAGS += -mthumb + CPFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + LDFLAGS += -mno-thumb-interwork -mthumb ASFLAGS += -D THUMB_NO_INTERWORKING endif +else + CPFLAGS += -mno-thumb-interwork + LDFLAGS += -mno-thumb-interwork endif # Generate dependency information diff --git a/demos/ARM7-LPC214x-GCC-minimal/Makefile.thumb b/demos/ARM7-LPC214x-GCC-minimal/Makefile.thumb index 0df66f2d3..95cb19000 100644 --- a/demos/ARM7-LPC214x-GCC-minimal/Makefile.thumb +++ b/demos/ARM7-LPC214x-GCC-minimal/Makefile.thumb @@ -99,7 +99,7 @@ TOPT = -mthumb -D THUMB # chconf.h. # NOTE: -falign-functions=16 may improve the performance, not always, but # increases the code size. -OPT = -Os -ggdb -fomit-frame-pointer +OPT = -Os -ggdb -fomit-frame-pointer -mabi=apcs-gnu #OPT += -ffixed-r7 OPT += -falign-functions=16 @@ -136,10 +136,13 @@ ifneq ($(TSRC),) LDFLAGS += -mthumb-interwork else # Pure THUMB case, THUMB C code cannot be called by ARM asm code directly. - CPFLAGS += -D THUMB_NO_INTERWORKING - LDFLAGS += -mthumb + CPFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + LDFLAGS += -mno-thumb-interwork -mthumb ASFLAGS += -D THUMB_NO_INTERWORKING endif +else + CPFLAGS += -mno-thumb-interwork + LDFLAGS += -mno-thumb-interwork endif # Generate dependency information diff --git a/demos/ARM7-LPC214x-GCC/Makefile b/demos/ARM7-LPC214x-GCC/Makefile index 32f08943e..88d64b911 100644 --- a/demos/ARM7-LPC214x-GCC/Makefile +++ b/demos/ARM7-LPC214x-GCC/Makefile @@ -102,7 +102,7 @@ TOPT = -mthumb -D THUMB # chconf.h. # NOTE: -falign-functions=16 may improve the performance, not always, but # increases the code size. -OPT = -O2 -ggdb -fomit-frame-pointer +OPT = -O2 -ggdb -fomit-frame-pointer -mabi=apcs-gnu #OPT += -ffixed-r7 OPT += -falign-functions=16 @@ -139,10 +139,13 @@ ifneq ($(TSRC),) LDFLAGS += -mthumb-interwork else # Pure THUMB case, THUMB C code cannot be called by ARM asm code directly. - CPFLAGS += -D THUMB_NO_INTERWORKING - LDFLAGS += -mthumb + CPFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + LDFLAGS += -mno-thumb-interwork -mthumb ASFLAGS += -D THUMB_NO_INTERWORKING endif +else + CPFLAGS += -mno-thumb-interwork + LDFLAGS += -mno-thumb-interwork endif # Generate dependency information diff --git a/demos/ARM7-LPC214x-GCC/Makefile.thumb b/demos/ARM7-LPC214x-GCC/Makefile.thumb index a8840a293..3c8ba1947 100644 --- a/demos/ARM7-LPC214x-GCC/Makefile.thumb +++ b/demos/ARM7-LPC214x-GCC/Makefile.thumb @@ -102,7 +102,7 @@ TOPT = -mthumb -D THUMB # chconf.h. # NOTE: -falign-functions=16 may improve the performance, not always, but # increases the code size. -OPT = -Os -ggdb -fomit-frame-pointer -fno-strict-aliasing +OPT = -Os -ggdb -fomit-frame-pointer -mabi=apcs-gnu #OPT += -ffixed-r7 OPT += -falign-functions=16 @@ -139,10 +139,13 @@ ifneq ($(TSRC),) LDFLAGS += -mthumb-interwork else # Pure THUMB case, THUMB C code cannot be called by ARM asm code directly. - CPFLAGS += -D THUMB_NO_INTERWORKING - LDFLAGS += -mthumb + CPFLAGS += -mno-thumb-interwork -D THUMB_NO_INTERWORKING + LDFLAGS += -mno-thumb-interwork -mthumb ASFLAGS += -D THUMB_NO_INTERWORKING endif +else + CPFLAGS += -mno-thumb-interwork + LDFLAGS += -mno-thumb-interwork endif # Generate dependency information diff --git a/docs/Doxyfile b/docs/Doxyfile index 19c35725c..54a57935d 100644 --- a/docs/Doxyfile +++ b/docs/Doxyfile @@ -4,7 +4,7 @@ # Project related configuration options #--------------------------------------------------------------------------- PROJECT_NAME = ChibiOS/RT -PROJECT_NUMBER = "0.6.3 beta" +PROJECT_NUMBER = "0.6.4 beta" OUTPUT_DIRECTORY = . CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English diff --git a/docs/index.html b/docs/index.html index b4655bb54..a7d34bc95 100644 --- a/docs/index.html +++ b/docs/index.html @@ -12,7 +12,7 @@ Current -Version 0.6.3
+Version 0.6.4
-
Project on SourceForge
Documentation
diff --git a/readme.txt b/readme.txt index 90bc7307d..102b321c6 100644 --- a/readme.txt +++ b/readme.txt @@ -62,6 +62,13 @@ Win32-MinGW - ChibiOS/RT simulator and demo into a WIN32 process, *** Releases *** ***************************************************************************** +*** 0.6.4 *** +- Modified the ARM demos makefiles in order to make them more compatible with + GCC 4.3.0, it seems the new GCC assumes -mthumb-interworking and -mabi=apcs + by default, now the makefiles explictly assert -mno-thumb-interworking and + -mabi=apcs-gnu in order to produce better code. CodeSourcery's compilers + also share this behaviour. + *** 0.6.3 *** - NEW: ARM Cortex-M3 port completed. The demo program targets the STM32F103 chip from ST Microelectronics on an Olimex STM32-P103 board.