On Sun, 21 Nov 2010, Ralf Wildenhues wrote:
Hello Vincent,
* Vincent Torri wrote on Sun, Nov 21, 2010 at 10:51:53PM CET:
noinst_PROGRAMS = cmapdump fontdump
BUILT_SOURCES = cmapdump fontdump
With MSYS, noinst_PROGRAMS is set to
cmapdump$(EXEEXT) fontdump$(EXEEXT)
but BUILT_SOURCES is set to
cmapdump fontdump
Is it normal that BUILT_SOURCES does not try to see if they are
binaries in some variables ?
I don't think we've come across an example where it was necessary to put
compiled programs into BUILT_SOURCES. For one, that would mean that
cross compilation will not work. For another: can you please explain
what you are trying to achieve? I'm sure there is another way.
I am building a library that is using mupdf. I have autotooled mupdf for
my personal project. mupdf is splitted into several libraries:
libfitz libdraw libcmaps libfonts libmupdf
libcmaps source files are generated by a binary named cmapdump.
So I have something like:
noinst_PROGRAMS = cmapdump
cmapdump_SOURCES = mupdf-0.7/mupdf/cmapdump.c
noinst_LTLIBRARIES = libfitz.la libdraw.la libcmaps.la libfonts.la libmupdf.la
...
cmap_tounicode_files = \
mupdf-0.7/cmaps/Adobe-CNS1-UCS2 \
mupdf-0.7/cmaps/Adobe-GB1-UCS2 \
mupdf-0.7/cmaps/Adobe-Japan1-UCS2 \
mupdf-0.7/cmaps/Adobe-Korea1-UCS2
libcmaps_la_SOURCES = cmap_tounicode.c
cmap_tounicode.c: cmapdump $(cmap_tounicode_files)
./cmapdump $@ $(cmap_tounicode_files)
If I don't use BUILT_SOURCES, cmapdump binary is not built before
libcmaps, hence cmap_tounicode.c is not created, and compilation of
libcmaps fails.
Is there another solution ?
Other than that, you're right: automatic $(EXEEXT) appending is not done
for BUILT_SOURCES.
ok.
thank you
Vincent Torri