2010-04-20 67 views
2

目前,我有一個生成鏈,由automake完全地管理,如:Automake:如何添加建築物的步驟?

.vala > .c > .o > .exe 

我想補充的預處理的新的一步一個XML文件的.ui成VALA來源:

.ui > .vala > .c > .o > .exe 

我這樣做,在makefile.am

gtkbuilder2vala_SOURCES = \ 
    abstract-window.ui \ 
    main.vala \ 
    $(NULL) 

和:

XSLTPROC = xsltproc 
.ui.vala: 
    $(XSLTPROC) ... 

但使不明白:

make: *** No rule to make target `abstract-window.c', needed by `gtkbuilder2vala-abstract-window.o'. Stop. 

這似乎是化妝的限制:

http://www.ensta.fr/~diam/dev/online/autoconf/autobook/autobook_180.html

如果轉換需要三個步驟 - 從.m' to .X ',然後從.x' to.c',最後到'.o' - 那麼Automake的簡單化方法就會中斷。

你有什麼想法嗎?

回答

4

我會在configure.ac做一些沿着這些線路

BUILT_SOURCES += abstract-window.vala 
EXTRA_DIST += abstract-window.ui 
gtkbuilder2vala_SOURCES += abstract-window.vala 

SUFFIXES = .ui .vala 
.ui.vala: 
    $(XSLTPROC) ... 

我將離開XSLTPROC定義的AC_SUBST(甚至更好,一個AC_ARG_VAR)。

相關問題