X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=libstdc%2B%2B-v3%2Fsrc%2FMakefile.am;h=de5850da3728811f694bd91c9fbd6aba57c48200;hb=3b3233e3993639def914a61801986437192ac2c6;hp=419580190c5f0725b44a800f50007da9b36d5444;hpb=5c813b2c637387fb4a484a338cac9ba2d783cc02;p=pf3gnuchains%2Fgcc-fork.git diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am index 419580190c5..de5850da372 100644 --- a/libstdc++-v3/src/Makefile.am +++ b/libstdc++-v3/src/Makefile.am @@ -1,6 +1,7 @@ -## Makefile for the src subdirectory of the GNU C++ Standard library. +## Makefile for the C++11 sources of the GNU C++ Standard library. ## -## Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005 +## Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +## 2006, 2007, 2008, 2009, 2010, 2011, 2012 ## Free Software Foundation, Inc. ## ## This file is part of the libstdc++ version 3 distribution. @@ -9,7 +10,7 @@ ## This file is part of the GNU ISO C++ Library. This library is free ## software; you can redistribute it and/or modify it under the ## terms of the GNU General Public License as published by the -## Free Software Foundation; either version 2, or (at your option) +## Free Software Foundation; either version 3, or (at your option) ## any later version. ## This library is distributed in the hope that it will be useful, @@ -18,234 +19,138 @@ ## GNU General Public License for more details. ## You should have received a copy of the GNU General Public License along -## with this library; see the file COPYING. If not, write to the Free -## Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, -## USA. +## with this library; see the file COPYING3. If not see +## . include $(top_srcdir)/fragment.am +SUBDIRS = c++98 c++11 + # Cross compiler support. toolexeclib_LTLIBRARIES = libstdc++.la -# Symbol versioning for shared libraries. -if ENABLE_SYMVERS -libstdc++-symbols.ver: ${glibcxx_srcdir}/$(SYMVER_FILE) \ - $(port_specific_symbol_files) - cp ${glibcxx_srcdir}/$(SYMVER_FILE) ./libstdc++-symbols.ver - chmod +w ./libstdc++-symbols.ver - if test "x$(port_specific_symbol_files)" != x; then \ - if grep '^# Appended to version file.' \ - $(port_specific_symbol_files) /dev/null > /dev/null 2>&1; then \ - cat $(port_specific_symbol_files) >> $@; \ - else \ - sed -n '1,/DO NOT DELETE/p' $@ > tmp.top; \ - sed -n '/DO NOT DELETE/,$$p' $@ > tmp.bottom; \ - cat tmp.top $(port_specific_symbol_files) tmp.bottom > $@; \ - rm tmp.top tmp.bottom; \ - fi; \ - fi +vpath % $(top_srcdir)/src/c++98 +vpath % $(top_srcdir)/src/c++11 -if ENABLE_SYMVERS_GNU -version_arg = -Wl,--version-script=libstdc++-symbols.ver -version_dep = libstdc++-symbols.ver -endif -if ENABLE_SYMVERS_GNU_NAMESPACE -version_arg = -Wl,--version-script=libstdc++-symbols.ver -version_dep = libstdc++-symbols.ver -endif -if ENABLE_SYMVERS_DARWIN -version_arg = -Wl,-exported_symbols_list,libstdc++-symbols.explist -version_dep = libstdc++-symbols.explist -libstdc++-symbols.explist : libstdc++-symbols.ver \ - ${glibcxx_srcdir}/scripts/make_exports.pl \ - $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) - perl ${glibcxx_srcdir}/scripts/make_exports.pl \ - libstdc++-symbols.ver \ - $(libstdc___la_OBJECTS:%.lo=.libs/%.o) \ - `echo $(libstdc___la_LIBADD) | \ - sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \ - > $@ || (rm -f $@ ; exit 1) -endif +if GLIBCXX_LDBL_COMPAT +ldbl_compat_sources = compatibility-ldbl.cc else -version_arg = -version_dep = +ldbl_compat_sources = endif +if ENABLE_PARALLEL +parallel_compat_sources = \ + compatibility-parallel_list.cc compatibility-parallel_list-2.cc +else +parallel_compat_sources = +endif -# Source files linked in via configuration/make substitution for a -# particular host. -host_sources = \ - atomicity.cc \ - codecvt_members.cc \ - collate_members.cc \ - ctype_members.cc \ - messages_members.cc \ - monetary_members.cc \ - numeric_members.cc \ - time_members.cc - -codecvt_members.cc: ${glibcxx_srcdir}/$(CCODECVT_CC) - $(LN_S) ${glibcxx_srcdir}/$(CCODECVT_CC) . || true - -collate_members.cc: ${glibcxx_srcdir}/$(CCOLLATE_CC) - $(LN_S) ${glibcxx_srcdir}/$(CCOLLATE_CC) . || true - -ctype_members.cc: ${glibcxx_srcdir}/$(CCTYPE_CC) - $(LN_S) ${glibcxx_srcdir}/$(CCTYPE_CC) . || true - -messages_members.cc: ${glibcxx_srcdir}/$(CMESSAGES_CC) - $(LN_S) ${glibcxx_srcdir}/$(CMESSAGES_CC) . || true - -monetary_members.cc: ${glibcxx_srcdir}/$(CMONEY_CC) - $(LN_S) ${glibcxx_srcdir}/$(CMONEY_CC) . || true - -numeric_members.cc: ${glibcxx_srcdir}/$(CNUMERIC_CC) - $(LN_S) ${glibcxx_srcdir}/$(CNUMERIC_CC) . || true - -time_members.cc: ${glibcxx_srcdir}/$(CTIME_CC) - $(LN_S) ${glibcxx_srcdir}/$(CTIME_CC) . || true +cxx98_sources = \ + compatibility.cc \ + compatibility-debug_list.cc \ + compatibility-debug_list-2.cc \ + compatibility-list.cc \ + compatibility-list-2.cc \ + ${ldbl_compat_sources} \ + ${parallel_compat_sources} -atomicity_file = ${glibcxx_srcdir}/$(ATOMICITY_SRCDIR)/atomicity.h -atomicity.cc: ${atomicity_file} - $(LN_S) ${atomicity_file} ./atomicity.cc || true +cxx11_sources = \ + compatibility-c++0x.cc \ + compatibility-atomic-c++0x.cc \ + compatibility-thread-c++0x.cc -# Source files linked in via configuration/make substitution for a -# particular host, but with ad hoc naming rules. -host_sources_extra = \ - basic_file.cc \ - c++locale.cc +libstdc___la_SOURCES = $(cxx98_sources) $(cxx11_sources) -c++locale.cc: ${glibcxx_srcdir}/$(CLOCALE_CC) - $(LN_S) ${glibcxx_srcdir}/$(CLOCALE_CC) ./$@ || true +libstdc___la_LIBADD = \ + $(GLIBCXX_LIBS) \ + $(top_builddir)/libsupc++/libsupc++convenience.la \ + $(top_builddir)/src/c++98/libc++98convenience.la \ + $(top_builddir)/src/c++11/libc++11convenience.la -basic_file.cc: ${glibcxx_srcdir}/$(BASIC_FILE_CC) - $(LN_S) ${glibcxx_srcdir}/$(BASIC_FILE_CC) ./$@ || true +libstdc___la_DEPENDENCIES = \ + ${version_dep} \ + $(top_builddir)/libsupc++/libsupc++convenience.la \ + $(top_builddir)/src/c++98/libc++98convenience.la \ + $(top_builddir)/src/c++11/libc++11convenience.la -if GLIBCXX_LDBL_COMPAT -ldbl_compat_sources = compatibility-ldbl.cc -else -ldbl_compat_sources = -endif +libstdc___la_LDFLAGS = \ + -version-info $(libtool_VERSION) ${version_arg} -lm -# Sources present in the src directory. -sources = \ - bitmap_allocator.cc \ - pool_allocator.cc \ - mt_allocator.cc \ - codecvt.cc \ - compatibility.cc \ - complex_io.cc \ - ctype.cc \ - debug.cc \ - debug_list.cc \ - functexcept.cc \ - hash.cc \ - hash_c++0x.cc \ - globals_io.cc \ - ios.cc \ - ios_failure.cc \ - ios_init.cc \ - ios_locale.cc \ - limits.cc \ - list.cc \ - locale.cc \ - locale_init.cc \ - locale_facets.cc \ - localename.cc \ - stdexcept.cc \ - strstream.cc \ - system_error.cc \ - tree.cc \ - allocator-inst.cc \ - concept-inst.cc \ - fstream-inst.cc \ - ext-inst.cc \ - ios-inst.cc \ - iostream-inst.cc \ - istream-inst.cc \ - istream.cc \ - locale-inst.cc \ - misc-inst.cc \ - ostream-inst.cc \ - sstream-inst.cc \ - streambuf-inst.cc \ - streambuf.cc \ - string-inst.cc \ - valarray-inst.cc \ - wlocale-inst.cc \ - wstring-inst.cc \ - ${host_sources} \ - ${host_sources_extra} \ - ${ldbl_compat_sources} - -VPATH = $(top_srcdir)/src:$(top_srcdir) - -libstdc___la_SOURCES = $(sources) +libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS) -libstdc___la_LIBADD = \ - $(top_builddir)/libmath/libmath.la \ - $(top_builddir)/libsupc++/libsupc++convenience.la -libstdc___la_DEPENDENCIES = ${version_dep} $(libstdc___la_LIBADD) +# Use special rules for parallel mode compilation. +PARALLEL_FLAGS = -fopenmp -D_GLIBCXX_PARALLEL -I$(glibcxx_builddir)/../libgomp +compatibility-parallel_list.lo: compatibility-parallel_list.cc + $(LTCXXCOMPILE) -c $< +compatibility-parallel_list.o: compatibility-parallel_list.cc + $(CXXCOMPILE) -c $< -libstdc___la_LDFLAGS = \ - -version-info $(libtool_VERSION) ${version_arg} -lm - -# Use special rules for the deprecated source files so that they find -# deprecated include files. -GLIBCXX_INCLUDE_DIR=$(glibcxx_builddir)/include -strstream.lo: strstream.cc - $(LTCXXCOMPILE) -I$(GLIBCXX_INCLUDE_DIR)/backward -Wno-deprecated -c $< -strstream.o: strstream.cc - $(CXXCOMPILE) -I$(GLIBCXX_INCLUDE_DIR)/backward -Wno-deprecated -c $< - -# Use special rules for the concept-checking instantiations so that all -# the generated template functions are also instantiated. Force the checks -# to be on so that the instantiations are actually seen. -concept-inst.lo: concept-inst.cc - $(LTCXXCOMPILE) -D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates -c $< -concept-inst.o: concept-inst.cc - $(CXXCOMPILE) -D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates -c $< - -# Use special rules for the C++0x sources so that the proper flags are passed. -system_error.lo: system_error.cc - $(LTCXXCOMPILE) -std=gnu++0x -c $< -system_error.o: system_error.cc - $(CXXCOMPILE) -std=gnu++0x -c $< - -hash_c++0x.lo: hash_c++0x.cc - $(LTCXXCOMPILE) -std=gnu++0x -c $< -hash_c++0x.o: hash_c++0x.cc - $(CXXCOMPILE) -std=gnu++0x -c $< +compatibility-parallel_list-2.lo: compatibility-parallel_list-2.cc + $(LTCXXCOMPILE) -c $< +compatibility-parallel_list-2.o: compatibility-parallel_list-2.cc + $(CXXCOMPILE) -c $< -if GLIBCXX_LDBL_COMPAT # Use special rules for compatibility-ldbl.cc compilation, as we need to # pass -mlong-double-64. +if GLIBCXX_LDBL_COMPAT compatibility-ldbl.lo: compatibility-ldbl.cc $(LTCXXCOMPILE) -mlong-double-64 -c $< compatibility-ldbl.o: compatibility-ldbl.cc $(CXXCOMPILE) -mlong-double-64 -c $< endif -# AM_CXXFLAGS needs to be in each subdirectory so that it can be +# Use special rules for C++11 files/objects. +compatibility-c++0x.lo: compatibility-c++0x.cc + $(LTCXXCOMPILE) -std=gnu++11 -c $< +compatibility-c++0x.o: compatibility-c++0x.cc + $(CXXCOMPILE) -std=gnu++11 -c $< + +compatibility-atomic-c++0x.lo: compatibility-atomic-c++0x.cc + $(LTCXXCOMPILE) -std=gnu++11 -c $< +compatibility-atomic-c++0x.o: compatibility-atomic-c++0x.cc + $(CXXCOMPILE) -std=gnu++11 -c $< + +compatibility-thread-c++0x.lo: compatibility-thread-c++0x.cc + $(LTCXXCOMPILE) -std=gnu++11 -c $< +compatibility-thread-c++0x.o: compatibility-thread-c++0x.cc + $(CXXCOMPILE) -std=gnu++11 -c $< + +# A note on compatibility and static libraries. +# +# static lib == linked against only this version, should not need compat +# shared lib == linked against potentially all compat versions +# +# Thus, the shared libs have more compat symbols, which can be found +# segregated in the sources with -D_GLIBCXX_SHARED. +# +# In the sub-directories of libsupc++, src/c++98, src/c++11, only +# -prefer-pic objects are generated for the convenience libraries. +# +# In the main src directory, make shared and static objects just for +# the compat libraries. Shared objects are compiled with -prefer-pic +# -D_GLIBCXX_SHARED and in the .libs sub-directory, static objects are +# compiled with -prefer-pic (ie, -fPIC but not -D_GLIBCXX_SHARED) and +# the main src directory. +# +# Why are objects destined for libstdc++.a compiled with -fPIC? First, +# because -fPIC is not harmful to use for objects destined for static +# libraries. In addition, using -fPIC will allow the use of static +# libstdc++.a in the creation of other C++ shared libraries. + +# AM_CXXFLAGS needs to be in each sub-directory so that it can be # modified in a per-library or per-sub-library way. Need to manually # set this option because CONFIG_CXXFLAGS has to be after # OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden # as the occasion calls for it. AM_CXXFLAGS = \ - -fno-implicit-templates \ - $(WARN_CXXFLAGS) \ - $(OPTIMIZE_CXXFLAGS) \ - $(CONFIG_CXXFLAGS) - - -# libstdc++ libtool notes + $(glibcxx_compiler_pic_flag) \ + $(XTEMPLATE_FLAGS) \ + $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) -# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is -# last. (That way, things like -O2 passed down from the toplevel can -# be overridden by --enable-debug.) +# Libtool notes -# 2) In general, libtool expects an argument such as `--tag=CXX' when +# 1) In general, libtool expects an argument such as `--tag=CXX' when # using the C++ compiler, because that will enable the settings # detected when C++ support was being configured. However, when no # such flag is given in the command line, libtool attempts to figure @@ -256,9 +161,24 @@ AM_CXXFLAGS = \ # can't decide which configuration to use, and it gives up. The # correct solution is to add `--tag CXX' to LTCXXCOMPILE and maybe # CXXLINK, just after $(LIBTOOL), so that libtool doesn't have to -# attempt to infer which configuration to use -LTCXXCOMPILE = $(LIBTOOL) --tag CXX --mode=compile $(CXX) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +# attempt to infer which configuration to use. +# +# The second tag argument, `--tag disable-shared` means that libtool +# only compiles each source once, for static objects. In actuality, +# glibcxx_lt_pic_flag and glibcxx_compiler_shared_flag are added to +# the libtool command that is used create the object, which is +# suitable for shared libraries. The `--tag disable-shared` must be +# placed after --tag CXX lest things CXX undo the affect of +# disable-shared. + +# 2) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is +# last. (That way, things like -O2 passed down from the toplevel can +# be overridden by --enable-debug.) +LTCXXCOMPILE = \ + $(LIBTOOL) --tag CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CXX) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) @@ -268,39 +188,148 @@ LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) # course is problematic at this point. So, we get the top-level # directory to configure libstdc++-v3 to use gcc as the C++ # compilation driver. -CXXLINK = $(LIBTOOL) --tag CXX --mode=link $(CXX) \ - $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ +CXXLINK = \ + $(LIBTOOL) --tag CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CXX) \ + $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ -# Added bits to build debug library. -if GLIBCXX_BUILD_DEBUG -all-local: build_debug -install-data-local: install_debug +# Symbol versioning for shared libraries. +if ENABLE_SYMVERS +libstdc++-symbols.ver: ${glibcxx_srcdir}/$(SYMVER_FILE) \ + $(port_specific_symbol_files) + cp ${glibcxx_srcdir}/$(SYMVER_FILE) $@.tmp + chmod +w $@.tmp + if test "x$(port_specific_symbol_files)" != x; then \ + if grep '^# Appended to version file.' \ + $(port_specific_symbol_files) /dev/null > /dev/null 2>&1; then \ + cat $(port_specific_symbol_files) >> $@.tmp; \ + else \ + sed -n '1,/DO NOT DELETE/p' $@.tmp > tmp.top; \ + sed -n '/DO NOT DELETE/,$$p' $@.tmp > tmp.bottom; \ + cat tmp.top $(port_specific_symbol_files) tmp.bottom > $@.tmp; \ + rm tmp.top tmp.bottom; \ + fi; \ + fi + $(EGREP) -v '^[ ]*#(#| |$$)' $@.tmp | \ + $(CC) -E -P -include $(CONFIG_HEADER) - > $@ || (rm -f $@ ; exit 1) + rm -f $@.tmp + +CLEANFILES = libstdc++-symbols.ver + +if ENABLE_SYMVERS_GNU +version_arg = -Wl,--version-script=libstdc++-symbols.ver +version_dep = libstdc++-symbols.ver +endif +if ENABLE_SYMVERS_GNU_NAMESPACE +version_arg = -Wl,--version-script=libstdc++-symbols.ver +version_dep = libstdc++-symbols.ver +endif +if ENABLE_SYMVERS_SUN +version_arg = -Wl,-M,libstdc++-symbols.ver-sun +version_dep = libstdc++-symbols.ver-sun +libstdc++-symbols.ver-sun : libstdc++-symbols.ver \ + $(toplevel_srcdir)/contrib/make_sunver.pl \ + $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) + CXXFILT="$(CXXFILT)"; export CXXFILT; \ + perl $(toplevel_srcdir)/contrib/make_sunver.pl \ + libstdc++-symbols.ver \ + $(libstdc___la_OBJECTS:%.lo=.libs/%.o) \ + `echo $(libstdc___la_LIBADD) | \ + sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \ + > $@ || (rm -f $@ ; exit 1) +endif +if ENABLE_SYMVERS_DARWIN +version_arg = -Wl,-exported_symbols_list,libstdc++-symbols.explist +version_dep = libstdc++-symbols.explist +libstdc++-symbols.explist : libstdc++-symbols.ver \ + ${glibcxx_srcdir}/scripts/make_exports.pl \ + $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) + perl ${glibcxx_srcdir}/scripts/make_exports.pl \ + libstdc++-symbols.ver \ + $(libstdc___la_OBJECTS:%.lo=.libs/%.o) \ + `echo $(libstdc___la_LIBADD) | \ + sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \ + > $@ || (rm -f $@ ; exit 1) +endif + +CLEANFILES += $(version_dep) else -all-local: -install-data-local: +version_arg = +version_dep = endif -debugdir = debug -# Build a set of debug objects here. +# Control additional build primary rules. +all-once: libstdc++convenience.la $(STAMP_DEBUG) +install-data-once: $(STAMP_INSTALL_DEBUG) + +all-local: all-once +install-data-local: install-data-once +clean-local: + rm -rf libstdc++convenience.la stamp* $(CLEAN_DEBUG) + +# Make a non-installed convenience library, so that --disable-static +# may work. +libstdc++convenience.la: $(toolexeclib_LTLIBRARIES) + $(CXXLINK) $(libstdc___la_LIBADD) $(LIBS); \ + if test ! -f .libs/libstdc++.a; then \ + cp .libs/libstdc++convenience.a .libs/libstdc++.a; \ + fi; \ + echo `date` > stamp-libstdc++convenience; + +# Added rules. +# 1 debug library +# 2 supra-convenience library +if GLIBCXX_BUILD_DEBUG +STAMP_DEBUG = build-debug +STAMP_INSTALL_DEBUG = install-debug +CLEAN_DEBUG = debug +else +STAMP_DEBUG = +STAMP_INSTALL_DEBUG = +CLEAN_DEBUG = +endif + +# Build a debug variant. +# Take care to fix all possibly-relative paths. +debugdir = ${glibcxx_builddir}/src/debug stamp-debug: if test ! -d ${debugdir}; then \ mkdir -p ${debugdir}; \ + for d in $(SUBDIRS); do mkdir -p ${debugdir}/$$d; done; \ (cd ${debugdir}; \ sed -e 's/top_builddir = \.\./top_builddir = ..\/../' \ + -e 's/top_build_prefix = \.\./top_build_prefix = ..\/../' \ -e 's/srcdir = \.\./srcdir = ..\/../' \ + -e 's/VPATH = \.\./VPATH = ..\/../' \ -e 's/glibcxx_basedir = \.\./glibcxx_basedir = ..\/../' \ - -e 's/all-local: build_debug/all-local:/' \ - -e 's/install-data-local: install_debug/install-data-local:/' \ - < ../Makefile > Makefile) ; \ + -e 's/MKDIR_P = \.\./MKDIR_P = ..\/../' \ + < ../Makefile > Makefile ; \ + for d in . $(SUBDIRS); do \ + sed -e 's/top_builddir = \.\./top_builddir = ..\/../' \ + -e 's/top_build_prefix = \.\./top_build_prefix = ..\/../' \ + -e 's/srcdir = \.\./srcdir = ..\/../' \ + -e 's/VPATH = \.\./VPATH = ..\/../' \ + -e 's/glibcxx_basedir = \.\./glibcxx_basedir = ..\/../' \ + -e 's/MKDIR_P = \.\./MKDIR_P = ..\/../' \ + < ../$$d/Makefile > $$d/Makefile ; \ + done) ; \ fi; \ echo `date` > stamp-debug; -build_debug: stamp-debug - (cd ${debugdir} && $(MAKE) CXXFLAGS='$(DEBUG_FLAGS)' all) - -# Install debug library here. -install_debug: - (cd ${debugdir} && $(MAKE) \ - toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install) +build-debug: stamp-debug + (cd ${debugdir}; \ + mv Makefile Makefile.tmp; \ + sed -e 's,all-local: all-once,all-local:,' \ + -e 's,install-data-local: install-data-once,install-data-local:,' \ + -e '/vpath/!s,src/c,src/debug/c,' \ + < Makefile.tmp > Makefile ; \ + $(MAKE) CXXFLAGS='$(DEBUG_FLAGS)' \ + toolexeclibdir=$(glibcxx_toolexeclibdir)/debug all) ; + +# Install debug library. +install-debug: build-debug + (cd ${debugdir} && $(MAKE) CXXFLAGS='$(DEBUG_FLAGS)' \ + toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install) ;