From 3126f103f0d80648418307c52e68fbb9589ce399 Mon Sep 17 00:00:00 2001 From: "Carsten Haitzler (Rasterman)" Date: Sat, 22 Jul 2017 14:41:24 +0900 Subject: [PATCH] meson - fix config install to install cfg files in right places and perms cfg files were installed on top of eachother in the wrong directories and they were unreadable by anyone but root (if you sudo make install)... so fix this with my new chmod fixing stuff (yes meson doesnt let you specific permissions for custom targets). --- config/default/meson.build | 6 +++++- config/meson.build | 2 ++ config/mobile/meson.build | 6 +++++- config/standard/meson.build | 6 +++++- config/tiling/meson.build | 6 +++++- meson-chmod.sh | 2 ++ meson.build | 2 ++ 7 files changed, 26 insertions(+), 4 deletions(-) create mode 100755 meson-chmod.sh diff --git a/config/default/meson.build b/config/default/meson.build index 9f05d508b..8a67ba227 100644 --- a/config/default/meson.build +++ b/config/default/meson.build @@ -9,7 +9,11 @@ foreach cd: config_default command: [eet, '-e', '@OUTPUT@', 'config', '@INPUT@', '1'], output: config_default_output[i], install: true, - install_dir: dir_config + install_dir: join_paths(dir_config, 'default') ) i += 1 endforeach +foreach cd: config_default_output + out = join_paths(dir_config, 'default', cd) + meson.add_install_script(chmod, 'a+r', out) +endforeach diff --git a/config/meson.build b/config/meson.build index 2bad17a21..71ad26a34 100644 --- a/config/meson.build +++ b/config/meson.build @@ -7,6 +7,8 @@ custom_target('profile.src', install: true, install_dir: dir_config ) +out = join_paths(dir_config, 'profile.cfg') +meson.add_install_script(chmod, 'a+r', out) subdir('default') subdir('mobile') diff --git a/config/mobile/meson.build b/config/mobile/meson.build index f21b70f92..411408fd7 100644 --- a/config/mobile/meson.build +++ b/config/mobile/meson.build @@ -8,7 +8,7 @@ foreach cd: config_mobile command: [eet, '-e', '@OUTPUT@', 'config', '@INPUT@', '1'], output: config_mobile_output[i], install: true, - install_dir: dir_config + install_dir: join_paths(dir_config, 'mobile') ) i += 1 endforeach @@ -17,3 +17,7 @@ config_dist_mobile = ['enlightenment-mobile.png', 'profile.desktop'] install_data(config_dist_mobile, install_dir: join_paths(dir_config, 'mobile') ) +foreach cd: config_mobile_output + out = join_paths(dir_config, 'mobile', cd) + meson.add_install_script(chmod, 'a+r', out) +endforeach diff --git a/config/standard/meson.build b/config/standard/meson.build index aa85af99a..307ade3f7 100644 --- a/config/standard/meson.build +++ b/config/standard/meson.build @@ -27,7 +27,7 @@ foreach cd: config_standard command: [eet, '-e', '@OUTPUT@', 'config', '@INPUT@', '1'], output: config_standard_output[i], install: true, - install_dir: dir_config + install_dir: join_paths(dir_config, 'standard') ) i += 1 endforeach @@ -36,3 +36,7 @@ config_dist_standard = ['enlightenment-standard.png', 'profile.desktop'] install_data(config_dist_standard, install_dir: join_paths(dir_config, 'standard') ) +foreach cd: config_standard_output + out = join_paths(dir_config, 'standard', cd) + meson.add_install_script(chmod, 'a+r', out) +endforeach diff --git a/config/tiling/meson.build b/config/tiling/meson.build index 9de6f849a..d4973b7f8 100644 --- a/config/tiling/meson.build +++ b/config/tiling/meson.build @@ -29,7 +29,7 @@ foreach cd: config_tiling command: [eet, '-e', '@OUTPUT@', 'config', '@INPUT@', '1'], output: config_tiling_output[i], install: true, - install_dir: dir_config + install_dir: join_paths(dir_config, 'tiling') ) i += 1 endforeach @@ -38,3 +38,7 @@ config_dist_tiling = ['enlightenment-tiling.png', 'profile.desktop'] install_data(config_dist_tiling, install_dir: join_paths(dir_config, 'tiling') ) +foreach cd: config_tiling_output + out = join_paths(dir_config, 'tiling', cd) + meson.add_install_script(chmod, 'a+r', out) +endforeach diff --git a/meson-chmod.sh b/meson-chmod.sh new file mode 100755 index 000000000..7fed6de0d --- /dev/null +++ b/meson-chmod.sh @@ -0,0 +1,2 @@ +#!/bin/sh +chmod "$1" "${DESTDIR}/$2" diff --git a/meson.build b/meson.build index 35ae00613..f89d314ba 100644 --- a/meson.build +++ b/meson.build @@ -4,6 +4,8 @@ project('enlightenment', 'c', default_options: [ 'c_std=gnu99', 'warning_level=2' ], meson_version: '>= 0.40.0') +chmod = join_paths(meson.source_root(), 'meson-chmod.sh') + clean_check = run_command('meson/clean_check.sh') if clean_check.returncode() == 0 error('Meson build requires a clean source tree')