對於那些不熟悉IDL(接口描述語言)的人來說,它抽象了跨平臺(java,c,C++等)使用的數據描述。我的項目有從Foo.idl生成的依賴項Foo.c,Foo.h,FooHelper.c和FooHelper.h。如何在Foo.idl更改時運行任意命令,但在構建過程中仍包含Foo.c,FooHelper.c?使用automake/Makefile.am生成IDL實體
我當前的嘗試將一條規則添加到Makefile.am中 - 希望將該規則複製到生成的Makefile。
我曾嘗試:
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中。