title: gcc inline assembler incbin doesn't seem to use -I argument
body: <p>I converted a project that builds fine with gcc 2017.3 eabi-none (raw metal, x86_x64 cross compile for ARM A7, RM compiler) to gcc 2019.3 raw metal Cortex-A compiler. It works well but gets to one strange problem.</p>
  
  <p>The project has a makefile that builds a set of small test components, laid out into a tree:</p>
  
  <pre><code>project/test/drivertype1/foo.c
  project/test/drivertype2/bar.c
  etc.
  </code></pre>
  
  <p>The make working directory is <code>project/</code>. Inside <code>foo.c</code>, there are some included binary files via inline assembly <code>.incbin</code> directive. The data is in a subdirectory:</p>
  
  <pre><code>project/test/drivertype1/data/input.bin
  </code></pre>
  
  <p>This relative path is split. The command line has <code>-Itest/drivertype1</code> - the left side of the relative path - and the source code has the right side:</p>
  
  <pre><code>__asm__ (
      "test_message:\n"
      "    .incbin \"data/input.bin\"\n"
      "test_message_end:"
  )
  </code></pre>
  
  <p>This results in a build error:</p>
  
  <pre><code>Assembler messages:
  22: Error: file not found: data/input.bin
  </code></pre>
  
  <p>I reproduce this by pulling the command out of the makefile log and running it by hand.</p>
  
  <p>If I run the command with working directory set to <code>project/</code> like make does, the error reproduces. If I instead run it from <code>project/test/drivertype1/</code>, then it builds.</p>
  
  <p>When run from <code>project</code>, I've tried specifying the full path (e.g., <code>-I/home/user/.../project/test/drivertype1</code>) and it does not work. And I've tried other similar tests with relative paths.</p>
  
  <p>My conclusion is that <code>-I</code> is not used with <code>.incbin</code> unlike what the man says.</p>
  
  <p>Suggestions?</p>