
Arch Linux has been setting PYTHONHASHSEED=0 to create deterministic .pyc files. After a thorough review by the Arch Security Team, setting this variable was determined not to generated vulnerable .pyc files, as when the loader loads the .pyc file and unmarshalls it, the internal runtime will just populate the unordered data structures and use a new runtime hash for them. Signed-off-by: Allan McRae <allan@archlinux.org>
27 lines
1,006 B
Meson
27 lines
1,006 B
Meson
libmakepkg_modules = [
|
|
{ 'name' : 'buildenv', 'has_subdir' : true },
|
|
{ 'name' : 'executable', 'has_subdir' : true },
|
|
{ 'name' : 'integrity', 'has_subdir' : true },
|
|
{ 'name' : 'lint_config', 'has_subdir' : true },
|
|
{ 'name' : 'lint_package', 'has_subdir' : true },
|
|
{ 'name' : 'lint_pkgbuild', 'has_subdir' : true },
|
|
{ 'name' : 'reproducible', 'has_subdir' : true },
|
|
{ 'name' : 'source', 'has_subdir' : true },
|
|
{ 'name' : 'srcinfo', },
|
|
{ 'name' : 'tidy', 'has_subdir' : true },
|
|
{ 'name' : 'util', 'has_subdir' : true },
|
|
]
|
|
|
|
foreach module : libmakepkg_modules
|
|
custom_target(
|
|
'libmakepkg_@0@'.format(module['name']),
|
|
command : [ SCRIPT_EDITOR, '@INPUT@', '@OUTPUT@' ],
|
|
input : '@0@.sh.in'.format(module['name']),
|
|
output : '@BASENAME@',
|
|
install : true,
|
|
install_dir : join_paths(get_option('datadir'), 'makepkg'))
|
|
|
|
if module.get('has_subdir', false)
|
|
subdir(module['name'])
|
|
endif
|
|
endforeach
|