forked from pool/python-python-crfsuite
29 lines
1.2 KiB
Diff
29 lines
1.2 KiB
Diff
|
From df2857fff3c492692ca09f31699972970042bc07 Mon Sep 17 00:00:00 2001
|
||
|
From: Michael Karcher <github@mkarcher.dialup.fu-berlin.de>
|
||
|
Date: Wed, 12 Jun 2024 22:42:45 +0200
|
||
|
Subject: [PATCH] Define _POSIX_C_SOURCE for crfsuite source files
|
||
|
|
||
|
gcc-14 has "-Werror=implicit-function-declaration" enabled by default.
|
||
|
crfsuite uses posix_memalign which only gets defined when _POSIX_C_SOURCE is
|
||
|
defined, so make sure the flag is set when compiling crfsuite.
|
||
|
|
||
|
On the other hand, openSUSE Tumbleweed has _POSIX_C_SOURCE defined
|
||
|
in pyconfig.h, so you must not add "-D_POSIX_C_SOURCE" when compiling
|
||
|
the python binding source code. So add it only for the subdir crfsuite.
|
||
|
---
|
||
|
setup.py | 1 +
|
||
|
1 file changed, 1 insertion(+)
|
||
|
|
||
|
diff --git a/setup.py b/setup.py
|
||
|
index 8036363..f0dc370 100755
|
||
|
--- a/setup.py
|
||
|
+++ b/setup.py
|
||
|
@@ -30,6 +30,7 @@ def build_extensions(self):
|
||
|
_compile = c._compile
|
||
|
|
||
|
def c_compile(obj, src, ext, cc_args, extra_postargs, pp_opts):
|
||
|
+ cc_args = cc_args + ['-D_POSIX_C_SOURCE=200112L'] if src.startswith('crfsuite/') else cc_args
|
||
|
cc_args = cc_args + ['-std=c99'] if src.endswith('.c') else cc_args
|
||
|
return _compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
|
||
|
|