80 lines
2.3 KiB
Meson
80 lines
2.3 KiB
Meson
project(
|
|
'jujube',
|
|
'cpp',
|
|
default_options : ['cpp_std=c++17'],
|
|
version : '0.1.0-alpha',
|
|
)
|
|
|
|
cc = meson.get_compiler('cpp')
|
|
|
|
sfml = []
|
|
foreach module : ['system', 'window', 'graphics', 'audio']
|
|
sfml += [dependency('sfml-'+module, version : '>=2.5.1')]
|
|
endforeach
|
|
|
|
thread_dep = dependency('threads')
|
|
m_dep = cc.find_library('m', required : false)
|
|
gl_dep = dependency('gl')
|
|
|
|
|
|
add_project_link_arguments(['-lstdc++'], language : 'cpp')
|
|
|
|
sources = [
|
|
'include/imgui/imgui.cpp',
|
|
'include/imgui/imgui_draw.cpp',
|
|
'include/imgui/imgui_widgets.cpp',
|
|
'include/imgui-sfml/imgui-SFML.cpp',
|
|
'src/Main.cpp',
|
|
'src/Data/Chart.hpp',
|
|
'src/Data/KeyMapping.hpp',
|
|
'src/Data/KeyMapping.cpp',
|
|
'src/Data/Note.hpp',
|
|
'src/Data/Note.cpp',
|
|
'src/Data/Preferences.hpp',
|
|
'src/Data/Score.hpp',
|
|
'src/Data/SongList.hpp',
|
|
'src/Data/SongList.cpp',
|
|
# 'src/Screens/Gameplay.hpp',
|
|
'src/Screens/MusicSelect/ButtonHighlight.hpp',
|
|
'src/Screens/MusicSelect/ButtonHighlight.cpp',
|
|
'src/Screens/MusicSelect/MusicSelect.hpp',
|
|
'src/Screens/MusicSelect/MusicSelect.cpp',
|
|
'src/Screens/MusicSelect/Panel.hpp',
|
|
'src/Screens/MusicSelect/Panel.cpp',
|
|
'src/Screens/MusicSelect/SharedResources.hpp',
|
|
'src/Screens/MusicSelect/SharedResources.cpp',
|
|
'src/Screens/MusicSelect/SongInfo.hpp',
|
|
'src/Screens/MusicSelect/SongInfo.cpp',
|
|
'src/Screens/MusicSelect/Ribbon.hpp',
|
|
'src/Screens/MusicSelect/Ribbon.cpp',
|
|
# 'src/Screens/Result.hpp',
|
|
'src/Resources/Autoloader.hpp',
|
|
'src/Resources/Autoloader.cpp',
|
|
# 'src/Resources/CoverAtlas.hpp',
|
|
# 'src/Resources/CoverAtlas.cpp',
|
|
'src/Toolkit/AffineTransform.hpp',
|
|
'src/Toolkit/Debuggable.hpp',
|
|
'src/Toolkit/EasingFunctions.hpp',
|
|
'src/Toolkit/EasingFunctions.cpp',
|
|
'src/Toolkit/HSL.hpp',
|
|
'src/Toolkit/HSL.cpp',
|
|
'src/Toolkit/QuickRNG.hpp',
|
|
'src/Toolkit/QuickRNG.cpp',
|
|
]
|
|
|
|
executable(
|
|
'jujube',
|
|
sources,
|
|
dependencies: [sfml, thread_dep, m_dep, gl_dep],
|
|
include_directories : include_directories('include', 'include/imgui', 'include/imgui-sfml'),
|
|
cpp_args : [
|
|
'-Wall',
|
|
'-Wextra',
|
|
'-Wshadow',
|
|
'-Wnon-virtual-dtor',
|
|
'-pedantic'
|
|
]
|
|
)
|
|
|
|
install_subdir('assets', install_dir : 'assets', strip_directory : true)
|
|
install_subdir('songs', install_dir: 'songs', strip_directory : true) |