Fix progmem warning

Borrow code from https://github.com/arduino/Arduino/issues/1793
This commit is contained in:
odewdney 2015-01-03 21:30:16 +00:00
parent b5c6f11e41
commit 39fae9e3a3

View File

@ -38,6 +38,23 @@
#include "HardwareSerial.h"
#endif
#ifdef __GNUC__
#ifndef GCC_VERSION
#define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
#endif
#if GCC_VERSION < 40602 // Test for GCC < 4.6.2
#ifdef PROGMEM
#undef PROGMEM
#define PROGMEM __attribute__((section(".progmem.data"))) // Workaround for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34734#c4
#ifdef PSTR
#undef PSTR
#define PSTR(s) (__extension__({static const char __c[] PROGMEM = (s); &__c[0];})) // Copied from pgmspace.h in avr-libc source
#endif
#endif
#endif
#endif
#include "MarlinSerial.h"
#ifndef cbi
@ -269,4 +286,4 @@ extern void digipot_i2c_init();
#endif
extern void calculate_volumetric_multipliers();
extern void calculate_volumetric_multipliers();