aboutsummaryrefslogtreecommitdiff
path: root/lpg/subprojects/packagefiles/lua-5.4.7/meson.build
blob: dbc8ff6b4e69b65d0354138ceb170ad8e5b16bc1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
project(
  'lua-5.4',
  'cpp',
  license : 'MIT',
  meson_version : '>=0.49.2',
  version : '5.4.7',
  default_options : ['c_std=c99', 'warning_level=2'],
)

cxx = meson.get_compiler('cpp')

# Skip bogus warning.
add_project_arguments(cxx.get_supported_arguments(
  '-Wno-string-plus-int', '-Wno-stringop-overflow'), language : 'cpp')

# Platform-specific defines.
is_posix = host_machine.system() in ['cygwin', 'darwin', 'dragonfly', 'freebsd',
  'gnu', 'haiku', 'linux', 'netbsd', 'openbsd', 'sunos']
if is_posix
  add_project_arguments('-DLUA_USE_POSIX', language : 'cpp')
endif

# Library dependencies.
lua_lib_deps = [cxx.find_library('m', required : false)]

if meson.version().version_compare('>= 0.62')
  dl_dep = dependency('dl', required : get_option('loadlib'))
else
  dl_dep = cxx.find_library('dl', required : get_option('loadlib'))
endif

if dl_dep.found()
  lua_lib_deps += dl_dep
  add_project_arguments('-DLUA_USE_DLOPEN', language : 'cpp')
endif

# Targets.
add_project_arguments('-DMAKE_LIB', language : 'cpp')
lua_lib = static_library(
  'lua',
  'onelua.cpp',
  dependencies : lua_lib_deps,
  implicit_include_directories : false,
)

inc = include_directories('.')
lua_dep = declare_dependency(
  link_with : lua_lib,
  include_directories : inc,
)