Ping #1: [Patch,AVR]: Auto-generate all -mmcu= options in documentation.

2012-04-23 Thread Georg-Johann Lay

Denis Chertykov schrieb:



This patch adds a new file ./gcc/doc/avr-mmcu.texi that lists all valid
-mmcu= settings and replaces the respective text in invoke.texi by
@include avr-mmcu.texi

Up to now, there is no complete list of -mmcu= options, and a list is
hard to maintain by hand because it contains more than 180 devices.

If, during the build of avr-gcc, a change of ./gcc/doc/avr-mmcu.texi
is detected, the build aborts with a message that nags the user to
copy the new content of avr-mmcu.texi to ./gcc/doc/avr-mmcu.texi.

The error message's text is:

*** Verify that you have permission to grant a
*** GFDL license for all new text in
*** avr-mmcu.texi, then copy it to $(srcdir)/doc/avr-mmcu.texi

./gcc/doc/avr-mmcu.texi is auto-generated, but there is no rule to
automatically update it during the build process.

Documents (HTML, PDF, ...) build fine.

Ok for trunk?

If it's appropriate for 4.7, I'd change invoke.texi accordingly by
copy-pasting the auto-generated texi code into that file, i.e.
into section AVR Options.

Johann

  * Makefile.in (TEXI_GCC_FILES): Add avr-mmcu.texi.

  * doc/avr-mmcu.texi: New auto-generated file.
  * doc/invoke.texi (AVR Options): Include avr-mmcu.texi in order
  to document all valid -mmcu= arguments.

  * config/avr/avr.h (arch_info_s): New struct definition.
  * config/avr/avr-devices.c (avr_texinfo): New variable.
  * config/avr/gen-avr-mmcu-texi.c: New file.
  * config/avr/t-avr: New rules and dependencies to build avr-mmcu.texi.



AVR port  modifications approved but I think that somebody else must
approve your changes to Makefile.in and doc/*


http://gcc.gnu.org/ml/gcc-patches/2012-04/msg00961.html

There is approval missing from a global reviewer for the following changes:

   * Makefile.in (TEXI_GCC_FILES): Add avr-mmcu.texi.

   * doc/avr-mmcu.texi: New auto-generated file.
   * doc/invoke.texi (AVR Options): Include avr-mmcu.texi in order
   to document all valid -mmcu= arguments.

Johann



Re: [Patch,AVR]: Auto-generate all -mmcu= options in documentation.

2012-04-17 Thread Denis Chertykov
2012/4/16 Georg-Johann Lay a...@gjlay.de:
 This patch adds a new file ./gcc/doc/avr-mmcu.texi that lists all valid
 -mmcu= settings and replaces the respective text in invoke.texi by
 @include avr-mmcu.texi

 Up to now, there is no complete list of -mmcu= options, and a list is
 hard to maintain by hand because it contains more than 180 devices.

 If, during the build of avr-gcc, a change of ./gcc/doc/avr-mmcu.texi
 is detected, the build aborts with a message that nags the user to
 copy the new content of avr-mmcu.texi to ./gcc/doc/avr-mmcu.texi.

 The error message's text is:

 *** Verify that you have permission to grant a
 *** GFDL license for all new text in
 *** avr-mmcu.texi, then copy it to $(srcdir)/doc/avr-mmcu.texi

 ./gcc/doc/avr-mmcu.texi is auto-generated, but there is no rule to
 automatically update it during the build process.

 Documents (HTML, PDF, ...) build fine.

 Ok for trunk?

 If it's appropriate for 4.7, I'd change invoke.texi accordingly by
 copy-pasting the auto-generated texi code into that file, i.e.
 into section AVR Options.

 Johann

        * Makefile.in (TEXI_GCC_FILES): Add avr-mmcu.texi.

        * doc/avr-mmcu.texi: New auto-generated file.
        * doc/invoke.texi (AVR Options): Include avr-mmcu.texi in order
        to document all valid -mmcu= arguments.

        * config/avr/avr.h (arch_info_s): New struct definition.
        * config/avr/avr-devices.c (avr_texinfo): New variable.
        * config/avr/gen-avr-mmcu-texi.c: New file.
        * config/avr/t-avr: New rules and dependencies to build avr-mmcu.texi.

AVR port  modifications approved but I think that somebody else must
approve your changes to Makefile.in and doc/*

Denis.


[Patch,AVR]: Auto-generate all -mmcu= options in documentation.

2012-04-16 Thread Georg-Johann Lay
This patch adds a new file ./gcc/doc/avr-mmcu.texi that lists all valid
-mmcu= settings and replaces the respective text in invoke.texi by
@include avr-mmcu.texi

Up to now, there is no complete list of -mmcu= options, and a list is
hard to maintain by hand because it contains more than 180 devices.

If, during the build of avr-gcc, a change of ./gcc/doc/avr-mmcu.texi
is detected, the build aborts with a message that nags the user to
copy the new content of avr-mmcu.texi to ./gcc/doc/avr-mmcu.texi.

The error message's text is:

*** Verify that you have permission to grant a
*** GFDL license for all new text in
*** avr-mmcu.texi, then copy it to $(srcdir)/doc/avr-mmcu.texi

./gcc/doc/avr-mmcu.texi is auto-generated, but there is no rule to
automatically update it during the build process.

Documents (HTML, PDF, ...) build fine.

Ok for trunk?

If it's appropriate for 4.7, I'd change invoke.texi accordingly by
copy-pasting the auto-generated texi code into that file, i.e.
into section AVR Options.

Johann

* Makefile.in (TEXI_GCC_FILES): Add avr-mmcu.texi.

* doc/avr-mmcu.texi: New auto-generated file.
* doc/invoke.texi (AVR Options): Include avr-mmcu.texi in order
to document all valid -mmcu= arguments.

* config/avr/avr.h (arch_info_s): New struct definition.
* config/avr/avr-devices.c (avr_texinfo): New variable.
* config/avr/gen-avr-mmcu-texi.c: New file.
* config/avr/t-avr: New rules and dependencies to build avr-mmcu.texi.
Index: doc/avr-mmcu.texi
===
--- doc/avr-mmcu.texi	(revision 0)
+++ doc/avr-mmcu.texi	(revision 0)
@@ -0,0 +1,74 @@
+@c Copyright (C) 2012 Free Software Foundation, Inc.
+@c This is part of the GCC manual.
+@c For copying conditions, see the file gcc/doc/include/fdl.texi.
+
+@c This file is generated automatically using
+@c gcc/config/avr/gen-avr-mmcu-texi.c from:
+@cgcc/config/avr/avr-devices.c
+@cgcc/config/avr/avr-mcus.def
+
+@c Please do not edit manually.
+
+@table @code
+
+@item avr2
+``Classic'' devices with up to 8@tie{}KiB of program memory.
+@*@var{mcu}@tie{}= @code{at90s2313}, @code{at90s2323}, @code{at90s2333}, @code{at90s2343}, @code{attiny22}, @code{attiny26}, @code{at90s4414}, @code{at90s4433}, @code{at90s4434}, @code{at90s8515}, @code{at90c8534}, @code{at90s8535}.
+
+@item avr25
+``Classic'' devices with up to 8@tie{}KiB of program memory and with the @code{MOVW} instruction.
+@*@var{mcu}@tie{}= @code{ata6289}, @code{attiny13}, @code{attiny13a}, @code{attiny2313}, @code{attiny2313a}, @code{attiny24}, @code{attiny24a}, @code{attiny4313}, @code{attiny44}, @code{attiny44a}, @code{attiny84}, @code{attiny84a}, @code{attiny25}, @code{attiny45}, @code{attiny85}, @code{attiny261}, @code{attiny261a}, @code{attiny461}, @code{attiny461a}, @code{attiny861}, @code{attiny861a}, @code{attiny43u}, @code{attiny87}, @code{attiny48}, @code{attiny88}, @code{at86rf401}.
+
+@item avr3
+``Classic'' devices with 16@tie{}KiB up to 64@tie{}KiB of  program memory.
+@*@var{mcu}@tie{}= @code{at43usb355}, @code{at76c711}.
+
+@item avr31
+``Classic'' devices with 128@tie{}KiB of program memory.
+@*@var{mcu}@tie{}= @code{atmega103}, @code{at43usb320}.
+
+@item avr35
+``Classic'' devices with 16@tie{}KiB up to 64@tie{}KiB of program memory and with the @code{MOVW} instruction.
+@*@var{mcu}@tie{}= @code{at90usb82}, @code{at90usb162}, @code{atmega8u2}, @code{atmega16u2}, @code{atmega32u2}, @code{attiny167}.
+
+@item avr4
+``Enhanced'' devices with up to 8@tie{}KiB of program memory.
+@*@var{mcu}@tie{}= @code{atmega8}, @code{atmega48}, @code{atmega48a}, @code{atmega48p}, @code{atmega88}, @code{atmega88a}, @code{atmega88p}, @code{atmega88pa}, @code{atmega8515}, @code{atmega8535}, @code{atmega8hva}, @code{at90pwm1}, @code{at90pwm2}, @code{at90pwm2b}, @code{at90pwm3}, @code{at90pwm3b}, @code{at90pwm81}.
+
+@item avr5
+``Enhanced'' devices with 16@tie{}KiB up to 64@tie{}KiB of program memory.
+@*@var{mcu}@tie{}= @code{atmega16}, @code{atmega16a}, @code{atmega161}, @code{atmega162}, @code{atmega163}, @code{atmega164a}, @code{atmega164p}, @code{atmega165}, @code{atmega165a}, @code{atmega165p}, @code{atmega168}, @code{atmega168a}, @code{atmega168p}, @code{atmega169}, @code{atmega169a}, @code{atmega169p}, @code{atmega169pa}, @code{atmega32}, @code{atmega323}, @code{atmega324a}, @code{atmega324p}, @code{atmega324pa}, @code{atmega325}, @code{atmega325a}, @code{atmega325p}, @code{atmega3250}, @code{atmega3250a}, @code{atmega3250p}, @code{atmega328}, @code{atmega328p}, @code{atmega329}, @code{atmega329a}, @code{atmega329p}, @code{atmega329pa}, @code{atmega3290}, @code{atmega3290a}, @code{atmega3290p}, @code{atmega406}, @code{atmega64}, @code{atmega640}, @code{atmega644}, @code{atmega644a}, @code{atmega644p}, @code{atmega644pa}, @code{atmega645}, @code{atmega645a}, @code{atmega645p}, @code{atmega6450}, @code{atmega6450a}, @code{atmega6450p}, @code{atmega649}, @code{atmega649a},