mirror of https://github.com/openXC7/prjxray.git
Workaround for g++ and glibc that define `minor` in `<sys/types.h>`.
Building prjxray using g++ 7.3.0 and glibc 2.27-3 produces the following warning that is treated as an error:
In file included from [...]/prjxray/lib/include/prjxray/xilinx/xc7series/configuration_column.h:8:0,
from [...]/prjxray/lib/include/prjxray/xilinx/xc7series/configuration_bus.h:10,
from [...]/prjxray/lib/xilinx/xc7series/configuration_bus.cc:1:
[...]/prjxray/lib/include/prjxray/xilinx/xc7series/frame_address.h:32:13: error: In the GNU C Library, "minor" is defined
by <sys/sysmacros.h>. For historical compatibility, it is
currently defined by <sys/types.h> as well, but we plan to
remove this soon. To use "minor", include <sys/sysmacros.h>
directly. If you did not intend to use a system-defined macro
"minor", you should undefine it after including <sys/types.h>. [-Werror]
uint8_t minor() const;
^~~~~~~~~~~
This is related to these two bugs:
https://sourceware.org/bugzilla/show_bug.cgi?format=multiple&id=19239
https://bugzilla.redhat.com/show_bug.cgi?id=130601
This patch is a workaround that undefines `minor` if `_GNU_SOURCE` is defined.
Signed-off-by: Christian Fibich <fibich@technikum-wien.at>
This commit is contained in:
parent
faa872ee1b
commit
2e20e2e32f
|
|
@ -7,6 +7,10 @@
|
|||
#include <prjxray/xilinx/xc7series/block_type.h>
|
||||
#include <yaml-cpp/yaml.h>
|
||||
|
||||
#ifdef _GNU_SOURCE
|
||||
#undef minor
|
||||
#endif
|
||||
|
||||
namespace prjxray {
|
||||
namespace xilinx {
|
||||
namespace xc7series {
|
||||
|
|
|
|||
Loading…
Reference in New Issue