From 6b576fcf5cf60eb94b77dbab4245c93a07fbb0a9 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 18 Sep 2021 10:08:28 +0530 Subject: [PATCH] Use paths rather than flags in kitten extension definitions --- setup.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/setup.py b/setup.py index fcce729fc..31db67069 100755 --- a/setup.py +++ b/setup.py @@ -747,16 +747,16 @@ def compile_kittens(compilation_database: CompilationDatabase) -> None: extra_headers: Sequence[str] = (), extra_sources: Sequence[str] = (), filter_sources: Optional[Callable[[str], bool]] = None, - cflags: Sequence[str] = (), ldflags: Sequence[str] = (), + includes: Sequence[str] = (), libraries: Sequence[str] = (), ) -> Tuple[str, List[str], List[str], str, Sequence[str], Sequence[str]]: sources = list(filter(filter_sources, list(extra_sources) + list_files(os.path.join('kittens', kitten, '*.c')))) headers = list_files(os.path.join('kittens', kitten, '*.h')) + list(extra_headers) - return kitten, sources, headers, 'kittens/{}/{}'.format(kitten, output), cflags, ldflags + return kitten, sources, headers, 'kittens/{}/{}'.format(kitten, output), includes, libraries - for kitten, sources, all_headers, dest, cflags, ldflags in ( + for kitten, sources, all_headers, dest, includes, libraries in ( files('unicode_input', 'unicode_names'), files('diff', 'diff_speedup'), - files('transfer', 'rsync', ldflags=('-lrsync',)), + files('transfer', 'rsync', libraries=('rsync',)), files( 'choose', 'subseq_matcher', extra_headers=('kitty/charsets.h',), @@ -764,8 +764,8 @@ def compile_kittens(compilation_database: CompilationDatabase) -> None: filter_sources=lambda x: 'windows_compat.c' not in x), ): final_env = kenv.copy() - final_env.cflags.extend(cflags) - final_env.ldflags.extend(ldflags) + final_env.cflags.extend(f'-I{x}' for x in includes) + final_env.ldpaths[:0] = list(f'-l{x}' for x in libraries) compile_c_extension( final_env, dest, compilation_database, sources, all_headers + ['kitty/data-types.h'])