123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- project('quickmedia', ['c', 'cpp'], version : '1.0.0', default_options : ['warning_level=2', 'cpp_std=c++17'], subproject_dir : 'depends')
- if get_option('buildtype') == 'debug'
- add_project_arguments('-g3', language : ['c', 'cpp'])
- elif get_option('buildtype') == 'release'
- add_project_arguments('-DNDEBUG', language : ['c', 'cpp'])
- endif
- src = [
- 'external/hash-library/sha256.cpp',
- 'generated/Tlds.cpp',
- 'generated/Emoji.cpp',
- 'src/plugins/utils/aes.c',
- 'src/plugins/Fourchan.cpp',
- 'src/plugins/Mangadex.cpp',
- 'src/plugins/ImageBoard.cpp',
- 'src/plugins/MangaCombined.cpp',
- 'src/plugins/Manga.cpp',
- 'src/plugins/Lbry.cpp',
- 'src/plugins/NyaaSi.cpp',
- 'src/plugins/HotExamples.cpp',
- 'src/plugins/FileManager.cpp',
- 'src/plugins/MediaGeneric.cpp',
- 'src/plugins/Matrix.cpp',
- 'src/plugins/Plugin.cpp',
- 'src/plugins/MangaGeneric.cpp',
- 'src/plugins/Pipe.cpp',
- 'src/plugins/Manganelo.cpp',
- 'src/plugins/LocalManga.cpp',
- 'src/plugins/Page.cpp',
- 'src/plugins/Peertube.cpp',
- 'src/plugins/LocalAnime.cpp',
- 'src/plugins/AniList.cpp',
- 'src/plugins/DramaCool.cpp',
- 'src/plugins/utils/UniqueProcess.cpp',
- 'src/plugins/utils/WatchProgress.cpp',
- 'src/plugins/utils/EpisodeNameParser.cpp',
- 'src/plugins/Info.cpp',
- 'src/plugins/Youtube.cpp',
- 'src/plugins/Saucenao.cpp',
- 'src/plugins/Soundcloud.cpp',
- 'src/Theme.cpp',
- 'src/Storage.cpp',
- 'src/Text.cpp',
- 'src/Config.cpp',
- 'src/DownloadUtils.cpp',
- 'src/Json.cpp',
- 'src/gui/Button.cpp',
- 'src/SearchBar.cpp',
- 'src/RoundedRectangle.cpp',
- 'src/Entry.cpp',
- 'src/Notification.cpp',
- 'src/AsyncImageLoader.cpp',
- 'src/ImageViewer.cpp',
- 'src/Body.cpp',
- 'src/Program.cpp',
- 'src/main.cpp',
- 'src/ImageUtils.cpp',
- 'src/NetUtils.cpp',
- 'src/BodyItem.cpp',
- 'src/Downloader.cpp',
- 'src/ResourceLoader.cpp',
- 'src/VideoPlayer.cpp',
- 'src/Tabs.cpp',
- 'src/FileAnalyzer.cpp',
- 'src/QuickMedia.cpp',
- 'src/M3U8.cpp',
- 'src/Utils.cpp',
- 'src/StringUtils.cpp',
- ]
- mglpp_proj = subproject('mglpp')
- mglpp_dep = mglpp_proj.get_variable('mglpp_dep')
- jsoncpp_proj = subproject('jsoncpp')
- jsoncpp_dep = jsoncpp_proj.get_variable('jsoncpp_dep')
- rapidjson_proj = subproject('rapidjson')
- rapidjson_dep = rapidjson_proj.get_variable('rapidjson_dep')
- html_parser_proj = subproject('html-parser')
- html_parser_dep = html_parser_proj.get_variable('html_parser_dep')
- html_search_proj = subproject('html-search')
- html_search_dep = html_search_proj.get_variable('html_search_dep')
- prefix = get_option('prefix')
- datadir = get_option('datadir')
- qm_resources_path = join_paths(prefix, datadir, 'quickmedia')
- if get_option('native_arch') == true
- add_project_arguments('-march=native', language: ['c', 'cpp'])
- endif
- executable(
- meson.project_name(),
- src,
- install : true,
- dependencies : [
- mglpp_dep,
- jsoncpp_dep,
- rapidjson_dep,
- html_parser_dep,
- html_search_dep,
- dependency('threads'),
- ],
- )
- executable(
- 'quickmedia-video-player',
- [
- 'video_player/src/main.cpp'
- ],
- install : true,
- dependencies : [
- jsoncpp_dep,
- dependency('mpv'),
- ],
- )
- install_subdir('mpv', install_dir : qm_resources_path)
- install_subdir('images', install_dir : qm_resources_path)
- install_subdir('icons', install_dir : qm_resources_path)
- install_subdir('shaders', install_dir : qm_resources_path)
- install_subdir('themes', install_dir : qm_resources_path)
- install_data('launcher/QuickMedia.desktop', install_dir : join_paths(prefix, datadir, 'applications'))
- install_data(files('boards.json'), install_dir : qm_resources_path)
- install_data(files('example-config.json'), install_dir : qm_resources_path)
- install_data(files('README.md'), install_dir : qm_resources_path)
- if get_option('install_symlink') == true
- install_symlink('qm', install_dir : join_paths(prefix, 'bin'), pointing_to: join_paths(prefix, 'bin', meson.project_name()))
- endif
- if get_option('install_emoji') == true
- meson.add_install_script('meson_post_install.sh')
- endif
|