mirror of
https://github.com/kiwix/libkiwix.git
synced 2025-06-26 10:11:30 +00:00
Do not try to link with ctpp2-st.
ctpp2-st is not a standard name, all other projects use the same base name for dynamic and static libs. Debian already patch the lib name in the ctpp2 package. As we also patch it in kiwix-build, we can ignore ctpp2-st and always try to link on ctpp2. This is even necessary if we use the ctpp2-install-prefix. As we ctpp2 is in a custom directory, meson fails in the foreach loop as it cannot find ctpp2. We could fix, the ctpp2 lib search to also search ctpp2-st in standard directory AND the custom one but it seems to be a lot of work for nothing as ctpp2-st is not used at all in our usecases.
This commit is contained in:
27
meson.build
27
meson.build
@ -10,28 +10,17 @@ libzim_dep = dependency('libzim')
|
||||
pugixml_dep = dependency('pugixml')
|
||||
|
||||
find_library_in_compiler = meson.version().version_compare('>=0.31.0')
|
||||
|
||||
libname = ''
|
||||
libnames = ['ctpp2', 'ctpp2-st']
|
||||
foreach tmplibname : libnames
|
||||
required = tmplibname == libnames[-1]
|
||||
if find_library_in_compiler
|
||||
found = libname == '' and compiler.find_library(tmplibname, required: required).found()
|
||||
else
|
||||
found = libname == '' and find_library(tmplibname, required: required).found()
|
||||
endif
|
||||
if found
|
||||
libname = tmplibname
|
||||
endif
|
||||
endforeach
|
||||
|
||||
ctpp2_prefix_install = get_option('ctpp2-install-prefix')
|
||||
if ctpp2_prefix_install == ''
|
||||
if not compiler.has_header('ctpp2/CTPP2Logger.hpp')
|
||||
error('ctpp2/CTPP2Logger.hppnot found')
|
||||
endif
|
||||
|
||||
link_args = ['-l'+libname]
|
||||
if find_library_in_compiler
|
||||
ctpp2_lib = compiler.find_library('ctpp2')
|
||||
else
|
||||
ctpp2_lib = find_library('ctpp2')
|
||||
endif
|
||||
link_args = ['-lctpp2']
|
||||
if meson.is_cross_build()
|
||||
if host_machine.system() == 'windows'
|
||||
link_args += ['-liconv']
|
||||
@ -49,8 +38,8 @@ else
|
||||
endif
|
||||
ctpp2_include_path = include_directories(ctpp2_include_path, is_system:true)
|
||||
ctpp2_lib_path = ctpp2_prefix_install+'/lib'
|
||||
ctpp2_lib = compiler.find_library(libname, dirs:ctpp2_lib_path)
|
||||
link_args = ['-L'+ctpp2_lib_path, '-l'+libname]
|
||||
ctpp2_lib = compiler.find_library('ctpp2', dirs:ctpp2_lib_path)
|
||||
link_args = ['-L'+ctpp2_lib_path, '-lctpp2']
|
||||
if meson.is_cross_build()
|
||||
if host_machine.system() == 'windows'
|
||||
link_args += ['-liconv']
|
||||
|
Reference in New Issue
Block a user