meson.build revision ed6184df
1# generate Info.plist
2# https://github.com/mesonbuild/meson/issues/8434
3#cpp = find_program('cpp')
4cpp = '/usr/bin/cpp'
5cpp_defs = [
6    '-DAPPLE_APPLICATION_NAME=@0@'.format(apple_application_name),
7    '-DBUNDLE_ID_PREFIX=@0@'.format(bundle_id_prefix),
8    '-DBUNDLE_VERSION=@0@'.format(bundle_version),
9    '-DBUNDLE_VERSION_STRING=@0@'.format(bundle_version_string),
10]
11
12if build_sparkle
13cpp_defs += [
14    '-DXQUARTZ_SPARKLE',
15    '-DXQUARTZ_SPARKLE_FEED_URL=@0@'.format(xquartz_sparkle_feed_url),
16]
17endif
18
19# bundle data
20localities = [
21    'Dutch', 'English', 'French', 'German', 'Italian', 'Japanese', 'Spanish',
22    'ar','ca','cs','da','el','fi','he','hr','hu','ko','no','pl','pt','pt_PT',
23    'ro','ru','sk','sv','th','tr','uk','zh_CN','zh_TW'
24]
25foreach lang : localities
26    install_data(join_paths('Resources', lang + '.lproj', 'Localizable.strings'),
27        install_dir: join_paths(bundle_root, 'Contents/Resources', lang + '.lproj'),
28        install_mode: 'rw-r--r--')
29
30    install_data(join_paths('Resources', lang + '.lproj', 'main.nib/keyedobjects.nib'),
31        install_dir: join_paths(bundle_root, 'Contents/Resources', lang + '.lproj', 'main.nib'),
32        install_mode: 'rw-r--r--')
33endforeach
34
35install_data('Resources/English.lproj/main.nib/designable.nib',
36    install_dir: join_paths(bundle_root, 'Contents/Resources/English.lproj/main.nib'),
37    install_mode: 'rw-r--r--')
38
39install_data('Resources/X11.icns',
40    install_dir: join_paths(bundle_root, 'Contents/Resources'),
41    install_mode: 'rw-r--r--')
42
43custom_target('Info.plist',
44    command: [cpp, '-P', cpp_defs, '@INPUT@'],
45    capture: true,
46    input: 'Info.plist.cpp',
47    output: 'Info.plist',
48    install: true,
49    install_dir: join_paths(bundle_root, 'Contents'),
50    install_mode: 'rw-r--r--',
51    build_by_default: true,
52)
53
54install_data('PkgInfo',
55    install_dir: join_paths(bundle_root, 'Contents'),
56    install_mode: 'rw-r--r--')
57
58install_data('X11.sh',
59    rename: 'X11',
60    install_dir: join_paths(bundle_root, 'Contents/MacOS'),
61    install_mode: 'rwxr-xr-x')
62
63meson.add_install_script('chown-bundle.sh', bundle_root)
64