diff --git a/kitty/data-types.c b/kitty/data-types.c index 7ffbc2a69..0ebd8d7b3 100644 --- a/kitty/data-types.c +++ b/kitty/data-types.c @@ -58,7 +58,7 @@ static struct PyModuleDef module = { #include -PyMODINIT_FUNC +EXPORTED PyMODINIT_FUNC PyInit_fast_data_types(void) { PyObject *m; diff --git a/kitty/data-types.h b/kitty/data-types.h index 0f6137ef4..a3a86de63 100644 --- a/kitty/data-types.h +++ b/kitty/data-types.h @@ -13,6 +13,7 @@ #define PY_SSIZE_T_CLEAN #include #define UNUSED __attribute__ ((unused)) +#define EXPORTED __attribute__ ((visibility ("default"))) #define MAX(x, y) (((x) > (y)) ? (x) : (y)) #define MIN(x, y) (((x) > (y)) ? (y) : (x)) #define xstr(s) str(s) diff --git a/setup.py b/setup.py index 3127a0f11..f00b44193 100755 --- a/setup.py +++ b/setup.py @@ -115,7 +115,7 @@ def init_env(debug=False, sanitize=False, native_optimizations=True): cflags = os.environ.get( 'OVERRIDE_CFLAGS', ( '-Wextra -Wno-missing-field-initializers -Wall -std=c99 -D_XOPEN_SOURCE=700' - ' -pedantic-errors -Werror {} {} -D{}DEBUG -fwrapv {} {} -pipe {}' + ' -pedantic-errors -Werror {} {} -D{}DEBUG -fwrapv {} {} -pipe {} -fvisibility=hidden' ).format( optimize, ' '.join(sanitize_args), ('' if debug else 'N'), stack_protector, missing_braces, '-march=native' if native_optimizations else ''