From 48c5cdced47897934d8473a3097181d0e9ca8b4c Mon Sep 17 00:00:00 2001
From: Dean Camera <dean@fourwalledcubicle.com>
Date: Mon, 2 Aug 2010 08:53:23 +0000
Subject: [PATCH] Hide the PROGMEM attribute from Doxygen, as it appears to
 confuse the parser in some situations.

---
 Bootloaders/CDC/Doxygen.conf                  |  3 +-
 Bootloaders/DFU/Doxygen.conf                  |  3 +-
 .../ClassDriver/AudioInput/Doxygen.conf       |  3 +-
 .../ClassDriver/AudioOutput/Doxygen.conf      |  3 +-
 .../DualVirtualSerial/Doxygen.conf            |  3 +-
 .../ClassDriver/GenericHID/Doxygen.conf       |  3 +-
 .../Device/ClassDriver/Joystick/Doxygen.conf  |  3 +-
 .../Device/ClassDriver/Keyboard/Doxygen.conf  |  3 +-
 .../ClassDriver/KeyboardMouse/Doxygen.conf    |  3 +-
 Demos/Device/ClassDriver/MIDI/Doxygen.conf    |  3 +-
 .../ClassDriver/MassStorage/Doxygen.conf      |  3 +-
 .../MassStorageKeyboard/Doxygen.conf          |  3 +-
 Demos/Device/ClassDriver/Mouse/Doxygen.conf   |  3 +-
 .../ClassDriver/RNDISEthernet/Doxygen.conf    |  3 +-
 .../ClassDriver/VirtualSerial/Doxygen.conf    |  3 +-
 .../VirtualSerialMouse/Doxygen.conf           |  3 +-
 Demos/Device/LowLevel/AudioInput/Doxygen.conf |  3 +-
 .../Device/LowLevel/AudioOutput/Doxygen.conf  |  3 +-
 .../LowLevel/DualVirtualSerial/Doxygen.conf   |  3 +-
 Demos/Device/LowLevel/GenericHID/Doxygen.conf |  3 +-
 Demos/Device/LowLevel/Joystick/Doxygen.conf   |  3 +-
 Demos/Device/LowLevel/Keyboard/Doxygen.conf   |  3 +-
 .../LowLevel/KeyboardMouse/Doxygen.conf       |  3 +-
 Demos/Device/LowLevel/MIDI/Doxygen.conf       |  3 +-
 .../Device/LowLevel/MassStorage/Doxygen.conf  |  3 +-
 Demos/Device/LowLevel/Mouse/Doxygen.conf      |  3 +-
 .../LowLevel/RNDISEthernet/Doxygen.conf       |  3 +-
 .../LowLevel/VirtualSerial/Doxygen.conf       |  3 +-
 .../ClassDriver/MouseHostDevice/Doxygen.conf  |  3 +-
 .../JoystickHostWithParser/Doxygen.conf       |  3 +-
 .../ClassDriver/KeyboardHost/Doxygen.conf     |  3 +-
 .../KeyboardHostWithParser/Doxygen.conf       |  3 +-
 Demos/Host/ClassDriver/MIDIHost/Doxygen.conf  |  3 +-
 .../ClassDriver/MassStorageHost/Doxygen.conf  |  3 +-
 Demos/Host/ClassDriver/MouseHost/Doxygen.conf |  3 +-
 .../MouseHostWithParser/Doxygen.conf          |  3 +-
 .../Host/ClassDriver/PrinterHost/Doxygen.conf |  3 +-
 .../RNDISEthernetHost/Doxygen.conf            |  3 +-
 .../ClassDriver/StillImageHost/Doxygen.conf   |  3 +-
 .../VirtualSerialHost/Doxygen.conf            |  3 +-
 .../Incomplete/BluetoothHost/Doxygen.conf     |  3 +-
 .../Host/LowLevel/GenericHIDHost/Doxygen.conf |  3 +-
 .../JoystickHostWithParser/Doxygen.conf       |  3 +-
 Demos/Host/LowLevel/KeyboardHost/Doxygen.conf |  3 +-
 .../KeyboardHostWithParser/Doxygen.conf       |  3 +-
 Demos/Host/LowLevel/MIDIHost/Doxygen.conf     |  3 +-
 .../LowLevel/MassStorageHost/Doxygen.conf     |  3 +-
 Demos/Host/LowLevel/MouseHost/Doxygen.conf    |  3 +-
 .../LowLevel/MouseHostWithParser/Doxygen.conf |  3 +-
 Demos/Host/LowLevel/PrinterHost/Doxygen.conf  |  3 +-
 .../LowLevel/RNDISEthernetHost/Doxygen.conf   |  3 +-
 .../Host/LowLevel/StillImageHost/Doxygen.conf |  3 +-
 .../LowLevel/VirtualSerialHost/Doxygen.conf   |  3 +-
 LUFA/Doxygen.conf                             |  3 +-
 LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h       | 60 +++++++++----------
 Projects/AVRISP-MKII/Doxygen.conf             |  3 +-
 Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c      | 10 +++-
 Projects/Benito/Doxygen.conf                  |  3 +-
 Projects/LEDNotifier/Doxygen.conf             |  3 +-
 Projects/Magstripe/Doxygen.conf               |  3 +-
 Projects/MissileLauncher/Doxygen.conf         |  3 +-
 Projects/RelayBoard/Doxygen.conf              |  3 +-
 Projects/TempDataLogger/Doxygen.conf          |  3 +-
 Projects/USBtoSerial/Doxygen.conf             |  3 +-
 Projects/Webserver/Doxygen.conf               |  3 +-
 Projects/XPLAINBridge/Doxygen.conf            |  3 +-
 66 files changed, 166 insertions(+), 96 deletions(-)

diff --git a/Bootloaders/CDC/Doxygen.conf b/Bootloaders/CDC/Doxygen.conf
index 2b9f6d48f..f12c18915 100644
--- a/Bootloaders/CDC/Doxygen.conf
+++ b/Bootloaders/CDC/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Bootloaders/DFU/Doxygen.conf b/Bootloaders/DFU/Doxygen.conf
index 22010c517..71a94aaa5 100644
--- a/Bootloaders/DFU/Doxygen.conf
+++ b/Bootloaders/DFU/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/AudioInput/Doxygen.conf b/Demos/Device/ClassDriver/AudioInput/Doxygen.conf
index ff7478996..dfc3ca11b 100644
--- a/Demos/Device/ClassDriver/AudioInput/Doxygen.conf
+++ b/Demos/Device/ClassDriver/AudioInput/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/AudioOutput/Doxygen.conf b/Demos/Device/ClassDriver/AudioOutput/Doxygen.conf
index 2cf59be2a..01f29addd 100644
--- a/Demos/Device/ClassDriver/AudioOutput/Doxygen.conf
+++ b/Demos/Device/ClassDriver/AudioOutput/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/DualVirtualSerial/Doxygen.conf b/Demos/Device/ClassDriver/DualVirtualSerial/Doxygen.conf
index f06e95087..856126e76 100644
--- a/Demos/Device/ClassDriver/DualVirtualSerial/Doxygen.conf
+++ b/Demos/Device/ClassDriver/DualVirtualSerial/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/GenericHID/Doxygen.conf b/Demos/Device/ClassDriver/GenericHID/Doxygen.conf
index 39b5c1f53..97d058582 100644
--- a/Demos/Device/ClassDriver/GenericHID/Doxygen.conf
+++ b/Demos/Device/ClassDriver/GenericHID/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/Joystick/Doxygen.conf b/Demos/Device/ClassDriver/Joystick/Doxygen.conf
index 3ec06f121..d8b1f39c9 100644
--- a/Demos/Device/ClassDriver/Joystick/Doxygen.conf
+++ b/Demos/Device/ClassDriver/Joystick/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/Keyboard/Doxygen.conf b/Demos/Device/ClassDriver/Keyboard/Doxygen.conf
index 1068703b2..2277a4c0f 100644
--- a/Demos/Device/ClassDriver/Keyboard/Doxygen.conf
+++ b/Demos/Device/ClassDriver/Keyboard/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/KeyboardMouse/Doxygen.conf b/Demos/Device/ClassDriver/KeyboardMouse/Doxygen.conf
index c02c63d9b..a3b4166ab 100644
--- a/Demos/Device/ClassDriver/KeyboardMouse/Doxygen.conf
+++ b/Demos/Device/ClassDriver/KeyboardMouse/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/MIDI/Doxygen.conf b/Demos/Device/ClassDriver/MIDI/Doxygen.conf
index 6bf1521db..e322083a2 100644
--- a/Demos/Device/ClassDriver/MIDI/Doxygen.conf
+++ b/Demos/Device/ClassDriver/MIDI/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/MassStorage/Doxygen.conf b/Demos/Device/ClassDriver/MassStorage/Doxygen.conf
index fdd950335..3cccad496 100644
--- a/Demos/Device/ClassDriver/MassStorage/Doxygen.conf
+++ b/Demos/Device/ClassDriver/MassStorage/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/MassStorageKeyboard/Doxygen.conf b/Demos/Device/ClassDriver/MassStorageKeyboard/Doxygen.conf
index 734077eb4..fd4d7e30e 100644
--- a/Demos/Device/ClassDriver/MassStorageKeyboard/Doxygen.conf
+++ b/Demos/Device/ClassDriver/MassStorageKeyboard/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/Mouse/Doxygen.conf b/Demos/Device/ClassDriver/Mouse/Doxygen.conf
index 2a9530a6c..508e6cd5f 100644
--- a/Demos/Device/ClassDriver/Mouse/Doxygen.conf
+++ b/Demos/Device/ClassDriver/Mouse/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/RNDISEthernet/Doxygen.conf b/Demos/Device/ClassDriver/RNDISEthernet/Doxygen.conf
index b93df6063..32f386093 100644
--- a/Demos/Device/ClassDriver/RNDISEthernet/Doxygen.conf
+++ b/Demos/Device/ClassDriver/RNDISEthernet/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/VirtualSerial/Doxygen.conf b/Demos/Device/ClassDriver/VirtualSerial/Doxygen.conf
index c94fe09ae..8b9619fcb 100644
--- a/Demos/Device/ClassDriver/VirtualSerial/Doxygen.conf
+++ b/Demos/Device/ClassDriver/VirtualSerial/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/ClassDriver/VirtualSerialMouse/Doxygen.conf b/Demos/Device/ClassDriver/VirtualSerialMouse/Doxygen.conf
index e878154ee..39a81ceeb 100644
--- a/Demos/Device/ClassDriver/VirtualSerialMouse/Doxygen.conf
+++ b/Demos/Device/ClassDriver/VirtualSerialMouse/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/AudioInput/Doxygen.conf b/Demos/Device/LowLevel/AudioInput/Doxygen.conf
index ff7478996..dfc3ca11b 100644
--- a/Demos/Device/LowLevel/AudioInput/Doxygen.conf
+++ b/Demos/Device/LowLevel/AudioInput/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/AudioOutput/Doxygen.conf b/Demos/Device/LowLevel/AudioOutput/Doxygen.conf
index 2cf59be2a..01f29addd 100644
--- a/Demos/Device/LowLevel/AudioOutput/Doxygen.conf
+++ b/Demos/Device/LowLevel/AudioOutput/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/DualVirtualSerial/Doxygen.conf b/Demos/Device/LowLevel/DualVirtualSerial/Doxygen.conf
index f06e95087..856126e76 100644
--- a/Demos/Device/LowLevel/DualVirtualSerial/Doxygen.conf
+++ b/Demos/Device/LowLevel/DualVirtualSerial/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/GenericHID/Doxygen.conf b/Demos/Device/LowLevel/GenericHID/Doxygen.conf
index 39b5c1f53..97d058582 100644
--- a/Demos/Device/LowLevel/GenericHID/Doxygen.conf
+++ b/Demos/Device/LowLevel/GenericHID/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/Joystick/Doxygen.conf b/Demos/Device/LowLevel/Joystick/Doxygen.conf
index 3ec06f121..d8b1f39c9 100644
--- a/Demos/Device/LowLevel/Joystick/Doxygen.conf
+++ b/Demos/Device/LowLevel/Joystick/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/Keyboard/Doxygen.conf b/Demos/Device/LowLevel/Keyboard/Doxygen.conf
index 1068703b2..2277a4c0f 100644
--- a/Demos/Device/LowLevel/Keyboard/Doxygen.conf
+++ b/Demos/Device/LowLevel/Keyboard/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/KeyboardMouse/Doxygen.conf b/Demos/Device/LowLevel/KeyboardMouse/Doxygen.conf
index c02c63d9b..a3b4166ab 100644
--- a/Demos/Device/LowLevel/KeyboardMouse/Doxygen.conf
+++ b/Demos/Device/LowLevel/KeyboardMouse/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/MIDI/Doxygen.conf b/Demos/Device/LowLevel/MIDI/Doxygen.conf
index 6bf1521db..e322083a2 100644
--- a/Demos/Device/LowLevel/MIDI/Doxygen.conf
+++ b/Demos/Device/LowLevel/MIDI/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/MassStorage/Doxygen.conf b/Demos/Device/LowLevel/MassStorage/Doxygen.conf
index fdd950335..3cccad496 100644
--- a/Demos/Device/LowLevel/MassStorage/Doxygen.conf
+++ b/Demos/Device/LowLevel/MassStorage/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/Mouse/Doxygen.conf b/Demos/Device/LowLevel/Mouse/Doxygen.conf
index 2a9530a6c..508e6cd5f 100644
--- a/Demos/Device/LowLevel/Mouse/Doxygen.conf
+++ b/Demos/Device/LowLevel/Mouse/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/RNDISEthernet/Doxygen.conf b/Demos/Device/LowLevel/RNDISEthernet/Doxygen.conf
index b93df6063..32f386093 100644
--- a/Demos/Device/LowLevel/RNDISEthernet/Doxygen.conf
+++ b/Demos/Device/LowLevel/RNDISEthernet/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Device/LowLevel/VirtualSerial/Doxygen.conf b/Demos/Device/LowLevel/VirtualSerial/Doxygen.conf
index c94fe09ae..8b9619fcb 100644
--- a/Demos/Device/LowLevel/VirtualSerial/Doxygen.conf
+++ b/Demos/Device/LowLevel/VirtualSerial/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/DualRole/ClassDriver/MouseHostDevice/Doxygen.conf b/Demos/DualRole/ClassDriver/MouseHostDevice/Doxygen.conf
index ec38bb615..7670d130d 100644
--- a/Demos/DualRole/ClassDriver/MouseHostDevice/Doxygen.conf
+++ b/Demos/DualRole/ClassDriver/MouseHostDevice/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/JoystickHostWithParser/Doxygen.conf b/Demos/Host/ClassDriver/JoystickHostWithParser/Doxygen.conf
index c7f481dac..4b75fc2fd 100644
--- a/Demos/Host/ClassDriver/JoystickHostWithParser/Doxygen.conf
+++ b/Demos/Host/ClassDriver/JoystickHostWithParser/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/KeyboardHost/Doxygen.conf b/Demos/Host/ClassDriver/KeyboardHost/Doxygen.conf
index 0735806af..1d27b75a8 100644
--- a/Demos/Host/ClassDriver/KeyboardHost/Doxygen.conf
+++ b/Demos/Host/ClassDriver/KeyboardHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/KeyboardHostWithParser/Doxygen.conf b/Demos/Host/ClassDriver/KeyboardHostWithParser/Doxygen.conf
index 15d2e7e7f..696fd64c5 100644
--- a/Demos/Host/ClassDriver/KeyboardHostWithParser/Doxygen.conf
+++ b/Demos/Host/ClassDriver/KeyboardHostWithParser/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/MIDIHost/Doxygen.conf b/Demos/Host/ClassDriver/MIDIHost/Doxygen.conf
index 3b72e7d0f..6d316a436 100644
--- a/Demos/Host/ClassDriver/MIDIHost/Doxygen.conf
+++ b/Demos/Host/ClassDriver/MIDIHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/MassStorageHost/Doxygen.conf b/Demos/Host/ClassDriver/MassStorageHost/Doxygen.conf
index b2ccc62fb..7ca2fc149 100644
--- a/Demos/Host/ClassDriver/MassStorageHost/Doxygen.conf
+++ b/Demos/Host/ClassDriver/MassStorageHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/MouseHost/Doxygen.conf b/Demos/Host/ClassDriver/MouseHost/Doxygen.conf
index 1e4e1cc1d..40e1817a5 100644
--- a/Demos/Host/ClassDriver/MouseHost/Doxygen.conf
+++ b/Demos/Host/ClassDriver/MouseHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/MouseHostWithParser/Doxygen.conf b/Demos/Host/ClassDriver/MouseHostWithParser/Doxygen.conf
index 9e79ad3eb..677da121c 100644
--- a/Demos/Host/ClassDriver/MouseHostWithParser/Doxygen.conf
+++ b/Demos/Host/ClassDriver/MouseHostWithParser/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/PrinterHost/Doxygen.conf b/Demos/Host/ClassDriver/PrinterHost/Doxygen.conf
index 867f676cb..2c222311c 100644
--- a/Demos/Host/ClassDriver/PrinterHost/Doxygen.conf
+++ b/Demos/Host/ClassDriver/PrinterHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/RNDISEthernetHost/Doxygen.conf b/Demos/Host/ClassDriver/RNDISEthernetHost/Doxygen.conf
index d407d0ffd..6ac094654 100644
--- a/Demos/Host/ClassDriver/RNDISEthernetHost/Doxygen.conf
+++ b/Demos/Host/ClassDriver/RNDISEthernetHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/StillImageHost/Doxygen.conf b/Demos/Host/ClassDriver/StillImageHost/Doxygen.conf
index fe99695cb..00accc7a3 100644
--- a/Demos/Host/ClassDriver/StillImageHost/Doxygen.conf
+++ b/Demos/Host/ClassDriver/StillImageHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/ClassDriver/VirtualSerialHost/Doxygen.conf b/Demos/Host/ClassDriver/VirtualSerialHost/Doxygen.conf
index ac500bce2..c41f9faa0 100644
--- a/Demos/Host/ClassDriver/VirtualSerialHost/Doxygen.conf
+++ b/Demos/Host/ClassDriver/VirtualSerialHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/Incomplete/BluetoothHost/Doxygen.conf b/Demos/Host/Incomplete/BluetoothHost/Doxygen.conf
index 99fda445d..11a0225c3 100644
--- a/Demos/Host/Incomplete/BluetoothHost/Doxygen.conf
+++ b/Demos/Host/Incomplete/BluetoothHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/GenericHIDHost/Doxygen.conf b/Demos/Host/LowLevel/GenericHIDHost/Doxygen.conf
index cb1ced755..42e297335 100644
--- a/Demos/Host/LowLevel/GenericHIDHost/Doxygen.conf
+++ b/Demos/Host/LowLevel/GenericHIDHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/JoystickHostWithParser/Doxygen.conf b/Demos/Host/LowLevel/JoystickHostWithParser/Doxygen.conf
index 23d4fed72..e276fd8a4 100644
--- a/Demos/Host/LowLevel/JoystickHostWithParser/Doxygen.conf
+++ b/Demos/Host/LowLevel/JoystickHostWithParser/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/KeyboardHost/Doxygen.conf b/Demos/Host/LowLevel/KeyboardHost/Doxygen.conf
index 0735806af..1d27b75a8 100644
--- a/Demos/Host/LowLevel/KeyboardHost/Doxygen.conf
+++ b/Demos/Host/LowLevel/KeyboardHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/KeyboardHostWithParser/Doxygen.conf b/Demos/Host/LowLevel/KeyboardHostWithParser/Doxygen.conf
index 19c84632a..26d5a9b04 100644
--- a/Demos/Host/LowLevel/KeyboardHostWithParser/Doxygen.conf
+++ b/Demos/Host/LowLevel/KeyboardHostWithParser/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/MIDIHost/Doxygen.conf b/Demos/Host/LowLevel/MIDIHost/Doxygen.conf
index 3b72e7d0f..6d316a436 100644
--- a/Demos/Host/LowLevel/MIDIHost/Doxygen.conf
+++ b/Demos/Host/LowLevel/MIDIHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/MassStorageHost/Doxygen.conf b/Demos/Host/LowLevel/MassStorageHost/Doxygen.conf
index b2ccc62fb..7ca2fc149 100644
--- a/Demos/Host/LowLevel/MassStorageHost/Doxygen.conf
+++ b/Demos/Host/LowLevel/MassStorageHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/MouseHost/Doxygen.conf b/Demos/Host/LowLevel/MouseHost/Doxygen.conf
index 1e4e1cc1d..40e1817a5 100644
--- a/Demos/Host/LowLevel/MouseHost/Doxygen.conf
+++ b/Demos/Host/LowLevel/MouseHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/MouseHostWithParser/Doxygen.conf b/Demos/Host/LowLevel/MouseHostWithParser/Doxygen.conf
index e08f13dc9..ce6bb8acd 100644
--- a/Demos/Host/LowLevel/MouseHostWithParser/Doxygen.conf
+++ b/Demos/Host/LowLevel/MouseHostWithParser/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/PrinterHost/Doxygen.conf b/Demos/Host/LowLevel/PrinterHost/Doxygen.conf
index 867f676cb..2c222311c 100644
--- a/Demos/Host/LowLevel/PrinterHost/Doxygen.conf
+++ b/Demos/Host/LowLevel/PrinterHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/RNDISEthernetHost/Doxygen.conf b/Demos/Host/LowLevel/RNDISEthernetHost/Doxygen.conf
index 8c701e9e8..303888186 100644
--- a/Demos/Host/LowLevel/RNDISEthernetHost/Doxygen.conf
+++ b/Demos/Host/LowLevel/RNDISEthernetHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/StillImageHost/Doxygen.conf b/Demos/Host/LowLevel/StillImageHost/Doxygen.conf
index fe99695cb..00accc7a3 100644
--- a/Demos/Host/LowLevel/StillImageHost/Doxygen.conf
+++ b/Demos/Host/LowLevel/StillImageHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Demos/Host/LowLevel/VirtualSerialHost/Doxygen.conf b/Demos/Host/LowLevel/VirtualSerialHost/Doxygen.conf
index ac500bce2..c41f9faa0 100644
--- a/Demos/Host/LowLevel/VirtualSerialHost/Doxygen.conf
+++ b/Demos/Host/LowLevel/VirtualSerialHost/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/LUFA/Doxygen.conf b/LUFA/Doxygen.conf
index bb7679c8b..d69b12d19 100644
--- a/LUFA/Doxygen.conf
+++ b/LUFA/Doxygen.conf
@@ -1305,7 +1305,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h b/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h
index 098245d6d..ed42b34e9 100644
--- a/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h
+++ b/LUFA/Drivers/Peripheral/AVRU4U6U7/ADC.h
@@ -70,130 +70,130 @@
 	/* Public Interface - May be used in end-application: */
 		/* Macros: */			
 			/** Reference mask, for using the voltage present at the AVR's AREF pin for the ADC reference. */
-			#define  ADC_REFERENCE_AREF              0
+			#define ADC_REFERENCE_AREF              0
 
 			/** Reference mask, for using the voltage present at the AVR's AVCC pin for the ADC reference. */
-			#define  ADC_REFERENCE_AVCC              (1 << REFS0)
+			#define ADC_REFERENCE_AVCC              (1 << REFS0)
 
 			/** Reference mask, for using the internally generated 2.56V reference voltage as the ADC reference. */
-			#define  ADC_REFERENCE_INT2560MV         ((1 << REFS1)| (1 << REFS0))
+			#define ADC_REFERENCE_INT2560MV         ((1 << REFS1) | (1 << REFS0))
 			
 			/** Left-adjusts the 10-bit ADC result, so that the upper 8 bits of the value returned by the
 			 *  ADC_GetResult() macro contain the 8 most significant bits of the result. */
-			#define  ADC_LEFT_ADJUSTED               (1 << ADLAR)
+			#define ADC_LEFT_ADJUSTED               (1 << ADLAR)
 
 			/** Right-adjusts the 10-bit ADC result, so that the lower 8 bits of the value returned by the
 			 *  ADC_GetResult() macro contain the 8 least significant bits of the result. */
-			#define  ADC_RIGHT_ADJUSTED              (0 << ADLAR)
+			#define ADC_RIGHT_ADJUSTED              (0 << ADLAR)
 			
 			/** Sets the ADC mode to free running, so that conversions take place continuously as fast as the ADC
 			 *  is capable of at the given input clock speed. */
-			#define  ADC_FREE_RUNNING                (1 << ADATE)
+			#define ADC_FREE_RUNNING                (1 << ADATE)
 
 			/** Sets the ADC mode to single conversion, so that only a single conversion will take place before
 			 *  the ADC returns to idle. */
-			#define  ADC_SINGLE_CONVERSION           (0 << ADATE)
+			#define ADC_SINGLE_CONVERSION           (0 << ADATE)
 			
 			/** Sets the ADC input clock to prescale by a factor of 2 the AVR's system clock. */
-			#define  ADC_PRESCALE_2                  (1 << ADPS0)
+			#define ADC_PRESCALE_2                  (1 << ADPS0)
 
 			/** Sets the ADC input clock to prescale by a factor of 4 the AVR's system clock. */
-			#define  ADC_PRESCALE_4                  (1 << ADPS1)
+			#define ADC_PRESCALE_4                  (1 << ADPS1)
 
 			/** Sets the ADC input clock to prescale by a factor of 8 the AVR's system clock. */
-			#define  ADC_PRESCALE_8                  ((1 << ADPS0) | (1 << ADPS1))
+			#define ADC_PRESCALE_8                  ((1 << ADPS0) | (1 << ADPS1))
 
 			/** Sets the ADC input clock to prescale by a factor of 16 the AVR's system clock. */
-			#define  ADC_PRESCALE_16                 (1 << ADPS2)
+			#define ADC_PRESCALE_16                 (1 << ADPS2)
 
 			/** Sets the ADC input clock to prescale by a factor of 32 the AVR's system clock. */
-			#define  ADC_PRESCALE_32                 ((1 << ADPS2) | (1 << ADPS0))
+			#define ADC_PRESCALE_32                 ((1 << ADPS2) | (1 << ADPS0))
 
 			/** Sets the ADC input clock to prescale by a factor of 64 the AVR's system clock. */
-			#define  ADC_PRESCALE_64                 ((1 << ADPS2) | (1 << ADPS1))
+			#define ADC_PRESCALE_64                 ((1 << ADPS2) | (1 << ADPS1))
 
 			/** Sets the ADC input clock to prescale by a factor of 128 the AVR's system clock. */
-			#define  ADC_PRESCALE_128                ((1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0))
+			#define ADC_PRESCALE_128                ((1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0))
 			
 			//@{
 			/** MUX mask define for the ADC0 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading. */
-			#define  ADC_CHANNEL0                    (0x00 << MUX0)
+			#define ADC_CHANNEL0                    (0x00 << MUX0)
 
 			/** MUX mask define for the ADC1 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading. */
-			#define  ADC_CHANNEL1                    (0x01 << MUX0)
+			#define ADC_CHANNEL1                    (0x01 << MUX0)
 
 			#if !(defined(__AVR_ATmega16U4__)  || defined(__AVR_ATmega32U4__) || defined(__DOXYGEN__))
 				/** MUX mask define for the ADC2 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading.
 				 *
 				 *  \note Not available on all AVR models.
 				 */
-				#define  ADC_CHANNEL2                (0x02 << MUX0)
+				#define ADC_CHANNEL2                (0x02 << MUX0)
 
 				/** MUX mask define for the ADC3 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading.
 				 *
 				 *  \note Not available on all AVR models.
 				 */
-				#define  ADC_CHANNEL3                (0x03 << MUX0)
+				#define ADC_CHANNEL3                (0x03 << MUX0)
 			#endif
 
 			/** MUX mask define for the ADC4 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading. */
-			#define  ADC_CHANNEL4                    (0x04 << MUX0)
+			#define ADC_CHANNEL4                    (0x04 << MUX0)
 
 			/** MUX mask define for the ADC5 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading. */
-			#define  ADC_CHANNEL5                    (0x05 << MUX0)
+			#define ADC_CHANNEL5                    (0x05 << MUX0)
 
 			/** MUX mask define for the ADC6 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading. */
-			#define  ADC_CHANNEL6                    (0x06 << MUX0)
+			#define ADC_CHANNEL6                    (0x06 << MUX0)
 
 			/** MUX mask define for the ADC7 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading. */
-			#define  ADC_CHANNEL7                    (0x07 << MUX0)
+			#define ADC_CHANNEL7                    (0x07 << MUX0)
 
 			/** MUX mask define for the internal 1.1V bandgap channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading. */
-			#define  ADC_1100MV_BANDGAP              (0x1E << MUX0)
+			#define ADC_1100MV_BANDGAP              (0x1E << MUX0)
 			
 			#if (defined(__AVR_ATmega16U4__)  || defined(__AVR_ATmega32U4__) || defined(__DOXYGEN__))
 				/** MUX mask define for the ADC8 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading.
 				 *
 				 *  \note Not available on all AVR models.
 				 */
-				#define  ADC_CHANNEL8                ((1 << 8) | (0x00 << MUX0))
+				#define ADC_CHANNEL8                ((1 << 8) | (0x00 << MUX0))
 
 				/** MUX mask define for the ADC9 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading.
 				 *
 				 *  \note Not available on all AVR models.
 				 */
-				#define  ADC_CHANNEL9                ((1 << 8) | (0x01 << MUX0))
+				#define ADC_CHANNEL9                ((1 << 8) | (0x01 << MUX0))
 
 				/** MUX mask define for the ADC10 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading.
 				 *
 				 *  \note Not available on all AVR models.
 				 */
-				#define  ADC_CHANNEL10               ((1 << 8) | (0x02 << MUX0))
+				#define ADC_CHANNEL10               ((1 << 8) | (0x02 << MUX0))
 
 				/** MUX mask define for the ADC11 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading.
 				 *
 				 *  \note Not available on all AVR models.
 				 */
-				#define  ADC_CHANNEL11               ((1 << 8) | (0x03 << MUX0))
+				#define ADC_CHANNEL11               ((1 << 8) | (0x03 << MUX0))
 
 				/** MUX mask define for the ADC12 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading.
 				 *
 				 *  \note Not available on all AVR models.
 				 */
-				#define  ADC_CHANNEL12               ((1 << 8) | (0x04 << MUX0))
+				#define ADC_CHANNEL12               ((1 << 8) | (0x04 << MUX0))
 
 				/** MUX mask define for the ADC13 channel of the ADC. See \ref ADC_StartReading and \ref ADC_GetChannelReading.
 				 *
 				 *  \note Not available on all AVR models.
 				 */
-				#define  ADC_CHANNEL13               ((1 << 8) | (0x05 << MUX0))
+				#define ADC_CHANNEL13               ((1 << 8) | (0x05 << MUX0))
 
 				/** MUX mask define for the internal temperature sensor channel of the ADC. See \ref ADC_StartReading and
 				 *  \ref ADC_GetChannelReading.
 				 *
 				 *  \note Not available on all AVR models.
 				 */
-				#define  ADC_INT_TEMP_SENS           ((1 << 8) | (0x07 << MUX0))
+				#define ADC_INT_TEMP_SENS           ((1 << 8) | (0x07 << MUX0))
 			#endif
 			//@}
 			
diff --git a/Projects/AVRISP-MKII/Doxygen.conf b/Projects/AVRISP-MKII/Doxygen.conf
index 3ebf34f41..f144b070a 100644
--- a/Projects/AVRISP-MKII/Doxygen.conf
+++ b/Projects/AVRISP-MKII/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c b/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c
index 47ce43bca..55d65511e 100644
--- a/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c
+++ b/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.c
@@ -37,7 +37,10 @@
 
 #if defined(ENABLE_ISP_PROTOCOL) || defined(__DOXYGEN__)
 
-/** List of hardware SPI prescaler masks for possible AVRStudio ISP programming speeds. */
+/** List of hardware SPI prescaler masks for possible AVRStudio ISP programming speeds.
+ *
+ *  \hideinitializer
+ */
 static uint8_t SPIMaskFromSCKDuration[] PROGMEM =
 {
 #if (F_CPU == 8000000)
@@ -61,7 +64,10 @@ static uint8_t SPIMaskFromSCKDuration[] PROGMEM =
 #endif
 };
 
-/** Lookup table to convert the slower ISP speeds into a compare value for the software SPI driver. */
+/** Lookup table to convert the slower ISP speeds into a compare value for the software SPI driver.
+ *
+ *  \hideinitializer
+ */
 static uint16_t TimerCompareFromSCKDuration[] PROGMEM =
 {
 	TIMER_COMP(96386), TIMER_COMP(89888), TIMER_COMP(84211), TIMER_COMP(79208), TIMER_COMP(74767),
diff --git a/Projects/Benito/Doxygen.conf b/Projects/Benito/Doxygen.conf
index 91f52863f..f91698b1d 100644
--- a/Projects/Benito/Doxygen.conf
+++ b/Projects/Benito/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Projects/LEDNotifier/Doxygen.conf b/Projects/LEDNotifier/Doxygen.conf
index 86a996a23..51612de79 100644
--- a/Projects/LEDNotifier/Doxygen.conf
+++ b/Projects/LEDNotifier/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Projects/Magstripe/Doxygen.conf b/Projects/Magstripe/Doxygen.conf
index 5eb68a6e6..690b1605a 100644
--- a/Projects/Magstripe/Doxygen.conf
+++ b/Projects/Magstripe/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Projects/MissileLauncher/Doxygen.conf b/Projects/MissileLauncher/Doxygen.conf
index dce478d5e..c935d9538 100644
--- a/Projects/MissileLauncher/Doxygen.conf
+++ b/Projects/MissileLauncher/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Projects/RelayBoard/Doxygen.conf b/Projects/RelayBoard/Doxygen.conf
index 4d202c3e9..a3c25e12a 100644
--- a/Projects/RelayBoard/Doxygen.conf
+++ b/Projects/RelayBoard/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Projects/TempDataLogger/Doxygen.conf b/Projects/TempDataLogger/Doxygen.conf
index 4fddb9652..5570e1366 100644
--- a/Projects/TempDataLogger/Doxygen.conf
+++ b/Projects/TempDataLogger/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Projects/USBtoSerial/Doxygen.conf b/Projects/USBtoSerial/Doxygen.conf
index 2ba2055d3..02ab2f7d4 100644
--- a/Projects/USBtoSerial/Doxygen.conf
+++ b/Projects/USBtoSerial/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Projects/Webserver/Doxygen.conf b/Projects/Webserver/Doxygen.conf
index 63607e5b0..d52351870 100644
--- a/Projects/Webserver/Doxygen.conf
+++ b/Projects/Webserver/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
diff --git a/Projects/XPLAINBridge/Doxygen.conf b/Projects/XPLAINBridge/Doxygen.conf
index 78eb2ff96..376fbe7f1 100644
--- a/Projects/XPLAINBridge/Doxygen.conf
+++ b/Projects/XPLAINBridge/Doxygen.conf
@@ -1307,7 +1307,8 @@ INCLUDE_FILE_PATTERNS  =
 # undefined via #undef or recursively expanded use the := operator
 # instead of the = operator.
 
-PREDEFINED             = __DOXYGEN__
+PREDEFINED             = __DOXYGEN__ \
+                         PROGMEM
 
 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
 # this tag can be used to specify a list of macro names that should be expanded.
-- 
GitLab