aboutsummaryrefslogtreecommitdiff
path: root/devel/avr-gcc-devel
diff options
context:
space:
mode:
authorJoerg Wunsch <joerg@FreeBSD.org>2006-04-19 10:50:41 +0000
committerJoerg Wunsch <joerg@FreeBSD.org>2006-04-19 10:50:41 +0000
commitb9c015c94ae9cf67118e5b4ab01a5caa1930391c (patch)
treef4d8e854e0049f2265a0d0d4f8927fc02dd7f18c /devel/avr-gcc-devel
parentf7dfe1d53a11085511f70f64bb527c0dbd966f42 (diff)
downloadports-b9c015c94ae9cf67118e5b4ab01a5caa1930391c.tar.gz
ports-b9c015c94ae9cf67118e5b4ab01a5caa1930391c.zip
Rename ATmega164/324 to ATmega164P/324P, add support for ATmega644P,
ATmega165P, and ATmega169P. Add the patch mentioned in GCC bug report: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26504 to support DWARF-2 generation, and enable the respective configuration option.
Notes
Notes: svn path=/head/; revision=159945
Diffstat (limited to 'devel/avr-gcc-devel')
-rw-r--r--devel/avr-gcc-devel/Makefile4
-rw-r--r--devel/avr-gcc-devel/files/patch-dwarf9
-rw-r--r--devel/avr-gcc-devel/files/patch-newdevices27
-rw-r--r--devel/avr-gcc-devel/pkg-descr5
4 files changed, 32 insertions, 13 deletions
diff --git a/devel/avr-gcc-devel/Makefile b/devel/avr-gcc-devel/Makefile
index 1a50efe6c6ce..8c8599d27e50 100644
--- a/devel/avr-gcc-devel/Makefile
+++ b/devel/avr-gcc-devel/Makefile
@@ -7,7 +7,7 @@
PORTNAME= gcc
PORTVERSION= 4.1.0
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GCC}
MASTER_SITES+= http://people.freebsd.org/~joerg/:local
@@ -48,7 +48,7 @@ ARCH= x86_64
CONFLICTS= avr-gcc-3*
-CONFIGURE_ARGS= --target=avr --disable-libssp
+CONFIGURE_ARGS= --target=avr --disable-libssp --with-dwarf2
MAKE_FLAGS= LANGUAGES="c c++"
# get rid of that silly -mcpu=pentiumpro FreeBSD 5+ is so fond of. :-(
diff --git a/devel/avr-gcc-devel/files/patch-dwarf b/devel/avr-gcc-devel/files/patch-dwarf
new file mode 100644
index 000000000000..aa91a6e28879
--- /dev/null
+++ b/devel/avr-gcc-devel/files/patch-dwarf
@@ -0,0 +1,9 @@
+--- gcc/config/avr/avr.h.orig 2006-04-13 15:31:19.000000000 +0200
++++ gcc/config/avr/avr.h 2006-04-13 16:23:16.000000000 +0200
+@@ -892,3 +892,6 @@
+ #define ZERO_REGNO 1
+
+ #define PREFERRED_DEBUGGING_TYPE DBX_DEBUG
++
++/* Offset from the frame pointer register value to the top of the stack. */
++#define FRAME_POINTER_CFA_OFFSET(FNDECL) 0
diff --git a/devel/avr-gcc-devel/files/patch-newdevices b/devel/avr-gcc-devel/files/patch-newdevices
index 56e58f39eebe..8cc6cb00a2a1 100644
--- a/devel/avr-gcc-devel/files/patch-newdevices
+++ b/devel/avr-gcc-devel/files/patch-newdevices
@@ -20,7 +20,7 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/avr.c ./gcc/config/avr/avr.c
/* Classic, > 8K. */
{ "avr3", 3, NULL },
{ "atmega103", 3, "__AVR_ATmega103__" },
-@@ -187,24 +196,43 @@
+@@ -187,24 +196,46 @@
{ "atmega88", 4, "__AVR_ATmega88__" },
{ "atmega8515", 4, "__AVR_ATmega8515__" },
{ "atmega8535", 4, "__AVR_ATmega8535__" },
@@ -32,13 +32,15 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/avr.c ./gcc/config/avr/avr.c
{ "atmega161", 5, "__AVR_ATmega161__" },
{ "atmega162", 5, "__AVR_ATmega162__" },
{ "atmega163", 5, "__AVR_ATmega163__" },
-+ { "atmega164", 5, "__AVR_ATmega164__" },
++ { "atmega164p",5, "__AVR_ATmega164P__" },
{ "atmega165", 5, "__AVR_ATmega165__" },
++ { "atmega165p",5, "__AVR_ATmega165P__" },
{ "atmega168", 5, "__AVR_ATmega168__" },
{ "atmega169", 5, "__AVR_ATmega169__" },
++ { "atmega169p",5, "__AVR_ATmega169P__" },
{ "atmega32", 5, "__AVR_ATmega32__" },
{ "atmega323", 5, "__AVR_ATmega323__" },
-+ { "atmega324", 5, "__AVR_ATmega324__" },
++ { "atmega324p",5, "__AVR_ATmega324P__" },
{ "atmega325", 5, "__AVR_ATmega325__" },
{ "atmega3250", 5, "__AVR_ATmega3250__" },
+ { "atmega329", 5, "__AVR_ATmega329__" },
@@ -47,6 +49,7 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/avr.c ./gcc/config/avr/avr.c
{ "atmega64", 5, "__AVR_ATmega64__" },
+ { "atmega640", 5, "__AVR_ATmega640__" },
+ { "atmega644", 5, "__AVR_ATmega644__" },
++ { "atmega644p",5, "__AVR_ATmega644P__" },
{ "atmega645", 5, "__AVR_ATmega645__" },
{ "atmega6450", 5, "__AVR_ATmega6450__" },
+ { "atmega649", 5, "__AVR_ATmega649__" },
@@ -100,7 +103,7 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/avr.h ./gcc/config/avr/avr.h
%{mmcu=atmega103|mmcu=avr3:crtm103.o%s} \
%{mmcu=atmega603:crtm603.o%s} \
%{mmcu=at43usb320:crt43320.o%s} \
-@@ -809,22 +819,41 @@
+@@ -809,22 +819,44 @@
%{mmcu=atmega88:crtm88.o%s} \
%{mmcu=atmega8515:crtm8515.o%s} \
%{mmcu=atmega8535:crtm8535.o%s} \
@@ -110,13 +113,15 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/avr.h ./gcc/config/avr/avr.h
%{mmcu=atmega161|mmcu=avr5:crtm161.o%s} \
%{mmcu=atmega162:crtm162.o%s} \
%{mmcu=atmega163:crtm163.o%s} \
-+%{mmcu=atmega164:crtm164.o%s} \
++%{mmcu=atmega164p:crtm164p.o%s} \
%{mmcu=atmega165:crtm165.o%s} \
++%{mmcu=atmega165p:crtm165p.o%s} \
%{mmcu=atmega168:crtm168.o%s} \
%{mmcu=atmega169:crtm169.o%s} \
++%{mmcu=atmega169p:crtm169p.o%s} \
%{mmcu=atmega32:crtm32.o%s} \
%{mmcu=atmega323:crtm323.o%s} \
-+%{mmcu=atmega324:crtm324.o%s} \
++%{mmcu=atmega324p:crtm324p.o%s} \
%{mmcu=atmega325:crtm325.o%s} \
%{mmcu=atmega3250:crtm3250.o%s} \
+%{mmcu=atmega329:crtm329.o%s} \
@@ -126,6 +131,7 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/avr.h ./gcc/config/avr/avr.h
-%{mmcu=atmega645:crtm6450.o%s} \
+%{mmcu=atmega640:crtm640.o%s} \
+%{mmcu=atmega644:crtm644.o%s} \
++%{mmcu=atmega644p:crtm644p.o%s} \
+%{mmcu=atmega645:crtm645.o%s} \
%{mmcu=atmega6450:crtm6450.o%s} \
+%{mmcu=atmega649:crtm649.o%s} \
@@ -146,7 +152,7 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/avr.h ./gcc/config/avr/avr.h
diff -ur ../gcc-4.1.0.orig/gcc/config/avr/t-avr ./gcc/config/avr/t-avr
--- ../gcc-4.1.0.orig/gcc/config/avr/t-avr Wed Apr 6 07:34:30 2005
+++ ./gcc/config/avr/t-avr Wed Mar 22 15:55:57 2006
-@@ -42,21 +42,52 @@
+@@ -42,21 +42,55 @@
# The many avr2 matches are not listed here - this is the default.
MULTILIB_MATCHES = \
@@ -173,8 +179,9 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/t-avr ./gcc/config/avr/t-avr
+ mmcu?avr5=mmcu?atmega161 \
+ mmcu?avr5=mmcu?atmega162 \
+ mmcu?avr5=mmcu?atmega163 \
-+ mmcu?avr5=mmcu?atmega164 \
++ mmcu?avr5=mmcu?atmega164p \
mmcu?avr5=mmcu?atmega165 \
++ mmcu?avr5=mmcu?atmega165p \
- mmcu?avr5=mmcu?atmega323 mmcu?avr5=mmcu?atmega32 \
- mmcu?avr5=mmcu?atmega325 mmcu?avr5=mmcu?atmega3250 \
- mmcu?avr5=mmcu?atmega64 mmcu?avr5=mmcu?atmega128 \
@@ -182,9 +189,10 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/t-avr ./gcc/config/avr/t-avr
- mmcu?avr5=mmcu?at94k mmcu?avr5=mmcu?at90can128
+ mmcu?avr5=mmcu?atmega168 \
+ mmcu?avr5=mmcu?atmega169 \
++ mmcu?avr5=mmcu?atmega169p \
+ mmcu?avr5=mmcu?atmega32 \
+ mmcu?avr5=mmcu?atmega323 \
-+ mmcu?avr5=mmcu?atmega324 \
++ mmcu?avr5=mmcu?atmega324p \
+ mmcu?avr5=mmcu?atmega325 \
+ mmcu?avr5=mmcu?atmega3250 \
+ mmcu?avr5=mmcu?atmega329 \
@@ -193,6 +201,7 @@ diff -ur ../gcc-4.1.0.orig/gcc/config/avr/t-avr ./gcc/config/avr/t-avr
+ mmcu?avr5=mmcu?atmega64 \
+ mmcu?avr5=mmcu?atmega640 \
+ mmcu?avr5=mmcu?atmega644 \
++ mmcu?avr5=mmcu?atmega644p \
+ mmcu?avr5=mmcu?atmega645 \
+ mmcu?avr5=mmcu?atmega6450 \
+ mmcu?avr5=mmcu?atmega649 \
diff --git a/devel/avr-gcc-devel/pkg-descr b/devel/avr-gcc-devel/pkg-descr
index aad7578613c6..b8cac148c715 100644
--- a/devel/avr-gcc-devel/pkg-descr
+++ b/devel/avr-gcc-devel/pkg-descr
@@ -3,14 +3,15 @@ FSF gcc-4.x for Atmel AVR cross-development
Included is the basic C++ compiler, although this is only of limited
use without a libstdc++, and it is little tested.
-Supported debugging formats: -gstabs (DWARF-2 not yet working)
+Supported debugging formats: -gdwarf-2 [default], -gstabs
Locally hack added: recognizes 0bXXX binary constants
Locally added support for the following AVR devices:
ATtiny24/ATtiny44/ATtiny84
ATtiny25/ATtiny45/ATtiny85 ATtiny261/ATtiny461/ATtiny861
- ATmega164/ATmega324/ATmega644
+ ATmega164P/ATmega324P/ATmega644/ATmega644P
+ ATmega165P/ATmega169P
ATmega329/ATmega3290/ATmega649/ATmega6490
ATmega406
ATmega640/ATmega1280/ATmega1281