85 lines
1.3 KiB
Meson
85 lines
1.3 KiB
Meson
project('scuffedcraft', 'c')
|
|
|
|
cc = meson.get_compiler('c')
|
|
vendor_dir_abs = meson.current_source_dir() + '/vendor/'
|
|
|
|
cargs = [
|
|
'-std=c99',
|
|
'-Og',
|
|
'-g',
|
|
'-DBOUNDS_CHECK',
|
|
'-DSHADERS_PATH="../src/shaders/"'
|
|
]
|
|
|
|
dependencies = [
|
|
]
|
|
|
|
link_args = []
|
|
test_link_args = []
|
|
|
|
include_dirs = [
|
|
'vendor/',
|
|
'src/'
|
|
]
|
|
test_include_dirs = [
|
|
'src/',
|
|
'vendor/'
|
|
]
|
|
|
|
if host_machine.system() == 'linux'
|
|
dependencies += [
|
|
dependency('libglvnd')
|
|
]
|
|
elif host_machine.system() == 'windows'
|
|
link_args += [
|
|
'-lopengl32'
|
|
]
|
|
test_link_args += [
|
|
'-lwinpthread'
|
|
]
|
|
|
|
cargs += [
|
|
'-DUNICODE',
|
|
'-D__UNICODE',
|
|
'-municode'
|
|
]
|
|
|
|
if meson.is_cross_build() and build_machine.system() == 'linux'
|
|
link_args += [
|
|
'-Lvendor/wine/',
|
|
]
|
|
endif
|
|
endif
|
|
|
|
executable(
|
|
'scuffedcraft',
|
|
'src/pltf/gl_funcs.c',
|
|
'src/pltf/pltf.c',
|
|
'src/DynArray.c',
|
|
'src/DynString.c',
|
|
'src/log.c',
|
|
'src/main.c',
|
|
'src/shader.c',
|
|
c_args: cargs,
|
|
dependencies: dependencies,
|
|
link_args: link_args,
|
|
include_directories: include_directories(include_dirs),
|
|
)
|
|
|
|
|
|
executable(
|
|
'tests',
|
|
'tests/main.c',
|
|
'src/DynString.c',
|
|
'src/log.c',
|
|
c_args: cargs,
|
|
include_directories: include_directories(test_include_dirs),
|
|
link_args: test_link_args,
|
|
dependencies: [
|
|
cc.find_library(
|
|
'libcmocka',
|
|
dirs: [ vendor_dir_abs + 'cmocka/' ]
|
|
)
|
|
]
|
|
)
|