diff --git a/auto/generate_test_runner.rb b/auto/generate_test_runner.rb old mode 100644 new mode 100755 index d1d8f91..ab376fa --- a/auto/generate_test_runner.rb +++ b/auto/generate_test_runner.rb @@ -1,3 +1,5 @@ +#!/usr/bin/ruby + # ========================================== # Unity Project - A Test Framework for C # Copyright (c) 2007 Mike Karlesky, Mark VanderVoord, Greg Williams diff --git a/meson.build b/meson.build index f5c5cfa..d424f62 100644 --- a/meson.build +++ b/meson.build @@ -12,3 +12,15 @@ project('unity', 'c', subdir('src') unity_dep = declare_dependency(link_with: unity_lib, include_directories: unity_dir) + + +# Get the generate_test_runner script relative to itself or the parent project if it is being used as a subproject +# NOTE: This could be (and probably is) a complete hack - but I haven't yet been able to find a better way.... +if meson.is_subproject() +gen_test_runner_path = find_program(meson.source_root() / 'subprojects/unity/auto/generate_test_runner.rb') +else +gen_test_runner_path = find_program('subprojects/unity/auto/generate_test_runner.rb') +endif + +# Create a generator that we can access from the parent project +gen_test_runner = generator(gen_test_runner_path, output: '@BASENAME@_Runner.c', arguments: ['@INPUT@', '@OUTPUT@'] )