raster pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=3126f103f0d80648418307c52e68fbb9589ce399

commit 3126f103f0d80648418307c52e68fbb9589ce399
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Sat Jul 22 14:41:24 2017 +0900

    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(-)

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')

-- 


Reply via email to