build: add install tags

This commit is contained in:
Andrei Alexeyev 2023-05-18 20:03:30 +02:00
parent ac05ffe820
commit a6c9303350
No known key found for this signature in database
GPG key ID: 72D26128040B9690
8 changed files with 56 additions and 19 deletions

View file

@ -5,7 +5,8 @@ if angle_enabled
input : 'LICENSE.ANGLE',
output : 'LICENSE.txt',
install : true,
install_dir : angle_install_path
install_dir : angle_install_path,
install_tag : 'license',
)
endif
@ -58,7 +59,8 @@ if rst2html5.found()
input : f,
output : f,
install : true,
install_dir : doc_path
install_dir : doc_path,
install_tag : 'doc',
)
endforeach
@ -70,6 +72,7 @@ if rst2html5.found()
output : name,
install : true,
install_dir : doc_path,
install_tag : 'doc',
depend_files : files('taisei.css')
)
endforeach

View file

@ -9,6 +9,7 @@ if host_machine.system() == 'emscripten'
'scythe.webp',
'favicon.ico',
),
install_dir : bindir
install_dir : bindir,
install_tag : 'runtime',
)
endif

View file

@ -6,6 +6,7 @@ gamecontrollerdb_path = join_paths(meson.current_source_dir(), gamecontrollerdb_
if host_machine.system() != 'emscripten'
install_data(
gamecontrollerdb_relpath,
install_dir : data_path
install_dir : data_path,
install_tag : res_install_tag,
)
endif

View file

@ -460,10 +460,11 @@ if host_machine.system() == 'windows'
input : 'COPYING',
output : 'COPYING.txt',
install : true,
install_dir : doc_path
install_dir : doc_path,
install_tag : 'license',
)
else
install_data('COPYING', install_dir : doc_path)
install_data('COPYING', install_dir : doc_path, install_tag : 'license')
endif
if angle_enabled
@ -504,6 +505,7 @@ if angle_enabled
angle_libgles,
angle_libegl,
install_dir : angle_install_path,
install_tag : 'runtime',
)
endif
@ -599,8 +601,8 @@ endif
subdir('misc')
subdir('emscripten')
subdir('switch')
subdir('external')
subdir('resources')
subdir('external')
subdir('doc')
subdir('xdg')
subdir('atlas')

View file

@ -9,7 +9,8 @@ if macos_app_bundle
input : 'Info.plist.in',
output : 'Info.plist',
install : true,
install_dir : join_paths(bundle_dir, 'Contents')
install_dir : join_paths(bundle_dir, 'Contents'),
install_tag : 'runtime',
)
version_deps += plist
@ -24,6 +25,7 @@ if angle_enabled and host_machine.system() == 'windows'
output : angle_launcher,
install : true,
install_dir : bindir,
install_tag : 'runtime',
)
bindist_deps += angle_bat
endif

View file

@ -5,6 +5,7 @@ packages = [
'00-taisei',
]
res_install_tag = 'resources'
use_static_res_index = (host_machine.system() == 'emscripten')
foreach pkg : packages
@ -51,7 +52,10 @@ if use_static_res_index
taisei_deps += declare_dependency(include_directories : include_directories('.'))
meson.add_install_script(res_index_install_command, resindex, data_path)
meson.add_install_script(
res_index_install_command, resindex, data_path,
install_tag : res_install_tag,
)
subdir_done()
endif
@ -72,11 +76,17 @@ foreach pkg : packages
depfile : '@0@.d'.format(pkg_zip),
install : true,
install_dir : data_path,
install_tag : res_install_tag,
console : true,
)
else
glob_result = run_command(glob_command, pkg_path, '**/meson.build', check : true)
install_subdir(pkg_pkgdir, install_dir : data_path, exclude_files : glob_result.stdout().split('\n'))
install_subdir(
pkg_pkgdir,
install_dir : data_path,
install_tag : res_install_tag,
exclude_files : glob_result.stdout().split('\n')
)
endif
endforeach
@ -98,10 +108,19 @@ if host_machine.system() == 'nx'
depfile : '@0@.d'.format(shader_pkg_zip),
install : true,
install_dir : data_path,
install_tag : res_install_tag,
console : true,
)
else
glob_result = run_command(glob_command, shaders_build_dir, '**/*.spv', '**/meson.build', check : true)
install_subdir(shaders_build_dir, install_dir : data_path, exclude_files : glob_result.stdout().split('\n'))
glob_result = run_command(
glob_command, shaders_build_dir, '**/*.spv', '**/meson.build',
check : true
)
install_subdir(
shaders_build_dir,
install_dir : data_path,
install_tag : res_install_tag,
exclude_files : glob_result.stdout().split('\n')
)
endif
endif

View file

@ -382,6 +382,7 @@ if host_machine.system() == 'emscripten'
output : em_link_outputs,
install : true,
install_dir : bindir,
install_tag : 'runtime',
console : true,
)
@ -426,6 +427,7 @@ elif host_machine.system() == 'nx'
depends : [taisei_nacp],
install : true,
install_dir : bindir,
install_tag : 'runtime',
output : taisei_nro_name,
)
bindist_deps += taisei_nro

View file

@ -7,17 +7,20 @@ icon_sizes = [512, 256, 128, 64, 32]
install_data(
'org.taisei_project.Taisei.tsr.desktop',
'org.taisei_project.Taisei.desktop',
install_dir : xdg_path / 'applications'
install_dir : xdg_path / 'applications',
install_tag : 'xdg'
)
install_data(
'org.taisei_project.Taisei.xml',
install_dir : xdg_path / 'mime/packages'
install_dir : xdg_path / 'mime/packages',
install_tag : 'xdg'
)
install_data(
'org.taisei_project.Taisei.appdata.xml',
install_dir : xdg_path / 'metainfo'
install_dir : xdg_path / 'metainfo',
install_tag : 'xdg'
)
foreach size : icon_sizes
@ -27,21 +30,25 @@ foreach size : icon_sizes
install_data(
f'icons/taisei-@size@.png',
rename : 'org.taisei_project.Taisei.png',
install_dir : apps_dir
install_dir : apps_dir,
install_tag : 'xdg'
)
install_symlink(
'taisei.png',
pointing_to : 'org.taisei_project.Taisei.png',
install_dir : apps_dir
install_dir : apps_dir,
install_tag : 'xdg'
)
install_data(
f'icons/replay-@size@.png',
rename : 'org.taisei_project.Taisei.tsr.png',
install_dir : mimetypes_dir
install_dir : mimetypes_dir,
install_tag : 'xdg'
)
install_symlink(
'taisei-replay.png',
pointing_to : 'org.taisei_project.Taisei.tsr.png',
install_dir : mimetypes_dir
install_dir : mimetypes_dir,
install_tag : 'xdg'
)
endforeach