Repository for the ScrumbleShip Launcher, styled as a faux OS.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

29 lines
1.3 KiB

project('scrumbleos', 'c', default_options : ['default_library=static', 'c_std=c99'], subproject_dir : 'meson')
incdir = include_directories(['src', 'include'])
if get_option('buildtype').startswith('debug')
add_project_arguments('-DSCRUMBLEOS_DEBUG', language : 'c')
clientcargs = ['-Wno-unused-function']
clientlinkargs = ''
clientcargs = ['-Wno-unused-function', '-Os', '-ffunction-sections', '-fdata-sections', '-fno-asynchronous-unwind-tables', '-fno-unwind-tables', '-fno-math-errno', '-ffast-math' ]
clientlinkargs = '-Wl,--gc-sections'
cc = meson.get_compiler('c')
depm = cc.find_library('m', required : true)
depsodium = dependency('libsodium', required:true)
subproject('simsecl', default_options : ['default_library=static', 'c_std=gnu89'])
depsimsecl = dependency('simsecl', fallback : ['simsecl', 'simsecl_dep'], required:true)
subproject('boksi', default_options : ['default_library=static', 'c_std=gnu89'])
depboksi = dependency('boksi', fallback : ['boksi', 'boksi_dep'], required:true)
depgl = dependency('gl', required: true)
depglew = dependency('glew', required: true)
depglfw = dependency('glfw3', required: true)
executable('scrumble-launch', ['src/main.c'], include_directories : incdir, dependencies: [depm, depglfw, depgl, depsimsecl, depboksi, depglew], c_args: clientcargs, link_args : clientlinkargs)