Для незнакомых с IDL (язык описания интерфейса), это абстрагирует описание данных для использования через платформы (Java, c, C++, и т.д.). Мой проект имеет зависимости Foo.c, Foo.h, FooHelper.c и FooHelper.h, которые сгенерированы от Foo.idl. Как я выполняю произвольную команду, когда Foo.idl изменяется, но все еще включайте Foo.c, FooHelper.c, в процессе сборки?
Мои текущие попытки добавляют правило к Makefile.am - надежда состоит в том, что правило копируется в сгенерированный Make-файл.
Я попробовал:
Foo.idl : Foo.idl
${the_generate_command}
и затем добавил Foo.idl к my_program_SOURCES, но он не выполняет the_generate_command при создании.
У меня была генерация успеха от IDL с
Foo.c Foo.h FooHelper.h FooHelper.c : Foo.idl
${the_generate_command}
Но это не добавит Foo.c, FooHelper.c к процессу компиляции, таким образом, они никогда не будут создаваться, просто сгенерированы the_generate_command!
Весь код (включая idl) находится в $PROJECT_DIR/src.