data_file = files('const.dat')
command_file = files('format.sh')
output_file = meson.current_build_dir() + '/embedded_constants.h'
message('Data file absolute path: ' + data_file[0].full_path())
message('Meson source directory: ' + meson.current_source_dir())
message('Meson build directory: ' + meson.current_build_dir())

embedded_constants_h = custom_target('embed_constants',
    input: data_file,
    output: 'embedded_constants.h',
    command: ['sh', '-c', command_file[0].full_path()+' @INPUT@ ' + output_file, '@INPUT@', '@OUTPUT@']
)

# Ensure the generated header is included
const_header = include_directories('.')

const_dep = declare_dependency(
    include_directories: const_header,
    sources: embedded_constants_h
)