Add search paths for 32-bit Boost on Fedora

This will also cause the 64-bit version of the library to be picked up
on any distro that's not based on Fedora, which may cause some confusing
problems.

Is there a right way to do this? Meson doesn't allow you to override the
library search path for part of the build, and it also can't
differentiate between 32-bit and 64-bit libraries by default.
This commit is contained in:
Robbert van der Helm
2020-05-19 10:44:59 +02:00
parent b4838f8d18
commit 3985e10319
+15 -5
View File
@@ -136,17 +136,27 @@ executable(
if get_option('use-bitbridge') if get_option('use-bitbridge')
message('Bitbridge enabled, configuring a 32-bit host application') message('Bitbridge enabled, configuring a 32-bit host application')
# I honestly have no idea what the correct way to have `find_dependency()` use # I honestly have no idea what the correct way is to have `dependency()` or
# `/usr/lib32` instead of `/usr/lib` is. If anyone does know, please tell me! # `compiler.find_dependency()` search for 32-bit versions of libraries when
# cross-compiling. Meson also doesn't seem to respect the default linker
# search path set by the system in `find_library()`. If anyone does know how
# to properly do this, please let me know!
winegcc = meson.get_compiler('cpp', native : false) winegcc = meson.get_compiler('cpp', native : false)
boost_filesystem_dep = winegcc.find_library( boost_filesystem_dep = winegcc.find_library(
'boost_filesystem', 'boost_filesystem',
static : true, static : true,
dirs : [ dirs : [
'/usr/lib32', # Used by Arch based distros
'/usr/lib/i386-linux-gnu',
'/usr/local/lib32', '/usr/local/lib32',
'/usr/local/lib/i386-linux-gnu' '/usr/lib32',
# Used by Debian based distros
'/usr/local/lib/i386-linux-gnu',
'/usr/lib/i386-linux-gnu',
# Used by Red Hat based distros, could cause issues though since Meson
# cannot differentiate between the 32-bit version and the regular 64-bit
# version that would normally be in /lib
'/usr/local/lib',
'/usr/lib',
] ]
) )
xcb_dep = winegcc.find_library('xcb') xcb_dep = winegcc.find_library('xcb')