]> code.ossystems Code Review - openembedded-core.git/commitdiff
gcc-multilib-config: Adapt mips for mips64 and different gcc versions
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 31 Jul 2015 10:24:37 +0000 (11:24 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 31 Jul 2015 14:15:13 +0000 (15:15 +0100)
The location of some files for mips varies between gcc 4.9 and 5.2. Ensure
that we cover both cases (and allow specified files to be optional).

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/gcc/gcc-multilib-config.inc

index cfad50fe1f43e4759a551153dfc76f08c4d32441..f7f9f557dbf9091d10238e51a7aa7a9c3c70b068 100644 (file)
@@ -29,6 +29,7 @@ python gcc_multilib_setup() {
     bb.utils.remove(build_conf_dir, True)
     ml_globs = ('%s/*/t-linux64' % src_conf_dir,
                 '%s/*/linux64.h' % src_conf_dir,
+                '%s/*/linux.h' % src_conf_dir,
                 '%s/linux.h' % src_conf_dir)
 
     # copy the target multilib config files to ${B}
@@ -80,7 +81,10 @@ python gcc_multilib_setup() {
                 return '"/%s/"' % libdir
 
         for ml_conf_file in files:
-            with open(root + '/' + ml_conf_file, 'r') as f:
+            fn = root + '/' + ml_conf_file
+            if not os.path.exists(fn):
+                continue
+            with open(fn, 'r') as f:
                 filelines = f.readlines()
 
                 # replace lines like
@@ -132,8 +136,8 @@ python gcc_multilib_setup() {
         'x86_64'    : ['gcc/config/i386/linux64.h'],
         'i586'      : ['gcc/config/i386/linux64.h'],
         'i686'      : ['gcc/config/i386/linux64.h'],
-        'mips'      : ['gcc/config/mips/linux64.h'],
-        'mips64'    : ['gcc/config/mips/linux64.h'],
+        'mips'      : ['gcc/config/mips/linux.h', 'gcc/config/mips/linux64.h'],
+        'mips64'    : ['gcc/config/mips/linux.h', 'gcc/config/mips/linux64.h'],
         'powerpc'   : ['gcc/config/rs6000/linux64.h'],
         'powerpc64' : ['gcc/config/rs6000/linux64.h'],
     }