build: pin UTF-8 input/exec charset

The sources contain UTF-8 string literals (signal bars, ✕, ★, ✔, …).
Without an explicit charset, GCC honors LC_ALL/LANG at compile time,
so a build under a non-UTF-8 locale can mangle them. Probe the flags
with cc.get_supported_arguments so older/other compilers stay happy.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
nemunaire 2026-04-29 12:52:49 +07:00
commit 4b3598d36e

View file

@ -13,8 +13,12 @@ module_arch = enlightenment.get_variable(pkgconfig: 'module_arch',
default_value: 'linux-gnu-@0@'.format(host_machine.cpu()))
module_dir = join_paths(get_option('libdir'), 'enlightenment', 'modules', 'iwd')
utf8_args = cc.get_supported_arguments(['-finput-charset=UTF-8',
'-fexec-charset=UTF-8'])
add_project_arguments('-DPACKAGE="e_iwd"',
'-DPACKAGE_VERSION="@0@"'.format(meson.project_version()),
utf8_args,
language : 'c')
subdir('src')