3 # File name: Makefile.in
4 # Purpose: Top level Makefile
9 # Copyright: (c) 2002-2003 Universität Karlsruhe
10 # Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
14 # top directory of the source tree
15 top_srcdir := @top_srcdir@
16 # directory with the sources for this directory
18 # top directory of the configured tree
20 # subdirectory under topdir
22 # do we want statistics
23 enable_statistics := @enable_statistics@
25 subdirs := ir/adt ir/debug ir/tv ir/common ir/ident ir/ir ir/tr ir/ana ir/st
27 ifeq ($(enable_statistics),yes)
31 SOURCES := Makefile.in MakeRules.in MakeTargets\
32 aclocal.m4 config.h.in\
33 config.guess config.sub configure.in \
34 stamp-h.in install-sh README configure
36 INSTALL_LIBS = libfirm.a
38 GENFILES := stamp-h config.log config.cache
39 # config.status config.h.in $(srcdir)/stamp-h.in
41 include $(topdir)/MakeRules
43 XOFILES += $(addsuffix /subdir.o, $(subdirs))
45 include $(top_srcdir)/MakeTargets
47 # add target firmjni if configured with --enable-firmjni
52 $(OFILES): config.h Makefile
54 $(XOFILES): subdir_all
56 libfirm.a: $(XOFILES) $(OFILES)
57 $(AR) $(ARFLAGS) $@.new $(XOFILES) $(OFILES)
61 libfirm.so: subdir_all $(XOFILES) $(OFILES)
62 ld -Bshareable -o ./libfirm.so $(XOFILES) -lm
64 testprograms: libfirm.a
65 $(MAKE) -C testprograms
70 # gernerate program documentation
72 autodoc: $(AUTODOCDIR) $(AUTODOCINDEXFILE)
74 .PHONY: $(AUTDOCINDEXFILE)
75 $(AUTODOCINDEXFILE): $(CFILES) $(HFILES)
76 $(AUTODOC) $(AUTODOCFILE)
79 #${srcdir}/configure: configure.in aclocal.m4
80 $(srcdir)/configure: configure.in
81 cd $(srcdir) && autoconf
83 # autoheader might not change config.h.in, so touch a stamp file.
84 $(srcdir)/config.h.in: stamp-h.in
86 #${srcdir
\1c2/stamp-h.in: configure.in aclocal.m4 acconfig.h \
87 $(srcdir)/stamp-h.in: configure.in
88 cd $(srcdir) && autoheader
89 echo timestamp > $(srcdir)/stamp-h.in
92 stamp-h: config.h.in config.status
95 config.status: configure
96 ./config.status --recheck
98 # add target test-firmjni if configured with --enable-firmjni
100 $(MAKE) -C testprograms test;
103 $(MAKE) -C firmjni test;
106 $(MAKE) -C testprograms reference;
109 $(MAKE) -C testprograms realclean
110 $(MAKE) -C firmjni/testprograms clean;