Fix up plugin header install
authorJakub Jelinek <jakub@redhat.com>
Fri, 23 Oct 2020 08:11:41 +0000 (10:11 +0200)
committerJakub Jelinek <jakub@redhat.com>
Fri, 23 Oct 2020 08:11:41 +0000 (10:11 +0200)
commit9a83366b62e585cce5577309013a832f895ccdbf
tree0f5b6ade2e69a48b7756538fce9fd59e9e236bad
parent50bc94898fac1bd9cc1dabf227208fb5d369c4c4
Fix up plugin header install

Jeff has noticed and I've confirmed that config/i386/i386.h header which is
installed on x86 in plugin/include/ directory newly in GCC 11 has
which breaks all plugins that include tm.h etc. because that header is not
shipped.
The following patch seems to fix that.  Unfortunately it isn't just a matter
of TM_H += t-i386 change, because the header has full path and therefore
needs to be installed in its full path.
Additionally, I've noticed that the b-header-vars generation is completely
broken, it will just throw many of the dependencies away, because it
incorrectly removed everything from first ... remaining till the last /,
while what it clearly wants to do is remove each ... till last / in the same
header path (i.e. instead of .* should have used [^     ]* and g modifier).
I've also noticed that some other headers mentioned in #include of other
headers aren't included (gomp-constants.h as dependency of omp-general.h
and various dependencies of expr.h (where omp-general.h and expr.h were
previously installed)).

2020-10-23  Jakub Jelinek  <jakub@redhat.com>

* Makefile.in (PLUGIN_HEADERS): Add gomp-constants.h and $(EXPR_H).
(s-header-vars): Accept not just spaces but also tabs between *_H name
and =.  Handle common/config/ headers similarly to config.  Don't
throw away everything from first ... to last / on the remaining
string, instead skip just ... to corresponding last / without
intervening spaces and tabs.
(install-plugin): Treat common/config headers like config headers.
* config/i386/t-i386 (TM_H): Add
$(srcdir)/common/config/i386/i386-cpuinfo.h.
gcc/Makefile.in
gcc/config/i386/t-i386