Improve meson build.
-Add all required packages as wrap dependencies -Move source lsitnings to separate files -Proper dependencies declarations -Set global D compiler arguments -Add few asserts -Add test exe -Other small improvements Tested with dmd with betterC, demos executable has to be run from 'demos' directory to properly load assets.
This commit is contained in:
parent
00386ed529
commit
66b5807368
16 changed files with 314 additions and 104 deletions
|
|
@ -1,45 +1,35 @@
|
|||
demos_src = [
|
||||
'source/app.d',
|
||||
'source/demos/brick_breaker.d',
|
||||
'source/demos/snake.d',
|
||||
'source/demos/simple.d',
|
||||
'source/demos/sandbox.d',
|
||||
'source/demos/bullet_madnes.d',
|
||||
'source/demos/particles.d',
|
||||
'source/demos/physics.d',
|
||||
'source/demos/space_invaders.d',
|
||||
'source/game_core/basic.d',
|
||||
'source/game_core/job_updater.d',
|
||||
'source/game_core/rendering.d',
|
||||
'source/game_core/collision.d',
|
||||
'source/gui/component.d',
|
||||
'source/gui/manager.d',
|
||||
'source/gui/template_.d',
|
||||
'source/gui/tool_circle.d',
|
||||
'source/gui/system.d'
|
||||
]
|
||||
# Files
|
||||
demos_src = files()
|
||||
external_src = files()
|
||||
subdir('source')
|
||||
subdir('external')
|
||||
|
||||
external_src = [
|
||||
'external/sources/mmutils/thread_pool.d',
|
||||
'external/sources/glad/gl/gl.d',
|
||||
'external/sources/glad/gl/loader.d',
|
||||
'external/sources/glad/gl/ext.d',
|
||||
'external/sources/glad/gl/all.d',
|
||||
'external/sources/glad/gl/funcs.d',
|
||||
'external/sources/glad/gl/gles2.d',
|
||||
'external/sources/glad/gl/enums.d',
|
||||
'external/sources/glad/gl/types.d',
|
||||
'external/sources/cimgui/cimgui.d'
|
||||
]
|
||||
demos_inc = include_directories('source/')
|
||||
external_inc = include_directories('external/sources/')
|
||||
|
||||
demos_inc = include_directories(['source/'])
|
||||
# Argumesnts
|
||||
versions = ['BindSDL_Image','SDL_208', 'BindBC_Static', 'BindSDL_Static']
|
||||
|
||||
#link_args += '-rpath=libs/linux/x64/'
|
||||
link_args += '-L=' + meson.current_source_dir() + '/libs/linux/x64/libcimgui.so'
|
||||
link_args += '-L' + meson.current_source_dir() + '/libs/linux/x64'
|
||||
link_args += '-lcimgui'
|
||||
#,"SDL2_image
|
||||
# Dependencies
|
||||
bindbc_loader_dep = dependency('bindbc-loader')
|
||||
bindbc_sdl_dep = dependency('bindbc-sdl')
|
||||
cimgui_dep = dependency('cimgui')
|
||||
sdl2_dep = dependency('SDL2')
|
||||
sdl2_image_dep = dependency('SDL2_image')
|
||||
|
||||
executable('demos', [demos_src, external_src], include_directories : [demos_inc, utils_inc, inc], d_args: args, link_args: link_args,
|
||||
d_module_versions: ['BindSDL_Image','SDL_2010'], link_with: [ecs_lib, ecs_utils_lib], dependencies: [bc_loader_dep,sdl_dep],
|
||||
build_rpath: '-L' + meson.current_source_dir() + '/libs/linux/x64/', install_rpath: 'libs/linux/x64/')
|
||||
subdir('utils') # Utils library
|
||||
|
||||
executable('decs-demos', [demos_src, external_src],
|
||||
include_directories : [demos_inc, external_inc],
|
||||
d_module_versions : versions,
|
||||
link_with : [ecs_lib, ecs_utils_lib],
|
||||
dependencies : [
|
||||
bindbc_loader_dep,
|
||||
bindbc_sdl_dep,
|
||||
cimgui_dep,
|
||||
decs_dep,
|
||||
ecs_utils_dep,
|
||||
sdl2_dep,
|
||||
sdl2_image_dep,
|
||||
],
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue