gcc/libstdc++-v3/src/Makefile.in

519 lines
20 KiB
Makefile
Raw Normal View History

# Makefile.in generated automatically by automake 1.4 from Makefile.am
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
DESTDIR =
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_alias = @build_alias@
build_triplet = @build@
host_alias = @host_alias@
host_triplet = @host@
target_alias = @target_alias@
target_triplet = @target@
AR = @AR@
AS = @AS@
CC = @CC@
CPP = @CPP@
CSHADOWFLAGS = @CSHADOWFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
DEBUG_FLAGS = @DEBUG_FLAGS@
DLLTOOL = @DLLTOOL@
EXEEXT = @EXEEXT@
EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@
GCC_OBJDIR = @GCC_OBJDIR@
GCJ = @GCJ@
GCJFLAGS = @GCJFLAGS@
GLIBCPP_CFLAGS = @GLIBCPP_CFLAGS@
GLIBCPP_CXXFLAGS = @GLIBCPP_CXXFLAGS@
LIBMATHOBJS = @LIBMATHOBJS@
LIBSTRINGOBJS = @LIBSTRINGOBJS@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OPT_LDFLAGS = @OPT_LDFLAGS@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
SECTION_FLAGS = @SECTION_FLAGS@
SECTION_LDFLAGS = @SECTION_LDFLAGS@
STRIP = @STRIP@
USE_COMPLEX_LONG_DOUBLE = @USE_COMPLEX_LONG_DOUBLE@
VERSION = @VERSION@
WERROR = @WERROR@
WFMT_FLAGS = @WFMT_FLAGS@
glibcpp_basedir = @glibcpp_basedir@
ifGNUmake = @ifGNUmake@
libinst_wstring_la = @libinst_wstring_la@
AUTOMAKE_OPTIONS = 1.3 gnits
MAINT_CHARSET = latin1
@USE_LIBDIR_TRUE@toolexeclibdir = $(libdir)$(MULTISUBDIR)
@USE_LIBDIR_FALSE@toolexeclibdir = $(toolexecdir)/lib$(MULTISUBDIR)
@USE_LIBDIR_FALSE@toolexecdir = $(exec_prefix)/$(target_alias)
toolexeclib_LTLIBRARIES = libstdc++.la
EXTRA_LTLIBRARIES = libinst-string.la libinst-wstring.la
# AM_CXXFLAGS needs to be in each subdirectory 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 at
# the end of the compile line so that -O2 can be overridden as the
# occasion call for it. (ie, --enable-debug)
AM_CXXFLAGS = -fno-implicit-templates $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS)
# Need to explicitly set this so that AM_CXXFLAGS is last. In
# addition, we don't use $(DEFS), which tries to set $(top_srcdir) as
# an include diretory, which screws up shadow headers. (That way,
# things like -O2 passed down from the toplevel can be overridden by
# --enable-debug.)
CXXCOMPILE = $(CXX) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(AM_CXXFLAGS)
LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(AM_CXXFLAGS)
# We have a problem when building the shared libstdc++ object if the
# rules automake generates would be used. We cannot allow CXX to be used
# in libtool since this would add -lstdc++ to the link line which of
# course is impossible.
CXXLINK = $(LIBTOOL) --mode=link "$(CC)" @OPT_LDFLAGS@ @SECTION_LDFLAGS@ $(AM_CXXFLAGS) $(LDFLAGS) -o $@
# Root level of the include sources.
glibcpp_includedir = $(top_srcdir)/include
# Passed down for cross compilers, canadian crosses.
TOPLEVEL_INCLUDES = -I$(includedir)
LIBMATH_INCLUDES = -I$(top_srcdir)/libmath
@GLIBCPP_NEED_LIBIO_TRUE@LIBIO_INCLUDES = -I$(top_builddir)/libio -I$(top_srcdir)/libio
@GLIBCPP_NEED_LIBIO_FALSE@LIBIO_INCLUDES = -I$(top_srcdir)/libio
@GLIBCPP_USE_CSHADOW_TRUE@CSHADOW_INCLUDES = -I$(glibcpp_includedir)/std -I$(top_srcdir)/shadow
@GLIBCPP_USE_CSHADOW_FALSE@CSHADOW_INCLUDES =
INCLUDES = -D_GNU_SOURCE -D_ISOC99_SOURCE -nostdinc++ $(CSHADOW_INCLUDES) -I$(top_builddir) -I$(glibcpp_includedir) $(LIBIO_INCLUDES) $(LIBMATH_INCLUDES) $(TOPLEVEL_INCLUDES)
headers = bits/std_cctype.h bits/cpp_type_traits.h bits/char_traits.h bits/codecvt.h bits/basic_string.h bits/std_string.h bits/string.tcc bits/generic_shadow.h bits/std_utility.h bits/std_complex.h bits/valarray_array.h bits/valarray_array.tcc bits/valarray_meta.h bits/std_valarray.h bits/mask_array.h bits/slice.h bits/slice_array.h bits/gslice.h bits/gslice_array.h bits/indirect_array.h bits/std_cassert.h bits/std_cwctype.h bits/std_cerrno.h bits/std_cfloat.h bits/std_climits.h bits/std_clocale.h bits/std_cmath.h bits/std_csetjmp.h bits/std_csignal.h bits/std_cstdarg.h bits/std_cstddef.h bits/std_cstdio.h bits/std_cstdlib.h bits/std_cstring.h bits/std_ctime.h bits/std_cwchar.h bits/std_typeinfo.h bits/std_new.h bits/std_exception.h bits/exception_support.h bits/std_fstream.h bits/std_iomanip.h bits/ios_base.h bits/fpos.h bits/basic_ios.h bits/basic_ios.tcc bits/std_ios.h bits/std_iosfwd.h bits/std_iostream.h bits/std_istream.h bits/istream.tcc bits/std_locale.h bits/fstream.tcc bits/ostream.tcc bits/sbuf_iter.h bits/sstream.tcc bits/std_ostream.h bits/std_sstream.h bits/std_streambuf.h bits/streambuf.tcc bits/basic_file.h bits/locale_facets.h bits/locale_facets.tcc bits/localefwd.h bits/stl_pthread_alloc.h bits/pthread_allocimpl.h bits/stl_threads.h bits/stl_iterator_base.h backward/algo.h backward/algobase.h backward/alloc.h backward/bvector.h backward/defalloc.h backward/deque.h backward/function.h backward/hash_map.h backward/hash_set.h backward/hashtable.h backward/heap.h backward/iterator.h backward/list.h backward/map.h backward/multimap.h backward/new.h backward/multiset.h backward/pair.h backward/iostream.h backward/rope.h backward/set.h backward/slist.h backward/stack.h backward/tempbuf.h backward/tree.h backward/vector.h backward/fstream.h bits/std_bitset.h bits/std_deque.h bits/std_functional.h bits/std_iterator.h bits/std_list.h bits/std_map.h bits/std_memory.h bits/std_numeric.h bits/std_queue.h bits/std_set.h bits/std_stack.h bits/std_stdexcept.h bits/std_vector.h bits/stl_algo.h bits/stl_algobase.h bits/stl_alloc.h bits/stl_deque.h bits/stl_function.h bits/stl_heap.h bits/stl_iterator.h bits/stl_list.h bits/stl_map.h bits/stl_multimap.h bits/stl_multiset.h bits/stl_numeric.h bits/stl_pair.h bits/stl_queue.h bits/stl_raw_storage_iter.h bits/stl_relops.h bits/stl_set.h bits/stl_stack.h bits/stl_string_fwd.h bits/stl_tempbuf.h bits/stl_tree.h bits/stl_uninitialized.h bits/stl_vector.h bits/type_traits.h bits/stl_range_errors.h bits/std_algorithm.h bits/concept_checks.h bits/container_concepts.h bits/sequence_concepts.h bits/std_strstream.h ext/ropeimpl.h ext/stl_rope.h ext/stl_bvector.h bits/stl_config.h bits/stl_construct.h ext/stl_hashtable.h ext/stl_hash_fun.h ext/hash_map ext/hash_set ext/rope ext/slist ext/tree ext/bvector shadow/assert.h shadow/ctype.h shadow/errno.h shadow/float.h shadow/fcntl.h shadow/libio.h shadow/iolibio.h shadow/libioP.h shadow/limits.h shadow/locale.h shadow/math.h shadow/setjmp.h shadow/signal.h shadow/stdarg.h shadow/stddef.h shadow/stdio.h shadow/stdlib.h shadow/string.h shadow/time.h shadow/pthread.h shadow/iconv.h shadow/wchar.h shadow/wctype.h shadow/bits/std_cassert.h shadow/bits/std_cctype.h shadow/bits/std_cerrno.h shadow/bits/std_cfloat.h shadow/bits/std_climits.h shadow/bits/std_clocale.h shadow/bits/std_cmath.h shadow/bits/std_csetjmp.h shadow/bits/std_csignal.h shadow/bits/std_cstdarg.h shadow/bits/std_cstddef.h shadow/bits/std_cstdio.h shadow/bits/std_cstdlib.h shadow/bits/std_cstring.h shadow/bits/std_ctime.h shadow/bits/std_cwchar.h shadow/bits/std_cwctype.h shadow/bits/wrap_libio.h shadow/bits/wrap_iolibio.h shadow/bits/wrap_libioP.h shadow/bits/wrap_iconv.h shadow/bits/wrap_fcntl.h shadow/bits/wrap_pthread.h shadow/sys/cdefs.h
std_headers = algorithm bitset cassert cctype cerrno cfloat climits clocale ciso646 cmath complex csetjmp csignal cstdarg cstddef cstdio cstdlib cstring ctime cwchar cwctype deque exception fstream functional iomanip ios iosfwd iostream istream iterator limits list locale map memory new numeric ostream queue set sstream stack stdexcept streambuf string strstream typeinfo utility valarray vector
@GLIBCPP_NEED_LIBIO_TRUE@libio_headers = $(top_srcdir)/libio/_G_config.h $(top_srcdir)/libio/libio.h
@GLIBCPP_NEED_LIBIO_FALSE@libio_headers =
build_headers = $(top_builddir)/bits/std_limits.h $(top_builddir)/bits/c++config.h $(top_builddir)/bits/c++io.h $(top_builddir)/bits/c++threads.h $(top_builddir)/bits/atomicity.h $(top_builddir)/bits/ctype_base.h $(top_builddir)/bits/ctype_noninline.h $(top_builddir)/bits/ctype_inline.h
sources = limitsMEMBERS.cc cmath.cc complex.cc complexf.cc complexl.cc complex_io.cc stdexcept.cc c++io.cc ios.cc stdstreams.cc strstream.cc locale.cc localename.cc codecvt.cc locale-inst.cc stl-inst.cc misc-inst.cc valarray-inst.cc string-inst.cc
wstring_sources = wstring-inst.cc
VPATH = $(top_srcdir) $(top_srcdir)/src $(glibcpp_includedir) $(top_srcdir)/std
# Actual sources for the distro, but don't build these.
#EXTRA_sources = string-inst.cc
libstdc___la_SOURCES = $(sources)
libinst_wstring_la_SOURCES = $(wstring_sources)
libstdc___la_LIBADD = ../libmath/libmath.la ../libio/libio.la ../libsupc++/libsupc++convenience.la @libinst_wstring_la@
libstdc___la_LDFLAGS = -version-info 3:0:0 -lm
libstdc___la_DEPENDENCIES = $(libstdc___la_LIBADD)
@GLIBCPP_USE_CSHADOW_TRUE@CSHADOW_H = $(top_builddir)/stamp-cshadow
@GLIBCPP_USE_CSHADOW_FALSE@CSHADOW_H =
# We cannot use the default rules to install headers since we cannot
# statically decide which headers to install. So we have our own special
# installation routine here.
myincludep = $(DESTDIR)$(includedir)/g++-v3/
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
CONFIG_HEADER = ../config.h
CONFIG_CLEAN_FILES =
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
DEFS = @DEFS@ -I. -I$(srcdir) -I..
CPPFLAGS = @CPPFLAGS@
LDFLAGS = @LDFLAGS@
LIBS = @LIBS@
libinst_string_la_LDFLAGS =
libinst_string_la_LIBADD =
libinst_string_la_SOURCES = libinst-string.la.c
libinst_string_la_OBJECTS = libinst-string.la.lo
libinst_wstring_la_LDFLAGS =
libinst_wstring_la_LIBADD =
libinst_wstring_la_OBJECTS = wstring-inst.lo
libstdc___la_OBJECTS = limitsMEMBERS.lo cmath.lo complex.lo complexf.lo \
complexl.lo complex_io.lo stdexcept.lo c++io.lo ios.lo stdstreams.lo \
strstream.lo locale.lo localename.lo codecvt.lo locale-inst.lo \
stl-inst.lo misc-inst.lo valarray-inst.lo string-inst.lo
CXXFLAGS = @CXXFLAGS@
CXXLD = $(CXX)
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = gtar
GZIP_ENV = --best
SOURCES = libinst-string.la.c $(libinst_wstring_la_SOURCES) $(libstdc___la_SOURCES)
OBJECTS = libinst-string.la.lo $(libinst_wstring_la_OBJECTS) $(libstdc___la_OBJECTS)
all: all-redirect
.SUFFIXES:
.SUFFIXES: .S .c .cc .lo .o .obj .s
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOMAKE) --cygnus src/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
mostlyclean-toolexeclibLTLIBRARIES:
clean-toolexeclibLTLIBRARIES:
-test -z "$(toolexeclib_LTLIBRARIES)" || rm -f $(toolexeclib_LTLIBRARIES)
distclean-toolexeclibLTLIBRARIES:
maintainer-clean-toolexeclibLTLIBRARIES:
install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)
@list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
if test -f $$p; then \
echo "$(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(toolexeclibdir)/$$p"; \
$(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(toolexeclibdir)/$$p; \
else :; fi; \
done
uninstall-toolexeclibLTLIBRARIES:
@$(NORMAL_UNINSTALL)
list='$(toolexeclib_LTLIBRARIES)'; for p in $$list; do \
$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(toolexeclibdir)/$$p; \
done
.c.o:
$(COMPILE) -c $<
# FIXME: We should only use cygpath when building on Windows,
# and only if it is available.
.c.obj:
$(COMPILE) -c `cygpath -w $<`
.s.o:
$(COMPILE) -c $<
.S.o:
$(COMPILE) -c $<
mostlyclean-compile:
-rm -f *.o core *.core
-rm -f *.$(OBJEXT)
clean-compile:
distclean-compile:
-rm -f *.tab.c
maintainer-clean-compile:
.c.lo:
$(LIBTOOL) --mode=compile $(COMPILE) -c $<
.s.lo:
$(LIBTOOL) --mode=compile $(COMPILE) -c $<
.S.lo:
$(LIBTOOL) --mode=compile $(COMPILE) -c $<
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
distclean-libtool:
maintainer-clean-libtool:
libinst-string.la: $(libinst_string_la_OBJECTS) $(libinst_string_la_DEPENDENCIES)
$(LINK) $(libinst_string_la_LDFLAGS) $(libinst_string_la_OBJECTS) $(libinst_string_la_LIBADD) $(LIBS)
libinst-wstring.la: $(libinst_wstring_la_OBJECTS) $(libinst_wstring_la_DEPENDENCIES)
$(CXXLINK) $(libinst_wstring_la_LDFLAGS) $(libinst_wstring_la_OBJECTS) $(libinst_wstring_la_LIBADD) $(LIBS)
libstdc++.la: $(libstdc___la_OBJECTS) $(libstdc___la_DEPENDENCIES)
$(CXXLINK) -rpath $(toolexeclibdir) $(libstdc___la_LDFLAGS) $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) $(LIBS)
.cc.o:
$(CXXCOMPILE) -c $<
.cc.obj:
$(CXXCOMPILE) -c `cygpath -w $<`
.cc.lo:
$(LTCXXCOMPILE) -c $<
tags: TAGS
ID: $(HEADERS) $(SOURCES) $(LISP)
list='$(SOURCES) $(HEADERS)'; \
unique=`for i in $$list; do echo $$i; done | \
awk ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
here=`pwd` && cd $(srcdir) \
&& mkid -f$$here/ID $$unique $(LISP)
mostlyclean-tags:
clean-tags:
distclean-tags:
-rm -f TAGS ID
maintainer-clean-tags:
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
subdir = src
distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
if test -f $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
cp -pr $$d/$$file $(distdir)/$$file; \
else \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file || :; \
fi; \
done
info-am:
info: info-am
dvi-am:
dvi: dvi-am
check-am:
check: check-am
installcheck-am:
installcheck: installcheck-am
install-info-am:
install-info: install-info-am
install-exec-am: install-toolexeclibLTLIBRARIES
install-exec: install-exec-am
install-data-am:
install-data: install-data-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-am
uninstall-am: uninstall-toolexeclibLTLIBRARIES
uninstall: uninstall-am
all-am: Makefile $(LTLIBRARIES)
all-redirect: all-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
installdirs:
$(mkinstalldirs) $(DESTDIR)$(toolexeclibdir)
mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
maintainer-clean-generic:
mostlyclean-am: mostlyclean-toolexeclibLTLIBRARIES mostlyclean-compile \
mostlyclean-libtool mostlyclean-tags \
mostlyclean-generic
mostlyclean: mostlyclean-am
clean-am: clean-toolexeclibLTLIBRARIES clean-compile clean-libtool \
clean-tags clean-generic mostlyclean-am
clean: clean-am
distclean-am: distclean-toolexeclibLTLIBRARIES distclean-compile \
distclean-libtool distclean-tags distclean-generic \
clean-am
-rm -f libtool
distclean: distclean-am
maintainer-clean-am: maintainer-clean-toolexeclibLTLIBRARIES \
maintainer-clean-compile maintainer-clean-libtool \
maintainer-clean-tags maintainer-clean-generic \
distclean-am
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
maintainer-clean: maintainer-clean-am
.PHONY: mostlyclean-toolexeclibLTLIBRARIES \
distclean-toolexeclibLTLIBRARIES clean-toolexeclibLTLIBRARIES \
maintainer-clean-toolexeclibLTLIBRARIES \
uninstall-toolexeclibLTLIBRARIES install-toolexeclibLTLIBRARIES \
mostlyclean-compile distclean-compile clean-compile \
maintainer-clean-compile mostlyclean-libtool distclean-libtool \
clean-libtool maintainer-clean-libtool tags mostlyclean-tags \
distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
dvi-am dvi check check-am installcheck-am installcheck install-info-am \
install-info install-exec-am install-exec install-data-am install-data \
install-am install uninstall-am uninstall all-redirect all-am all \
installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
# Specify that all *.o's depend on this.
$(libstdc___la_OBJECTS): $(CSHADOW_H)
$(top_builddir)/stamp-cshadow: $(top_srcdir)/mkinclosure \
$(top_srcdir)/mkcshadow
$(top_srcdir)/mkinclosure \
[multiple changes] 2000-10-02 Steven King <sxking@uswest.net> * mkcshadow: Fixed script to output proper include guard. * bits/char_traits.h: Cleaned up types in char_traits<char> functions. * libio/_G_config.h: Hacked to make work with shadow heraders. * shadow/*: Hacked to make shadow headers work. 2000-10-02 Benjamin Kosnik <bkoz@purist.soma.redhat.com> Self-compile with shadow headers. * acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually, like _GLIBCPP_USE_NAMESPACES before it, this macro will die when it becomes the default way the library is built. * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro. * config/gnu-linux/bits/ctype_base.h (ctype_base): Use it. * config/gnu-linux/ctype.cc (ctype): Use it. * src/localename.cc (locale::_Impl::_M_replace_categories): Remove call to assert. * src/locale.cc: Explicitly cast mbstate_t to void* in calls to memset. This should not be necessary, but an ambiguous overload with it in. * shadow/bits/std_cwchar.h: Fix. * shadow/wchar.h: Fix. * config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype enums into namespace std:: for ctype_base enum. Other OS types will have to do this as well. * config/gnu-linux/ctype.cc (ctype): Inject ctype data into namespace std, in particular __ctype_toupper, __ctype_tolower, __ctype_b. * shadow/iolibio.h: New file. * shadow/bits/wrap_iolibio.h: New file. * shadow/libioP.h: New file. * shadow/bits/wrap_libioP.h: New file. * shadow/bits/wrap_fcntl.h: New file. * shadow/fcntl.h: New file. * shadow/iconv.h: New file. Inject iconv names into the global namespace, unmangled for the moment. * shadow/bits/wrap_iconv.h: New file. * shadow/unistd.h: Remove. Useless. * shadow/bits/wrap_unistd.h: Remove. * src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h. * src/Makefile.in: Regenerate. * config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl. * shadow/libio.h: Fix. * shadow/bits/wrap_libio.h: Fix. * shadow/bits/std_clocale.h: Remove typedef struct construct, which will not compile. * shadow/bits/std_ctime.h: Same. * shadow/pthread.h: New file. Put pthreads types and functions into global scope, which is probably not the correct long-term solution but has to be done at the moment before libio wrappers can even be started. * shadow/bits/wrap_pthread.h: New file. * bits/std_ios.h: Formatting tweak. * shadow/bits/std_cstdio.h: Format. Remove extraneous bits. * acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to tests for compiler features. * aclocal.m4: Regenerate. * configure: Regenerate. * config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET redefined. * libio/libioP.h: Comment out fcntl.h include. * shadow/math.h: Add in float and long declarations, as per ISO C9X. * bits/c++config: Define _ISOC99_SOURCE. * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to CSHADOWFLAGS, as well as _ISOC99_SOURCE. * aclocal.m4: Regenerate. * configure: Regenerate. * src/Makefile.am (CSHADOW_INCLUDES): Enable, again. (CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir. (CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before std or shadow directories. (LTCXXCOMPILE): Same. (INCLUDES): Add $(top_builddir) before $(top_srcdir). (AC_CXXFLAGS): Add CSHADOWFLAGS. * src/Makefile.in: Regenerate. * src/complex.cc (FCT): Change ::name to name. * src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here. * src/complexf.cc (FCT): Same. * src/complexf.cc: Remove FCT define, as things are properly overloaded in the std namespace with the shadow headers. * src/complexl.cc: Same. * src/complex.cc: Same. From-SVN: r36707
2000-10-04 07:06:32 +02:00
"-I $(top_builddir)/../../gcc/include -I /usr/include -G fcntl.h unistd.h" | $(top_srcdir)/mkcshadow;
rm -f $(top_builddir)/stamp-cshadow
echo "done" > $(top_builddir)/stamp-cshadow
install: myinstallheaders
# NB: As libio_headers may be empty, need this to make sure bash doesn't
# choke on an empty for... loop by using libio_headers_install
myinstallheaders: $(headers:%=$(myincludep)%)
if test -z "$(MULTISUBDIR)"; then \
for i in $(std_headers); do \
echo "$(INSTALL_DATA) $(glibcpp_includedir)/std/$$i $(myincludep)"; \
$(INSTALL_DATA) $(glibcpp_includedir)/std/$$i $(myincludep); \
done; \
for i in $(build_headers); do \
echo "$(INSTALL_DATA) $$i $(myincludep)bits/"; \
$(INSTALL_DATA) $$i $(myincludep)bits/; \
done; \
libio_headers_install='$(libio_headers)'; \
for i in $$libio_headers_install; do \
echo "$(INSTALL_DATA) $$i $(myincludep)"; \
$(INSTALL_DATA) $$i $(myincludep); \
done; \
fi;
$(headers:%=$(myincludep)%): $(myincludep)%: %
if test -z "$(MULTISUBDIR)"; then \
$(mkinstalldirs) $(@D); \
echo " $(INSTALL_DATA) $^ $@"; \
$(INSTALL_DATA) $^ $@; \
fi;
# All the (now removed) machinations with string instantiations messes up the
# automake-generated TAGS rule. Make a simple one here.
TAGS: $(build_headers) $(cpu_headers)
etags -C $(top_srcdir)/bits/*.h $(top_srcdir)/bits/*.tcc \
$(build_headers) $(libio_headers) \
$(top_srcdir)/src/*.cc \
$(top_builddir)/src/limitsMEMBERS.cc $(top_builddir)/src/c++io.cc \
-o $(top_builddir)/TAGS
# We have to handle misc-inst.cc and locale-inst.cc in a special way
# since we cannot instantiate all classes due to missing definitions
# for things like vptrs, type_info bits, etc. when using
# -fno-implicit-templates.
misc-inst.o: misc-inst.cc
$(CXXCOMPILE) -fimplicit-templates -c $<
misc-inst.lo: misc-inst.cc
$(LTCXXCOMPILE) -fimplicit-templates -c $<
locale-inst.o: locale-inst.cc
$(CXXCOMPILE) -fimplicit-templates -c $<
locale-inst.lo: locale-inst.cc
$(LTCXXCOMPILE) -fimplicit-templates -c $<
# We have to instantiate wstring bits too. . .
wstring-inst.o: string-inst.cc
$(CXXCOMPILE) -fimplicit-templates -c -DC=wchar_t $< -o $@
wstring-inst.lo: string-inst.cc
$(LTCXXCOMPILE) -fimplicit-templates -c -DC=wchar_t $< -o $@
# Alexandre put this in here for some libtool-related reason.
all: libstdc++.INC
libstdc++.INC: Makefile
$(MAKE) \
top_builddir=`CDPATH=:. && cd $(top_builddir) && pwd` \
top_srcdir=`CDPATH=:. && cd $(top_srcdir) && pwd` \
tmp-$@
-rm -f $@
mv tmp-$@ $@
tmp-libstdc++.INC: Makefile
echo -I$(top_builddir) $(INCLUDES) > $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: