98 lines
1.6 KiB
Meson
98 lines
1.6 KiB
Meson
project('scuffedcraft', 'c')
|
|
|
|
cc = meson.get_compiler('c')
|
|
vendor_dir_abs = meson.current_source_dir() + '/vendor/'
|
|
message(vendor_dir_abs)
|
|
|
|
pltf_src = []
|
|
|
|
cargs = [
|
|
'-std=c99',
|
|
'-DSHADERS_PATH="../src/shaders/"',
|
|
'-DDEBUG'
|
|
]
|
|
|
|
dependencies = [
|
|
]
|
|
|
|
link_args = []
|
|
test_link_args = [ '-static' ]
|
|
|
|
include_dirs = [
|
|
'src/'
|
|
]
|
|
test_include_dirs = [
|
|
'src/',
|
|
'vendor/cmocka-2.0.2/'
|
|
]
|
|
|
|
if host_machine.system() == 'linux'
|
|
pltf_src = [
|
|
'src/pltf/glx/gl_funcs.c'
|
|
]
|
|
|
|
dependencies += [
|
|
dependency('x11'),
|
|
dependency('glx'),
|
|
dependency('libglvnd'),
|
|
dependency('opengl'),
|
|
]
|
|
|
|
libcmocka = cc.find_library(
|
|
'libcmocka',
|
|
dirs: [ vendor_dir_abs + 'cmocka-2.0.2/linux/' ]
|
|
)
|
|
elif host_machine.system() == 'windows'
|
|
pltf_src = [
|
|
'src/pltf/win32/gl_funcs.c',
|
|
'src/pltf/win32/internal.c',
|
|
'src/pltf/win32/pltf.c',
|
|
'src/pltf/win32/win_proc.c',
|
|
]
|
|
|
|
libcmocka = cc.find_library(
|
|
'libcmocka',
|
|
dirs: [ vendor_dir_abs + 'cmocka-2.0.2/win/' ]
|
|
)
|
|
|
|
link_args += [
|
|
'-lopengl32'
|
|
]
|
|
test_link_args += [
|
|
'-lwinpthread'
|
|
]
|
|
|
|
cargs += [
|
|
'-DUNICODE',
|
|
'-D__UNICODE',
|
|
'-municode'
|
|
]
|
|
endif
|
|
|
|
executable(
|
|
'scuffedcraft',
|
|
'src/DynArray.c',
|
|
'src/DynString.c',
|
|
'src/log.c',
|
|
'src/main.c',
|
|
'src/shader.c',
|
|
pltf_src,
|
|
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: [
|
|
libcmocka
|
|
]
|
|
)
|