Makefile.am revision 132720
1## Makefile for the toplevel directory of the GNU C++ Standard library.
2##
3## Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
4## Free Software Foundation, Inc.
5##
6## This file is part of the libstdc++ version 3 distribution.
7## Process this file with automake to produce Makefile.in.
8
9## This file is part of the GNU ISO C++ Library.  This library is free
10## software; you can redistribute it and/or modify it under the
11## terms of the GNU General Public License as published by the
12## Free Software Foundation; either version 2, or (at your option)
13## any later version.
14
15## This library is distributed in the hope that it will be useful,
16## but WITHOUT ANY WARRANTY; without even the implied warranty of
17## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18## GNU General Public License for more details.
19
20## You should have received a copy of the GNU General Public License along
21## with this library; see the file COPYING.  If not, write to the Free
22## Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
23## USA.
24
25include $(top_srcdir)/fragment.am
26
27if GLIBCXX_HOSTED
28  # Possibly libmath as well...
29  hosted_source = src po
30endif
31## Keep this list sync'd with acinclude.m4:GLIBCXX_CONFIGURE.
32SUBDIRS = include libmath libsupc++ $(hosted_source) testsuite
33
34# These rules are messy, but are hella worth it.
35doxygen:
36	-(srcdir=`cd ${top_srcdir}; ${PWD_COMMAND}`; \
37	  builddir=`${PWD_COMMAND}`; \
38	  ${SHELL} ${srcdir}/docs/doxygen/run_doxygen \
39	            --mode=user $${srcdir} $${builddir})
40
41doxygen-maint:
42	-(srcdir=`cd ${top_srcdir}; ${PWD_COMMAND}`; \
43	  builddir=`${PWD_COMMAND}`; \
44	  ${SHELL} ${srcdir}/docs/doxygen/run_doxygen \
45	            --mode=maint $${srcdir} $${builddir})
46
47doxygen-man:
48	-(srcdir=`cd ${top_srcdir}; ${PWD_COMMAND}`; \
49	  builddir=`${PWD_COMMAND}`; \
50	  ${SHELL} ${srcdir}/docs/doxygen/run_doxygen \
51	            --mode=man $${srcdir} $${builddir})
52
53.PHONY: doxygen doxygen-maint doxygen-man
54
55# Handy forwarding targets.
56check-%:
57	cd testsuite && $(MAKE) $@
58
59# Multilib support.
60MAKEOVERRIDES=
61
62# Multilib support variables.
63MULTISRCTOP =
64MULTIBUILDTOP =
65MULTIDIRS =
66MULTISUBDIR =
67MULTIDO = true
68MULTICLEAN = true
69
70# Multilib support.
71.PHONY: all-multi mostlyclean-multi clean-multi distclean-multi \
72	maintainer-clean-multi
73
74all-recursive: all-multi
75install-recursive: install-multi
76mostlyclean-recursive: mostlyclean-multi
77clean-recursive: clean-multi
78distclean-recursive: distclean-multi
79maintainer-clean-recursive: maintainer-clean-multi
80
81all-multi:
82	: $(MAKE) ; exec $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do
83install-multi:
84	$(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do
85mostlyclean-multi:
86	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean
87clean-multi:
88	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean
89distclean-multi:
90	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean
91maintainer-clean-multi:
92	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean
93
94# All the machinations with string instantiations messes up the
95# automake-generated TAGS rule. Make a simple one here.
96TAGS: tags-recursive $(LISP)
97
98# Work around what appears to be a GNU make bug handling MAKEFLAGS
99# values defined in terms of make variables, as is the case for CC and
100# friends when we are called from the top level Makefile.
101AM_MAKEFLAGS = \
102	"AR_FLAGS=$(AR_FLAGS)" \
103	"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
104	"CC_FOR_TARGET=$(CC_FOR_TARGET)" \
105	"CFLAGS=$(CFLAGS)" \
106	"CXXFLAGS=$(CXXFLAGS)" \
107	"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
108	"CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
109	"INSTALL=$(INSTALL)" \
110	"INSTALL_DATA=$(INSTALL_DATA)" \
111	"INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
112	"INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
113	"LDFLAGS=$(LDFLAGS)" \
114	"LIBCFLAGS=$(LIBCFLAGS)" \
115	"LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
116	"MAKE=$(MAKE)" \
117	"MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
118	"PICFLAG=$(PICFLAG)" \
119	"PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
120	"SHELL=$(SHELL)" \
121	"RUNTESTFLAGS=$(RUNTESTFLAGS)" \
122	"exec_prefix=$(exec_prefix)" \
123	"infodir=$(infodir)" \
124	"libdir=$(libdir)" \
125	"includedir=$(includedir)" \
126	"prefix=$(prefix)" \
127	"tooldir=$(tooldir)" \
128	"gxx_include_dir=$(gxx_include_dir)" \
129	"AR=$(AR)" \
130	"AS=$(AS)" \
131	"LD=$(LD)" \
132	"LIBCFLAGS=$(LIBCFLAGS)" \
133	"PICFLAG=$(PICFLAG)" \
134	"RANLIB=$(RANLIB)" \
135	"NM=$(NM)" \
136	"NM_FOR_BUILD=$(NM_FOR_BUILD)" \
137	"NM_FOR_TARGET=$(NM_FOR_TARGET)" \
138	"DESTDIR=$(DESTDIR)" \
139	"WERROR=$(WERROR)"
140
141# Subdir rules rely on $(FLAGS_TO_PASS)
142FLAGS_TO_PASS = $(AM_MAKEFLAGS)
143