aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorSteven Drake <sbd@NetBSD.org>2012-05-22 15:17:55 +0000
committerJoseph Myers <jsm28@gcc.gnu.org>2012-05-22 16:17:55 +0100
commit3cd50158f525564510b05c2c494f477ed42c0a0a (patch)
treed1d620a3c4a9ef0a74aea1deff79335d43dd88ef /gcc
parentf8dc1d832e6256fa15e13921e9c2c65d51ed2bcb (diff)
downloadgcc-3cd50158f525564510b05c2c494f477ed42c0a0a.zip
gcc-3cd50158f525564510b05c2c494f477ed42c0a0a.tar.gz
gcc-3cd50158f525564510b05c2c494f477ed42c0a0a.tar.bz2
gcc.c (do_spec_1): Add %M spec token to output multilib_os_dir.
2012-05-22 Steven Drake <sbd@NetBSD.org> * gcc.c (do_spec_1): Add %M spec token to output multilib_os_dir. From-SVN: r187775
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/gcc.c9
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 52b2a89..8b601c9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2012-05-22 Steven Drake <sbd@NetBSD.org>
+
+ * gcc.c (do_spec_1): Add %M spec token to output multilib_os_dir.
+
2012-05-22 David Edelsohn <dje.gcc@gmail.com>
* config/rs6000/rs6000.c (rs6000_aix_asm_output_dwarf_table_ref):
diff --git a/gcc/gcc.c b/gcc/gcc.c
index e152b70..d1ef922 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -377,6 +377,7 @@ or with constant text in a single argument.
If multilib_dir is set, extra entries are generated with it affixed.
%l process LINK_SPEC as a spec.
%L process LIB_SPEC as a spec.
+ %M Output multilib_os_dir.
%G process LIBGCC_SPEC as a spec.
%R Output the concatenation of target_system_root and
target_sysroot_suffix.
@@ -5115,6 +5116,14 @@ do_spec_1 (const char *spec, int inswitch, const char *soft_matched_part)
return value;
break;
+ case 'M':
+ if (multilib_os_dir == NULL)
+ obstack_1grow (&obstack, '.');
+ else
+ obstack_grow (&obstack, multilib_os_dir,
+ strlen (multilib_os_dir));
+ break;
+
case 'G':
value = do_spec_1 (libgcc_spec, 0, NULL);
if (value != 0)