mesonbuild/meson

Meson needs native understanding of symbol version scripts

开放

#3,047 创建于 2018年2月12日

 (29 条评论) (16 个反应) (0 位负责人)Python (1,465 个派生)batch import
compilersenhancementhelp wanted

仓库指标

星标
 (4,978 个星标)
PR 合并指标
 (平均合并 139天 13小时) (30 天内合并 51 个 PR)

描述

Meson doesn't seem to understand much about linkers; most of the projects porting to meson do something like this:

mapfile = 'libgusb.ver'
vflag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), mapfile)
gusb = shared_library(
  'gusb',
  sources : [
    'gusb-context.c',
  ],
  soversion : lt_current,
  version : lt_version,
  dependencies : [
    libusb,
  ],
  link_args : vflag,
  link_depends : mapfile,
  install : true
)

Which is fine, unless you discover that OS-X doesn't support --version-script : https://github.com/hughsie/libgusb/issues/11

Rather than have to do evil things to the meson.build file to support OS-X, I would much prefer fr meson to know what a version-script is, rather than just dumping it in a command line. In the case of OS-X the version script could just be ignored. Ideas welcome, thanks!

贡献者指南