]> rtime.felk.cvut.cz Git - coffee/buildroot.git/commit
flex: Fix segfault of stage1flex when host has glibc 2.26 or newer
authorAdrian Perez de Castro <aperez@igalia.com>
Wed, 13 Sep 2017 14:35:24 +0000 (17:35 +0300)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Wed, 27 Sep 2017 21:28:35 +0000 (23:28 +0200)
commitc128c5f3c79b31d89256ffbc5c650ba613d3d52b
treea993d2e1ff58b95defaec3d29b75e35f19d97588
parentd6a4807f9473b4322e96b77169ffcd6d9cd84170
flex: Fix segfault of stage1flex when host has glibc 2.26 or newer

When the host uses glibc 2.26 or newer, Flex will try to use the
newly-introduced reallocarray() function, but as it would not define
_GNU_SOURCE a segmentation fault would occur later on due to the
compiler assumming that the function is implicitly defined.

This issue manifests itself due to a crash of "stage1flex" during the
Flex bootstrap:

  ./stage1flex   -o stage1scan.c ./scan.l
  make[2]: *** [Makefile:1725: stage1scan.c] Segmentation fault (core dumped)

This imports the patch from the upstream Git repository, and adds flags
in the .mk file to rebuild the Autotools scripts and support files. Due
to the latter, the patch to disable the documentation is changed so it
modifies the .am file instead.

Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
[Arnout:
 - Add Adrian's Sob and upstream ref to new patch;
 - Keep patch 1 as patch 1;
 - Keep Vicente as author of path 1;
 - Add reason for autoreconf in a comment.]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
package/flex/0001-flex-disable-documentation.patch
package/flex/0002-build-AC_USE_SYSTEM_EXTENSIONS-in-configure.ac.patch [new file with mode: 0644]
package/flex/flex.mk