avr-libc-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avr-libc-commit] [2177] Welcome avr-libc-1.7.0.


From: Joerg Wunsch
Subject: [avr-libc-commit] [2177] Welcome avr-libc-1.7.0.
Date: Wed, 16 Jun 2010 20:02:42 +0000

Revision: 2177
          http://svn.sv.gnu.org/viewvc/?view=rev&root=avr-libc&revision=2177
Author:   joerg_wunsch
Date:     2010-06-16 20:02:42 +0000 (Wed, 16 Jun 2010)
Log Message:
-----------
Welcome avr-libc-1.7.0.

Added Paths:
-----------
    tags/avr-libc-1_7_0-release/
    tags/avr-libc-1_7_0-release/ChangeLog
    tags/avr-libc-1_7_0-release/configure.ac
    tags/avr-libc-1_7_0-release/devtools/gen-avr-lib-tree.sh
    tags/avr-libc-1_7_0-release/tests/simulate/known-to-fail.txt

Removed Paths:
-------------
    tags/avr-libc-1_7_0-release/ChangeLog
    tags/avr-libc-1_7_0-release/configure.ac
    tags/avr-libc-1_7_0-release/devtools/gen-avr-lib-tree.sh

Deleted: tags/avr-libc-1_7_0-release/ChangeLog
===================================================================
--- trunk/avr-libc/ChangeLog    2010-06-16 05:26:35 UTC (rev 2172)
+++ tags/avr-libc-1_7_0-release/ChangeLog       2010-06-16 20:02:42 UTC (rev 
2177)
@@ -1,557 +0,0 @@
-2010-06-15  Eric B. Weddington  <address@hidden>
-
-       Fix bug #30148.
-       * include/avr/iox128a1.h: Rename HIRES.CTRL to HIRES.CTRLA.
-       * NEWS: Add to fixed bug list.
-
-2010-06-15  Eric B. Weddington  <address@hidden>
-
-       * configure.ac: Change ATxemga32A4 from avrxmega3 to avrxmega2.
-       * devtools/gen-avr-lib-tree.sh: Same.
-       * doc/api/using-tools.dox: Same.
-
-2010-06-14  Eric B. Weddington  <address@hidden>
-
-       * LICENSE: Update copyright year.
-
-2010-06-14  Eric B. Weddington  <address@hidden>
-
-       * include/avr/pgmspace.h: Remove new features regarding new segments.
-       Feature not yet ready. Correct comment.
-
-2010-06-13  Joerg Wunsch <address@hidden>
-
-       * include/avr/pgmspace.h: Remove the #error for architectures that
-       don't support segmented progmem access.
-
-2010-06-12  Eric B. Weddington  <address@hidden>
-
-       Special thanks to Carlos Lamas and Jan Waclawek for contributing
-       code in patch #6352 (that should've gotten in a long time ago).
-       * libc/pmstring/Files.am: Add new files to list.
-       * libc/pmstring/memcmp_PF.S: New file.
-       * libc/pmstring/memcpy_PF.S: Same.
-       * libc/pmstring/strcasecmp_PF.S: Same.
-       * libc/pmstring/strcat_PF.S: Same.
-       * libc/pmstring/strcmp_PF.S: Same.
-       * libc/pmstring/strcpy_PF.S: Same.
-       * libc/pmstring/strlcat_PF.S: Same.
-       * libc/pmstring/strlcpy_PF.S: Same.
-       * libc/pmstring/strlen_PF.S: Same.
-       * libc/pmstring/strncasecmp_PF.S: Same.
-       * libc/pmstring/strncat_PF.S: Same.
-       * libc/pmstring/strncmp_PF.S: Same.
-       * libc/pmstring/strncpy_PF.S: Same.
-       * libc/pmstring/strnlen_PF.S: Same.
-       * libc/pmstring/strstr_PF.S: Same.
-       * include/avr/pgmspace.h: Add support for far program memory
-       functions and macros.
-       * NEWS: Add news items.
-
-2010-06-11  Eric B. Weddington  <address@hidden>
-
-       Atmel bug #11742.
-       * include/avr/iox128a1u.h: Change EBI_CS_ASPACE* to
-       EBI_CS_ASIZE*.
-       * include/avr/iox128a1.h: Same.
-       * include/avr/iox128a3.h: Same.
-       * include/avr/iox128d3.h: Same.
-       * include/avr/iox16a4.h: Same.
-       * include/avr/iox16d4.h: Same.
-       * include/avr/iox192a3.h: Same.
-       * include/avr/iox192d3.h: Same.
-       * include/avr/iox256a3.h: Same.
-       * include/avr/iox256a3b.h: Same.
-       * include/avr/iox256d3.h: Same.
-       * include/avr/iox32a4.h: Same.
-       * include/avr/iox32d4.h: Same.
-       * include/avr/iox64a1.h: Same.
-       * include/avr/iox64a1u.h: Same.
-       * include/avr/iox64a3.h: Same.
-       * include/avr/iox64d3.h: Same.
-
-2010-06-11  Eric B. Weddington  <address@hidden>
-
-       Atmel bug #11738.
-       * include/avr/iox128d3.h (ADC_FLUSH_bm, ADC_ENABLE_bp): Add missing
-       definitions.
-       * include/avr/iox16d4.h: Same.
-       * include/avr/iox192d3.h: Same.
-       * include/avr/iox32d4.h: Same.
-       * include/avr/iox64d3.h: Same.
-
-2010-06-10  Joerg Wunsch <address@hidden>
-
-       bug #30104: power.h - Missing "power_usart1_/enable/disable()"
-       functions for ATmega644
-       * include/avr/power.h: Fix macros for ATmega644A/P/PA
-
-2010-06-10  Joerg Wunsch <address@hidden>
-
-       Submitted by Jan Waclawek:
-       Document issues around compiler optimizations and code reordering
-       * doc/api/optimize.dox: New file.
-       * doc/api/doxygen.config.in: Add optimize.dox.
-       * include/avr/cpufunc.h (_MemoryBarrier): xref to optim_code_reorder
-       * include/avr/interrupt.h: (Ditto.)
-       * include/util/atomic.h: (Ditto.)
-
-2010-06-10  Joerg Wunsch <address@hidden>
-
-       * doc/api/rel-method.dox: Adapt to our new release numbering scheme.
-
-2010-06-10  Joerg Wunsch <address@hidden>
-
-       * tests/simulate/avr/eeprom-1.c: Remove the old AT90S2313 simulator
-       bug workaround, as the workaround doesn't work anymore now while the
-       original code does.
-
-2010-06-09  Eric B. Weddington  <address@hidden>
-
-       Fix for bug #26767.
-       * include/avr/iox256a3b.h: Added corrected names for GPIO registers.
-       * include/avr/iox128a1.h: Same.
-       * include/avr/iox128a3.h: Same.
-       * include/avr/iox16a4.h: Same.
-       * include/avr/iox16d4.h: Same.
-       * include/avr/iox192a3.h: Same.
-       * include/avr/iox256a3.h: Same.
-       * include/avr/iox32a4.h: Same.
-       * include/avr/iox64a1.h: Same.
-       * include/avr/iox64a3.h: Same.
-
-2010-06-09  Eric B. Weddington  <address@hidden>
-
-       Fix for bug #28582.
-       * include/avr/iox256a3b.h: Add 3 missing double-word registers.
-       * NEWS: Add to fixed bugs list.
-
-2010-06-09  Eric B. Weddington  <address@hidden>
-
-       Fix for bug #29502.
-       * include/avr/iox128a1.h (TC_EVACT_FRW_gc): Fix name to TC_EVACT_FRQ_gc.
-       * NEWS: Add to fixed bugs list.
-
-2010-06-09  Eric B. Weddington  <address@hidden>
-
-       Fix for bug #29653.
-       * include/avr/iousbxx2.h (PUD): Add bit definition.
-       * NEWS: Add to fixed bugs list.
-
-2010-06-09  Joerg Wunsch <address@hidden>
-
-       Move some testscripts around.
-       * tests/simulate/other/malloc-01.c -> tests/simulate/stdlib/malloc-8.c
-       * tests/simulate/other/realloc-01.c -> tests/simulate/stdlib/realloc-3.c
-
-2010-06-09  Joerg Wunsch <address@hidden>
-
-       * libc/stdlib/malloc.c: Fix a bug introduced in r2131 that could
-       cause the freelist to be discarded.
-
-2010-06-09  Joerg Wunsch <address@hidden>
-
-       * tests/simulate/other/realloc-01.c: Cut out some bits when compling for
-       an AT90S8515 to avoid resource exhaustion (the ATmega128 version still
-       contains everything).
-       * tests/simulate/printf/sprintf-2.c: (Ditto.)
-       * tests/simulate/printf/sprintf-3.c: (Ditto.)
-       * tests/simulate/printf/sprintf-4.c: (Ditto.)
-       * tests/simulate/scanf/sscanf-l.c: (Ditto.)
-       * tests/simulate/scanf/sscanf_flt-fnn.c: (Ditto.)
-
-2010-06-09  Joerg Wunsch <address@hidden>
-
-       bug #28921: pointer to function > 128k flash
-       * doc/api/faq.dox (faq_funcptr_gt128kib): Add entry describing
-       that -mrelax is needed for the trampolines to work as designed.
-
-2010-06-09  Joerg Wunsch <address@hidden>
-
-       Submitted by Don Kinzer:
-       bug #30018: Errors in include files
-       * include/avr/iotn40.h: Fix stray characters in macro names.
-       * include/avr/iom649p.h: (Ditto.)
-       * include/avr/iom169pa.h: (Ditto.)
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Various documentation fixes, mostly cosmetic.
-       * include/avr/cpufunc.h: Fix doc grouping.
-       * include/util/delay_basic.h: Slightly reorder, so it actually
-       generates documentation again.
-       * doc/api/rel-method.dox: Update for our SVN repository.
-       * doc/api/malloc.dox: Fix doxygen warning.
-       * doc/api/tools-install.dox: (Ditto.)
-       * doc/api/faq.dox: (Ditto.)
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       bug #30085: memcpy_P on XMega does not clr NVM.CMD before copy
-       * include/avr/pgmspace.h: Mention that for Xmega devices,
-       these functions require NVM.CMD being set to 0x00.
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       * include/avr/interrupt.h (cli, sei): Add a memory barrier,
-       and cross-reference <util/atomic.h>.
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Implement new header file: <avr/cpufunc.h>
-       * include/avr/cpufunc.h: New file.
-       * include/avr/Makefile.am (avr_HEADERS): Add cpufunc.h.
-       * doc/api/doxygen.config.in (INPUT): Add avr/cpufunc.h.
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Submitted by Bob Paddock:
-       patch #6891: Add XMega software reset to the FAQ section on software
-       reset
-       * doc/api/faq.dox (faq_softreset): Mention the Xmega RST.CTRL method.
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Submitted by Ruwan Jayanetti:
-       patch #6194: Twitest updated to handle larger EEPROM devices
-       * doc/examples/twitest/twitest.c: Implement the
-       WORD_ADDRESS_16BIT option.
-       * doc/examples/twitest/twitest.dox: Document the new option.
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Submitted by Gerben van den Broeke:
-       patch #6555: malloc improvement
-       * libc/stdlib/malloc.c (malloc): Speed up reallocations.
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Submitted by Krzysztof Kosciuszkiewicz:
-       patch #6690: Shorten calculation of dallas 1-wire crc
-       * include/util/crc16.h (_crc_ibutton_update): no need to
-       use the T flag bit to save bit 0 of the operand
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Submitted by Tero Sinervo:
-       patch #6791: Minor fixes to stdio.h documentation
-       * include/stdio.h: Fix spelling mistakes.
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Submitted by Heike C. Zimmerer:
-       patch #6897: Allow <util/setbaud.h> to be used with assembler source
-       * include/util/setbaud.h: Add assembler snippets (no UL suffix
-       added to numbers)
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Add test scripts for <util/crc16.h>
-       * tests/simulate/util/crc16-1.c: New file.
-       * tests/simulate/util/crc16-2.c: (Ditto.)
-       * tests/simulate/util/crc16-3.c: (Ditto.)
-       * tests/simulate/util/crc16-4.c: (Ditto.)
-
-2010-06-08  Joerg Wunsch <address@hidden>
-
-       Submitted by Don Kinzer:
-       bug #29950: ATtiny167 SPM_PAGESIZE Discrepancy
-       * include/avr/iotn167.h: Bump SPM_PAGESIZE.
-
-2010-06-07  Joerg Wunsch <address@hidden>
-
-       bug #27235, malloc: Several things go wrong
-       * libc/stdlib/malloc.c (malloc): Revert the patch
-       from r2123, as it is no longer needed.
-       * libc/stdlib/malloc.c (free): When freeing the
-       topmost chunk of the heap, reduce __brkval again,
-       returning the area from the heap entirely.
-       * doc/api/malloc.dox: Mention that the heap is now
-       reduced if possible.
-       * tests/simulate/regression/bug-27242.c: Adapt testscript
-       to match the new behaviour.
-       * tests/simulate/stdlib/malloc-1.c: (Ditto.)
-       * tests/simulate/stdlib/malloc-6.c: (Ditto.)
-       * tests/simulate/stdlib/malloc-7.c: (Ditto.)
-       * tests/simulate/stdlib/realloc-2.c: New file (test whether
-       subsequent allocation does not extend the heap).
-       * tests/simulate/regression/bug-28135.c: New file, another
-       regression test (actual bugfix from bug #28135 is no longer
-       needed)
-
-2010-06-07  Joerg Wunsch <address@hidden>
-
-       More testscripts: test free() works as expected.
-       * tests/simulate/stdlib/malloc-5.c: New file.
-       * tests/simulate/stdlib/malloc-6.c: (Ditto.)
-       * tests/simulate/stdlib/malloc-7.c: (Ditto.)
-
-2010-06-07  Joerg Wunsch <address@hidden>
-
-       Submitted by Stefan Ernst:
-       bug #27243: malloc: small error in comment
-       * stdlib/malloc.c: Fix comment.
-
-2010-06-07  Joerg Wunsch <address@hidden>
-
-       Submitted by Aleksandar Kanchev:
-       bug #27242: realloc: serious error when size shrinks
-       * stdlib/realloc.c: Change freelist calculation.
-       * tests/simulate/regression/bug-27242.c: New file.
-
-2010-06-07  Joerg Wunsch <address@hidden>
-
-       * tests/simulate/stdlib/malloc-4.c: New file.
-
-2010-06-04  Joerg Wunsch <address@hidden>
-
-       Patch submitted by Stefan Ernst:
-       patch #6895: Improved malloc behaviour when expanding used area
-       bug #27235: malloc: Several things go wrong (part 1)
-       * stdlib/malloc.c: Improve allocation strategy.
-       * tests/simulate/regression/bug-27235-1.c: New file.
-
-2010-06-04  Joerg Wunsch <address@hidden>
-
-       Add some initial malloc and realloc tests to test
-       suite.
-       * tests/simulate/stdlib/malloc-1.c: New file.
-       * tests/simulate/stdlib/malloc-2.c: (Ditto.)
-       * tests/simulate/stdlib/malloc-3.c: (Ditto.)
-       * tests/simulate/stdlib/realloc-1.c: (Ditto.)
-
-2010-04-16  Anitha Boyapati <address@hidden>
-
-        Fix bug #28574.
-       * include/avr/iox128d3.h - Modify EVSYS_t and ADC_t structures to 
-         include reserved registers.   
-       * include/avr/iox16d4.h  - Same.
-       * include/avr/iox192d3.h - Same.
-       * include/avr/iox256d3.h - Same.
-       * include/avr/iox32d4.h  - Same.
-       * include/avr/iox64d3.h  - Same.
-
-2010-04-12  Joerg Wunsch <address@hidden>
-
-       * configure.ac (CHECK_BUILTIN_DELAY_CYCLES): Reimplement as a
-       compiler + grep pipeline rather than through AC_LINK_IFELSE, as we
-       cannot rely on a working linker while building the library.
-
-2010-04-12  Joerg Wunsch <address@hidden>
-
-       * devtools/gen-avr-lib-tree.sh: Fix directory name for ATxmega64A1U.
-
-2010-04-06  Anitha Boyapati <address@hidden>
-
-        Fix bug #28584.
-       * include/avr/iocanxx.h - Add word definitions CANIE and CANEN.
-
-2010-04-06  Anitha Boyapati <address@hidden>
-
-        Fix bug #28627.
-       * include/avr/power.h - ATmega32U2 defined for clock_prescale_set.
-
-2010-04-06  Anitha Boyapati <address@hidden>
-
-        Fix bug #28901.
-        * include/avr/iox128a1.h - Removed GPIO and CPU memory map entries.
-        * include/avr/iox128a1u.h - Same.
-        * include/avr/iox128a3.h - Same.
-        * include/avr/iox128d3.h - Same.
-        * include/avr/iox16a4.h - Same.
-        * include/avr/iox16d4.h - Same.
-        * include/avr/iox192a3.h - Same.
-        * include/avr/iox192d3.h - Same.
-        * include/avr/iox256a3.h - Same.
-        * include/avr/iox256a3b.h - Same.
-        * include/avr/iox256d3.h - Same.
-        * include/avr/iox32a4.h - Same.
-        * include/avr/iox32d4.h - Same.
-        * include/avr/iox64a1.h - Same.
-        * include/avr/iox64a3.h - Same.
-        * include/avr/iox64d3.h - Same.
-
-2010-04-05  Eric B. Weddington  <address@hidden>
-
-       Fix for bug #27367.
-       * include/avr/iom8.h: Add RAMSTART definition.
-       * include/avr/iom16.h: Same.
-       * include/avr/iom32.h: Same.
-       * include/avr/iom164.h: Same.
-       * include/avr/iom324.h: Same.
-       * include/avr/iom644.h: Same.
-       * include/avr/iom644p.h: Same.
-       * include/avr/iom328p.h: Same.
-       * include/avr/iom48.h: Same.
-       * include/avr/iom48p.h: Same.
-       * include/avr/iom88.h: Same.
-       * include/avr/iom88p.h: Same.
-       * include/avr/iom168.h: Same.
-       * include/avr/iom168p.h: Same.
-       * include/avr/iom325.h: Same.
-       * include/avr/iom645.h: Same.
-       * include/avr/iom3250.h: Same.
-       * include/avr/iom6450.h: Same.
-       * include/avr/iotn2313.h: Same.
-       * include/avr/iom8515.h: Same.
-       * include/avr/iom8535.h: Same.
-       * include/avr/iotn13.h: Same.
-       * include/avr/iotn24.h: Same.
-       * include/avr/iotn25.h: Same.
-       * include/avr/iotn44.h: Same.
-       * include/avr/iotn45.h: Same.
-       * include/avr/iotn84.h: Same.
-       * include/avr/iotn85.h: Same.
-       * include/avr/iotn261.h: Same.
-       * include/avr/iotn461.h: Same.
-       * include/avr/iotn861.h: Same.
-       * include/avr/iotn88.h: Same.
-       * include/avr/iotn48.h: Same.
-       * include/avr/iom1281.h: Same.
-       * include/avr/iom1284p.h: Same.
-       * NEW: Add to fixed bug list.
-
-2010-03-30  Eric B. Weddington  <address@hidden>
-
-       * crt1/gcrt1.S: Add more interrupt vectors to cover the ATxmega128A1U
-       device.
-
-2010-03-30  Eric B. Weddington  <address@hidden>
-
-       * xml/avrgcc-header: Modify XMEGA portion of script to not generate CPU
-       and GPIO definitions that include references to non-existent structures.
-       This is a partial fix for bug #28901, for future header files.
-
-2010-03-28  Eric B. Weddington  <address@hidden>
-
-       Add support for new device: m3000.
-       * configure.ac: Add support for new device.
-       * devtools/gen-avr-lib-tree.sh: Same.
-       * include/avr/io.h: Same.
-       * doc/api/main_page.dox: Same.
-       * doc/api/using-tools.dox: Same.
-       * include/avr/iom3000.h: New file.
-       * NEWS: Add news item.
-
-2010-03-28  Eric B. Weddington  <address@hidden>
-
-       Add support for new devices: attiny84a, atmega325a, atmega3250a,
-       atmega329a, atmega3290a.
-       * configure.ac: Add support for new devices.
-       * devtools/gen-avr-lib-tree.sh: Same.
-       * include/avr/io.h: Same.
-       * doc/api/main_page.dox: Same.
-       * doc/api/using-tools.dox: Same.
-       * include/avr/power.h: Same.
-       * include/avr/wdt.h: Same.
-       * include/avr/sleep.h: Same.
-       * include/avr/eeprom.h: Same.
-       * NEWS: Add news item.
-
-2010-03-25  Eric B. Weddington  <address@hidden>
-
-       Add support for new architecture: avrtiny10. Add support for new 
devices:
-       attiny4, attiny5, attiny9, attiny10, attiny20, attiny40.
-       * configure.ac: Add support for new devices.
-       * devtools/gen-avr-lib-tree.sh: Same.
-       * include/avr/Makefile.am: Same.
-       * include/avr/io.h: Same.
-       * doc/api/main_page.dox: Same.
-       * doc/api/using-tools.dox: Same.
-       * include/avr/power.h: Same.
-       * include/avr/sleep.h: Same.
-       * NEWS: Add news item.
-
-2010-03-25  Eric B. Weddington  <address@hidden>
-
-       Add support for new devices: ATxmega128A1U, ATxmega64A1U.
-       * configure.ac: Add support for new devices.
-       * devtools/gen-avr-lib-tree.sh: Same.
-       * include/avr/Makefile.am: Same.
-       * include/avr/io.h: Same.
-       * doc/api/main_page.dox: Same.
-       * doc/api/using-tools.dox: Same.
-       * include/avr/power.h: Same.
-       * include/avr/wdt.h: Same.
-       * include/avr/sleep.h: Same.
-       * include/avr/eeprom.h: Same.
-       * NEWS: Add news item.
-
-2010-03-22  Eric B. Weddington  <address@hidden>
-
-       * include/avr/iox64a1u.h: New file.
-
-2010-03-20  Eric B. Weddington  <address@hidden>
-
-       * include/avr/fuse.h: Add definition of FUSES for XMEGA devices.
-       * include/avr/iox128a1u.h: Regenerate file. New definitions, 
corrections.
-
-2010-03-19  Eric B. Weddington  <address@hidden>
-
-       * include/avr/iotn20.h: New file.
-       * include/avr/iotn40.h: New file.
-
-2010-03-17  Joerg Wunsch <address@hidden>
-
-       Probe the compiler for the availability of the
-       __builtin_avr_delay_cycles() function, and modify the header files
-       <util/delay.h> and <avr/builtins.h> appropriately.  Note that the
-       modification is done by setting __HAS_DELAY_CYCLES on top of those
-       files, which has been left overridable from the compiler
-       environment (i.e., commandline -D option) on purpose.  Note also
-       that _delay_us() and _delay_ms() can only use
-       __builtin_avr_delay_cycles() if optimization is enabled as they'd
-       otherwise try to pass a floating-point argument to it which is not
-       allowed.  (The compiler does not seem to be able to convert it
-       into an unsigned long internally, not even with a type cast.)
-       However, not enabling optimization for them yields garbage timing
-       anyway, due to moving the compile-time constant floating-point
-       calculations from the compiler into the AVR.
-       * configure.ac: Add detection of __builtin_avr_delay_cycles
-       * include/util/delay.h.in: repocopied from delay.h
-       * include/util/Makefile.am: added delay.h.in
-       * include/avr/builtins.h.in: New file.
-       * include/avr/Makefile.am: added builtins.h.in
-
-2010-03-11  Eric B. Weddington  <address@hidden>
-
-       Fix bug #28575.
-       * include/avr/iousb162.h (LFUSE_DEFAULT, HFUSE_DEFAULT, EFUSE_DEFAULT):
-       Fix definition.
-       * include/avr/iousb82.h: Same.
-       * include/avr/iousb647.h: Same.
-       * include/avr/iousb646.h: Same.
-       * NEWS: Add to fixed bug list.
-
-2010-03-11  Eric B. Weddington  <address@hidden>
-
-       Fix bug #28812.
-       * include/avr/iotn48.h: Fix values of TWS3-7.
-       * NEWS: Add to fixed bug list.
-
-2010-02-03  Joerg Wunsch <address@hidden>
-
-       bug #28756: Bug in AVR libc 1.6.7 (power.h for 8-bit AVR)
-       * include/avr/power.h (clock_prescale_set): Implement as an inline
-       function rather than a macro so it syntactically becomes a true
-       function.
-
-2010-01-22  Eric B. Weddington  <address@hidden>
-
-       * include/avr/iox128a1u.h: Add new file.
-
-2010-01-21  Joerg Wunsch <address@hidden>
-
-       bug #28688: using_tools.dox fails to build due to extra underscore
-       * doc/api/Makefile.am: added logic to detect which filename
-       doxygen did generate; while being here, fix the table layout as
-       well
-
-2010-01-20  Eric B. Weddington  <address@hidden>
-
-       Rotate ChangeLogs.
-       * ChangeLog-2009: New file.
-       * ChangeLog: Clear for 2010.
-       * Makefile.am (EXTRA_DIST): Add ChangeLog-2009.
-
-For older changes see ChangeLog-2009

Copied: tags/avr-libc-1_7_0-release/ChangeLog (from rev 2176, 
trunk/avr-libc/ChangeLog)
===================================================================
--- tags/avr-libc-1_7_0-release/ChangeLog                               (rev 0)
+++ tags/avr-libc-1_7_0-release/ChangeLog       2010-06-16 20:02:42 UTC (rev 
2177)
@@ -0,0 +1,566 @@
+2010-06-16  Joerg Wunsch <address@hidden>
+
+       Released avr-libc-1.7.0.
+
+2010-06-16  Joerg Wunsch <address@hidden>
+
+       * configure.ac: Bump version date in preparation for releasing
+       avr-libc 1.7.0.
+
+2010-06-15  Eric B. Weddington  <address@hidden>
+
+       Fix bug #30148.
+       * include/avr/iox128a1.h: Rename HIRES.CTRL to HIRES.CTRLA.
+       * NEWS: Add to fixed bug list.
+
+2010-06-15  Eric B. Weddington  <address@hidden>
+
+       * configure.ac: Change ATxemga32A4 from avrxmega3 to avrxmega2.
+       * devtools/gen-avr-lib-tree.sh: Same.
+       * doc/api/using-tools.dox: Same.
+
+2010-06-14  Eric B. Weddington  <address@hidden>
+
+       * LICENSE: Update copyright year.
+
+2010-06-14  Eric B. Weddington  <address@hidden>
+
+       * include/avr/pgmspace.h: Remove new features regarding new segments.
+       Feature not yet ready. Correct comment.
+
+2010-06-13  Joerg Wunsch <address@hidden>
+
+       * include/avr/pgmspace.h: Remove the #error for architectures that
+       don't support segmented progmem access.
+
+2010-06-12  Eric B. Weddington  <address@hidden>
+
+       Special thanks to Carlos Lamas and Jan Waclawek for contributing
+       code in patch #6352 (that should've gotten in a long time ago).
+       * libc/pmstring/Files.am: Add new files to list.
+       * libc/pmstring/memcmp_PF.S: New file.
+       * libc/pmstring/memcpy_PF.S: Same.
+       * libc/pmstring/strcasecmp_PF.S: Same.
+       * libc/pmstring/strcat_PF.S: Same.
+       * libc/pmstring/strcmp_PF.S: Same.
+       * libc/pmstring/strcpy_PF.S: Same.
+       * libc/pmstring/strlcat_PF.S: Same.
+       * libc/pmstring/strlcpy_PF.S: Same.
+       * libc/pmstring/strlen_PF.S: Same.
+       * libc/pmstring/strncasecmp_PF.S: Same.
+       * libc/pmstring/strncat_PF.S: Same.
+       * libc/pmstring/strncmp_PF.S: Same.
+       * libc/pmstring/strncpy_PF.S: Same.
+       * libc/pmstring/strnlen_PF.S: Same.
+       * libc/pmstring/strstr_PF.S: Same.
+       * include/avr/pgmspace.h: Add support for far program memory
+       functions and macros.
+       * NEWS: Add news items.
+
+2010-06-11  Eric B. Weddington  <address@hidden>
+
+       Atmel bug #11742.
+       * include/avr/iox128a1u.h: Change EBI_CS_ASPACE* to
+       EBI_CS_ASIZE*.
+       * include/avr/iox128a1.h: Same.
+       * include/avr/iox128a3.h: Same.
+       * include/avr/iox128d3.h: Same.
+       * include/avr/iox16a4.h: Same.
+       * include/avr/iox16d4.h: Same.
+       * include/avr/iox192a3.h: Same.
+       * include/avr/iox192d3.h: Same.
+       * include/avr/iox256a3.h: Same.
+       * include/avr/iox256a3b.h: Same.
+       * include/avr/iox256d3.h: Same.
+       * include/avr/iox32a4.h: Same.
+       * include/avr/iox32d4.h: Same.
+       * include/avr/iox64a1.h: Same.
+       * include/avr/iox64a1u.h: Same.
+       * include/avr/iox64a3.h: Same.
+       * include/avr/iox64d3.h: Same.
+
+2010-06-11  Eric B. Weddington  <address@hidden>
+
+       Atmel bug #11738.
+       * include/avr/iox128d3.h (ADC_FLUSH_bm, ADC_ENABLE_bp): Add missing
+       definitions.
+       * include/avr/iox16d4.h: Same.
+       * include/avr/iox192d3.h: Same.
+       * include/avr/iox32d4.h: Same.
+       * include/avr/iox64d3.h: Same.
+
+2010-06-10  Joerg Wunsch <address@hidden>
+
+       bug #30104: power.h - Missing "power_usart1_/enable/disable()"
+       functions for ATmega644
+       * include/avr/power.h: Fix macros for ATmega644A/P/PA
+
+2010-06-10  Joerg Wunsch <address@hidden>
+
+       Submitted by Jan Waclawek:
+       Document issues around compiler optimizations and code reordering
+       * doc/api/optimize.dox: New file.
+       * doc/api/doxygen.config.in: Add optimize.dox.
+       * include/avr/cpufunc.h (_MemoryBarrier): xref to optim_code_reorder
+       * include/avr/interrupt.h: (Ditto.)
+       * include/util/atomic.h: (Ditto.)
+
+2010-06-10  Joerg Wunsch <address@hidden>
+
+       * doc/api/rel-method.dox: Adapt to our new release numbering scheme.
+
+2010-06-10  Joerg Wunsch <address@hidden>
+
+       * tests/simulate/avr/eeprom-1.c: Remove the old AT90S2313 simulator
+       bug workaround, as the workaround doesn't work anymore now while the
+       original code does.
+
+2010-06-09  Eric B. Weddington  <address@hidden>
+
+       Fix for bug #26767.
+       * include/avr/iox256a3b.h: Added corrected names for GPIO registers.
+       * include/avr/iox128a1.h: Same.
+       * include/avr/iox128a3.h: Same.
+       * include/avr/iox16a4.h: Same.
+       * include/avr/iox16d4.h: Same.
+       * include/avr/iox192a3.h: Same.
+       * include/avr/iox256a3.h: Same.
+       * include/avr/iox32a4.h: Same.
+       * include/avr/iox64a1.h: Same.
+       * include/avr/iox64a3.h: Same.
+
+2010-06-09  Eric B. Weddington  <address@hidden>
+
+       Fix for bug #28582.
+       * include/avr/iox256a3b.h: Add 3 missing double-word registers.
+       * NEWS: Add to fixed bugs list.
+
+2010-06-09  Eric B. Weddington  <address@hidden>
+
+       Fix for bug #29502.
+       * include/avr/iox128a1.h (TC_EVACT_FRW_gc): Fix name to TC_EVACT_FRQ_gc.
+       * NEWS: Add to fixed bugs list.
+
+2010-06-09  Eric B. Weddington  <address@hidden>
+
+       Fix for bug #29653.
+       * include/avr/iousbxx2.h (PUD): Add bit definition.
+       * NEWS: Add to fixed bugs list.
+
+2010-06-09  Joerg Wunsch <address@hidden>
+
+       Move some testscripts around.
+       * tests/simulate/other/malloc-01.c -> tests/simulate/stdlib/malloc-8.c
+       * tests/simulate/other/realloc-01.c -> tests/simulate/stdlib/realloc-3.c
+
+2010-06-09  Joerg Wunsch <address@hidden>
+
+       * libc/stdlib/malloc.c: Fix a bug introduced in r2131 that could
+       cause the freelist to be discarded.
+
+2010-06-09  Joerg Wunsch <address@hidden>
+
+       * tests/simulate/other/realloc-01.c: Cut out some bits when compling for
+       an AT90S8515 to avoid resource exhaustion (the ATmega128 version still
+       contains everything).
+       * tests/simulate/printf/sprintf-2.c: (Ditto.)
+       * tests/simulate/printf/sprintf-3.c: (Ditto.)
+       * tests/simulate/printf/sprintf-4.c: (Ditto.)
+       * tests/simulate/scanf/sscanf-l.c: (Ditto.)
+       * tests/simulate/scanf/sscanf_flt-fnn.c: (Ditto.)
+
+2010-06-09  Joerg Wunsch <address@hidden>
+
+       bug #28921: pointer to function > 128k flash
+       * doc/api/faq.dox (faq_funcptr_gt128kib): Add entry describing
+       that -mrelax is needed for the trampolines to work as designed.
+
+2010-06-09  Joerg Wunsch <address@hidden>
+
+       Submitted by Don Kinzer:
+       bug #30018: Errors in include files
+       * include/avr/iotn40.h: Fix stray characters in macro names.
+       * include/avr/iom649p.h: (Ditto.)
+       * include/avr/iom169pa.h: (Ditto.)
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Various documentation fixes, mostly cosmetic.
+       * include/avr/cpufunc.h: Fix doc grouping.
+       * include/util/delay_basic.h: Slightly reorder, so it actually
+       generates documentation again.
+       * doc/api/rel-method.dox: Update for our SVN repository.
+       * doc/api/malloc.dox: Fix doxygen warning.
+       * doc/api/tools-install.dox: (Ditto.)
+       * doc/api/faq.dox: (Ditto.)
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       bug #30085: memcpy_P on XMega does not clr NVM.CMD before copy
+       * include/avr/pgmspace.h: Mention that for Xmega devices,
+       these functions require NVM.CMD being set to 0x00.
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       * include/avr/interrupt.h (cli, sei): Add a memory barrier,
+       and cross-reference <util/atomic.h>.
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Implement new header file: <avr/cpufunc.h>
+       * include/avr/cpufunc.h: New file.
+       * include/avr/Makefile.am (avr_HEADERS): Add cpufunc.h.
+       * doc/api/doxygen.config.in (INPUT): Add avr/cpufunc.h.
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Submitted by Bob Paddock:
+       patch #6891: Add XMega software reset to the FAQ section on software
+       reset
+       * doc/api/faq.dox (faq_softreset): Mention the Xmega RST.CTRL method.
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Submitted by Ruwan Jayanetti:
+       patch #6194: Twitest updated to handle larger EEPROM devices
+       * doc/examples/twitest/twitest.c: Implement the
+       WORD_ADDRESS_16BIT option.
+       * doc/examples/twitest/twitest.dox: Document the new option.
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Submitted by Gerben van den Broeke:
+       patch #6555: malloc improvement
+       * libc/stdlib/malloc.c (malloc): Speed up reallocations.
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Submitted by Krzysztof Kosciuszkiewicz:
+       patch #6690: Shorten calculation of dallas 1-wire crc
+       * include/util/crc16.h (_crc_ibutton_update): no need to
+       use the T flag bit to save bit 0 of the operand
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Submitted by Tero Sinervo:
+       patch #6791: Minor fixes to stdio.h documentation
+       * include/stdio.h: Fix spelling mistakes.
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Submitted by Heike C. Zimmerer:
+       patch #6897: Allow <util/setbaud.h> to be used with assembler source
+       * include/util/setbaud.h: Add assembler snippets (no UL suffix
+       added to numbers)
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Add test scripts for <util/crc16.h>
+       * tests/simulate/util/crc16-1.c: New file.
+       * tests/simulate/util/crc16-2.c: (Ditto.)
+       * tests/simulate/util/crc16-3.c: (Ditto.)
+       * tests/simulate/util/crc16-4.c: (Ditto.)
+
+2010-06-08  Joerg Wunsch <address@hidden>
+
+       Submitted by Don Kinzer:
+       bug #29950: ATtiny167 SPM_PAGESIZE Discrepancy
+       * include/avr/iotn167.h: Bump SPM_PAGESIZE.
+
+2010-06-07  Joerg Wunsch <address@hidden>
+
+       bug #27235, malloc: Several things go wrong
+       * libc/stdlib/malloc.c (malloc): Revert the patch
+       from r2123, as it is no longer needed.
+       * libc/stdlib/malloc.c (free): When freeing the
+       topmost chunk of the heap, reduce __brkval again,
+       returning the area from the heap entirely.
+       * doc/api/malloc.dox: Mention that the heap is now
+       reduced if possible.
+       * tests/simulate/regression/bug-27242.c: Adapt testscript
+       to match the new behaviour.
+       * tests/simulate/stdlib/malloc-1.c: (Ditto.)
+       * tests/simulate/stdlib/malloc-6.c: (Ditto.)
+       * tests/simulate/stdlib/malloc-7.c: (Ditto.)
+       * tests/simulate/stdlib/realloc-2.c: New file (test whether
+       subsequent allocation does not extend the heap).
+       * tests/simulate/regression/bug-28135.c: New file, another
+       regression test (actual bugfix from bug #28135 is no longer
+       needed)
+
+2010-06-07  Joerg Wunsch <address@hidden>
+
+       More testscripts: test free() works as expected.
+       * tests/simulate/stdlib/malloc-5.c: New file.
+       * tests/simulate/stdlib/malloc-6.c: (Ditto.)
+       * tests/simulate/stdlib/malloc-7.c: (Ditto.)
+
+2010-06-07  Joerg Wunsch <address@hidden>
+
+       Submitted by Stefan Ernst:
+       bug #27243: malloc: small error in comment
+       * stdlib/malloc.c: Fix comment.
+
+2010-06-07  Joerg Wunsch <address@hidden>
+
+       Submitted by Aleksandar Kanchev:
+       bug #27242: realloc: serious error when size shrinks
+       * stdlib/realloc.c: Change freelist calculation.
+       * tests/simulate/regression/bug-27242.c: New file.
+
+2010-06-07  Joerg Wunsch <address@hidden>
+
+       * tests/simulate/stdlib/malloc-4.c: New file.
+
+2010-06-04  Joerg Wunsch <address@hidden>
+
+       Patch submitted by Stefan Ernst:
+       patch #6895: Improved malloc behaviour when expanding used area
+       bug #27235: malloc: Several things go wrong (part 1)
+       * stdlib/malloc.c: Improve allocation strategy.
+       * tests/simulate/regression/bug-27235-1.c: New file.
+
+2010-06-04  Joerg Wunsch <address@hidden>
+
+       Add some initial malloc and realloc tests to test
+       suite.
+       * tests/simulate/stdlib/malloc-1.c: New file.
+       * tests/simulate/stdlib/malloc-2.c: (Ditto.)
+       * tests/simulate/stdlib/malloc-3.c: (Ditto.)
+       * tests/simulate/stdlib/realloc-1.c: (Ditto.)
+
+2010-04-16  Anitha Boyapati <address@hidden>
+
+        Fix bug #28574.
+       * include/avr/iox128d3.h - Modify EVSYS_t and ADC_t structures to 
+         include reserved registers.   
+       * include/avr/iox16d4.h  - Same.
+       * include/avr/iox192d3.h - Same.
+       * include/avr/iox256d3.h - Same.
+       * include/avr/iox32d4.h  - Same.
+       * include/avr/iox64d3.h  - Same.
+
+2010-04-12  Joerg Wunsch <address@hidden>
+
+       * configure.ac (CHECK_BUILTIN_DELAY_CYCLES): Reimplement as a
+       compiler + grep pipeline rather than through AC_LINK_IFELSE, as we
+       cannot rely on a working linker while building the library.
+
+2010-04-12  Joerg Wunsch <address@hidden>
+
+       * devtools/gen-avr-lib-tree.sh: Fix directory name for ATxmega64A1U.
+
+2010-04-06  Anitha Boyapati <address@hidden>
+
+        Fix bug #28584.
+       * include/avr/iocanxx.h - Add word definitions CANIE and CANEN.
+
+2010-04-06  Anitha Boyapati <address@hidden>
+
+        Fix bug #28627.
+       * include/avr/power.h - ATmega32U2 defined for clock_prescale_set.
+
+2010-04-06  Anitha Boyapati <address@hidden>
+
+        Fix bug #28901.
+        * include/avr/iox128a1.h - Removed GPIO and CPU memory map entries.
+        * include/avr/iox128a1u.h - Same.
+        * include/avr/iox128a3.h - Same.
+        * include/avr/iox128d3.h - Same.
+        * include/avr/iox16a4.h - Same.
+        * include/avr/iox16d4.h - Same.
+        * include/avr/iox192a3.h - Same.
+        * include/avr/iox192d3.h - Same.
+        * include/avr/iox256a3.h - Same.
+        * include/avr/iox256a3b.h - Same.
+        * include/avr/iox256d3.h - Same.
+        * include/avr/iox32a4.h - Same.
+        * include/avr/iox32d4.h - Same.
+        * include/avr/iox64a1.h - Same.
+        * include/avr/iox64a3.h - Same.
+        * include/avr/iox64d3.h - Same.
+
+2010-04-05  Eric B. Weddington  <address@hidden>
+
+       Fix for bug #27367.
+       * include/avr/iom8.h: Add RAMSTART definition.
+       * include/avr/iom16.h: Same.
+       * include/avr/iom32.h: Same.
+       * include/avr/iom164.h: Same.
+       * include/avr/iom324.h: Same.
+       * include/avr/iom644.h: Same.
+       * include/avr/iom644p.h: Same.
+       * include/avr/iom328p.h: Same.
+       * include/avr/iom48.h: Same.
+       * include/avr/iom48p.h: Same.
+       * include/avr/iom88.h: Same.
+       * include/avr/iom88p.h: Same.
+       * include/avr/iom168.h: Same.
+       * include/avr/iom168p.h: Same.
+       * include/avr/iom325.h: Same.
+       * include/avr/iom645.h: Same.
+       * include/avr/iom3250.h: Same.
+       * include/avr/iom6450.h: Same.
+       * include/avr/iotn2313.h: Same.
+       * include/avr/iom8515.h: Same.
+       * include/avr/iom8535.h: Same.
+       * include/avr/iotn13.h: Same.
+       * include/avr/iotn24.h: Same.
+       * include/avr/iotn25.h: Same.
+       * include/avr/iotn44.h: Same.
+       * include/avr/iotn45.h: Same.
+       * include/avr/iotn84.h: Same.
+       * include/avr/iotn85.h: Same.
+       * include/avr/iotn261.h: Same.
+       * include/avr/iotn461.h: Same.
+       * include/avr/iotn861.h: Same.
+       * include/avr/iotn88.h: Same.
+       * include/avr/iotn48.h: Same.
+       * include/avr/iom1281.h: Same.
+       * include/avr/iom1284p.h: Same.
+       * NEW: Add to fixed bug list.
+
+2010-03-30  Eric B. Weddington  <address@hidden>
+
+       * crt1/gcrt1.S: Add more interrupt vectors to cover the ATxmega128A1U
+       device.
+
+2010-03-30  Eric B. Weddington  <address@hidden>
+
+       * xml/avrgcc-header: Modify XMEGA portion of script to not generate CPU
+       and GPIO definitions that include references to non-existent structures.
+       This is a partial fix for bug #28901, for future header files.
+
+2010-03-28  Eric B. Weddington  <address@hidden>
+
+       Add support for new device: m3000.
+       * configure.ac: Add support for new device.
+       * devtools/gen-avr-lib-tree.sh: Same.
+       * include/avr/io.h: Same.
+       * doc/api/main_page.dox: Same.
+       * doc/api/using-tools.dox: Same.
+       * include/avr/iom3000.h: New file.
+       * NEWS: Add news item.
+
+2010-03-28  Eric B. Weddington  <address@hidden>
+
+       Add support for new devices: attiny84a, atmega325a, atmega3250a,
+       atmega329a, atmega3290a.
+       * configure.ac: Add support for new devices.
+       * devtools/gen-avr-lib-tree.sh: Same.
+       * include/avr/io.h: Same.
+       * doc/api/main_page.dox: Same.
+       * doc/api/using-tools.dox: Same.
+       * include/avr/power.h: Same.
+       * include/avr/wdt.h: Same.
+       * include/avr/sleep.h: Same.
+       * include/avr/eeprom.h: Same.
+       * NEWS: Add news item.
+
+2010-03-25  Eric B. Weddington  <address@hidden>
+
+       Add support for new architecture: avrtiny10. Add support for new 
devices:
+       attiny4, attiny5, attiny9, attiny10, attiny20, attiny40.
+       * configure.ac: Add support for new devices.
+       * devtools/gen-avr-lib-tree.sh: Same.
+       * include/avr/Makefile.am: Same.
+       * include/avr/io.h: Same.
+       * doc/api/main_page.dox: Same.
+       * doc/api/using-tools.dox: Same.
+       * include/avr/power.h: Same.
+       * include/avr/sleep.h: Same.
+       * NEWS: Add news item.
+
+2010-03-25  Eric B. Weddington  <address@hidden>
+
+       Add support for new devices: ATxmega128A1U, ATxmega64A1U.
+       * configure.ac: Add support for new devices.
+       * devtools/gen-avr-lib-tree.sh: Same.
+       * include/avr/Makefile.am: Same.
+       * include/avr/io.h: Same.
+       * doc/api/main_page.dox: Same.
+       * doc/api/using-tools.dox: Same.
+       * include/avr/power.h: Same.
+       * include/avr/wdt.h: Same.
+       * include/avr/sleep.h: Same.
+       * include/avr/eeprom.h: Same.
+       * NEWS: Add news item.
+
+2010-03-22  Eric B. Weddington  <address@hidden>
+
+       * include/avr/iox64a1u.h: New file.
+
+2010-03-20  Eric B. Weddington  <address@hidden>
+
+       * include/avr/fuse.h: Add definition of FUSES for XMEGA devices.
+       * include/avr/iox128a1u.h: Regenerate file. New definitions, 
corrections.
+
+2010-03-19  Eric B. Weddington  <address@hidden>
+
+       * include/avr/iotn20.h: New file.
+       * include/avr/iotn40.h: New file.
+
+2010-03-17  Joerg Wunsch <address@hidden>
+
+       Probe the compiler for the availability of the
+       __builtin_avr_delay_cycles() function, and modify the header files
+       <util/delay.h> and <avr/builtins.h> appropriately.  Note that the
+       modification is done by setting __HAS_DELAY_CYCLES on top of those
+       files, which has been left overridable from the compiler
+       environment (i.e., commandline -D option) on purpose.  Note also
+       that _delay_us() and _delay_ms() can only use
+       __builtin_avr_delay_cycles() if optimization is enabled as they'd
+       otherwise try to pass a floating-point argument to it which is not
+       allowed.  (The compiler does not seem to be able to convert it
+       into an unsigned long internally, not even with a type cast.)
+       However, not enabling optimization for them yields garbage timing
+       anyway, due to moving the compile-time constant floating-point
+       calculations from the compiler into the AVR.
+       * configure.ac: Add detection of __builtin_avr_delay_cycles
+       * include/util/delay.h.in: repocopied from delay.h
+       * include/util/Makefile.am: added delay.h.in
+       * include/avr/builtins.h.in: New file.
+       * include/avr/Makefile.am: added builtins.h.in
+
+2010-03-11  Eric B. Weddington  <address@hidden>
+
+       Fix bug #28575.
+       * include/avr/iousb162.h (LFUSE_DEFAULT, HFUSE_DEFAULT, EFUSE_DEFAULT):
+       Fix definition.
+       * include/avr/iousb82.h: Same.
+       * include/avr/iousb647.h: Same.
+       * include/avr/iousb646.h: Same.
+       * NEWS: Add to fixed bug list.
+
+2010-03-11  Eric B. Weddington  <address@hidden>
+
+       Fix bug #28812.
+       * include/avr/iotn48.h: Fix values of TWS3-7.
+       * NEWS: Add to fixed bug list.
+
+2010-02-03  Joerg Wunsch <address@hidden>
+
+       bug #28756: Bug in AVR libc 1.6.7 (power.h for 8-bit AVR)
+       * include/avr/power.h (clock_prescale_set): Implement as an inline
+       function rather than a macro so it syntactically becomes a true
+       function.
+
+2010-01-22  Eric B. Weddington  <address@hidden>
+
+       * include/avr/iox128a1u.h: Add new file.
+
+2010-01-21  Joerg Wunsch <address@hidden>
+
+       bug #28688: using_tools.dox fails to build due to extra underscore
+       * doc/api/Makefile.am: added logic to detect which filename
+       doxygen did generate; while being here, fix the table layout as
+       well
+
+2010-01-20  Eric B. Weddington  <address@hidden>
+
+       Rotate ChangeLogs.
+       * ChangeLog-2009: New file.
+       * ChangeLog: Clear for 2010.
+       * Makefile.am (EXTRA_DIST): Add ChangeLog-2009.
+
+For older changes see ChangeLog-2009

Deleted: tags/avr-libc-1_7_0-release/configure.ac
===================================================================
--- trunk/avr-libc/configure.ac 2010-06-16 05:26:35 UTC (rev 2172)
+++ tags/avr-libc-1_7_0-release/configure.ac    2010-06-16 20:02:42 UTC (rev 
2177)
@@ -1,1308 +0,0 @@
-#                                               -*- Autoconf -*-
-#
-# Copyright (c) 2004,  Theodore A. Roth
-# Copyright (c) 2005,2006,2007,2009  Anatoly Sokolov
-# Copyright (c) 2005,2008  Joerg Wunsch
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are met:
-#
-# * Redistributions of source code must retain the above copyright
-#   notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above copyright
-#   notice, this list of conditions and the following disclaimer in
-#   the documentation and/or other materials provided with the
-#   distribution.
-# * Neither the name of the copyright holders nor the names of
-#   contributors may be used to endorse or promote products derived
-#   from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
-#
-# $Id$
-#
-# Process this file with autoconf to produce a configure script.
-#
-
-dnl library versioning -- modify these on releases
-dnl        macro name           value            description
-m4_define([avr_libc_major],    [1])dnl           major version
-m4_define([avr_libc_minor],    [7])dnl           minor version
-m4_define([avr_libc_revision], [0])dnl           revision (dot-dot version)
-m4_define([avr_libc_reldate],  [20090205])dnl    release date
-dnl end of library versioning data
-
-dnl odd minor number marks a development branch, append date to version there
-m4_define([avr_libc_version],
-          avr_libc_major.avr_libc_minor.avr_libc_revision)dnl
-m4_define([avr_libc_version_numeric],
-          m4_eval(10000 * avr_libc_major + dnl
-                    100 * avr_libc_minor + dnl
-                          avr_libc_revision))dnl
-
-AC_INIT(avr-libc, avr_libc_version, address@hidden)
-
-AC_PREREQ(2.59)
-AC_REVISION($Revision$)
-
-AC_CONFIG_SRCDIR([doc/examples/demo/demo.c])
-AC_CONFIG_HEADER([config.h])
-
-dnl substitute M4 macros into shell variables
-AVR_LIBC_MAJOR=avr_libc_major
-AVR_LIBC_MINOR=avr_libc_minor
-AVR_LIBC_REVISION=avr_libc_revision
-AVR_LIBC_RELDATE=avr_libc_reldate
-AVR_LIBC_VERSION=avr_libc_version
-AVR_LIBC_VERSION_NUMERIC=avr_libc_version_numeric
-dnl ...and trigger Makefile.in substitutions
-AC_SUBST(AVR_LIBC_MAJOR)
-AC_SUBST(AVR_LIBC_MINOR)
-AC_SUBST(AVR_LIBC_REVISION)
-AC_SUBST(AVR_LIBC_RELDATE)
-AC_SUBST(AVR_LIBC_VERSION)
-AC_SUBST(AVR_LIBC_VERSION_NUMERIC)
-
-AC_CANONICAL_BUILD
-AC_CANONICAL_HOST
-
-# See if the user specified '--build=`../config.guess` --host=avr' when
-# running ../configure.
-
-AC_MSG_CHECKING([if configuring for cross compile])
-if test "x${build_alias}" = "x${host_alias}"; then
-       if test "x${build_alias}" = "x" ; then
-               build_alias='`./config.guess`'
-       fi
-       AC_MSG_RESULT(no)
-       AC_MSG_WARN()
-       AC_MSG_WARN(AVR-LIBC must be built using an avr cross-compiler.)
-       AC_MSG_WARN(Try configuring with:)
-       AC_MSG_WARN("$0 --build=$build_alias --host=avr")
-       AC_MSG_WARN()
-       AC_MSG_ERROR(aborting configure)
-else
-       AC_MSG_RESULT([yes])
-fi
-
-AC_MSG_CHECKING([if target host is avr])
-case "$host" in
-       avr* )
-               AC_MSG_RESULT([yes])
-               ;;
-       * )
-               AC_MSG_RESULT(no)
-               AC_MSG_WARN()
-               AC_MSG_WARN(Avr-libc must be built using an avr cross-compiler.)
-               AC_MSG_WARN(Try configuring with:)
-               AC_MSG_WARN("$0 --build=$build --host=avr")
-               AC_MSG_WARN()
-               AC_MSG_ERROR(aborting configure)
-               ;;
-esac
-
-## TODO: Write a check for GNU Make
-
-dnl The default check whether the C compiler can create an executable
-dnl is inappropriate for us as it requires an existing library.
-AC_NO_EXECUTABLES
-
-dnl Minimum version of Automake is 1.8.
-dnl We don't want the gzip distribution tarball anymore.
-AM_INIT_AUTOMAKE([1.8 dist-bzip2 no-dist-gzip])
-
-# We don't want touse the cflags from the environment since we need control
-# of this when we're building the libs.
-CFLAGS=""
-
-# Checks for programs.
-
-AC_PROG_CC
-AC_CHECK_TOOL(AS, as, as)
-AM_PROG_AS
-AC_PROG_RANLIB
-AC_CHECK_TOOL(AR, ar, ar)
-
-# Make sure that we found the right avr cross-compiler.
-
-case "${CC}" in
-   *avr-gcc*) ;;
-   *) AC_MSG_ERROR(Wrong C compiler found; check the PATH!) ;;
-esac
-case "${AS}" in
-   *avr-as*) ;;
-   *) AC_MSG_ERROR(Wrong assembler found; check the PATH!) ;;
-esac
-case "${AR}" in
-   *avr-ar*) ;;
-   *) AC_MSG_ERROR(Wrong archiver found; check the PATH!) ;;
-esac
-case "${RANLIB}" in
-   *avr-ranlib*) ;;
-   *) AC_MSG_ERROR(Wrong ranlib found; check the PATH!) ;;
-esac
-
-AC_PROG_INSTALL
-AC_PROG_LN_S
-AC_PROG_MAKE_SET
-
-dnl TODO: Check for various tools used to build the documentation. If anything
-dnl is missing, don't build the docs by default.
-
-dnl Disable building of dox by default since it they may not build properly on
-dnl all systems. This isn't optimal, but how do we work around the user not
-dnl having fig2dev and still build all the formats?
-
-AC_ARG_ENABLE(doc,
-[  --enable-doc            build all doc formats (disabled is default)],
-[case "${enableval}" in
-  yes) enable_doc=yes ;;
-  no)  enable_doc=no ;;
-  *)   AC_MSG_ERROR(bad value ${enableval} for global doc option) ;;
- esac], [enable_doc=no])dnl
-dnl Various documentation options.  By default, we enable all of them,
-dnl i. e. HTML, Postscript, PDF, and Unix-style man pages.
-AC_ARG_ENABLE(html-doc,
-[  --enable-html-doc       build HTML documentation (default)],
-[case "${enableval}" in
-  yes) html_doc=yes ;;
-  no)  html_doc=no ;;
-  *)   AC_MSG_ERROR(bad value ${enableval} for html-doc option) ;;
- esac], [html_doc=yes])dnl
-
-AC_ARG_ENABLE(pdf-doc,
-[  --enable-pdf-doc        build PDF documentation (default)],
-[case "${enableval}" in
-  yes) pdf_doc=yes ;;
-  no)  pdf_doc=no ;;
-  *)   AC_MSG_ERROR(bad value ${enableval} for pdf-doc option) ;;
- esac], [pdf_doc=yes])dnl
-
-dnl Man pages are currently not tunable; they'll be built whenever
-dnl the HTML documentation is built.  However, it can be configured
-dnl whether the result is about to be installed or not.
-AC_ARG_ENABLE(man-doc,
-[  --enable-man-doc        build Unix-style manual pages (default)],
-[case "${enableval}" in
-  yes) man_doc=yes ;;
-  no)  man_doc=no ;;
-  *)   AC_MSG_ERROR(bad value ${enableval} for man-doc option) ;;
- esac], [man_doc=yes])dnl
-
-AC_ARG_ENABLE(versioned-doc,
-[  --enable-versioned-doc  install docs in directory with version name 
(default)],
-[case "${enableval}" in
-  yes) versioned_doc=yes ;;
-  no)  versioned_doc=no ;;
-  *)   AC_MSG_ERROR(bad value ${enableval} for versioned-doc option) ;;
- esac], [versioned_doc=yes])dnl
-
-dnl troth/2002-07-12: The CHECK_DOXYGEN macro should be moved to a config
-dnl dir. I put it here until I figure out how to integrate the config dir.
-
-dnl
-dnl @synopsis CHECK_DOXYGEN
-dnl
-dnl This macro checks if doxygen is installed on the build system
-dnl
-dnl @version Id: check_doxygen.m4,v 1.2 2002/02/10 23:22:40 troth Exp
-dnl @author Theodore A. Roth <address@hidden>
-dnl
-AC_DEFUN([CHECK_DOXYGEN],[dnl
-dnl
-AC_MSG_CHECKING([for doxygen])
-dox_ver=`doxygen --version 2>/dev/null`
-if test "x$dox_ver" = "x"; then
-       AC_MSG_RESULT(no)
-else
-       # FIXME: should also check for dox_ver >= 1.4.1
-       AC_MSG_RESULT(yes)
-       if test "$pdf_doc" = "yes"; then
-               AC_MSG_NOTICE([Enabling PDF docs])
-               TARGET_DOX_PDF=dox-pdf
-               INSTALL_DOX_PDF=install-dox-pdf
-       fi
-       if test "$html_doc" = "yes"; then
-               AC_MSG_NOTICE([Enabling HTML docs])
-               TARGET_DOX_HTML=dox-html
-               INSTALL_DOX_HTML=install-dox-html
-       fi
-dnl The creation of man pages is a side-effect of the HTML
-dnl generation, so a different target is only needed for installation.
-       if test "$man_doc" = "yes"; then
-               AC_MSG_NOTICE([Enabling man pages])
-               TARGET_DOX_HTML=dox-html
-               INSTALL_DOX_MAN=install-dox-man
-       fi
-fi
-dnl
-AC_SUBST(TARGET_DOX_PDF)
-AC_SUBST(TARGET_DOX_HTML)
-AC_SUBST(INSTALL_DOX_PDF)
-AC_SUBST(INSTALL_DOX_HTML)
-AC_SUBST(INSTALL_DOX_MAN)
-])dnl
-
-CHECK_DOXYGEN
-
-dnl
-dnl @synopsis CHECK_PNG_UTILS
-dnl
-dnl This macro checks if pngtopnm and pnmtopng are installed. If they are not
-dnl installed we just fake it with "cat".
-dnl
-dnl We use these in the dox to insert transparency into the png images as such:
-dnl
-dnl   $ pngtopnm foo.png > tmp.pnm
-dnl   $ pnmtopng -transparent white tmp.pnm > foo.png
-dnl
-dnl @version 
-dnl @author Theodore A. Roth <address@hidden> and Eric B. Weddington 
<address@hidden>
-dnl
-AC_DEFUN([CHECK_PNG_UTILS],[dnl
-dnl
-AC_MSG_CHECKING([for pngtopnm])
-has_pngtopnm=`pngtopnm --version 2>&1 | grep -c -i Version`
-if test "$has_pngtopnm" = "1"; then
-       AC_MSG_RESULT(yes)
-       PNGTOPNM="pngtopnm"
-else
-       AC_MSG_RESULT(no)
-       PNGTOPNM="cat"
-fi
-dnl
-AC_MSG_CHECKING([for pnmtopng])
-has_pnmtopng=`pnmtopng --version 2>&1 | grep -c -i Version`
-if test "$has_pnmtopng" = "1"; then
-       AC_MSG_RESULT(yes)
-       PNMTOPNG="pnmtopng"
-else
-       AC_MSG_RESULT(no)
-       PNMTOPNG="cat"
-    PNGTOPNM="cat"
-fi
-AC_SUBST(PNGTOPNM)
-AC_SUBST(PNMTOPNG)
-])dnl
-
-CHECK_PNG_UTILS
-
-if test "$versioned_doc" = "yes"; then
-       DOC_INST_DIR='${DESTDIR}${datadir}/doc/avr-libc-$(VERSION)'
-       AVR_LIBC_USER_MANUAL="avr-libc-user-manual-${VERSION}"
-else
-       DOC_INST_DIR='${DESTDIR}${datadir}/doc/avr-libc'
-       AVR_LIBC_USER_MANUAL="avr-libc-user-manual"
-fi
-
-dnl We only want to build the docs if the user has passed
-dnl "--enable-doc" to configure.
-if test "$enable_doc" = "yes"; then
-       DOCSDIR='api'
-else
-       DOCSDIR=''
-fi
-
-AC_SUBST(DOCSDIR)
-AC_SUBST(AVR_LIBC_USER_MANUAL)
-AC_SUBST(DOC_INST_DIR)
-
-FNO_JUMP_TABLES=""
-AC_SUBST(FNO_JUMP_TABLES)
-
-HAS_DELAY_CYCLES=0
-AC_SUBST(HAS_DELAY_CYCLES)
-
-AC_DEFUN(
-  CHECK_MNO_TABLEJUMP,
-  [
-    old_CC=${CC}
-    old_CFLAGS=${CFLAGS}
-    CFLAGS="-mno-tablejump"
-    CC=`echo "${CC}" | sed 's/-mmcu=avr.//'`
-    AC_MSG_CHECKING(whether ${CC} supports -mno-tablejump)
-    AC_COMPILE_IFELSE(
-      [AC_LANG_SOURCE([],[])],
-      [has_mno_tablejump=yes],
-      [has_mno_tablejump=no]
-    )
-    if test "x$has_mno_tablejump" = "xyes"
-    then
-      FNO_JUMP_TABLES="-mno-tablejump"
-    fi
-    AC_MSG_RESULT($has_mno_tablejump)
-    CC=${old_CC}
-    CFLAGS=${old_CFLAGS}
-  ]
-)
-
-AC_DEFUN(
-  CHECK_FNO_JUMP_TABLES,
-  [
-    old_CC=${CC}
-    old_CFLAGS=${CFLAGS}
-    CFLAGS="-fno-jump-tables"
-    CC=`echo "${CC}" | sed 's/-mmcu=avr.//'`
-    AC_MSG_CHECKING(whether ${CC} supports -fno-jump-tables)
-    AC_COMPILE_IFELSE(
-      [AC_LANG_SOURCE([],[])],
-      [has_fno_jump_tables=yes],
-      [has_fno_jump_tables=no]
-    )
-    if test "x$has_fno_jump_tables" = "xyes"
-    then
-      FNO_JUMP_TABLES="-fno-jump-tables"
-    fi
-    AC_MSG_RESULT($has_fno_jump_tables)
-    CC=${old_CC}
-    CFLAGS=${old_CFLAGS}
-  ]
-)
-
-AC_DEFUN(
-  CHECK_BUILTIN_DELAY_CYCLES,
-  [
-    CC=`echo "${CC}" | sed 's/-mmcu=avr.//'`
-    AC_MSG_CHECKING(whether ${CC} supports __builtin_avr_delay_cycles)
-    echo "extern void __builtin_avr_delay_cycles(unsigned long);\
-    int main(void) { __builtin_avr_delay_cycles(42); return 0; }" |\
-    ${CC} -S -xc -o- - |\
-    grep __builtin_avr_delay_cycles >/dev/null
-    if test "$?" != "0"
-    then
-      HAS_DELAY_CYCLES=1
-      has_delay_cycles="yes"
-    else
-      has_delay_cycles="no"
-    fi
-    AC_MSG_RESULT($has_delay_cycles)
-    CC=${old_CC}
-  ]
-)
-
-CHECK_MNO_TABLEJUMP
-CHECK_FNO_JUMP_TABLES
-CHECK_BUILTIN_DELAY_CYCLES
-
-dnl Some devices are only handled by newer version of gcc. This macro lets us
-dnl probe to see if the installed avr-gcc supports a questionable device.
-AC_DEFUN(
-  CHECK_AVR_DEVICE,
-  [
-    old_CC=${CC}
-    old_CFLAGS=${CFLAGS}
-    CFLAGS="-mmcu=$1"
-    CC=`echo "${CC}" | sed 's/-mmcu=avr.//'`
-    AC_MSG_CHECKING(if ${CC} has support for $1)
-    AC_COMPILE_IFELSE(
-      [AC_LANG_SOURCE([],[])],
-      [has_dev_support=yes],
-      [has_dev_support=no]
-    )
-    if test "x$has_dev_support" = "xyes"
-    then
-      HAS_$1=yes
-    fi
-    AC_MSG_RESULT($has_dev_support)
-    CC=${old_CC}
-    CFLAGS=${old_CFLAGS}
-  ]
-)
-
-
-# avr1
-AM_CONDITIONAL(HAS_avr1, true)
-AM_CONDITIONAL(HAS_at90s1200, true)
-AM_CONDITIONAL(HAS_attiny11, true)
-AM_CONDITIONAL(HAS_attiny12, true)
-AM_CONDITIONAL(HAS_attiny15, true)
-AM_CONDITIONAL(HAS_attiny28, true)
-
-
-# avr2
-AM_CONDITIONAL(HAS_avr2, true)
-AM_CONDITIONAL(HAS_at90s2313, true)
-AM_CONDITIONAL(HAS_at90s2323, true)
-AM_CONDITIONAL(HAS_at90s2333, true)
-AM_CONDITIONAL(HAS_at90s2343, true)
-AM_CONDITIONAL(HAS_at90s4414, true)
-AM_CONDITIONAL(HAS_at90s4433, true)
-AM_CONDITIONAL(HAS_at90s4434, true)
-AM_CONDITIONAL(HAS_at90s8515, true)
-AM_CONDITIONAL(HAS_at90c8534, true)
-AM_CONDITIONAL(HAS_at90s8535, true)
-AM_CONDITIONAL(HAS_attiny22, true)
-AM_CONDITIONAL(HAS_attiny26, true)
-
-
-#avr25
-CHECK_AVR_DEVICE(avr25)
-AM_CONDITIONAL(HAS_avr25, test "x$HAS_avr25" = "xyes")
-
-CHECK_AVR_DEVICE(ata6289)
-AM_CONDITIONAL(HAS_ata6289, test "x$HAS_ata6289" = "xyes")
-
-CHECK_AVR_DEVICE(attiny13)
-AM_CONDITIONAL(HAS_attiny13, test "x$HAS_attiny13" = "xyes")
-
-CHECK_AVR_DEVICE(attiny13a)
-AM_CONDITIONAL(HAS_attiny13a, test "x$HAS_attiny13a" = "xyes")
-
-CHECK_AVR_DEVICE(attiny2313)
-AM_CONDITIONAL(HAS_attiny2313, test "x$HAS_attiny2313" = "xyes")
-
-CHECK_AVR_DEVICE(attiny2313a)
-AM_CONDITIONAL(HAS_attiny2313a, test "x$HAS_attiny2313a" = "xyes")
-
-CHECK_AVR_DEVICE(attiny24)
-AM_CONDITIONAL(HAS_attiny24, test "x$HAS_attiny24" = "xyes")
-
-CHECK_AVR_DEVICE(attiny24a)
-AM_CONDITIONAL(HAS_attiny24a, test "x$HAS_attiny24a" = "xyes")
-
-CHECK_AVR_DEVICE(attiny25)
-AM_CONDITIONAL(HAS_attiny25, test "x$HAS_attiny25" = "xyes")
-
-CHECK_AVR_DEVICE(attiny261)
-AM_CONDITIONAL(HAS_attiny261, test "x$HAS_attiny261" = "xyes")
-
-CHECK_AVR_DEVICE(attiny261a)
-AM_CONDITIONAL(HAS_attiny261a, test "x$HAS_attiny261a" = "xyes")
-
-CHECK_AVR_DEVICE(attiny43u)
-AM_CONDITIONAL(HAS_attiny43u, test "x$HAS_attiny43u" = "xyes")
-
-CHECK_AVR_DEVICE(attiny4313)
-AM_CONDITIONAL(HAS_attiny4313, test "x$HAS_attiny4313" = "xyes")
-
-CHECK_AVR_DEVICE(attiny44)
-AM_CONDITIONAL(HAS_attiny44, test "x$HAS_attiny44" = "xyes")
-
-CHECK_AVR_DEVICE(attiny44a)
-AM_CONDITIONAL(HAS_attiny44a, test "x$HAS_attiny44a" = "xyes")
-
-CHECK_AVR_DEVICE(attiny45)
-AM_CONDITIONAL(HAS_attiny45, test "x$HAS_attiny45" = "xyes")
-
-CHECK_AVR_DEVICE(attiny461)
-AM_CONDITIONAL(HAS_attiny461, test "x$HAS_attiny461" = "xyes")
-
-CHECK_AVR_DEVICE(attiny461a)
-AM_CONDITIONAL(HAS_attiny461a, test "x$HAS_attiny461a" = "xyes")
-
-CHECK_AVR_DEVICE(attiny48)
-AM_CONDITIONAL(HAS_attiny48, test "x$HAS_attiny48" = "xyes")
-
-CHECK_AVR_DEVICE(attiny84)
-AM_CONDITIONAL(HAS_attiny84, test "x$HAS_attiny84" = "xyes")
-
-CHECK_AVR_DEVICE(attiny84a)
-AM_CONDITIONAL(HAS_attiny84a, test "x$HAS_attiny84a" = "xyes")
-
-CHECK_AVR_DEVICE(attiny85)
-AM_CONDITIONAL(HAS_attiny85, test "x$HAS_attiny85" = "xyes")
-
-CHECK_AVR_DEVICE(attiny861)
-AM_CONDITIONAL(HAS_attiny861, test "x$HAS_attiny861" = "xyes")
-
-CHECK_AVR_DEVICE(attiny861a)
-AM_CONDITIONAL(HAS_attiny861a, test "x$HAS_attiny861a" = "xyes")
-
-CHECK_AVR_DEVICE(attiny87)
-AM_CONDITIONAL(HAS_attiny87, test "x$HAS_attiny87" = "xyes")
-
-CHECK_AVR_DEVICE(attiny88)
-AM_CONDITIONAL(HAS_attiny88, test "x$HAS_attiny88" = "xyes")
-
-CHECK_AVR_DEVICE(at86rf401)
-AM_CONDITIONAL(HAS_at86rf401, test "x$HAS_at86rf401" = "xyes")
-
-
-# avr3
-AM_CONDITIONAL(HAS_avr3, true)
-AM_CONDITIONAL(HAS_at43usb320, true)
-AM_CONDITIONAL(HAS_at43usb355, true)
-AM_CONDITIONAL(HAS_at76c711, true)
-
-#avr31
-CHECK_AVR_DEVICE(avr31)
-AM_CONDITIONAL(HAS_avr31, test "x$HAS_avr31" = "xyes")
-
-AM_CONDITIONAL(HAS_atmega103, true)
-
-
-#avr35
-CHECK_AVR_DEVICE(avr35)
-AM_CONDITIONAL(HAS_avr35, test "x$HAS_avr35" = "xyes")
-
-CHECK_AVR_DEVICE(at90usb82)
-AM_CONDITIONAL(HAS_at90usb82, test "x$HAS_at90usb82" = "xyes")
-
-CHECK_AVR_DEVICE(at90usb162)
-AM_CONDITIONAL(HAS_at90usb162, test "x$HAS_at90usb162" = "xyes")
-
-CHECK_AVR_DEVICE(atmega8u2)
-AM_CONDITIONAL(HAS_atmega8u2, test "x$HAS_atmega8u2" = "xyes")
-
-CHECK_AVR_DEVICE(atmega16u2)
-AM_CONDITIONAL(HAS_atmega16u2, test "x$HAS_atmega16u2" = "xyes")
-
-CHECK_AVR_DEVICE(atmega32u2)
-AM_CONDITIONAL(HAS_atmega32u2, test "x$HAS_atmega32u2" = "xyes")
-
-CHECK_AVR_DEVICE(attiny167)
-AM_CONDITIONAL(HAS_attiny167, test "x$HAS_attiny167" = "xyes")
-
-
-# avr4
-AM_CONDITIONAL(HAS_avr4, true)
-AM_CONDITIONAL(HAS_atmega8, true)
-AM_CONDITIONAL(HAS_atmega8515, true)
-AM_CONDITIONAL(HAS_atmega8535, true)
-
-CHECK_AVR_DEVICE(atmega48)
-AM_CONDITIONAL(HAS_atmega48, test "x$HAS_atmega48" = "xyes")
-
-CHECK_AVR_DEVICE(atmega48a)
-AM_CONDITIONAL(HAS_atmega48a, test "x$HAS_atmega48a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega48p)
-AM_CONDITIONAL(HAS_atmega48p, test "x$HAS_atmega48p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega88)
-AM_CONDITIONAL(HAS_atmega88, test "x$HAS_atmega88" = "xyes")
-
-CHECK_AVR_DEVICE(atmega88a)
-AM_CONDITIONAL(HAS_atmega88a, test "x$HAS_atmega88a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega88p)
-AM_CONDITIONAL(HAS_atmega88p, test "x$HAS_atmega88p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega88pa)
-AM_CONDITIONAL(HAS_atmega88pa, test "x$HAS_atmega88pa" = "xyes")
-
-CHECK_AVR_DEVICE(atmega8hva)
-AM_CONDITIONAL(HAS_atmega8hva, test "x$HAS_atmega8hva" = "xyes")
-
-CHECK_AVR_DEVICE(at90pwm1)
-AM_CONDITIONAL(HAS_at90pwm1, test "x$HAS_at90pwm1" = "xyes")
-
-CHECK_AVR_DEVICE(at90pwm2)
-AM_CONDITIONAL(HAS_at90pwm2, test "x$HAS_at90pwm2" = "xyes")
-
-CHECK_AVR_DEVICE(at90pwm2b)
-AM_CONDITIONAL(HAS_at90pwm2b, test "x$HAS_at90pwm2b" = "xyes")
-
-CHECK_AVR_DEVICE(at90pwm3)
-AM_CONDITIONAL(HAS_at90pwm3, test "x$HAS_at90pwm3" = "xyes")
-
-CHECK_AVR_DEVICE(at90pwm3b)
-AM_CONDITIONAL(HAS_at90pwm3b, test "x$HAS_at90pwm3b" = "xyes")
-
-CHECK_AVR_DEVICE(at90pwm81)
-AM_CONDITIONAL(HAS_at90pwm81, test "x$HAS_at90pwm81" = "xyes")
-
-
-# avr5
-AM_CONDITIONAL(HAS_avr5, true)
-
-CHECK_AVR_DEVICE(at90can32)
-AM_CONDITIONAL(HAS_at90can32, test "x$HAS_at90can32" = "xyes")
-
-CHECK_AVR_DEVICE(at90can64)
-AM_CONDITIONAL(HAS_at90can64, test "x$HAS_at90can64" = "xyes")
-
-CHECK_AVR_DEVICE(at90scr100)
-AM_CONDITIONAL(HAS_at90scr100, test "x$HAS_at90scr100" = "xyes")
-
-CHECK_AVR_DEVICE(at90usb646)
-AM_CONDITIONAL(HAS_at90usb646, test "x$HAS_at90usb646" = "xyes")
-
-CHECK_AVR_DEVICE(at90usb647)
-AM_CONDITIONAL(HAS_at90usb647, test "x$HAS_at90usb647" = "xyes")
-
-CHECK_AVR_DEVICE(at90pwm316)
-AM_CONDITIONAL(HAS_at90pwm316, test "x$HAS_at90pwm316" = "xyes")
-
-CHECK_AVR_DEVICE(at90pwm216)
-AM_CONDITIONAL(HAS_at90pwm216, test "x$HAS_at90pwm216" = "xyes")
-
-CHECK_AVR_DEVICE(at94k)
-AM_CONDITIONAL(HAS_at94k, test "x$HAS_at94k" = "xyes")
-
-CHECK_AVR_DEVICE(atmega16)
-AM_CONDITIONAL(HAS_atmega16, test "x$HAS_atmega16" = "xyes")
-
-CHECK_AVR_DEVICE(atmega16a)
-AM_CONDITIONAL(HAS_atmega16a, test "x$HAS_atmega16a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega161)
-AM_CONDITIONAL(HAS_atmega161, test "x$HAS_atmega161" = "xyes")
-
-CHECK_AVR_DEVICE(atmega162)
-AM_CONDITIONAL(HAS_atmega162, test "x$HAS_atmega162" = "xyes")
-
-CHECK_AVR_DEVICE(atmega163)
-AM_CONDITIONAL(HAS_atmega163, test "x$HAS_atmega163" = "xyes")
-
-CHECK_AVR_DEVICE(atmega164a)
-AM_CONDITIONAL(HAS_atmega164a, test "x$HAS_atmega164a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega164p)
-AM_CONDITIONAL(HAS_atmega164p, test "x$HAS_atmega164p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega165)
-AM_CONDITIONAL(HAS_atmega165, test "x$HAS_atmega165" = "xyes")
-
-CHECK_AVR_DEVICE(atmega165a)
-AM_CONDITIONAL(HAS_atmega165a, test "x$HAS_atmega165a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega165p)
-AM_CONDITIONAL(HAS_atmega165p, test "x$HAS_atmega165p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega168)
-AM_CONDITIONAL(HAS_atmega168, test "x$HAS_atmega168" = "xyes")
-
-CHECK_AVR_DEVICE(atmega168a)
-AM_CONDITIONAL(HAS_atmega168a, test "x$HAS_atmega168a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega168p)
-AM_CONDITIONAL(HAS_atmega168p, test "x$HAS_atmega168p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega169)
-AM_CONDITIONAL(HAS_atmega169, test "x$HAS_atmega169" = "xyes")
-
-CHECK_AVR_DEVICE(atmega169a)
-AM_CONDITIONAL(HAS_atmega169a, test "x$HAS_atmega169a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega169p)
-AM_CONDITIONAL(HAS_atmega169p, test "x$HAS_atmega169p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega169pa)
-AM_CONDITIONAL(HAS_atmega169pa, test "x$HAS_atmega169pa" = "xyes")
-
-CHECK_AVR_DEVICE(atmega16hva)
-AM_CONDITIONAL(HAS_atmega16hva, test "x$HAS_atmega16hva" = "xyes")
-
-CHECK_AVR_DEVICE(atmega16hva2)
-AM_CONDITIONAL(HAS_atmega16hva2, test "x$HAS_atmega16hva2" = "xyes")
-
-CHECK_AVR_DEVICE(atmega16hvb)
-AM_CONDITIONAL(HAS_atmega16hvb, test "x$HAS_atmega16hvb" = "xyes")
-
-CHECK_AVR_DEVICE(atmega16m1)
-AM_CONDITIONAL(HAS_atmega16m1, test "x$HAS_atmega16m1" = "xyes")
-
-CHECK_AVR_DEVICE(atmega16u4)
-AM_CONDITIONAL(HAS_atmega16u4, test "x$HAS_atmega16u4" = "xyes")
-
-CHECK_AVR_DEVICE(atmega32)
-AM_CONDITIONAL(HAS_atmega32, test "x$HAS_atmega32" = "xyes")
-
-CHECK_AVR_DEVICE(atmega323)
-AM_CONDITIONAL(HAS_atmega323, test "x$HAS_atmega323" = "xyes")
-
-CHECK_AVR_DEVICE(atmega324a)
-AM_CONDITIONAL(HAS_atmega324a, test "x$HAS_atmega324a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega324p)
-AM_CONDITIONAL(HAS_atmega324p, test "x$HAS_atmega324p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega324pa)
-AM_CONDITIONAL(HAS_atmega324pa, test "x$HAS_atmega324pa" = "xyes")
-
-CHECK_AVR_DEVICE(atmega325)
-AM_CONDITIONAL(HAS_atmega325, test "x$HAS_atmega325" = "xyes")
-
-CHECK_AVR_DEVICE(atmega325a)
-AM_CONDITIONAL(HAS_atmega325a, test "x$HAS_atmega325a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega325p)
-AM_CONDITIONAL(HAS_atmega325p, test "x$HAS_atmega325p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega3250)
-AM_CONDITIONAL(HAS_atmega3250, test "x$HAS_atmega3250" = "xyes")
-
-CHECK_AVR_DEVICE(atmega3250a)
-AM_CONDITIONAL(HAS_atmega3250a, test "x$HAS_atmega3250a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega3250p)
-AM_CONDITIONAL(HAS_atmega3250p, test "x$HAS_atmega3250p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega328)
-AM_CONDITIONAL(HAS_atmega328, test "x$HAS_atmega328" = "xyes")
-
-CHECK_AVR_DEVICE(atmega328p)
-AM_CONDITIONAL(HAS_atmega328p, test "x$HAS_atmega328p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega329)
-AM_CONDITIONAL(HAS_atmega329, test "x$HAS_atmega329" = "xyes")
-
-CHECK_AVR_DEVICE(atmega329a)
-AM_CONDITIONAL(HAS_atmega329a, test "x$HAS_atmega329a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega329p)
-AM_CONDITIONAL(HAS_atmega329p, test "x$HAS_atmega329p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega329pa)
-AM_CONDITIONAL(HAS_atmega329pa, test "x$HAS_atmega329pa" = "xyes")
-
-CHECK_AVR_DEVICE(atmega3290)
-AM_CONDITIONAL(HAS_atmega3290, test "x$HAS_atmega3290" = "xyes")
-
-CHECK_AVR_DEVICE(atmega3290a)
-AM_CONDITIONAL(HAS_atmega3290a, test "x$HAS_atmega3290a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega3290p)
-AM_CONDITIONAL(HAS_atmega3290p, test "x$HAS_atmega3290p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega32c1)
-AM_CONDITIONAL(HAS_atmega32c1, test "x$HAS_atmega32c1" = "xyes")
-
-CHECK_AVR_DEVICE(atmega32hvb)
-AM_CONDITIONAL(HAS_atmega32hvb, test "x$HAS_atmega32hvb" = "xyes")
-
-CHECK_AVR_DEVICE(atmega32m1)
-AM_CONDITIONAL(HAS_atmega32m1, test "x$HAS_atmega32m1" = "xyes")
-
-CHECK_AVR_DEVICE(atmega32u4)
-AM_CONDITIONAL(HAS_atmega32u4, test "x$HAS_atmega32u4" = "xyes")
-
-CHECK_AVR_DEVICE(atmega32u6)
-AM_CONDITIONAL(HAS_atmega32u6, test "x$HAS_atmega32u6" = "xyes")
-
-CHECK_AVR_DEVICE(atmega406)
-AM_CONDITIONAL(HAS_atmega406, test "x$HAS_atmega406" = "xyes")
-
-CHECK_AVR_DEVICE(atmega64)
-AM_CONDITIONAL(HAS_atmega64, test "x$HAS_atmega64" = "xyes")
-
-CHECK_AVR_DEVICE(atmega640)
-AM_CONDITIONAL(HAS_atmega640, test "x$HAS_atmega640" = "xyes")
-
-CHECK_AVR_DEVICE(atmega644)
-AM_CONDITIONAL(HAS_atmega644, test "x$HAS_atmega644" = "xyes")
-
-CHECK_AVR_DEVICE(atmega644a)
-AM_CONDITIONAL(HAS_atmega644a, test "x$HAS_atmega644a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega644p)
-AM_CONDITIONAL(HAS_atmega644p, test "x$HAS_atmega644p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega644pa)
-AM_CONDITIONAL(HAS_atmega644pa, test "x$HAS_atmega644pa" = "xyes")
-
-CHECK_AVR_DEVICE(atmega645)
-AM_CONDITIONAL(HAS_atmega645, test "x$HAS_atmega645" = "xyes")
-
-CHECK_AVR_DEVICE(atmega645a)
-AM_CONDITIONAL(HAS_atmega645a, test "x$HAS_atmega645a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega645p)
-AM_CONDITIONAL(HAS_atmega645p, test "x$HAS_atmega645p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega6450)
-AM_CONDITIONAL(HAS_atmega6450, test "x$HAS_atmega6450" = "xyes")
-
-CHECK_AVR_DEVICE(atmega6450a)
-AM_CONDITIONAL(HAS_atmega6450a, test "x$HAS_atmega6450a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega6450p)
-AM_CONDITIONAL(HAS_atmega6450p, test "x$HAS_atmega6450p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega649)
-AM_CONDITIONAL(HAS_atmega649, test "x$HAS_atmega649" = "xyes")
-
-CHECK_AVR_DEVICE(atmega649a)
-AM_CONDITIONAL(HAS_atmega649a, test "x$HAS_atmega649a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega649p)
-AM_CONDITIONAL(HAS_atmega649p, test "x$HAS_atmega649p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega6490)
-AM_CONDITIONAL(HAS_atmega6490, test "x$HAS_atmega6490" = "xyes")
-
-CHECK_AVR_DEVICE(atmega6490a)
-AM_CONDITIONAL(HAS_atmega6490a, test "x$HAS_atmega6490a" = "xyes")
-
-CHECK_AVR_DEVICE(atmega6490p)
-AM_CONDITIONAL(HAS_atmega6490p, test "x$HAS_atmega6490p" = "xyes")
-
-CHECK_AVR_DEVICE(atmega64c1)
-AM_CONDITIONAL(HAS_atmega64c1, test "x$HAS_atmega64c1" = "xyes")
-
-CHECK_AVR_DEVICE(atmega64hve)
-AM_CONDITIONAL(HAS_atmega64hve, test "x$HAS_atmega64hve" = "xyes")
-
-CHECK_AVR_DEVICE(atmega64m1)
-AM_CONDITIONAL(HAS_atmega64m1, test "x$HAS_atmega64m1" = "xyes")
-
-CHECK_AVR_DEVICE(atmega128rfa1)
-AM_CONDITIONAL(HAS_atmega128rfa1, test "x$HAS_atmega128rfa1" = "xyes")
-
-CHECK_AVR_DEVICE(m3000)
-AM_CONDITIONAL(HAS_m3000, test "x$HAS_m3000" = "xyes")
-
-
-
-#avr51
-CHECK_AVR_DEVICE(avr51)
-AM_CONDITIONAL(HAS_avr51, test "x$HAS_avr51" = "xyes")
-
-AM_CONDITIONAL(HAS_atmega128, true)
-
-CHECK_AVR_DEVICE(atmega1280)
-AM_CONDITIONAL(HAS_atmega1280, test "x$HAS_atmega1280" = "xyes")
-
-CHECK_AVR_DEVICE(atmega1281)
-AM_CONDITIONAL(HAS_atmega1281, test "x$HAS_atmega1281" = "xyes")
-
-CHECK_AVR_DEVICE(atmega1284p)
-AM_CONDITIONAL(HAS_atmega1284p, test "x$HAS_atmega1284p" = "xyes")
-
-CHECK_AVR_DEVICE(at90can128)
-AM_CONDITIONAL(HAS_at90can128, test "x$HAS_at90can128" = "xyes")
-
-CHECK_AVR_DEVICE(at90usb1286)
-AM_CONDITIONAL(HAS_at90usb1286, test "x$HAS_at90usb1286" = "xyes")
-
-CHECK_AVR_DEVICE(at90usb1287)
-AM_CONDITIONAL(HAS_at90usb1287, test "x$HAS_at90usb1287" = "xyes")
-
-
-# avr6
-CHECK_AVR_DEVICE(avr6)
-AM_CONDITIONAL(HAS_avr6, test "x$HAS_avr6" = "xyes")
-
-CHECK_AVR_DEVICE(atmega2560)
-AM_CONDITIONAL(HAS_atmega2560, test "x$HAS_atmega2560" = "xyes")
-
-CHECK_AVR_DEVICE(atmega2561)
-AM_CONDITIONAL(HAS_atmega2561, test "x$HAS_atmega2561" = "xyes")
-
-
-# avrxmega2
-CHECK_AVR_DEVICE(avrxmega2)
-AM_CONDITIONAL(HAS_avrxmega2, test "x$HAS_avrxmega2" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega16a4)
-AM_CONDITIONAL(HAS_atxmega16a4, test "x$HAS_atxmega16a4" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega16d4)
-AM_CONDITIONAL(HAS_atxmega16d4, test "x$HAS_atxmega16d4" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega32a4)
-AM_CONDITIONAL(HAS_atxmega32a4, test "x$HAS_atxmega32a4" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega32d4)
-AM_CONDITIONAL(HAS_atxmega32d4, test "x$HAS_atxmega32d4" = "xyes")
-
-
-# avrxmega4
-CHECK_AVR_DEVICE(avrxmega4)
-AM_CONDITIONAL(HAS_avrxmega4, test "x$HAS_avrxmega4" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega64a3)
-AM_CONDITIONAL(HAS_atxmega64a3, test "x$HAS_atxmega64a3" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega64d3)
-AM_CONDITIONAL(HAS_atxmega64d3, test "x$HAS_atxmega64d3" = "xyes")
-
-
-# avrxmega5
-CHECK_AVR_DEVICE(avrxmega5)
-AM_CONDITIONAL(HAS_avrxmega5, test "x$HAS_avrxmega5" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega64a1)
-AM_CONDITIONAL(HAS_atxmega64a1, test "x$HAS_atxmega64a1" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega64a1u)
-AM_CONDITIONAL(HAS_atxmega64a1u, test "x$HAS_atxmega64a1u" = "xyes")
-
-
-# avrxmega6
-CHECK_AVR_DEVICE(avrxmega6)
-AM_CONDITIONAL(HAS_avrxmega6, test "x$HAS_avrxmega6" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega128a3)
-AM_CONDITIONAL(HAS_atxmega128a3, test "x$HAS_atxmega128a3" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega128d3)
-AM_CONDITIONAL(HAS_atxmega128d3, test "x$HAS_atxmega128d3" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega192a3)
-AM_CONDITIONAL(HAS_atxmega192a3, test "x$HAS_atxmega192a3" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega192d3)
-AM_CONDITIONAL(HAS_atxmega192d3, test "x$HAS_atxmega192d3" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega256a3)
-AM_CONDITIONAL(HAS_atxmega256a3, test "x$HAS_atxmega256a3" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega256a3b)
-AM_CONDITIONAL(HAS_atxmega256a3b, test "x$HAS_atxmega256a3b" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega256d3)
-AM_CONDITIONAL(HAS_atxmega256d3, test "x$HAS_atxmega256d3" = "xyes")
-
-
-# avrxmega7
-CHECK_AVR_DEVICE(avrxmega7)
-AM_CONDITIONAL(HAS_avrxmega7, test "x$HAS_avrxmega7" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega128a1)
-AM_CONDITIONAL(HAS_atxmega128a1, test "x$HAS_atxmega128a1" = "xyes")
-
-CHECK_AVR_DEVICE(atxmega128a1u)
-AM_CONDITIONAL(HAS_atxmega128a1u, test "x$HAS_atxmega128a1u" = "xyes")
-
-
-# avrtiny10
-CHECK_AVR_DEVICE(avrtiny10)
-AM_CONDITIONAL(HAS_avrtiny10, test "x$HAS_avrtiny10" = "xyes")
-
-CHECK_AVR_DEVICE(attiny4)
-AM_CONDITIONAL(HAS_attiny4, test "x$HAS_attiny4" = "xyes")
-
-CHECK_AVR_DEVICE(attiny5)
-AM_CONDITIONAL(HAS_attiny5, test "x$HAS_attiny5" = "xyes")
-
-CHECK_AVR_DEVICE(attiny9)
-AM_CONDITIONAL(HAS_attiny9, test "x$HAS_attiny9" = "xyes")
-
-CHECK_AVR_DEVICE(attiny10)
-AM_CONDITIONAL(HAS_attiny10, test "x$HAS_attiny10" = "xyes")
-
-CHECK_AVR_DEVICE(attiny20)
-AM_CONDITIONAL(HAS_attiny20, test "x$HAS_attiny20" = "xyes")
-
-CHECK_AVR_DEVICE(attiny40)
-AM_CONDITIONAL(HAS_attiny40, test "x$HAS_attiny40" = "xyes")
-
-
-
-
-# Generate all files from *.in sources.
-
-AC_CONFIG_FILES([
-       Makefile
-       avr-libc.spec
-       avr/Makefile
-       avr/lib/Makefile
-       common/Makefile
-       crt1/Makefile
-       doc/Makefile
-       doc/api/Makefile
-       doc/examples/Makefile
-       include/Makefile
-       include/avr/Makefile
-       include/avr/builtins.h
-       include/compat/Makefile
-       include/util/Makefile
-       include/util/delay.h
-       libc/Makefile
-       libc/misc/Makefile
-       libc/pmstring/Makefile
-       libc/stdio/Makefile
-       libc/stdlib/Makefile
-       libc/string/Makefile
-       libm/Makefile
-       libm/fplib/Makefile
-       scripts/Makefile
-       devtools/Makefile
-])
-
-#avr1 and avr2
-AC_CONFIG_FILES([
-       avr/lib/avr2/Makefile
-       avr/lib/avr2/at90s1200/Makefile
-       avr/lib/avr2/at90s2313/Makefile
-       avr/lib/avr2/at90s2323/Makefile
-       avr/lib/avr2/at90s2333/Makefile
-       avr/lib/avr2/at90s2343/Makefile
-       avr/lib/avr2/at90s4414/Makefile
-       avr/lib/avr2/at90s4433/Makefile
-       avr/lib/avr2/at90s4434/Makefile
-       avr/lib/avr2/at90s8515/Makefile
-       avr/lib/avr2/at90c8534/Makefile
-       avr/lib/avr2/at90s8535/Makefile
-       avr/lib/avr2/attiny11/Makefile
-       avr/lib/avr2/attiny12/Makefile
-       avr/lib/avr2/attiny13/Makefile
-       avr/lib/avr2/attiny15/Makefile
-       avr/lib/avr2/attiny22/Makefile
-       avr/lib/avr2/attiny24/Makefile
-       avr/lib/avr2/attiny25/Makefile
-       avr/lib/avr2/attiny26/Makefile
-       avr/lib/avr2/attiny261/Makefile
-       avr/lib/avr2/attiny28/Makefile
-       avr/lib/avr2/attiny44/Makefile
-       avr/lib/avr2/attiny45/Makefile
-       avr/lib/avr2/attiny461/Makefile
-       avr/lib/avr2/attiny84/Makefile
-       avr/lib/avr2/attiny85/Makefile
-       avr/lib/avr2/attiny861/Makefile
-       avr/lib/avr2/attiny2313/Makefile
-       avr/lib/avr2/at86rf401/Makefile
-])
-
-#avr25
-AC_CONFIG_FILES([
-       avr/lib/avr25/Makefile
-       avr/lib/avr25/at86rf401/Makefile
-       avr/lib/avr25/ata6289/Makefile
-       avr/lib/avr25/attiny13/Makefile
-       avr/lib/avr25/attiny13a/Makefile
-       avr/lib/avr25/attiny2313/Makefile
-       avr/lib/avr25/attiny2313a/Makefile
-       avr/lib/avr25/attiny24/Makefile
-       avr/lib/avr25/attiny24a/Makefile
-       avr/lib/avr25/attiny25/Makefile
-       avr/lib/avr25/attiny261/Makefile
-       avr/lib/avr25/attiny261a/Makefile
-       avr/lib/avr25/attiny4313/Makefile
-       avr/lib/avr25/attiny43u/Makefile
-       avr/lib/avr25/attiny44/Makefile
-       avr/lib/avr25/attiny44a/Makefile
-       avr/lib/avr25/attiny45/Makefile
-       avr/lib/avr25/attiny461/Makefile
-       avr/lib/avr25/attiny461a/Makefile
-       avr/lib/avr25/attiny48/Makefile
-       avr/lib/avr25/attiny84/Makefile
-       avr/lib/avr25/attiny84a/Makefile
-       avr/lib/avr25/attiny85/Makefile
-       avr/lib/avr25/attiny861/Makefile
-       avr/lib/avr25/attiny861a/Makefile
-       avr/lib/avr25/attiny87/Makefile
-       avr/lib/avr25/attiny88/Makefile
-])
-
-#avr3
-AC_CONFIG_FILES([
-       avr/lib/avr3/Makefile
-       avr/lib/avr3/atmega103/Makefile
-       avr/lib/avr3/at43usb320/Makefile
-       avr/lib/avr3/at43usb355/Makefile
-       avr/lib/avr3/at76c711/Makefile
-       avr/lib/avr3/at90usb82/Makefile
-       avr/lib/avr3/at90usb162/Makefile
-])
-
-#avr31
-AC_CONFIG_FILES([
-       avr/lib/avr31/Makefile
-       avr/lib/avr31/atmega103/Makefile
-       avr/lib/avr31/at43usb320/Makefile
-])
-
-#avr35
-AC_CONFIG_FILES([
-       avr/lib/avr35/Makefile
-       avr/lib/avr35/at90usb82/Makefile
-       avr/lib/avr35/at90usb162/Makefile
-       avr/lib/avr35/atmega8u2/Makefile
-       avr/lib/avr35/atmega16u2/Makefile
-       avr/lib/avr35/atmega32u2/Makefile
-       avr/lib/avr35/attiny167/Makefile
-])
-
-#avr4
-AC_CONFIG_FILES([
-       avr/lib/avr4/Makefile
-       avr/lib/avr4/atmega48/Makefile
-       avr/lib/avr4/atmega48a/Makefile
-       avr/lib/avr4/atmega48p/Makefile
-       avr/lib/avr4/atmega8/Makefile
-       avr/lib/avr4/atmega88/Makefile
-       avr/lib/avr4/atmega88a/Makefile
-       avr/lib/avr4/atmega88p/Makefile
-       avr/lib/avr4/atmega88pa/Makefile
-       avr/lib/avr4/atmega8515/Makefile
-       avr/lib/avr4/atmega8535/Makefile
-       avr/lib/avr4/atmega8hva/Makefile
-       avr/lib/avr4/at90pwm1/Makefile
-       avr/lib/avr4/at90pwm2/Makefile
-       avr/lib/avr4/at90pwm2b/Makefile
-       avr/lib/avr4/at90pwm3/Makefile
-       avr/lib/avr4/at90pwm3b/Makefile
-       avr/lib/avr4/at90pwm81/Makefile
-])
-
-#avr5
-AC_CONFIG_FILES([
-       avr/lib/avr5/Makefile
-       avr/lib/avr5/at90can32/Makefile
-       avr/lib/avr5/at90can64/Makefile
-       avr/lib/avr5/at90can128/Makefile
-       avr/lib/avr5/at90pwm216/Makefile
-       avr/lib/avr5/at90pwm316/Makefile
-       avr/lib/avr5/at90scr100/Makefile
-       avr/lib/avr5/at90usb646/Makefile
-       avr/lib/avr5/at90usb647/Makefile
-       avr/lib/avr5/at90usb1286/Makefile
-       avr/lib/avr5/at90usb1287/Makefile
-       avr/lib/avr5/at94k/Makefile 
-       avr/lib/avr5/atmega16/Makefile
-       avr/lib/avr5/atmega16a/Makefile
-       avr/lib/avr5/atmega161/Makefile
-       avr/lib/avr5/atmega162/Makefile
-       avr/lib/avr5/atmega163/Makefile
-       avr/lib/avr5/atmega164a/Makefile
-       avr/lib/avr5/atmega164p/Makefile
-       avr/lib/avr5/atmega165/Makefile
-       avr/lib/avr5/atmega165a/Makefile
-       avr/lib/avr5/atmega165p/Makefile
-       avr/lib/avr5/atmega168/Makefile
-       avr/lib/avr5/atmega168a/Makefile
-       avr/lib/avr5/atmega168p/Makefile
-       avr/lib/avr5/atmega169/Makefile
-       avr/lib/avr5/atmega169a/Makefile
-       avr/lib/avr5/atmega169p/Makefile
-       avr/lib/avr5/atmega169pa/Makefile
-       avr/lib/avr5/atmega16hva/Makefile
-       avr/lib/avr5/atmega16hva2/Makefile
-       avr/lib/avr5/atmega16hvb/Makefile
-       avr/lib/avr5/atmega16m1/Makefile
-       avr/lib/avr5/atmega16u4/Makefile
-       avr/lib/avr5/atmega32/Makefile
-       avr/lib/avr5/atmega323/Makefile
-       avr/lib/avr5/atmega324a/Makefile
-       avr/lib/avr5/atmega324p/Makefile
-       avr/lib/avr5/atmega324pa/Makefile
-       avr/lib/avr5/atmega325/Makefile
-       avr/lib/avr5/atmega325a/Makefile
-       avr/lib/avr5/atmega325p/Makefile
-       avr/lib/avr5/atmega3250/Makefile
-       avr/lib/avr5/atmega3250a/Makefile
-       avr/lib/avr5/atmega3250p/Makefile
-       avr/lib/avr5/atmega328/Makefile
-       avr/lib/avr5/atmega328p/Makefile
-       avr/lib/avr5/atmega329/Makefile
-       avr/lib/avr5/atmega329a/Makefile
-       avr/lib/avr5/atmega329p/Makefile
-       avr/lib/avr5/atmega329pa/Makefile
-       avr/lib/avr5/atmega3290/Makefile
-       avr/lib/avr5/atmega3290a/Makefile
-       avr/lib/avr5/atmega3290p/Makefile
-       avr/lib/avr5/atmega32c1/Makefile
-       avr/lib/avr5/atmega32hvb/Makefile
-       avr/lib/avr5/atmega32m1/Makefile
-       avr/lib/avr5/atmega32u4/Makefile
-       avr/lib/avr5/atmega32u6/Makefile
-       avr/lib/avr5/atmega406/Makefile
-       avr/lib/avr5/atmega64/Makefile
-       avr/lib/avr5/atmega640/Makefile
-       avr/lib/avr5/atmega644/Makefile
-       avr/lib/avr5/atmega644a/Makefile
-       avr/lib/avr5/atmega644p/Makefile
-       avr/lib/avr5/atmega644pa/Makefile
-       avr/lib/avr5/atmega645/Makefile
-       avr/lib/avr5/atmega645a/Makefile
-       avr/lib/avr5/atmega645p/Makefile
-       avr/lib/avr5/atmega6450/Makefile
-       avr/lib/avr5/atmega6450a/Makefile
-       avr/lib/avr5/atmega6450p/Makefile
-       avr/lib/avr5/atmega649/Makefile
-       avr/lib/avr5/atmega649a/Makefile
-       avr/lib/avr5/atmega649p/Makefile
-       avr/lib/avr5/atmega6490/Makefile
-       avr/lib/avr5/atmega6490a/Makefile
-       avr/lib/avr5/atmega6490p/Makefile
-       avr/lib/avr5/atmega64c1/Makefile
-       avr/lib/avr5/atmega64hve/Makefile
-       avr/lib/avr5/atmega64m1/Makefile
-       avr/lib/avr5/atmega128/Makefile
-       avr/lib/avr5/atmega1280/Makefile
-       avr/lib/avr5/atmega1281/Makefile
-       avr/lib/avr5/atmega1284p/Makefile
-       avr/lib/avr5/atmega128rfa1/Makefile
-       avr/lib/avr5/m3000/Makefile
-])
-
-#avr51
-AC_CONFIG_FILES([
-       avr/lib/avr51/Makefile
-       avr/lib/avr51/atmega128/Makefile
-       avr/lib/avr51/atmega1280/Makefile
-       avr/lib/avr51/atmega1281/Makefile
-       avr/lib/avr51/atmega1284p/Makefile
-       avr/lib/avr51/atmega128rfa1/Makefile
-       avr/lib/avr51/at90can128/Makefile
-       avr/lib/avr51/at90usb1286/Makefile
-       avr/lib/avr51/at90usb1287/Makefile
-])
-
-#avr6
-AC_CONFIG_FILES([
-       avr/lib/avr6/Makefile
-       avr/lib/avr6/atmega2560/Makefile
-       avr/lib/avr6/atmega2561/Makefile
-])
-
-# avrxmega2
-AC_CONFIG_FILES([
-       avr/lib/avrxmega2/Makefile
-       avr/lib/avrxmega2/atxmega16a4/Makefile
-       avr/lib/avrxmega2/atxmega16d4/Makefile
-       avr/lib/avrxmega2/atxmega32a4/Makefile
-       avr/lib/avrxmega2/atxmega32d4/Makefile
-])
-
-# avrxmega4
-AC_CONFIG_FILES([
-       avr/lib/avrxmega4/Makefile
-       avr/lib/avrxmega4/atxmega64a3/Makefile
-       avr/lib/avrxmega4/atxmega64d3/Makefile
-])
-
-# avrxmega5
-AC_CONFIG_FILES([
-       avr/lib/avrxmega5/Makefile
-       avr/lib/avrxmega5/atxmega64a1/Makefile
-       avr/lib/avrxmega5/atxmega64a1u/Makefile
-])
-
-# avrxmega6
-AC_CONFIG_FILES([
-       avr/lib/avrxmega6/Makefile
-       avr/lib/avrxmega6/atxmega128a3/Makefile
-       avr/lib/avrxmega6/atxmega128d3/Makefile
-       avr/lib/avrxmega6/atxmega192a3/Makefile
-       avr/lib/avrxmega6/atxmega192d3/Makefile
-       avr/lib/avrxmega6/atxmega256a3/Makefile
-       avr/lib/avrxmega6/atxmega256a3b/Makefile
-       avr/lib/avrxmega6/atxmega256d3/Makefile
-])
-
-# avrxmega7
-AC_CONFIG_FILES([
-       avr/lib/avrxmega7/Makefile
-       avr/lib/avrxmega7/atxmega128a1/Makefile
-       avr/lib/avrxmega7/atxmega128a1u/Makefile
-])
-
-
-# avrtiny10
-AC_CONFIG_FILES([
-       avr/lib/avrtiny10/Makefile
-       avr/lib/avrtiny10/attiny4/Makefile
-       avr/lib/avrtiny10/attiny5/Makefile
-       avr/lib/avrtiny10/attiny9/Makefile
-       avr/lib/avrtiny10/attiny10/Makefile
-       avr/lib/avrtiny10/attiny20/Makefile
-       avr/lib/avrtiny10/attiny40/Makefile
-])
-
-
-AC_OUTPUT

Copied: tags/avr-libc-1_7_0-release/configure.ac (from rev 2174, 
trunk/avr-libc/configure.ac)
===================================================================
--- tags/avr-libc-1_7_0-release/configure.ac                            (rev 0)
+++ tags/avr-libc-1_7_0-release/configure.ac    2010-06-16 20:02:42 UTC (rev 
2177)
@@ -0,0 +1,1308 @@
+#                                               -*- Autoconf -*-
+#
+# Copyright (c) 2004,  Theodore A. Roth
+# Copyright (c) 2005,2006,2007,2009  Anatoly Sokolov
+# Copyright (c) 2005,2008  Joerg Wunsch
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in
+#   the documentation and/or other materials provided with the
+#   distribution.
+# * Neither the name of the copyright holders nor the names of
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+# $Id$
+#
+# Process this file with autoconf to produce a configure script.
+#
+
+dnl library versioning -- modify these on releases
+dnl        macro name           value            description
+m4_define([avr_libc_major],    [1])dnl           major version
+m4_define([avr_libc_minor],    [7])dnl           minor version
+m4_define([avr_libc_revision], [0])dnl           revision (dot-dot version)
+m4_define([avr_libc_reldate],  [20100616])dnl    release date
+dnl end of library versioning data
+
+dnl odd minor number marks a development branch, append date to version there
+m4_define([avr_libc_version],
+          avr_libc_major.avr_libc_minor.avr_libc_revision)dnl
+m4_define([avr_libc_version_numeric],
+          m4_eval(10000 * avr_libc_major + dnl
+                    100 * avr_libc_minor + dnl
+                          avr_libc_revision))dnl
+
+AC_INIT(avr-libc, avr_libc_version, address@hidden)
+
+AC_PREREQ(2.59)
+AC_REVISION($Revision$)
+
+AC_CONFIG_SRCDIR([doc/examples/demo/demo.c])
+AC_CONFIG_HEADER([config.h])
+
+dnl substitute M4 macros into shell variables
+AVR_LIBC_MAJOR=avr_libc_major
+AVR_LIBC_MINOR=avr_libc_minor
+AVR_LIBC_REVISION=avr_libc_revision
+AVR_LIBC_RELDATE=avr_libc_reldate
+AVR_LIBC_VERSION=avr_libc_version
+AVR_LIBC_VERSION_NUMERIC=avr_libc_version_numeric
+dnl ...and trigger Makefile.in substitutions
+AC_SUBST(AVR_LIBC_MAJOR)
+AC_SUBST(AVR_LIBC_MINOR)
+AC_SUBST(AVR_LIBC_REVISION)
+AC_SUBST(AVR_LIBC_RELDATE)
+AC_SUBST(AVR_LIBC_VERSION)
+AC_SUBST(AVR_LIBC_VERSION_NUMERIC)
+
+AC_CANONICAL_BUILD
+AC_CANONICAL_HOST
+
+# See if the user specified '--build=`../config.guess` --host=avr' when
+# running ../configure.
+
+AC_MSG_CHECKING([if configuring for cross compile])
+if test "x${build_alias}" = "x${host_alias}"; then
+       if test "x${build_alias}" = "x" ; then
+               build_alias='`./config.guess`'
+       fi
+       AC_MSG_RESULT(no)
+       AC_MSG_WARN()
+       AC_MSG_WARN(AVR-LIBC must be built using an avr cross-compiler.)
+       AC_MSG_WARN(Try configuring with:)
+       AC_MSG_WARN("$0 --build=$build_alias --host=avr")
+       AC_MSG_WARN()
+       AC_MSG_ERROR(aborting configure)
+else
+       AC_MSG_RESULT([yes])
+fi
+
+AC_MSG_CHECKING([if target host is avr])
+case "$host" in
+       avr* )
+               AC_MSG_RESULT([yes])
+               ;;
+       * )
+               AC_MSG_RESULT(no)
+               AC_MSG_WARN()
+               AC_MSG_WARN(Avr-libc must be built using an avr cross-compiler.)
+               AC_MSG_WARN(Try configuring with:)
+               AC_MSG_WARN("$0 --build=$build --host=avr")
+               AC_MSG_WARN()
+               AC_MSG_ERROR(aborting configure)
+               ;;
+esac
+
+## TODO: Write a check for GNU Make
+
+dnl The default check whether the C compiler can create an executable
+dnl is inappropriate for us as it requires an existing library.
+AC_NO_EXECUTABLES
+
+dnl Minimum version of Automake is 1.8.
+dnl We don't want the gzip distribution tarball anymore.
+AM_INIT_AUTOMAKE([1.8 dist-bzip2 no-dist-gzip])
+
+# We don't want touse the cflags from the environment since we need control
+# of this when we're building the libs.
+CFLAGS=""
+
+# Checks for programs.
+
+AC_PROG_CC
+AC_CHECK_TOOL(AS, as, as)
+AM_PROG_AS
+AC_PROG_RANLIB
+AC_CHECK_TOOL(AR, ar, ar)
+
+# Make sure that we found the right avr cross-compiler.
+
+case "${CC}" in
+   *avr-gcc*) ;;
+   *) AC_MSG_ERROR(Wrong C compiler found; check the PATH!) ;;
+esac
+case "${AS}" in
+   *avr-as*) ;;
+   *) AC_MSG_ERROR(Wrong assembler found; check the PATH!) ;;
+esac
+case "${AR}" in
+   *avr-ar*) ;;
+   *) AC_MSG_ERROR(Wrong archiver found; check the PATH!) ;;
+esac
+case "${RANLIB}" in
+   *avr-ranlib*) ;;
+   *) AC_MSG_ERROR(Wrong ranlib found; check the PATH!) ;;
+esac
+
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+
+dnl TODO: Check for various tools used to build the documentation. If anything
+dnl is missing, don't build the docs by default.
+
+dnl Disable building of dox by default since it they may not build properly on
+dnl all systems. This isn't optimal, but how do we work around the user not
+dnl having fig2dev and still build all the formats?
+
+AC_ARG_ENABLE(doc,
+[  --enable-doc            build all doc formats (disabled is default)],
+[case "${enableval}" in
+  yes) enable_doc=yes ;;
+  no)  enable_doc=no ;;
+  *)   AC_MSG_ERROR(bad value ${enableval} for global doc option) ;;
+ esac], [enable_doc=no])dnl
+dnl Various documentation options.  By default, we enable all of them,
+dnl i. e. HTML, Postscript, PDF, and Unix-style man pages.
+AC_ARG_ENABLE(html-doc,
+[  --enable-html-doc       build HTML documentation (default)],
+[case "${enableval}" in
+  yes) html_doc=yes ;;
+  no)  html_doc=no ;;
+  *)   AC_MSG_ERROR(bad value ${enableval} for html-doc option) ;;
+ esac], [html_doc=yes])dnl
+
+AC_ARG_ENABLE(pdf-doc,
+[  --enable-pdf-doc        build PDF documentation (default)],
+[case "${enableval}" in
+  yes) pdf_doc=yes ;;
+  no)  pdf_doc=no ;;
+  *)   AC_MSG_ERROR(bad value ${enableval} for pdf-doc option) ;;
+ esac], [pdf_doc=yes])dnl
+
+dnl Man pages are currently not tunable; they'll be built whenever
+dnl the HTML documentation is built.  However, it can be configured
+dnl whether the result is about to be installed or not.
+AC_ARG_ENABLE(man-doc,
+[  --enable-man-doc        build Unix-style manual pages (default)],
+[case "${enableval}" in
+  yes) man_doc=yes ;;
+  no)  man_doc=no ;;
+  *)   AC_MSG_ERROR(bad value ${enableval} for man-doc option) ;;
+ esac], [man_doc=yes])dnl
+
+AC_ARG_ENABLE(versioned-doc,
+[  --enable-versioned-doc  install docs in directory with version name 
(default)],
+[case "${enableval}" in
+  yes) versioned_doc=yes ;;
+  no)  versioned_doc=no ;;
+  *)   AC_MSG_ERROR(bad value ${enableval} for versioned-doc option) ;;
+ esac], [versioned_doc=yes])dnl
+
+dnl troth/2002-07-12: The CHECK_DOXYGEN macro should be moved to a config
+dnl dir. I put it here until I figure out how to integrate the config dir.
+
+dnl
+dnl @synopsis CHECK_DOXYGEN
+dnl
+dnl This macro checks if doxygen is installed on the build system
+dnl
+dnl @version Id: check_doxygen.m4,v 1.2 2002/02/10 23:22:40 troth Exp
+dnl @author Theodore A. Roth <address@hidden>
+dnl
+AC_DEFUN([CHECK_DOXYGEN],[dnl
+dnl
+AC_MSG_CHECKING([for doxygen])
+dox_ver=`doxygen --version 2>/dev/null`
+if test "x$dox_ver" = "x"; then
+       AC_MSG_RESULT(no)
+else
+       # FIXME: should also check for dox_ver >= 1.4.1
+       AC_MSG_RESULT(yes)
+       if test "$pdf_doc" = "yes"; then
+               AC_MSG_NOTICE([Enabling PDF docs])
+               TARGET_DOX_PDF=dox-pdf
+               INSTALL_DOX_PDF=install-dox-pdf
+       fi
+       if test "$html_doc" = "yes"; then
+               AC_MSG_NOTICE([Enabling HTML docs])
+               TARGET_DOX_HTML=dox-html
+               INSTALL_DOX_HTML=install-dox-html
+       fi
+dnl The creation of man pages is a side-effect of the HTML
+dnl generation, so a different target is only needed for installation.
+       if test "$man_doc" = "yes"; then
+               AC_MSG_NOTICE([Enabling man pages])
+               TARGET_DOX_HTML=dox-html
+               INSTALL_DOX_MAN=install-dox-man
+       fi
+fi
+dnl
+AC_SUBST(TARGET_DOX_PDF)
+AC_SUBST(TARGET_DOX_HTML)
+AC_SUBST(INSTALL_DOX_PDF)
+AC_SUBST(INSTALL_DOX_HTML)
+AC_SUBST(INSTALL_DOX_MAN)
+])dnl
+
+CHECK_DOXYGEN
+
+dnl
+dnl @synopsis CHECK_PNG_UTILS
+dnl
+dnl This macro checks if pngtopnm and pnmtopng are installed. If they are not
+dnl installed we just fake it with "cat".
+dnl
+dnl We use these in the dox to insert transparency into the png images as such:
+dnl
+dnl   $ pngtopnm foo.png > tmp.pnm
+dnl   $ pnmtopng -transparent white tmp.pnm > foo.png
+dnl
+dnl @version 
+dnl @author Theodore A. Roth <address@hidden> and Eric B. Weddington 
<address@hidden>
+dnl
+AC_DEFUN([CHECK_PNG_UTILS],[dnl
+dnl
+AC_MSG_CHECKING([for pngtopnm])
+has_pngtopnm=`pngtopnm --version 2>&1 | grep -c -i Version`
+if test "$has_pngtopnm" = "1"; then
+       AC_MSG_RESULT(yes)
+       PNGTOPNM="pngtopnm"
+else
+       AC_MSG_RESULT(no)
+       PNGTOPNM="cat"
+fi
+dnl
+AC_MSG_CHECKING([for pnmtopng])
+has_pnmtopng=`pnmtopng --version 2>&1 | grep -c -i Version`
+if test "$has_pnmtopng" = "1"; then
+       AC_MSG_RESULT(yes)
+       PNMTOPNG="pnmtopng"
+else
+       AC_MSG_RESULT(no)
+       PNMTOPNG="cat"
+    PNGTOPNM="cat"
+fi
+AC_SUBST(PNGTOPNM)
+AC_SUBST(PNMTOPNG)
+])dnl
+
+CHECK_PNG_UTILS
+
+if test "$versioned_doc" = "yes"; then
+       DOC_INST_DIR='${DESTDIR}${datadir}/doc/avr-libc-$(VERSION)'
+       AVR_LIBC_USER_MANUAL="avr-libc-user-manual-${VERSION}"
+else
+       DOC_INST_DIR='${DESTDIR}${datadir}/doc/avr-libc'
+       AVR_LIBC_USER_MANUAL="avr-libc-user-manual"
+fi
+
+dnl We only want to build the docs if the user has passed
+dnl "--enable-doc" to configure.
+if test "$enable_doc" = "yes"; then
+       DOCSDIR='api'
+else
+       DOCSDIR=''
+fi
+
+AC_SUBST(DOCSDIR)
+AC_SUBST(AVR_LIBC_USER_MANUAL)
+AC_SUBST(DOC_INST_DIR)
+
+FNO_JUMP_TABLES=""
+AC_SUBST(FNO_JUMP_TABLES)
+
+HAS_DELAY_CYCLES=0
+AC_SUBST(HAS_DELAY_CYCLES)
+
+AC_DEFUN(
+  CHECK_MNO_TABLEJUMP,
+  [
+    old_CC=${CC}
+    old_CFLAGS=${CFLAGS}
+    CFLAGS="-mno-tablejump"
+    CC=`echo "${CC}" | sed 's/-mmcu=avr.//'`
+    AC_MSG_CHECKING(whether ${CC} supports -mno-tablejump)
+    AC_COMPILE_IFELSE(
+      [AC_LANG_SOURCE([],[])],
+      [has_mno_tablejump=yes],
+      [has_mno_tablejump=no]
+    )
+    if test "x$has_mno_tablejump" = "xyes"
+    then
+      FNO_JUMP_TABLES="-mno-tablejump"
+    fi
+    AC_MSG_RESULT($has_mno_tablejump)
+    CC=${old_CC}
+    CFLAGS=${old_CFLAGS}
+  ]
+)
+
+AC_DEFUN(
+  CHECK_FNO_JUMP_TABLES,
+  [
+    old_CC=${CC}
+    old_CFLAGS=${CFLAGS}
+    CFLAGS="-fno-jump-tables"
+    CC=`echo "${CC}" | sed 's/-mmcu=avr.//'`
+    AC_MSG_CHECKING(whether ${CC} supports -fno-jump-tables)
+    AC_COMPILE_IFELSE(
+      [AC_LANG_SOURCE([],[])],
+      [has_fno_jump_tables=yes],
+      [has_fno_jump_tables=no]
+    )
+    if test "x$has_fno_jump_tables" = "xyes"
+    then
+      FNO_JUMP_TABLES="-fno-jump-tables"
+    fi
+    AC_MSG_RESULT($has_fno_jump_tables)
+    CC=${old_CC}
+    CFLAGS=${old_CFLAGS}
+  ]
+)
+
+AC_DEFUN(
+  CHECK_BUILTIN_DELAY_CYCLES,
+  [
+    CC=`echo "${CC}" | sed 's/-mmcu=avr.//'`
+    AC_MSG_CHECKING(whether ${CC} supports __builtin_avr_delay_cycles)
+    echo "extern void __builtin_avr_delay_cycles(unsigned long);\
+    int main(void) { __builtin_avr_delay_cycles(42); return 0; }" |\
+    ${CC} -S -xc -o- - |\
+    grep __builtin_avr_delay_cycles >/dev/null
+    if test "$?" != "0"
+    then
+      HAS_DELAY_CYCLES=1
+      has_delay_cycles="yes"
+    else
+      has_delay_cycles="no"
+    fi
+    AC_MSG_RESULT($has_delay_cycles)
+    CC=${old_CC}
+  ]
+)
+
+CHECK_MNO_TABLEJUMP
+CHECK_FNO_JUMP_TABLES
+CHECK_BUILTIN_DELAY_CYCLES
+
+dnl Some devices are only handled by newer version of gcc. This macro lets us
+dnl probe to see if the installed avr-gcc supports a questionable device.
+AC_DEFUN(
+  CHECK_AVR_DEVICE,
+  [
+    old_CC=${CC}
+    old_CFLAGS=${CFLAGS}
+    CFLAGS="-mmcu=$1"
+    CC=`echo "${CC}" | sed 's/-mmcu=avr.//'`
+    AC_MSG_CHECKING(if ${CC} has support for $1)
+    AC_COMPILE_IFELSE(
+      [AC_LANG_SOURCE([],[])],
+      [has_dev_support=yes],
+      [has_dev_support=no]
+    )
+    if test "x$has_dev_support" = "xyes"
+    then
+      HAS_$1=yes
+    fi
+    AC_MSG_RESULT($has_dev_support)
+    CC=${old_CC}
+    CFLAGS=${old_CFLAGS}
+  ]
+)
+
+
+# avr1
+AM_CONDITIONAL(HAS_avr1, true)
+AM_CONDITIONAL(HAS_at90s1200, true)
+AM_CONDITIONAL(HAS_attiny11, true)
+AM_CONDITIONAL(HAS_attiny12, true)
+AM_CONDITIONAL(HAS_attiny15, true)
+AM_CONDITIONAL(HAS_attiny28, true)
+
+
+# avr2
+AM_CONDITIONAL(HAS_avr2, true)
+AM_CONDITIONAL(HAS_at90s2313, true)
+AM_CONDITIONAL(HAS_at90s2323, true)
+AM_CONDITIONAL(HAS_at90s2333, true)
+AM_CONDITIONAL(HAS_at90s2343, true)
+AM_CONDITIONAL(HAS_at90s4414, true)
+AM_CONDITIONAL(HAS_at90s4433, true)
+AM_CONDITIONAL(HAS_at90s4434, true)
+AM_CONDITIONAL(HAS_at90s8515, true)
+AM_CONDITIONAL(HAS_at90c8534, true)
+AM_CONDITIONAL(HAS_at90s8535, true)
+AM_CONDITIONAL(HAS_attiny22, true)
+AM_CONDITIONAL(HAS_attiny26, true)
+
+
+#avr25
+CHECK_AVR_DEVICE(avr25)
+AM_CONDITIONAL(HAS_avr25, test "x$HAS_avr25" = "xyes")
+
+CHECK_AVR_DEVICE(ata6289)
+AM_CONDITIONAL(HAS_ata6289, test "x$HAS_ata6289" = "xyes")
+
+CHECK_AVR_DEVICE(attiny13)
+AM_CONDITIONAL(HAS_attiny13, test "x$HAS_attiny13" = "xyes")
+
+CHECK_AVR_DEVICE(attiny13a)
+AM_CONDITIONAL(HAS_attiny13a, test "x$HAS_attiny13a" = "xyes")
+
+CHECK_AVR_DEVICE(attiny2313)
+AM_CONDITIONAL(HAS_attiny2313, test "x$HAS_attiny2313" = "xyes")
+
+CHECK_AVR_DEVICE(attiny2313a)
+AM_CONDITIONAL(HAS_attiny2313a, test "x$HAS_attiny2313a" = "xyes")
+
+CHECK_AVR_DEVICE(attiny24)
+AM_CONDITIONAL(HAS_attiny24, test "x$HAS_attiny24" = "xyes")
+
+CHECK_AVR_DEVICE(attiny24a)
+AM_CONDITIONAL(HAS_attiny24a, test "x$HAS_attiny24a" = "xyes")
+
+CHECK_AVR_DEVICE(attiny25)
+AM_CONDITIONAL(HAS_attiny25, test "x$HAS_attiny25" = "xyes")
+
+CHECK_AVR_DEVICE(attiny261)
+AM_CONDITIONAL(HAS_attiny261, test "x$HAS_attiny261" = "xyes")
+
+CHECK_AVR_DEVICE(attiny261a)
+AM_CONDITIONAL(HAS_attiny261a, test "x$HAS_attiny261a" = "xyes")
+
+CHECK_AVR_DEVICE(attiny43u)
+AM_CONDITIONAL(HAS_attiny43u, test "x$HAS_attiny43u" = "xyes")
+
+CHECK_AVR_DEVICE(attiny4313)
+AM_CONDITIONAL(HAS_attiny4313, test "x$HAS_attiny4313" = "xyes")
+
+CHECK_AVR_DEVICE(attiny44)
+AM_CONDITIONAL(HAS_attiny44, test "x$HAS_attiny44" = "xyes")
+
+CHECK_AVR_DEVICE(attiny44a)
+AM_CONDITIONAL(HAS_attiny44a, test "x$HAS_attiny44a" = "xyes")
+
+CHECK_AVR_DEVICE(attiny45)
+AM_CONDITIONAL(HAS_attiny45, test "x$HAS_attiny45" = "xyes")
+
+CHECK_AVR_DEVICE(attiny461)
+AM_CONDITIONAL(HAS_attiny461, test "x$HAS_attiny461" = "xyes")
+
+CHECK_AVR_DEVICE(attiny461a)
+AM_CONDITIONAL(HAS_attiny461a, test "x$HAS_attiny461a" = "xyes")
+
+CHECK_AVR_DEVICE(attiny48)
+AM_CONDITIONAL(HAS_attiny48, test "x$HAS_attiny48" = "xyes")
+
+CHECK_AVR_DEVICE(attiny84)
+AM_CONDITIONAL(HAS_attiny84, test "x$HAS_attiny84" = "xyes")
+
+CHECK_AVR_DEVICE(attiny84a)
+AM_CONDITIONAL(HAS_attiny84a, test "x$HAS_attiny84a" = "xyes")
+
+CHECK_AVR_DEVICE(attiny85)
+AM_CONDITIONAL(HAS_attiny85, test "x$HAS_attiny85" = "xyes")
+
+CHECK_AVR_DEVICE(attiny861)
+AM_CONDITIONAL(HAS_attiny861, test "x$HAS_attiny861" = "xyes")
+
+CHECK_AVR_DEVICE(attiny861a)
+AM_CONDITIONAL(HAS_attiny861a, test "x$HAS_attiny861a" = "xyes")
+
+CHECK_AVR_DEVICE(attiny87)
+AM_CONDITIONAL(HAS_attiny87, test "x$HAS_attiny87" = "xyes")
+
+CHECK_AVR_DEVICE(attiny88)
+AM_CONDITIONAL(HAS_attiny88, test "x$HAS_attiny88" = "xyes")
+
+CHECK_AVR_DEVICE(at86rf401)
+AM_CONDITIONAL(HAS_at86rf401, test "x$HAS_at86rf401" = "xyes")
+
+
+# avr3
+AM_CONDITIONAL(HAS_avr3, true)
+AM_CONDITIONAL(HAS_at43usb320, true)
+AM_CONDITIONAL(HAS_at43usb355, true)
+AM_CONDITIONAL(HAS_at76c711, true)
+
+#avr31
+CHECK_AVR_DEVICE(avr31)
+AM_CONDITIONAL(HAS_avr31, test "x$HAS_avr31" = "xyes")
+
+AM_CONDITIONAL(HAS_atmega103, true)
+
+
+#avr35
+CHECK_AVR_DEVICE(avr35)
+AM_CONDITIONAL(HAS_avr35, test "x$HAS_avr35" = "xyes")
+
+CHECK_AVR_DEVICE(at90usb82)
+AM_CONDITIONAL(HAS_at90usb82, test "x$HAS_at90usb82" = "xyes")
+
+CHECK_AVR_DEVICE(at90usb162)
+AM_CONDITIONAL(HAS_at90usb162, test "x$HAS_at90usb162" = "xyes")
+
+CHECK_AVR_DEVICE(atmega8u2)
+AM_CONDITIONAL(HAS_atmega8u2, test "x$HAS_atmega8u2" = "xyes")
+
+CHECK_AVR_DEVICE(atmega16u2)
+AM_CONDITIONAL(HAS_atmega16u2, test "x$HAS_atmega16u2" = "xyes")
+
+CHECK_AVR_DEVICE(atmega32u2)
+AM_CONDITIONAL(HAS_atmega32u2, test "x$HAS_atmega32u2" = "xyes")
+
+CHECK_AVR_DEVICE(attiny167)
+AM_CONDITIONAL(HAS_attiny167, test "x$HAS_attiny167" = "xyes")
+
+
+# avr4
+AM_CONDITIONAL(HAS_avr4, true)
+AM_CONDITIONAL(HAS_atmega8, true)
+AM_CONDITIONAL(HAS_atmega8515, true)
+AM_CONDITIONAL(HAS_atmega8535, true)
+
+CHECK_AVR_DEVICE(atmega48)
+AM_CONDITIONAL(HAS_atmega48, test "x$HAS_atmega48" = "xyes")
+
+CHECK_AVR_DEVICE(atmega48a)
+AM_CONDITIONAL(HAS_atmega48a, test "x$HAS_atmega48a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega48p)
+AM_CONDITIONAL(HAS_atmega48p, test "x$HAS_atmega48p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega88)
+AM_CONDITIONAL(HAS_atmega88, test "x$HAS_atmega88" = "xyes")
+
+CHECK_AVR_DEVICE(atmega88a)
+AM_CONDITIONAL(HAS_atmega88a, test "x$HAS_atmega88a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega88p)
+AM_CONDITIONAL(HAS_atmega88p, test "x$HAS_atmega88p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega88pa)
+AM_CONDITIONAL(HAS_atmega88pa, test "x$HAS_atmega88pa" = "xyes")
+
+CHECK_AVR_DEVICE(atmega8hva)
+AM_CONDITIONAL(HAS_atmega8hva, test "x$HAS_atmega8hva" = "xyes")
+
+CHECK_AVR_DEVICE(at90pwm1)
+AM_CONDITIONAL(HAS_at90pwm1, test "x$HAS_at90pwm1" = "xyes")
+
+CHECK_AVR_DEVICE(at90pwm2)
+AM_CONDITIONAL(HAS_at90pwm2, test "x$HAS_at90pwm2" = "xyes")
+
+CHECK_AVR_DEVICE(at90pwm2b)
+AM_CONDITIONAL(HAS_at90pwm2b, test "x$HAS_at90pwm2b" = "xyes")
+
+CHECK_AVR_DEVICE(at90pwm3)
+AM_CONDITIONAL(HAS_at90pwm3, test "x$HAS_at90pwm3" = "xyes")
+
+CHECK_AVR_DEVICE(at90pwm3b)
+AM_CONDITIONAL(HAS_at90pwm3b, test "x$HAS_at90pwm3b" = "xyes")
+
+CHECK_AVR_DEVICE(at90pwm81)
+AM_CONDITIONAL(HAS_at90pwm81, test "x$HAS_at90pwm81" = "xyes")
+
+
+# avr5
+AM_CONDITIONAL(HAS_avr5, true)
+
+CHECK_AVR_DEVICE(at90can32)
+AM_CONDITIONAL(HAS_at90can32, test "x$HAS_at90can32" = "xyes")
+
+CHECK_AVR_DEVICE(at90can64)
+AM_CONDITIONAL(HAS_at90can64, test "x$HAS_at90can64" = "xyes")
+
+CHECK_AVR_DEVICE(at90scr100)
+AM_CONDITIONAL(HAS_at90scr100, test "x$HAS_at90scr100" = "xyes")
+
+CHECK_AVR_DEVICE(at90usb646)
+AM_CONDITIONAL(HAS_at90usb646, test "x$HAS_at90usb646" = "xyes")
+
+CHECK_AVR_DEVICE(at90usb647)
+AM_CONDITIONAL(HAS_at90usb647, test "x$HAS_at90usb647" = "xyes")
+
+CHECK_AVR_DEVICE(at90pwm316)
+AM_CONDITIONAL(HAS_at90pwm316, test "x$HAS_at90pwm316" = "xyes")
+
+CHECK_AVR_DEVICE(at90pwm216)
+AM_CONDITIONAL(HAS_at90pwm216, test "x$HAS_at90pwm216" = "xyes")
+
+CHECK_AVR_DEVICE(at94k)
+AM_CONDITIONAL(HAS_at94k, test "x$HAS_at94k" = "xyes")
+
+CHECK_AVR_DEVICE(atmega16)
+AM_CONDITIONAL(HAS_atmega16, test "x$HAS_atmega16" = "xyes")
+
+CHECK_AVR_DEVICE(atmega16a)
+AM_CONDITIONAL(HAS_atmega16a, test "x$HAS_atmega16a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega161)
+AM_CONDITIONAL(HAS_atmega161, test "x$HAS_atmega161" = "xyes")
+
+CHECK_AVR_DEVICE(atmega162)
+AM_CONDITIONAL(HAS_atmega162, test "x$HAS_atmega162" = "xyes")
+
+CHECK_AVR_DEVICE(atmega163)
+AM_CONDITIONAL(HAS_atmega163, test "x$HAS_atmega163" = "xyes")
+
+CHECK_AVR_DEVICE(atmega164a)
+AM_CONDITIONAL(HAS_atmega164a, test "x$HAS_atmega164a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega164p)
+AM_CONDITIONAL(HAS_atmega164p, test "x$HAS_atmega164p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega165)
+AM_CONDITIONAL(HAS_atmega165, test "x$HAS_atmega165" = "xyes")
+
+CHECK_AVR_DEVICE(atmega165a)
+AM_CONDITIONAL(HAS_atmega165a, test "x$HAS_atmega165a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega165p)
+AM_CONDITIONAL(HAS_atmega165p, test "x$HAS_atmega165p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega168)
+AM_CONDITIONAL(HAS_atmega168, test "x$HAS_atmega168" = "xyes")
+
+CHECK_AVR_DEVICE(atmega168a)
+AM_CONDITIONAL(HAS_atmega168a, test "x$HAS_atmega168a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega168p)
+AM_CONDITIONAL(HAS_atmega168p, test "x$HAS_atmega168p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega169)
+AM_CONDITIONAL(HAS_atmega169, test "x$HAS_atmega169" = "xyes")
+
+CHECK_AVR_DEVICE(atmega169a)
+AM_CONDITIONAL(HAS_atmega169a, test "x$HAS_atmega169a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega169p)
+AM_CONDITIONAL(HAS_atmega169p, test "x$HAS_atmega169p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega169pa)
+AM_CONDITIONAL(HAS_atmega169pa, test "x$HAS_atmega169pa" = "xyes")
+
+CHECK_AVR_DEVICE(atmega16hva)
+AM_CONDITIONAL(HAS_atmega16hva, test "x$HAS_atmega16hva" = "xyes")
+
+CHECK_AVR_DEVICE(atmega16hva2)
+AM_CONDITIONAL(HAS_atmega16hva2, test "x$HAS_atmega16hva2" = "xyes")
+
+CHECK_AVR_DEVICE(atmega16hvb)
+AM_CONDITIONAL(HAS_atmega16hvb, test "x$HAS_atmega16hvb" = "xyes")
+
+CHECK_AVR_DEVICE(atmega16m1)
+AM_CONDITIONAL(HAS_atmega16m1, test "x$HAS_atmega16m1" = "xyes")
+
+CHECK_AVR_DEVICE(atmega16u4)
+AM_CONDITIONAL(HAS_atmega16u4, test "x$HAS_atmega16u4" = "xyes")
+
+CHECK_AVR_DEVICE(atmega32)
+AM_CONDITIONAL(HAS_atmega32, test "x$HAS_atmega32" = "xyes")
+
+CHECK_AVR_DEVICE(atmega323)
+AM_CONDITIONAL(HAS_atmega323, test "x$HAS_atmega323" = "xyes")
+
+CHECK_AVR_DEVICE(atmega324a)
+AM_CONDITIONAL(HAS_atmega324a, test "x$HAS_atmega324a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega324p)
+AM_CONDITIONAL(HAS_atmega324p, test "x$HAS_atmega324p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega324pa)
+AM_CONDITIONAL(HAS_atmega324pa, test "x$HAS_atmega324pa" = "xyes")
+
+CHECK_AVR_DEVICE(atmega325)
+AM_CONDITIONAL(HAS_atmega325, test "x$HAS_atmega325" = "xyes")
+
+CHECK_AVR_DEVICE(atmega325a)
+AM_CONDITIONAL(HAS_atmega325a, test "x$HAS_atmega325a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega325p)
+AM_CONDITIONAL(HAS_atmega325p, test "x$HAS_atmega325p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega3250)
+AM_CONDITIONAL(HAS_atmega3250, test "x$HAS_atmega3250" = "xyes")
+
+CHECK_AVR_DEVICE(atmega3250a)
+AM_CONDITIONAL(HAS_atmega3250a, test "x$HAS_atmega3250a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega3250p)
+AM_CONDITIONAL(HAS_atmega3250p, test "x$HAS_atmega3250p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega328)
+AM_CONDITIONAL(HAS_atmega328, test "x$HAS_atmega328" = "xyes")
+
+CHECK_AVR_DEVICE(atmega328p)
+AM_CONDITIONAL(HAS_atmega328p, test "x$HAS_atmega328p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega329)
+AM_CONDITIONAL(HAS_atmega329, test "x$HAS_atmega329" = "xyes")
+
+CHECK_AVR_DEVICE(atmega329a)
+AM_CONDITIONAL(HAS_atmega329a, test "x$HAS_atmega329a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega329p)
+AM_CONDITIONAL(HAS_atmega329p, test "x$HAS_atmega329p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega329pa)
+AM_CONDITIONAL(HAS_atmega329pa, test "x$HAS_atmega329pa" = "xyes")
+
+CHECK_AVR_DEVICE(atmega3290)
+AM_CONDITIONAL(HAS_atmega3290, test "x$HAS_atmega3290" = "xyes")
+
+CHECK_AVR_DEVICE(atmega3290a)
+AM_CONDITIONAL(HAS_atmega3290a, test "x$HAS_atmega3290a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega3290p)
+AM_CONDITIONAL(HAS_atmega3290p, test "x$HAS_atmega3290p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega32c1)
+AM_CONDITIONAL(HAS_atmega32c1, test "x$HAS_atmega32c1" = "xyes")
+
+CHECK_AVR_DEVICE(atmega32hvb)
+AM_CONDITIONAL(HAS_atmega32hvb, test "x$HAS_atmega32hvb" = "xyes")
+
+CHECK_AVR_DEVICE(atmega32m1)
+AM_CONDITIONAL(HAS_atmega32m1, test "x$HAS_atmega32m1" = "xyes")
+
+CHECK_AVR_DEVICE(atmega32u4)
+AM_CONDITIONAL(HAS_atmega32u4, test "x$HAS_atmega32u4" = "xyes")
+
+CHECK_AVR_DEVICE(atmega32u6)
+AM_CONDITIONAL(HAS_atmega32u6, test "x$HAS_atmega32u6" = "xyes")
+
+CHECK_AVR_DEVICE(atmega406)
+AM_CONDITIONAL(HAS_atmega406, test "x$HAS_atmega406" = "xyes")
+
+CHECK_AVR_DEVICE(atmega64)
+AM_CONDITIONAL(HAS_atmega64, test "x$HAS_atmega64" = "xyes")
+
+CHECK_AVR_DEVICE(atmega640)
+AM_CONDITIONAL(HAS_atmega640, test "x$HAS_atmega640" = "xyes")
+
+CHECK_AVR_DEVICE(atmega644)
+AM_CONDITIONAL(HAS_atmega644, test "x$HAS_atmega644" = "xyes")
+
+CHECK_AVR_DEVICE(atmega644a)
+AM_CONDITIONAL(HAS_atmega644a, test "x$HAS_atmega644a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega644p)
+AM_CONDITIONAL(HAS_atmega644p, test "x$HAS_atmega644p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega644pa)
+AM_CONDITIONAL(HAS_atmega644pa, test "x$HAS_atmega644pa" = "xyes")
+
+CHECK_AVR_DEVICE(atmega645)
+AM_CONDITIONAL(HAS_atmega645, test "x$HAS_atmega645" = "xyes")
+
+CHECK_AVR_DEVICE(atmega645a)
+AM_CONDITIONAL(HAS_atmega645a, test "x$HAS_atmega645a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega645p)
+AM_CONDITIONAL(HAS_atmega645p, test "x$HAS_atmega645p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega6450)
+AM_CONDITIONAL(HAS_atmega6450, test "x$HAS_atmega6450" = "xyes")
+
+CHECK_AVR_DEVICE(atmega6450a)
+AM_CONDITIONAL(HAS_atmega6450a, test "x$HAS_atmega6450a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega6450p)
+AM_CONDITIONAL(HAS_atmega6450p, test "x$HAS_atmega6450p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega649)
+AM_CONDITIONAL(HAS_atmega649, test "x$HAS_atmega649" = "xyes")
+
+CHECK_AVR_DEVICE(atmega649a)
+AM_CONDITIONAL(HAS_atmega649a, test "x$HAS_atmega649a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega649p)
+AM_CONDITIONAL(HAS_atmega649p, test "x$HAS_atmega649p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega6490)
+AM_CONDITIONAL(HAS_atmega6490, test "x$HAS_atmega6490" = "xyes")
+
+CHECK_AVR_DEVICE(atmega6490a)
+AM_CONDITIONAL(HAS_atmega6490a, test "x$HAS_atmega6490a" = "xyes")
+
+CHECK_AVR_DEVICE(atmega6490p)
+AM_CONDITIONAL(HAS_atmega6490p, test "x$HAS_atmega6490p" = "xyes")
+
+CHECK_AVR_DEVICE(atmega64c1)
+AM_CONDITIONAL(HAS_atmega64c1, test "x$HAS_atmega64c1" = "xyes")
+
+CHECK_AVR_DEVICE(atmega64hve)
+AM_CONDITIONAL(HAS_atmega64hve, test "x$HAS_atmega64hve" = "xyes")
+
+CHECK_AVR_DEVICE(atmega64m1)
+AM_CONDITIONAL(HAS_atmega64m1, test "x$HAS_atmega64m1" = "xyes")
+
+CHECK_AVR_DEVICE(atmega128rfa1)
+AM_CONDITIONAL(HAS_atmega128rfa1, test "x$HAS_atmega128rfa1" = "xyes")
+
+CHECK_AVR_DEVICE(m3000)
+AM_CONDITIONAL(HAS_m3000, test "x$HAS_m3000" = "xyes")
+
+
+
+#avr51
+CHECK_AVR_DEVICE(avr51)
+AM_CONDITIONAL(HAS_avr51, test "x$HAS_avr51" = "xyes")
+
+AM_CONDITIONAL(HAS_atmega128, true)
+
+CHECK_AVR_DEVICE(atmega1280)
+AM_CONDITIONAL(HAS_atmega1280, test "x$HAS_atmega1280" = "xyes")
+
+CHECK_AVR_DEVICE(atmega1281)
+AM_CONDITIONAL(HAS_atmega1281, test "x$HAS_atmega1281" = "xyes")
+
+CHECK_AVR_DEVICE(atmega1284p)
+AM_CONDITIONAL(HAS_atmega1284p, test "x$HAS_atmega1284p" = "xyes")
+
+CHECK_AVR_DEVICE(at90can128)
+AM_CONDITIONAL(HAS_at90can128, test "x$HAS_at90can128" = "xyes")
+
+CHECK_AVR_DEVICE(at90usb1286)
+AM_CONDITIONAL(HAS_at90usb1286, test "x$HAS_at90usb1286" = "xyes")
+
+CHECK_AVR_DEVICE(at90usb1287)
+AM_CONDITIONAL(HAS_at90usb1287, test "x$HAS_at90usb1287" = "xyes")
+
+
+# avr6
+CHECK_AVR_DEVICE(avr6)
+AM_CONDITIONAL(HAS_avr6, test "x$HAS_avr6" = "xyes")
+
+CHECK_AVR_DEVICE(atmega2560)
+AM_CONDITIONAL(HAS_atmega2560, test "x$HAS_atmega2560" = "xyes")
+
+CHECK_AVR_DEVICE(atmega2561)
+AM_CONDITIONAL(HAS_atmega2561, test "x$HAS_atmega2561" = "xyes")
+
+
+# avrxmega2
+CHECK_AVR_DEVICE(avrxmega2)
+AM_CONDITIONAL(HAS_avrxmega2, test "x$HAS_avrxmega2" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega16a4)
+AM_CONDITIONAL(HAS_atxmega16a4, test "x$HAS_atxmega16a4" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega16d4)
+AM_CONDITIONAL(HAS_atxmega16d4, test "x$HAS_atxmega16d4" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega32a4)
+AM_CONDITIONAL(HAS_atxmega32a4, test "x$HAS_atxmega32a4" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega32d4)
+AM_CONDITIONAL(HAS_atxmega32d4, test "x$HAS_atxmega32d4" = "xyes")
+
+
+# avrxmega4
+CHECK_AVR_DEVICE(avrxmega4)
+AM_CONDITIONAL(HAS_avrxmega4, test "x$HAS_avrxmega4" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega64a3)
+AM_CONDITIONAL(HAS_atxmega64a3, test "x$HAS_atxmega64a3" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega64d3)
+AM_CONDITIONAL(HAS_atxmega64d3, test "x$HAS_atxmega64d3" = "xyes")
+
+
+# avrxmega5
+CHECK_AVR_DEVICE(avrxmega5)
+AM_CONDITIONAL(HAS_avrxmega5, test "x$HAS_avrxmega5" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega64a1)
+AM_CONDITIONAL(HAS_atxmega64a1, test "x$HAS_atxmega64a1" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega64a1u)
+AM_CONDITIONAL(HAS_atxmega64a1u, test "x$HAS_atxmega64a1u" = "xyes")
+
+
+# avrxmega6
+CHECK_AVR_DEVICE(avrxmega6)
+AM_CONDITIONAL(HAS_avrxmega6, test "x$HAS_avrxmega6" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega128a3)
+AM_CONDITIONAL(HAS_atxmega128a3, test "x$HAS_atxmega128a3" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega128d3)
+AM_CONDITIONAL(HAS_atxmega128d3, test "x$HAS_atxmega128d3" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega192a3)
+AM_CONDITIONAL(HAS_atxmega192a3, test "x$HAS_atxmega192a3" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega192d3)
+AM_CONDITIONAL(HAS_atxmega192d3, test "x$HAS_atxmega192d3" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega256a3)
+AM_CONDITIONAL(HAS_atxmega256a3, test "x$HAS_atxmega256a3" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega256a3b)
+AM_CONDITIONAL(HAS_atxmega256a3b, test "x$HAS_atxmega256a3b" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega256d3)
+AM_CONDITIONAL(HAS_atxmega256d3, test "x$HAS_atxmega256d3" = "xyes")
+
+
+# avrxmega7
+CHECK_AVR_DEVICE(avrxmega7)
+AM_CONDITIONAL(HAS_avrxmega7, test "x$HAS_avrxmega7" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega128a1)
+AM_CONDITIONAL(HAS_atxmega128a1, test "x$HAS_atxmega128a1" = "xyes")
+
+CHECK_AVR_DEVICE(atxmega128a1u)
+AM_CONDITIONAL(HAS_atxmega128a1u, test "x$HAS_atxmega128a1u" = "xyes")
+
+
+# avrtiny10
+CHECK_AVR_DEVICE(avrtiny10)
+AM_CONDITIONAL(HAS_avrtiny10, test "x$HAS_avrtiny10" = "xyes")
+
+CHECK_AVR_DEVICE(attiny4)
+AM_CONDITIONAL(HAS_attiny4, test "x$HAS_attiny4" = "xyes")
+
+CHECK_AVR_DEVICE(attiny5)
+AM_CONDITIONAL(HAS_attiny5, test "x$HAS_attiny5" = "xyes")
+
+CHECK_AVR_DEVICE(attiny9)
+AM_CONDITIONAL(HAS_attiny9, test "x$HAS_attiny9" = "xyes")
+
+CHECK_AVR_DEVICE(attiny10)
+AM_CONDITIONAL(HAS_attiny10, test "x$HAS_attiny10" = "xyes")
+
+CHECK_AVR_DEVICE(attiny20)
+AM_CONDITIONAL(HAS_attiny20, test "x$HAS_attiny20" = "xyes")
+
+CHECK_AVR_DEVICE(attiny40)
+AM_CONDITIONAL(HAS_attiny40, test "x$HAS_attiny40" = "xyes")
+
+
+
+
+# Generate all files from *.in sources.
+
+AC_CONFIG_FILES([
+       Makefile
+       avr-libc.spec
+       avr/Makefile
+       avr/lib/Makefile
+       common/Makefile
+       crt1/Makefile
+       doc/Makefile
+       doc/api/Makefile
+       doc/examples/Makefile
+       include/Makefile
+       include/avr/Makefile
+       include/avr/builtins.h
+       include/compat/Makefile
+       include/util/Makefile
+       include/util/delay.h
+       libc/Makefile
+       libc/misc/Makefile
+       libc/pmstring/Makefile
+       libc/stdio/Makefile
+       libc/stdlib/Makefile
+       libc/string/Makefile
+       libm/Makefile
+       libm/fplib/Makefile
+       scripts/Makefile
+       devtools/Makefile
+])
+
+#avr1 and avr2
+AC_CONFIG_FILES([
+       avr/lib/avr2/Makefile
+       avr/lib/avr2/at90s1200/Makefile
+       avr/lib/avr2/at90s2313/Makefile
+       avr/lib/avr2/at90s2323/Makefile
+       avr/lib/avr2/at90s2333/Makefile
+       avr/lib/avr2/at90s2343/Makefile
+       avr/lib/avr2/at90s4414/Makefile
+       avr/lib/avr2/at90s4433/Makefile
+       avr/lib/avr2/at90s4434/Makefile
+       avr/lib/avr2/at90s8515/Makefile
+       avr/lib/avr2/at90c8534/Makefile
+       avr/lib/avr2/at90s8535/Makefile
+       avr/lib/avr2/attiny11/Makefile
+       avr/lib/avr2/attiny12/Makefile
+       avr/lib/avr2/attiny13/Makefile
+       avr/lib/avr2/attiny15/Makefile
+       avr/lib/avr2/attiny22/Makefile
+       avr/lib/avr2/attiny24/Makefile
+       avr/lib/avr2/attiny25/Makefile
+       avr/lib/avr2/attiny26/Makefile
+       avr/lib/avr2/attiny261/Makefile
+       avr/lib/avr2/attiny28/Makefile
+       avr/lib/avr2/attiny44/Makefile
+       avr/lib/avr2/attiny45/Makefile
+       avr/lib/avr2/attiny461/Makefile
+       avr/lib/avr2/attiny84/Makefile
+       avr/lib/avr2/attiny85/Makefile
+       avr/lib/avr2/attiny861/Makefile
+       avr/lib/avr2/attiny2313/Makefile
+       avr/lib/avr2/at86rf401/Makefile
+])
+
+#avr25
+AC_CONFIG_FILES([
+       avr/lib/avr25/Makefile
+       avr/lib/avr25/at86rf401/Makefile
+       avr/lib/avr25/ata6289/Makefile
+       avr/lib/avr25/attiny13/Makefile
+       avr/lib/avr25/attiny13a/Makefile
+       avr/lib/avr25/attiny2313/Makefile
+       avr/lib/avr25/attiny2313a/Makefile
+       avr/lib/avr25/attiny24/Makefile
+       avr/lib/avr25/attiny24a/Makefile
+       avr/lib/avr25/attiny25/Makefile
+       avr/lib/avr25/attiny261/Makefile
+       avr/lib/avr25/attiny261a/Makefile
+       avr/lib/avr25/attiny4313/Makefile
+       avr/lib/avr25/attiny43u/Makefile
+       avr/lib/avr25/attiny44/Makefile
+       avr/lib/avr25/attiny44a/Makefile
+       avr/lib/avr25/attiny45/Makefile
+       avr/lib/avr25/attiny461/Makefile
+       avr/lib/avr25/attiny461a/Makefile
+       avr/lib/avr25/attiny48/Makefile
+       avr/lib/avr25/attiny84/Makefile
+       avr/lib/avr25/attiny84a/Makefile
+       avr/lib/avr25/attiny85/Makefile
+       avr/lib/avr25/attiny861/Makefile
+       avr/lib/avr25/attiny861a/Makefile
+       avr/lib/avr25/attiny87/Makefile
+       avr/lib/avr25/attiny88/Makefile
+])
+
+#avr3
+AC_CONFIG_FILES([
+       avr/lib/avr3/Makefile
+       avr/lib/avr3/atmega103/Makefile
+       avr/lib/avr3/at43usb320/Makefile
+       avr/lib/avr3/at43usb355/Makefile
+       avr/lib/avr3/at76c711/Makefile
+       avr/lib/avr3/at90usb82/Makefile
+       avr/lib/avr3/at90usb162/Makefile
+])
+
+#avr31
+AC_CONFIG_FILES([
+       avr/lib/avr31/Makefile
+       avr/lib/avr31/atmega103/Makefile
+       avr/lib/avr31/at43usb320/Makefile
+])
+
+#avr35
+AC_CONFIG_FILES([
+       avr/lib/avr35/Makefile
+       avr/lib/avr35/at90usb82/Makefile
+       avr/lib/avr35/at90usb162/Makefile
+       avr/lib/avr35/atmega8u2/Makefile
+       avr/lib/avr35/atmega16u2/Makefile
+       avr/lib/avr35/atmega32u2/Makefile
+       avr/lib/avr35/attiny167/Makefile
+])
+
+#avr4
+AC_CONFIG_FILES([
+       avr/lib/avr4/Makefile
+       avr/lib/avr4/atmega48/Makefile
+       avr/lib/avr4/atmega48a/Makefile
+       avr/lib/avr4/atmega48p/Makefile
+       avr/lib/avr4/atmega8/Makefile
+       avr/lib/avr4/atmega88/Makefile
+       avr/lib/avr4/atmega88a/Makefile
+       avr/lib/avr4/atmega88p/Makefile
+       avr/lib/avr4/atmega88pa/Makefile
+       avr/lib/avr4/atmega8515/Makefile
+       avr/lib/avr4/atmega8535/Makefile
+       avr/lib/avr4/atmega8hva/Makefile
+       avr/lib/avr4/at90pwm1/Makefile
+       avr/lib/avr4/at90pwm2/Makefile
+       avr/lib/avr4/at90pwm2b/Makefile
+       avr/lib/avr4/at90pwm3/Makefile
+       avr/lib/avr4/at90pwm3b/Makefile
+       avr/lib/avr4/at90pwm81/Makefile
+])
+
+#avr5
+AC_CONFIG_FILES([
+       avr/lib/avr5/Makefile
+       avr/lib/avr5/at90can32/Makefile
+       avr/lib/avr5/at90can64/Makefile
+       avr/lib/avr5/at90can128/Makefile
+       avr/lib/avr5/at90pwm216/Makefile
+       avr/lib/avr5/at90pwm316/Makefile
+       avr/lib/avr5/at90scr100/Makefile
+       avr/lib/avr5/at90usb646/Makefile
+       avr/lib/avr5/at90usb647/Makefile
+       avr/lib/avr5/at90usb1286/Makefile
+       avr/lib/avr5/at90usb1287/Makefile
+       avr/lib/avr5/at94k/Makefile 
+       avr/lib/avr5/atmega16/Makefile
+       avr/lib/avr5/atmega16a/Makefile
+       avr/lib/avr5/atmega161/Makefile
+       avr/lib/avr5/atmega162/Makefile
+       avr/lib/avr5/atmega163/Makefile
+       avr/lib/avr5/atmega164a/Makefile
+       avr/lib/avr5/atmega164p/Makefile
+       avr/lib/avr5/atmega165/Makefile
+       avr/lib/avr5/atmega165a/Makefile
+       avr/lib/avr5/atmega165p/Makefile
+       avr/lib/avr5/atmega168/Makefile
+       avr/lib/avr5/atmega168a/Makefile
+       avr/lib/avr5/atmega168p/Makefile
+       avr/lib/avr5/atmega169/Makefile
+       avr/lib/avr5/atmega169a/Makefile
+       avr/lib/avr5/atmega169p/Makefile
+       avr/lib/avr5/atmega169pa/Makefile
+       avr/lib/avr5/atmega16hva/Makefile
+       avr/lib/avr5/atmega16hva2/Makefile
+       avr/lib/avr5/atmega16hvb/Makefile
+       avr/lib/avr5/atmega16m1/Makefile
+       avr/lib/avr5/atmega16u4/Makefile
+       avr/lib/avr5/atmega32/Makefile
+       avr/lib/avr5/atmega323/Makefile
+       avr/lib/avr5/atmega324a/Makefile
+       avr/lib/avr5/atmega324p/Makefile
+       avr/lib/avr5/atmega324pa/Makefile
+       avr/lib/avr5/atmega325/Makefile
+       avr/lib/avr5/atmega325a/Makefile
+       avr/lib/avr5/atmega325p/Makefile
+       avr/lib/avr5/atmega3250/Makefile
+       avr/lib/avr5/atmega3250a/Makefile
+       avr/lib/avr5/atmega3250p/Makefile
+       avr/lib/avr5/atmega328/Makefile
+       avr/lib/avr5/atmega328p/Makefile
+       avr/lib/avr5/atmega329/Makefile
+       avr/lib/avr5/atmega329a/Makefile
+       avr/lib/avr5/atmega329p/Makefile
+       avr/lib/avr5/atmega329pa/Makefile
+       avr/lib/avr5/atmega3290/Makefile
+       avr/lib/avr5/atmega3290a/Makefile
+       avr/lib/avr5/atmega3290p/Makefile
+       avr/lib/avr5/atmega32c1/Makefile
+       avr/lib/avr5/atmega32hvb/Makefile
+       avr/lib/avr5/atmega32m1/Makefile
+       avr/lib/avr5/atmega32u4/Makefile
+       avr/lib/avr5/atmega32u6/Makefile
+       avr/lib/avr5/atmega406/Makefile
+       avr/lib/avr5/atmega64/Makefile
+       avr/lib/avr5/atmega640/Makefile
+       avr/lib/avr5/atmega644/Makefile
+       avr/lib/avr5/atmega644a/Makefile
+       avr/lib/avr5/atmega644p/Makefile
+       avr/lib/avr5/atmega644pa/Makefile
+       avr/lib/avr5/atmega645/Makefile
+       avr/lib/avr5/atmega645a/Makefile
+       avr/lib/avr5/atmega645p/Makefile
+       avr/lib/avr5/atmega6450/Makefile
+       avr/lib/avr5/atmega6450a/Makefile
+       avr/lib/avr5/atmega6450p/Makefile
+       avr/lib/avr5/atmega649/Makefile
+       avr/lib/avr5/atmega649a/Makefile
+       avr/lib/avr5/atmega649p/Makefile
+       avr/lib/avr5/atmega6490/Makefile
+       avr/lib/avr5/atmega6490a/Makefile
+       avr/lib/avr5/atmega6490p/Makefile
+       avr/lib/avr5/atmega64c1/Makefile
+       avr/lib/avr5/atmega64hve/Makefile
+       avr/lib/avr5/atmega64m1/Makefile
+       avr/lib/avr5/atmega128/Makefile
+       avr/lib/avr5/atmega1280/Makefile
+       avr/lib/avr5/atmega1281/Makefile
+       avr/lib/avr5/atmega1284p/Makefile
+       avr/lib/avr5/atmega128rfa1/Makefile
+       avr/lib/avr5/m3000/Makefile
+])
+
+#avr51
+AC_CONFIG_FILES([
+       avr/lib/avr51/Makefile
+       avr/lib/avr51/atmega128/Makefile
+       avr/lib/avr51/atmega1280/Makefile
+       avr/lib/avr51/atmega1281/Makefile
+       avr/lib/avr51/atmega1284p/Makefile
+       avr/lib/avr51/atmega128rfa1/Makefile
+       avr/lib/avr51/at90can128/Makefile
+       avr/lib/avr51/at90usb1286/Makefile
+       avr/lib/avr51/at90usb1287/Makefile
+])
+
+#avr6
+AC_CONFIG_FILES([
+       avr/lib/avr6/Makefile
+       avr/lib/avr6/atmega2560/Makefile
+       avr/lib/avr6/atmega2561/Makefile
+])
+
+# avrxmega2
+AC_CONFIG_FILES([
+       avr/lib/avrxmega2/Makefile
+       avr/lib/avrxmega2/atxmega16a4/Makefile
+       avr/lib/avrxmega2/atxmega16d4/Makefile
+       avr/lib/avrxmega2/atxmega32a4/Makefile
+       avr/lib/avrxmega2/atxmega32d4/Makefile
+])
+
+# avrxmega4
+AC_CONFIG_FILES([
+       avr/lib/avrxmega4/Makefile
+       avr/lib/avrxmega4/atxmega64a3/Makefile
+       avr/lib/avrxmega4/atxmega64d3/Makefile
+])
+
+# avrxmega5
+AC_CONFIG_FILES([
+       avr/lib/avrxmega5/Makefile
+       avr/lib/avrxmega5/atxmega64a1/Makefile
+       avr/lib/avrxmega5/atxmega64a1u/Makefile
+])
+
+# avrxmega6
+AC_CONFIG_FILES([
+       avr/lib/avrxmega6/Makefile
+       avr/lib/avrxmega6/atxmega128a3/Makefile
+       avr/lib/avrxmega6/atxmega128d3/Makefile
+       avr/lib/avrxmega6/atxmega192a3/Makefile
+       avr/lib/avrxmega6/atxmega192d3/Makefile
+       avr/lib/avrxmega6/atxmega256a3/Makefile
+       avr/lib/avrxmega6/atxmega256a3b/Makefile
+       avr/lib/avrxmega6/atxmega256d3/Makefile
+])
+
+# avrxmega7
+AC_CONFIG_FILES([
+       avr/lib/avrxmega7/Makefile
+       avr/lib/avrxmega7/atxmega128a1/Makefile
+       avr/lib/avrxmega7/atxmega128a1u/Makefile
+])
+
+
+# avrtiny10
+AC_CONFIG_FILES([
+       avr/lib/avrtiny10/Makefile
+       avr/lib/avrtiny10/attiny4/Makefile
+       avr/lib/avrtiny10/attiny5/Makefile
+       avr/lib/avrtiny10/attiny9/Makefile
+       avr/lib/avrtiny10/attiny10/Makefile
+       avr/lib/avrtiny10/attiny20/Makefile
+       avr/lib/avrtiny10/attiny40/Makefile
+])
+
+
+AC_OUTPUT

Deleted: tags/avr-libc-1_7_0-release/devtools/gen-avr-lib-tree.sh
===================================================================
--- trunk/avr-libc/devtools/gen-avr-lib-tree.sh 2010-06-16 05:26:35 UTC (rev 
2172)
+++ tags/avr-libc-1_7_0-release/devtools/gen-avr-lib-tree.sh    2010-06-16 
20:02:42 UTC (rev 2177)
@@ -1,446 +0,0 @@
-#! /bin/sh
-#
-# Copyright (c) 2004,  Theodore A. Roth
-# Copyright (c) 2005,2006,2007,2008,2009  Anatoly Sokolov
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are met:
-#
-# * Redistributions of source code must retain the above copyright
-#   notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above copyright
-#   notice, this list of conditions and the following disclaimer in
-#   the documentation and/or other materials provided with the
-#   distribution.
-# * Neither the name of the copyright holders nor the names of
-#   contributors may be used to endorse or promote products derived
-#   from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
-#
-# $Id$
-#
-
-# This is a script to automate the generation of the avr/lib/ tree. Since
-# there is a build directory for each device and each of those directories is
-# virtually the same, it is easier to maintain a single file instead of an
-# ever growing number of small Makefile.am fragments.
-
-# Make sure that we are the top-level of the source tree. We will look for the
-# the AUTHORS file in the current dir and the parent. After that, we complain
-# and fatal error out.
-
-# Define the special flags for special sub-targets.
-
-CFLAGS_SPACE="-mcall-prologues -Os"
-CFLAGS_BIG_MEMORY='-Os $(FNO_JUMP_TABLES)'
-CFLAGS_SPEED="-Os"
-
-ASFLAGS_SPEED="-DOPTIMIZE_SPEED"
-
-AVR12_DEV_INFO="\
-at90s1200:crts1200.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny11:crttn11.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny12:crttn12.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny13:crttn13.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny15:crttn15.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny2313:crttn2313.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny28:crttn28.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90s2313:crts2313.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90s2323:crts2323.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90s2333:crts2333.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90s2343:crts2343.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90s4433:crts4433.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90s4414:crts4414.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90s4434:crts4434.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90s8515:crts8515.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90s8535:crts8535.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90c8534:crtc8534.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny22:crttn22.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny26:crttn26.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at86rf401:crt86401.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny25:crttn25.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny45:crttn45.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny85:crttn85.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny24:crttn24.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny44:crttn44.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny84:crttn84.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny261:crttn261.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny461:crttn461.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny861:crttn861.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-AVR25_DEV_INFO="\
-at86rf401:crt86401.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-ata6289:crta6289.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny13:crttn13.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny13a:crttn13a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny2313:crttn2313.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny2313a:crttn2313a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny24:crttn24.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny24a:crttn24a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny25:crttn25.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny261:crttn261.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny261a:crttn261a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny4313:crttn4313.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny43u:crttn43u.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny44:crttn44.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny44a:crttn44a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny45:crttn45.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny461:crttn461.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny461a:crttn461a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny48:crttn48.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny84:crttn84.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny84a:crttn84a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny85:crttn85.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny861:crttn861.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny861a:crttn861a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny87:crttn87.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny88:crttn88.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-AVR3_DEV_INFO="\
-atmega103:crtm103.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at43usb320:crt43320.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at43usb355:crt43355.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at76c711:crt76711.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90usb82:crtusb82.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90usb162:crtusb162.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-AVR31_DEV_INFO="\
-atmega103:crtm103.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at43usb320:crt43320.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-AVR35_DEV_INFO="\
-at90usb82:crtusb82.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90usb162:crtusb162.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega8u2:crtm8u2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega16u2:crtm16u2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega32u2:crtm32u2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny167:crttn167.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-AVR4_DEV_INFO="\
-atmega48:crtm48.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega48a:crtm48a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega48p:crtm48p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega8:crtm8.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega88:crtm88.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega88a:crtm88a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega88p:crtm88p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega88pa:crtm88pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega8515:crtm8515.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega8535:crtm8535.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega8hva:crtm8hva.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90pwm1:crt90pwm1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90pwm2:crt90pwm2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90pwm2b:crt90pwm2b.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90pwm3:crt90pwm3.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90pwm3b:crt90pwm3b.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90pwm81:crt90pwm81.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-AVR5_DEV_INFO="\
-at90can32:crtcan32.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90can64:crtcan64.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90can128:crtcan128.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90pwm216:crt90pwm216.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90pwm316:crt90pwm316.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90scr100:crt90scr100.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90usb646:crtusb646.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90usb647:crtusb647.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90usb1286:crtusb1286.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at90usb1287:crtusb1287.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-at94k:crtat94k.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega16:crtm16.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega16a:crtm16a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega161:crtm161.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega162:crtm162.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega163:crtm163.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega164a:crtm164a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega164p:crtm164p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega165:crtm165.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega165a:crtm165a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega165p:crtm165p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega168:crtm168.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega168a:crtm168a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega168p:crtm168p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega169:crtm169.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega169a:crtm169a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega169p:crtm169p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega169pa:crtm169pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega16hva:crtm16hva.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega16hva2:crtm16hva2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega16hvb:crtm16hvb.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega16m1:crtm16m1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega16u4:crtm16u4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega32:crtm32.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega323:crtm323.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega324a:crtm324a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega324p:crtm324p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega324pa:crtm324pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega325:crtm325.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega325a:crtm325a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega325p:crtm325p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega3250:crtm3250.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega3250a:crtm3250a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega3250p:crtm3250p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega328:crtm328.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega328p:crtm328p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega329:crtm329.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega329a:crtm329a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega329p:crtm329p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega329pa:crtm329pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega3290:crtm3290.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega3290a:crtm3290a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega3290p:crtm3290p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega32c1:crtm32c1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega32hvb:crtm32hvb.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega32m1:crtm32m1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega32u4:crtm32u4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega32u6:crtm32u6.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega406:crtm406.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega64:crtm64.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega640:crtm640.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega644:crtm644.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega644a:crtm644a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega644p:crtm644p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega644pa:crtm644pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega645:crtm645.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega645a:crtm645a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega645p:crtm645p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega6450:crtm6450.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega6450a:crtm6450a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega6450p:crtm6450p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega649:crtm649.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega649a:crtm649a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega649p:crtm649p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega6490:crtm6490.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega6490a:crtm6490a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega6490p:crtm6490p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega64c1:crtm64c1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega64hve:crtm64hve.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega64m1:crtm64m1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega128:crtm128.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega1280:crtm1280.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega1281:crtm1281.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega1284p:crtm1284p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atmega128rfa1:crtm128rfa1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-m3000:crtm3000.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-AVR51_DEV_INFO="\
-atmega128:crtm128.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atmega1280:crtm1280.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atmega1281:crtm1281.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atmega1284p:crtm1284p.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atmega128rfa1:crtm128rfa1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-at90can128:crtcan128.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-at90usb1286:crtusb1286.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-at90usb1287:crtusb1287.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
-"
-
-AVR6_DEV_INFO="\
-atmega2560:crtm2560.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atmega2561:crtm2561.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
-"
-
-AVRXMEGA2_DEV_INFO="\
-atxmega16a4:crtx16a4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atxmega16d4:crtx16d4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atxmega32a4:crtx32a4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-atxmega32d4:crtx32d4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-AVRXMEGA4_DEV_INFO="\
-atxmega64a3:crtx64a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atxmega64d3:crtx64d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
-"
-
-AVRXMEGA5_DEV_INFO="\
-atxmega64a1:crtx64a1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atxmega64a1u:crtx64a1u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
-"
-
-AVRXMEGA6_DEV_INFO="\
-atxmega128a3:crtx128a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atxmega128d3:crtx128d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atxmega192a3:crtx192a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atxmega192d3:crtx192d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atxmega256a3:crtx256a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atxmega256a3b:crtx256a3b.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atxmega256d3:crtx256d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
-"
-
-AVRXMEGA7_DEV_INFO="\
-atxmega128a1:crtx128a1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-atxmega128a1u:crtx128a1u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
-"
-
-AVRTINY10_DEV_INFO="\
-attiny4:crttn4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny5:crttn5.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny9:crttn9.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny10:crttn10.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny20:crttn20.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-attiny40:crttn40.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-
-LIB_DEFS="-D__COMPILING_AVR_LIBC__"
-
-AVR_ARH_INFO="\
-avr2:AVR12_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-avr25:AVR25_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-avr3:AVR3_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-avr31:AVR31_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-avr35:AVR35_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-avr4:AVR4_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-avr5:AVR5_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-avr51:AVR51_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-avr6:AVR6_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-avrxmega2:AVRXMEGA2_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-avrxmega3:AVRXMEGA3_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
-avrxmega4:AVRXMEGA4_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-avrxmega5:AVRXMEGA5_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-avrxmega6:AVRXMEGA6_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-avrxmega7:AVRXMEGA7_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
-avrtiny10:AVRTINY10_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
-"
-
-echo "Generating source directories:"
-
-top_dir="UNKNOWN"
-
-if test -e AUTHORS
-then
-       top_dir="$PWD"
-else
-       cd ..
-       if test -e AUTHORS
-       then
-               top_dir="$PWD"
-       fi
-fi
-
-if test $top_dir = "UNKNOWN"
-then
-       echo "Can't determine the top level source dir. Aborting."
-       exit 1
-fi
-
-test -d avr || mkdir avr
-test -d avr/lib || mkdir avr/lib
-
-cd avr/lib || exit 1
-
-IFS=';'
-ARH_SUBDIRS=""
-
-for ath_lib in $AVR_ARH_INFO
-do
-       arh=$(echo $ath_lib | cut -d ':' -f 1)
-       dev_info=$(echo $ath_lib | cut -d ':' -f 2)
-       lib_defs=$(echo $ath_lib | cut -d ':' -f 3)
-       lib_cflags=$(echo $ath_lib | cut -d ':' -f 4)
-       lib_asflags=$(echo $ath_lib | cut -d ':' -f 5)
-
-       install_dir=$arh
-       if [ $arh = avr2 ]
-       then
-               install_dir=""
-       fi
-
-       echo "  avr/lib/$arh/"
-
-       test -d $arh || mkdir $arh
-       cd $arh || exit 1
-
-       DEV_SUBDIRS=""
-
-       eval DEV_INFO=\"\$\{$dev_info\}\"
-
-       for dev_crt in $DEV_INFO
-       do
-               dev=$(echo $dev_crt | cut -d ':' -f 1)
-               crt=$(echo $dev_crt | cut -d ':' -f 2)
-               crt_defs=$(echo $dev_crt | cut -d ':' -f 3)
-               crt_cflags=$(echo $dev_crt | cut -d ':' -f 4)
-               crt_asflags=$(echo $dev_crt | cut -d ':' -f 5)
-
-               echo "  avr/lib/$arh/$dev"
-
-               test -d $dev || mkdir $dev
-
-               cat $top_dir/devtools/Device.am > $dev/Makefile.am
-
-               sed -e "s/<<dev>>/$dev/g" \
-                   -e "s/<<crt>>/$crt/g" \
-                   -e "s/<<crt_defs>>/$crt_defs/g" \
-                   -e "s/<<crt_cflags>>/$crt_cflags/g" \
-                   -e "s/<<crt_asflags>>/$crt_asflags/g"  \
-                   -e "s/<<install_dir>>/$install_dir/g" $dev/Makefile.am \
-                   > $dev/tempfile && mv -f $dev/tempfile $dev/Makefile.am
-
-               DEV_SUBDIRS="$DEV_SUBDIRS $dev"
-       done
-
-       cat $top_dir/devtools/Architecture.am > Makefile.am
-
-       sed -e "s/<<dev_subdirs>>/$DEV_SUBDIRS/g" \
-           -e "s/<<arh>>/$arh/g" \
-           -e "s/<<lib_defs>>/$lib_defs/g" \
-           -e "s/<<lib_cflags>>/$lib_cflags/g" \
-           -e "s/<<lib_asflags>>/$lib_asflags/g" \
-           -e "s/<<install_dir>>/$install_dir/g" Makefile.am \
-           > tempfile && mv -f tempfile Makefile.am
-
-       # Find the first and the last lines of <<dev>> block.
-       n1=`grep '^if[[:blank:]]+HAS_<<dev>>' -En Makefile.am   \
-           | cut -d ':' -f 1`
-       n2=`grep '^endif[[:blank:]]+#[[:blank:]]*<<dev>>' -En Makefile.am \
-           | cut -d ':' -f 1`
-
-       # Before the <<dev>> block.
-       head -n $(($n1 - 1)) Makefile.am > tempfile
-
-       # Duplicate the <<dev>> block and substitute.
-       for dev_crt in $DEV_INFO ; do
-               dev=`echo $dev_crt | cut -d ':' -f 1`
-               tail -n +$n1 Makefile.am        \
-                   | head -n $(($n2 - $n1 + 1))        \
-                   | sed -e "s/<<dev>>/$dev/g" >> tempfile
-       done
-
-       # After the <<dev>> block.
-       tail -n +$(($n2 + 1)) Makefile.am >> tempfile
-       
-       # Result.
-       mv -f tempfile Makefile.am
-
-       ARH_SUBDIRS="$ARH_SUBDIRS $arh"
-
-       cd ..
-done
-
-cat $top_dir/devtools/Lib.am > Makefile.am
-
-sed -e "s/<<arh_subdirs>>/$ARH_SUBDIRS/g" Makefile.am \
-    > tempfile && mv -f tempfile Makefile.am
-
-cd ..
-
-cat $top_dir/devtools/Avr.am > Makefile.am

Copied: tags/avr-libc-1_7_0-release/devtools/gen-avr-lib-tree.sh (from rev 
2175, trunk/avr-libc/devtools/gen-avr-lib-tree.sh)
===================================================================
--- tags/avr-libc-1_7_0-release/devtools/gen-avr-lib-tree.sh                    
        (rev 0)
+++ tags/avr-libc-1_7_0-release/devtools/gen-avr-lib-tree.sh    2010-06-16 
20:02:42 UTC (rev 2177)
@@ -0,0 +1,445 @@
+#! /bin/sh
+#
+# Copyright (c) 2004,  Theodore A. Roth
+# Copyright (c) 2005,2006,2007,2008,2009  Anatoly Sokolov
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in
+#   the documentation and/or other materials provided with the
+#   distribution.
+# * Neither the name of the copyright holders nor the names of
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+# $Id$
+#
+
+# This is a script to automate the generation of the avr/lib/ tree. Since
+# there is a build directory for each device and each of those directories is
+# virtually the same, it is easier to maintain a single file instead of an
+# ever growing number of small Makefile.am fragments.
+
+# Make sure that we are the top-level of the source tree. We will look for the
+# the AUTHORS file in the current dir and the parent. After that, we complain
+# and fatal error out.
+
+# Define the special flags for special sub-targets.
+
+CFLAGS_SPACE="-mcall-prologues -Os"
+CFLAGS_BIG_MEMORY='-Os $(FNO_JUMP_TABLES)'
+CFLAGS_SPEED="-Os"
+
+ASFLAGS_SPEED="-DOPTIMIZE_SPEED"
+
+AVR12_DEV_INFO="\
+at90s1200:crts1200.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny11:crttn11.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny12:crttn12.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny13:crttn13.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny15:crttn15.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny2313:crttn2313.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny28:crttn28.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90s2313:crts2313.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90s2323:crts2323.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90s2333:crts2333.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90s2343:crts2343.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90s4433:crts4433.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90s4414:crts4414.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90s4434:crts4434.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90s8515:crts8515.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90s8535:crts8535.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90c8534:crtc8534.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny22:crttn22.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny26:crttn26.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at86rf401:crt86401.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny25:crttn25.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny45:crttn45.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny85:crttn85.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny24:crttn24.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny44:crttn44.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny84:crttn84.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny261:crttn261.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny461:crttn461.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny861:crttn861.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+AVR25_DEV_INFO="\
+at86rf401:crt86401.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+ata6289:crta6289.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny13:crttn13.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny13a:crttn13a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny2313:crttn2313.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny2313a:crttn2313a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny24:crttn24.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny24a:crttn24a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny25:crttn25.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny261:crttn261.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny261a:crttn261a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny4313:crttn4313.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny43u:crttn43u.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny44:crttn44.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny44a:crttn44a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny45:crttn45.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny461:crttn461.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny461a:crttn461a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny48:crttn48.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny84:crttn84.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny84a:crttn84a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny85:crttn85.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny861:crttn861.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny861a:crttn861a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny87:crttn87.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny88:crttn88.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+AVR3_DEV_INFO="\
+atmega103:crtm103.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at43usb320:crt43320.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at43usb355:crt43355.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at76c711:crt76711.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90usb82:crtusb82.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90usb162:crtusb162.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+AVR31_DEV_INFO="\
+atmega103:crtm103.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at43usb320:crt43320.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+AVR35_DEV_INFO="\
+at90usb82:crtusb82.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90usb162:crtusb162.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega8u2:crtm8u2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega16u2:crtm16u2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega32u2:crtm32u2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny167:crttn167.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+AVR4_DEV_INFO="\
+atmega48:crtm48.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega48a:crtm48a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega48p:crtm48p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega8:crtm8.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega88:crtm88.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega88a:crtm88a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega88p:crtm88p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega88pa:crtm88pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega8515:crtm8515.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega8535:crtm8535.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega8hva:crtm8hva.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90pwm1:crt90pwm1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90pwm2:crt90pwm2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90pwm2b:crt90pwm2b.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90pwm3:crt90pwm3.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90pwm3b:crt90pwm3b.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90pwm81:crt90pwm81.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+AVR5_DEV_INFO="\
+at90can32:crtcan32.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90can64:crtcan64.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90can128:crtcan128.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90pwm216:crt90pwm216.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90pwm316:crt90pwm316.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90scr100:crt90scr100.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90usb646:crtusb646.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90usb647:crtusb647.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90usb1286:crtusb1286.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at90usb1287:crtusb1287.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+at94k:crtat94k.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega16:crtm16.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega16a:crtm16a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega161:crtm161.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega162:crtm162.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega163:crtm163.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega164a:crtm164a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega164p:crtm164p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega165:crtm165.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega165a:crtm165a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega165p:crtm165p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega168:crtm168.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega168a:crtm168a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega168p:crtm168p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega169:crtm169.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega169a:crtm169a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega169p:crtm169p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega169pa:crtm169pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega16hva:crtm16hva.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega16hva2:crtm16hva2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega16hvb:crtm16hvb.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega16m1:crtm16m1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega16u4:crtm16u4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega32:crtm32.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega323:crtm323.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega324a:crtm324a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega324p:crtm324p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega324pa:crtm324pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega325:crtm325.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega325a:crtm325a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega325p:crtm325p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega3250:crtm3250.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega3250a:crtm3250a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega3250p:crtm3250p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega328:crtm328.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega328p:crtm328p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega329:crtm329.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega329a:crtm329a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega329p:crtm329p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega329pa:crtm329pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega3290:crtm3290.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega3290a:crtm3290a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega3290p:crtm3290p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega32c1:crtm32c1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega32hvb:crtm32hvb.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega32m1:crtm32m1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega32u4:crtm32u4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega32u6:crtm32u6.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega406:crtm406.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega64:crtm64.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega640:crtm640.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega644:crtm644.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega644a:crtm644a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega644p:crtm644p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega644pa:crtm644pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega645:crtm645.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega645a:crtm645a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega645p:crtm645p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega6450:crtm6450.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega6450a:crtm6450a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega6450p:crtm6450p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega649:crtm649.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega649a:crtm649a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega649p:crtm649p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega6490:crtm6490.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega6490a:crtm6490a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega6490p:crtm6490p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega64c1:crtm64c1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega64hve:crtm64hve.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega64m1:crtm64m1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega128:crtm128.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega1280:crtm1280.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega1281:crtm1281.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega1284p:crtm1284p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atmega128rfa1:crtm128rfa1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+m3000:crtm3000.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+AVR51_DEV_INFO="\
+atmega128:crtm128.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atmega1280:crtm1280.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atmega1281:crtm1281.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atmega1284p:crtm1284p.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atmega128rfa1:crtm128rfa1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+at90can128:crtcan128.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+at90usb1286:crtusb1286.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+at90usb1287:crtusb1287.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
+"
+
+AVR6_DEV_INFO="\
+atmega2560:crtm2560.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atmega2561:crtm2561.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
+"
+
+AVRXMEGA2_DEV_INFO="\
+atxmega16a4:crtx16a4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atxmega16d4:crtx16d4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atxmega32a4:crtx32a4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+atxmega32d4:crtx32d4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+AVRXMEGA4_DEV_INFO="\
+atxmega64a3:crtx64a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atxmega64d3:crtx64d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
+"
+
+AVRXMEGA5_DEV_INFO="\
+atxmega64a1:crtx64a1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atxmega64a1u:crtx64a1u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
+"
+
+AVRXMEGA6_DEV_INFO="\
+atxmega128a3:crtx128a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atxmega128d3:crtx128d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atxmega192a3:crtx192a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atxmega192d3:crtx192d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atxmega256a3:crtx256a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atxmega256a3b:crtx256a3b.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atxmega256d3:crtx256d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
+"
+
+AVRXMEGA7_DEV_INFO="\
+atxmega128a1:crtx128a1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+atxmega128a1u:crtx128a1u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
+"
+
+AVRTINY10_DEV_INFO="\
+attiny4:crttn4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny5:crttn5.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny9:crttn9.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny10:crttn10.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny20:crttn20.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+attiny40:crttn40.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+
+LIB_DEFS="-D__COMPILING_AVR_LIBC__"
+
+AVR_ARH_INFO="\
+avr2:AVR12_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+avr25:AVR25_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+avr3:AVR3_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+avr31:AVR31_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+avr35:AVR35_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+avr4:AVR4_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+avr5:AVR5_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+avr51:AVR51_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+avr6:AVR6_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+avrxmega2:AVRXMEGA2_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
+avrxmega4:AVRXMEGA4_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+avrxmega5:AVRXMEGA5_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+avrxmega6:AVRXMEGA6_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+avrxmega7:AVRXMEGA7_DEV_INFO:${LIB_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
+avrtiny10:AVRTINY10_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
+"
+
+echo "Generating source directories:"
+
+top_dir="UNKNOWN"
+
+if test -e AUTHORS
+then
+       top_dir="$PWD"
+else
+       cd ..
+       if test -e AUTHORS
+       then
+               top_dir="$PWD"
+       fi
+fi
+
+if test $top_dir = "UNKNOWN"
+then

@@ Diff output truncated at 153600 characters. @@



reply via email to

[Prev in Thread] Current Thread [Next in Thread]