Add -nodevicespecs option for avr.
authorGeorg-Johann Lay <avr@gjlay.de>
Wed, 8 Jan 2020 09:41:59 +0000 (09:41 +0000)
committerGeorg-Johann Lay <gjl@gcc.gnu.org>
Wed, 8 Jan 2020 09:41:59 +0000 (09:41 +0000)
gcc/
Add -nodevicespecs option for avr.

PR target/93182
* config/avr/avr.opt (-nodevicespecs): New driver option.
* config/avr/driver-avr.c (avr_devicespecs_file): Only issue
"-specs=device-specs/..." if that option is not set.
* doc/invoke.texi (AVR Options) <-nodevicespecs>: Document.

From-SVN: r279995

gcc/ChangeLog
gcc/config/avr/avr.opt
gcc/config/avr/driver-avr.c

index 12bf61ffe252cd732543d576b84f02e57d797890..005e2aa39acb97f0bbb3269d483d8a54b7b63708 100644 (file)
@@ -1,6 +1,16 @@
 2020-01-08  Georg-Johann Lay  <avr@gjlay.de>
 
-       Implement 64-bit double functions.
+       Add -nodevicespecs option for avr.
+
+       PR target/93182
+       * config/avr/avr.opt (-nodevicespecs): New driver option.
+       * config/avr/driver-avr.c (avr_devicespecs_file): Only issue
+       "-specs=device-specs/..." if that option is not set.
+       * doc/invoke.texi (AVR Options) <-nodevicespecs>: Document.
+
+2020-01-08  Georg-Johann Lay  <avr@gjlay.de>
+
+       Implement 64-bit double functions for avr.
 
        PR target/92055
        * config.gcc (tm_defines) [target=avr]: Support --with-libf7,
index c56abcad939917e9ba86406d4269976d66be63c6..fac3114690f93f2468d09a7568107b3b6c710ba1 100644 (file)
@@ -127,6 +127,10 @@ nodevicelib
 Driver Target Report RejectNegative
 Do not link against the device-specific library lib<MCU>.a.
 
+nodevicespecs
+Driver Target Report RejectNegative
+Do not use the device-specific specs file device-specs/specs-<MCU>.
+
 Enum
 Name(avr_bits_e) Type(int)
 Available BITS selections:
index 9cb3093abe9fc576e91cb0ce505ce1ef0e66320e..843890478906098d415e2513e8a7ef094b293555 100644 (file)
@@ -26,8 +26,8 @@ along with GCC; see the file COPYING3.  If not see
 #include "diagnostic.h"
 #include "tm.h"
 
-// Remove -nodevicelib from the command line if not needed
-#define X_NODEVLIB "%<nodevicelib"
+// Remove -nodevicelib and -nodevicespecs from the command line if not needed.
+#define X_NODEVLIB "%<nodevicelib %<nodevicespecs"
 
 static const char dir_separator_str[] = { DIR_SEPARATOR, 0 };
 
@@ -102,8 +102,8 @@ avr_devicespecs_file (int argc, const char **argv)
         return X_NODEVLIB;
       }
 
-  return concat ("-specs=device-specs", dir_separator_str, "specs-",
-                 mmcu, "%s"
+  return concat ("%{!nodevicespecs:-specs=device-specs", dir_separator_str,
+                                "specs-", mmcu, "%s} %<nodevicespecs"
 #if defined (WITH_AVRLIBC)
                  " %{mmcu=avr*:" X_NODEVLIB "} %{!mmcu=*:" X_NODEVLIB "}",
 #else