# This file was generated automatically by configure.  Do not edit.
VPATH = ../../../libgpp
links = 
host_alias = i386-pc-msdosdjgpp
host_cpu = i386
host_vendor = pc
host_os = msdosdjgpp
host_canonical = i386-pc-msdosdjgpp
target_alias = i386-pc-msdosdjgpp
target_cpu = i386
target_vendor = pc
target_os = msdosdjgpp
target_canonical = i386-pc-msdosdjgpp
build_alias = i386-pc-msdosdjgpp
build_cpu = i386
build_vendor = pc
build_os = msdosdjgpp
build_canonical = i386-pc-msdosdjgpp
package_makefile_frag = Make.pack
target_makefile_frag = target-mkfrag
gxx_include_dir = ${prefix}/include/g++
enable_shared = no
# Makefile for GNU C++ class library (libg++)
#   Copyright (C) 1989, 1992, 1993 Free Software Foundation, Inc.
#   written by Doug Lea (dl@rocky.oswego.edu)

#This file is part of GNU libg++.

#GNU libg++ 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 1, or (at your option)
#any later version.

#GNU libg++ is distributed in the hope that it will be useful,
#but WITHOUT ANY WARRANTY; without even the implied warranty of
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#GNU General Public License for more details.

#You should have received a copy of the GNU General Public License
#along with GNU libg++; see the file COPYING.  If not, write to the Free
#Software Foundation, 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

srcdir = ../../../libgpp

# We specify exactly what we want to pass down; don't let GNU make
# 3.63 overload the command line.
MAKEOVERRIDES=

###**######################################################################
#
# Directories, paths, compilation flags and program names.
#
# If a macro needs to have a different value, then change it in the
# site/architecture specific makefile in the directory config !
#
# This file contains the documentation for the macros and possible values.
# Don't remove them even, if they are only comments !

VERSION = 2.8.1.1
LIBG++_DIST_VERSION = 2.8.1.1

# ------- System-dependent defines

# g++ so specific flags
OSFLAG=

# ld or ld++ os specific libraries
#OSLIBS =

# Comment out the next line to disable incremental linking test
# (this test NOT included in 1.39.0, so don't re-enable) ??? H.S.
#TEST0=test0
#TEST0=

# targets for test-install
TEST_INSTALL 		= test-90S-then-clean # test-90D-then-clean
VERIFY_GXX_INSTALLATION = foo_main # dfoo_main


# You can override gperf to not build it at all
GPERF = gperf
NON_IO_SUBDIRS	=  genclass src $(GPERF) utils tests etc test-install
SUBDIRS = genclass no-stream src tests gperf utils etc test-install
ALL_SUBDIRS = $(NON_IO_SUBDIRS) old-stream no-stream

UTILS   =  # utils

# C++ compiler to use when testing that installation has succeeded.
INSTALLED_CXX=$(bindir)/gcc

ARLIB   = libgpp.a
SHLIB   = libg++.so.$(VERSION)
SHARLIB = libg++-sh.a
SHLINK  = libg++.so
MSHLINK = libg++.so.`echo $(VERSION) | sed 's/\([0-9][.][0-9]\).*/\1/'`
SHFLAGS =
SHDEPS  = -L../libstdcxx -lstdcxx -lm

BUILD_LIBS = $(ARLIB)

RX_OBJ  = ../librx/rx.o
RX_H=rx.h
_G_CONFIG_H=../../libio/_G_config.h

#### package, host, target, and site dependent Makefile fragments come in here.
# Start of package fragment generated by ../../../libgpp/config.shared.

MULTISRCTOP = 
MULTIBUILDTOP = 
MULTIDIRS = 
MULTISUBDIR = 
MULTIDO = $(MAKE)
MULTICLEAN = $(MAKE)

# TOPDIR=$${rootme}$(MULTIBUILDTOP)../../ invsubdir= subdir=
srcdir = ../../../libgpp
SUBDIRS = genclass no-stream src tests gperf utils etc test-install
CHECK_SUBDIRS = genclass no-stream src tests gperf utils etc test-install
prefix = /usr/local
exec_prefix = $(prefix)
bindir = $(exec_prefix)/bin
libdir = $(exec_prefix)/lib
datadir = $(prefix)/lib
mandir = $(prefix)/man
man1dir = $(mandir)/man1
man2dir = $(mandir)/man2
man3dir = $(mandir)/man3
man4dir = $(mandir)/man4
man5dir = $(mandir)/man5
man6dir = $(mandir)/man6
man7dir = $(mandir)/man7
man8dir = $(mandir)/man8
man9dir = $(mandir)/man9
infodir = $(prefix)/info
includedir = $(prefix)/include
docdir = $(datadir)/doc

SHELL = bash

INSTALL = $${rootme}$(srcdir)/../install-sh -c
INSTALL_PROGRAM = $(INSTALL)
INSTALL_DATA = $(INSTALL)

AR = `if [ -f $${rootme}$(MULTIBUILDTOP)../../binutils/ar ] ; \
	then echo $${rootme}$(MULTIBUILDTOP)../../binutils/ar ; \
	else echo ar ; fi`
AR_FLAGS = rc
RANLIB = `if [ -f $${rootme}$(MULTIBUILDTOP)../../binutils/ranlib ] ; \
	then echo $${rootme}$(MULTIBUILDTOP)../../binutils/ranlib ; \
	else echo ranlib ; fi`
NM = `if [ -f $${rootme}$(MULTIBUILDTOP)../../binutils/nm.new ] ; \
	then echo $${rootme}$(MULTIBUILDTOP)../../binutils/nm.new ; \
	else echo nm ; fi`
NLMCONV = `if [ -f $${rootme}$(MULTIBUILDTOP)../../binutils/nlmconv ] ; \
	then echo $${rootme}$(MULTIBUILDTOP)../../binutils/nlmconv ; \
	else echo nlmconv ; fi`
LD = `if [ -f $${rootme}$(MULTIBUILDTOP)../../ld/ld.new ] ; \
	then echo $${rootme}$(MULTIBUILDTOP)../../ld/ld.new ; \
	else echo ld ; fi`

MAKEINFO = `if [ -f $${rootme}$(MULTIBUILDTOP)../../texinfo/C/makeinfo ] ; \
	then echo $${rootme}$(MULTIBUILDTOP)../../texinfo/C/makeinfo ; \
	else echo makeinfo ; fi`
TEXIDIR = $(srcdir)/../texinfo
TEXI2DVI = TEXINPUTS=${TEXIDIR}:$$TEXINPUTS texi2dvi

CC = gcc
CXX = gcc

WRAP_C_INCLUDES =
CFLAGS = -g
CXXFLAGS = -g -O2
LIBCFLAGS = $(CFLAGS)
LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
PICDIR = 
TOLIBGXX = 
PROTODIR = $(srcdir)/src/gen
LIBS = -L./ -L./../libstdcxx -lgpp -lstdcxx
IO_DIR = ../libio
# IO_DIR = no-stream
# End of package fragment generated by ../../../libgpp/config.shared.
# Warning this fragment is automatically generated
RANLIB = ranlib

# If the C include files are C++-ready (with extern "C"), uncomment next line:
# WRAP_C_INCLUDES =

# Flags to pass to gen-params when building _G_config.h.
# For example: G_CONFIG_ARGS = size_t="unsigned long"
G_CONFIG_ARGS =
# Start of package rules fragment generated by ../../../libgpp/config.shared.

all: $(PICDIR) libs rest-in-parallel multi-all
	@rootme=`pwd`/; export rootme; \
	$(MAKE) "DODIRS=$(SUBDIRS)" DO=all $(FLAGS_TO_PASS) subdir_do
.PHONY: all

.PHONY: multi-all
multi-all:
	@$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=all


.PHONY: subdir_do
subdir_do: force
	@rootme=`pwd`/; export rootme; \
	for i in $(DODIRS); do \
		if [ -f  ./$$i/Makefile ] ; then \
			echo "cd $$i; make $(DO) ..." ; \
			(cd $$i ; $(MAKE) $(FLAGS_TO_PASS) $(DO)) || exit 1 ; \
		else true ; fi ; \
	done

# List of variables to pass to sub-makes.  This should not be needed
# by GNU make or Sun make (both of which pass command-line variable
# overrides thouh $(MAKE)) but may be needed by older versions.

FLAGS_TO_PASS= \
	"SHELL=$(SHELL)" \
	"INSTALL=$(INSTALL)" \
	"INSTALL_DATA=$(INSTALL_DATA)" \
	"INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
	"prefix=$(prefix)" \
	"exec_prefix=$(exec_prefix)" \
	"tooldir=$(tooldir)" \
	"gxx_include_dir=$(gxx_include_dir)" \
	"AR=$(AR)" \
	"AR_FLAGS=$(AR_FLAGS)" \
	"CC=$(CC)" \
	"CXX=$(CXX)" \
	"CFLAGS=$(CFLAGS)" \
	"CXXFLAGS=$(CXXFLAGS)" \
	"NM=$(NM)" \
	"RANLIB=$(RANLIB)" \
	"LIBCFLAGS=$(LIBCFLAGS)" \
	"LIBCXXFLAGS=$(LIBCXXFLAGS)" \
	"LOADLIBES=$(LOADLIBES)" \
	"LDFLAGS=$(LDFLAGS)" \
	"MAKEINFO=$(MAKEINFO)" \
	"SHLIB=$(SHLIB)" \
	"SHCURSES=$(SHCURSES)" \
	"RUNTESTFLAGS=$(RUNTESTFLAGS)"
NOSTDINC = -nostdinc++
CXXINCLUDES = $(NOSTDINC) -I. -I../libio -I$(srcdir) -I$(srcdir)/$(IO_DIR) -I$(srcdir)/../libstdcxx -I$(srcdir)/src $(WRAP_C_INCLUDES)
CINCLUDES =
XCFLAGS = $(CFLAGS)
XCXXFLAGS = $(CXXFLAGS)
.SUFFIXES: .o .C .cc .c
COMPILE.c = $(CC) -c $(XCFLAGS) $(CINCLUDES) $(MT_CFLAGS)
.c.o:
	$(COMPILE.c) $<
COMPILE.cc = $(CXX) -c $(XCXXFLAGS) $(CXXINCLUDES) $(MT_CFLAGS)
.C.o:
	$(COMPILE.cc) $<
.cc.o:
	$(COMPILE.cc) $<


.PHONY: install
install:
.PHONY: check
check: $(PICDIR) libs rest-in-parallel 
	rootme=`pwd`/; export rootme; \
	SAVE_LLPATH="$${SAVE_LLPATH-$$LD_LIBRARY_PATH}"; export SAVE_LLPATH; \
	LD_LIBRARY_PATH="$${rootme}${TOLIBGXX}../libstdcxx:$${rootme}${TOLIBGXX}../libg++:$$SAVE_LLPATH"; \
	export LD_LIBRARY_PATH; \
	$(MAKE) "DODIRS=$(CHECK_SUBDIRS)" DO=check $(FLAGS_TO_PASS) subdir_do
.PHONY: info dvi install-info clean-info
info: libgpp.info
	@rootme=`pwd`/; export rootme; \
	$(MAKE) "DODIRS=$(SUBDIRS)" DO=info $(FLAGS_TO_PASS) subdir_do
dvi: libgpp.dvi
	@rootme=`pwd`/; export rootme; \
	$(MAKE) "DODIRS=$(SUBDIRS)" DO=dvi $(FLAGS_TO_PASS) subdir_do
libgpp.info: $(srcdir)/libgpp.texi
	$(MAKEINFO) -I$(srcdir) -I$(TEXIDIR) $(srcdir)/libgpp.texi -o libgpp.info
libgpp.dvi: $(srcdir)/libgpp.texi
	$(TEXI2DVI) $(srcdir)/libgpp.texi
libgpp.ps: libgpp.dvi
	dvips libgpp -o
install-info:
	-parent=`echo $(infodir)|sed -e 's@/[^/]*$$@@'`; \
	if [ -d $$parent ] ; then true ; else mkdir $$parent ; fi
	-if [ -d $(infodir) ] ; then true ; else mkdir $(infodir) ; fi
	for i in *.info* ; do \
	  $(INSTALL_DATA) $$i $(infodir)/$$i ; \
	done
	@rootme=`pwd`/; export rootme; \
	$(MAKE) "DODIRS=$(SUBDIRS)" DO=install-info $(FLAGS_TO_PASS) subdir_do
.PHONY: do-clean-info clean-info do-clean-dvi clean-dvi
do-clean-info:
	rm -f *.info*
do-clean-dvi:
	rm -f *.dvi *.aux *.cp *.cps *.fn* *.ky *.log *.pg *.toc *.tp *.vr
clean-info: do-clean-info
	@rootme=`pwd`/; export rootme; \
	$(MAKE) "DODIRS=" DO=clean-info $(FLAGS_TO_PASS) subdir_do
clean-dvi: do-clean-dvi
	@rootme=`pwd`/; export rootme; \
	$(MAKE) "DODIRS=" DO=clean-dvi $(FLAGS_TO_PASS) subdir_do

.PHONY: boltcc
boltcc:
	rootme=`pwd`/ ; export rootme ; $(MAKE) $(FLAGS_TO_PASS)


# clean rules
.PHONY: mostlyclean clean distclean maintainer-clean realclean
.PHONY: do-clean subdir_distclean subdir_maintainer_clean
mostlyclean: do-clean-dvi
	rm -rf *.o pic stamp-picdir piclist core \#* temp.c dummy.out dummy.[Cc] TMP a.out list 
	@$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=mostlyclean subdir_do
	@$(MULTICLEAN) multi-clean DO=mostlyclean
do-clean: do-clean-dvi
	rm -rf *.o pic stamp-picdir piclist core \#* temp.c dummy.out dummy.[Cc] TMP a.out list  .stmp-* _G_config.h $(BUILD_LIBS)
clean: do-clean
	@$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=clean subdir_do
	@$(MULTICLEAN) multi-clean DO=clean
subdir_distclean:
	@$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=distclean subdir_do
distclean: do-clean subdir_distclean
	@$(MULTICLEAN) multi-clean DO=distclean
	rm -rf config.status Makefile target-mkfrag multilib.out
subdir_maintainer_clean:
	@$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=maintainer-clean subdir_do
maintainer-clean realclean: do-clean subdir_maintainer_clean do-clean-info
	@$(MULTICLEAN) multi-clean DO=maintainer-clean
	rm -rf config.status Makefile target-mkfrag multilib.out depend *.info*

.PHONY: force
force:

# with the gnu make, this is done automatically.

Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag)
	$(SHELL) ./config.status

.NOEXPORT:
MAKEOVERRIDES=
DEPEND_SOURCES = ${srcdir}/*.cc ${srcdir}/*.c
depend.new:
# The sed script below attempts to make the depend output portable.
# It cleans up the depenency information generated by cpp.
# It replaces instances of $(srcdir)/ by the string '$(srcdir)/'.
# It removes remaining absolute files names (such as /usr/include/stdio.h).
# It removes lines containing only "\\".
# It inserts '$(MULTISRCTOP)' in '$(srcdir)/..'.
# In order to support SunOS VPATH, $(srcdir)/[a-z]*.{c,cc} is replaced with
# [a-z]*.{c,cc} (the directory part is removed).
# The awk script removes a continuation marker that is followed by
# a blank line, since that may confuse make.
	echo "# AUTOMATICALLY GENERATED BY 'make depend' - DO NOT EDIT" \
	  >depend.new
	$(CXX) -M $(CXXINCLUDES) $(DEPEND_SOURCES) \
	| sed -e 's|$(srcdir)/|$$(srcdir)/|g' \
	      -e 's| [^ ]_G_config.h| $$(_G_CONFIG_H)|g \
	      -e 's| /[^ ]*||g' \
	      -e '/^[ 	]*\\$$/d' -e 's/^[ 	]*$$//' \
	| sed -e 's|$$(srcdir)/[.][.]|$$(srcdir)/$$(MULTISRCTOP)..|g' \
	      -e 's|$$(srcdir)/\([^/]*[.]c\)|\1|' \
	| awk 'BEGIN   { prev = "" } \
	      /^( )*$$/ { if (prev ~ /\\$$/) \
	                    { prev = substr(prev,1,length(prev)-1); next } } \
	                { print prev; prev = $$0 } \
	      END { if (prev !~ /^( )*$$/) print prev }' \
	>> depend.new
$(srcdir)/depend:  depend.new
	mv depend.new $(srcdir)/depend
# End of package rules fragment generated by ../../../libgpp/config.shared.
##

tooldir = $(exec_prefix)/i386-pc-msdosdjgpp
INSTALLDIR = $(libdir)

###**######################################################################
#
# compilation actions

.PHONY: rest-in-parallel
rest-in-parallel: stmp-genclass stmp-tests stmp-etc stmp-gperf stmp-utils

libs: $(BUILD_LIBS)

# FIXME: Need to multilib librx.
list: src/libgxx.list $(RX_OBJ)
	-rm -f tlist
	touch tlist
	for f in `cat src/libgxx.list`; do \
	  echo "src/$$f" >> tlist ; \
	done
	echo "$(RX_OBJ)" >> tlist
	mv tlist list

piclist: list
	-rm -f piclist
	if [ x"$(enable_shared)" = xyes ] || [ x"$(enable_shared)" = x -a x"$(PICFLAG)" != x ]; then \
	  sed 's,\([0-9A-Za-z_]*\.o\),pic/\1,g' list > piclist ; \
	else \
	  cp list piclist; \
	fi

$(ARLIB): list
	-rm -f t$(ARLIB)
	$(AR) $(AR_FLAGS) t$(ARLIB) `cat list`
	mv t$(ARLIB) $(ARLIB)
	$(RANLIB) $(ARLIB)

$(SHLIB): piclist ../libstdc++/piclist
	$(CC) $(LIBCXXFLAGS) $(SHFLAGS) -shared -o $(SHLIB) `cat piclist` $(SHDEPS)

$(SHARLIB): $(SHLIB)
	-rm -f t$(SHARLIB)
	$(AR) $(AR_FLAGS) t$(SHARLIB) $(SHLIB)
	mv t$(SHARLIB) $(SHARLIB)
	$(RANLIB) $(SHARLIB)

$(SHLINK):
	ln -s -f $(SHLIB) $(SHLINK)

mshlink:
	@$(MAKE) $(MSHLINK) "SHLINK=$(MSHLINK)"

src/libgxx.list: force
	@rootme=`pwd`/ ; export rootme ; cd src ; \
		$(MAKE) $(FLAGS_TO_PASS) libgxx.list

../librx/rx.o: $(srcdir)/../librx/rx.c
	rootme=`pwd`/ ; export rootme ; cd ../librx; \
		$(MAKE) $(FLAGS_TO_PASS) rx.o

.PHONY: installcheck
installcheck: check

stmp-genclass: $(BUILD_LIBS)
	@rootme=`pwd`/ ; export rootme ; cd genclass ; \
	  $(MAKE) $(FLAGS_TO_PASS) "gxx_include_dir=$(gxx_include_dir)"
	touch $@

stmp-tests: $(BUILD_LIBS)
	@if [ -f tests/Makefile ]; then \
	   rootme=`pwd`/ ; export rootme ; cd tests ; \
	      $(MAKE) $(FLAGS_TO_PASS); \
	 else true; fi
	touch $@

stmp-etc: $(BUILD_LIBS)
	@rootme=`pwd`/ ; export rootme ; cd etc ; \
	  $(MAKE) $(FLAGS_TO_PASS)
	touch $@

stmp-gperf: $(BUILD_LIBS)
	@if [ "x$(GPERF)" != "x" ]; then \
	   rootme=`pwd`/ ; export rootme ; cd $(GPERF) ; \
	      $(MAKE) $(FLAGS_TO_PASS); \
	 else true; fi
	touch $@

stmp-utils: $(BUILD_LIBS)
	@if [ "x$(UTILS)" != "x" ]; then \
	   rootme=`pwd`/ ; export rootme ; cd $(UTILS) ; \
	     $(MAKE) $(FLAGS_TO_PASS); \
	 else true; fi
	touch $@

#
#
# Installation
#

.PHONY: install
install:
	@if [ -f $(gxx_include_dir)/unistd.h ] ; then echo; \
	  echo '*** You seem to have files in $(gxx_include_dir)'; \
	  echo '*** left over from an old release of libg++.  These must be removed.'; \
	  echo '*** Please see $(srcdir)/README for more information.'; \
	  echo; \
	else \
	  true; \
	fi
	rootme=`pwd`/ ; export rootme ; \
	for FILE in $(BUILD_LIBS) ; do \
	  rm -f $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
	  if [ $$FILE = $(SHLINK) ]; then \
	    ln -s -f $(SHLIB) $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
	  elif [ $$FILE = mshlink ]; then \
	    for FILE in $(MSHLINK) ; do \
	      rm -f $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
	      ln -s -f $(SHLIB) $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
	    done; \
	  elif [ $$FILE = $(SHLIB) ]; then \
	    $(INSTALL_PROGRAM) $$FILE $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
	    : On the HP, shared libraries must be mode 555. ;\
	    chmod 555 $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
	  else \
	    $(INSTALL_DATA) $$FILE $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
	    $(RANLIB) $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
	    chmod a-x $(INSTALLDIR)$(MULTISUBDIR)/$$FILE ; \
	  fi ; \
	done
	@for D in src genclass $(UTILS) ; do \
		if [ -d $$D ] ; then \
			(rootme=`pwd`/ ; export rootme ; cd $$D;\
			  $(MAKE) $(FLAGS_TO_PASS) "gxx_include_dir=$(gxx_include_dir)" install) ; \
		else true ; \
		fi ; \
	done
	if [ "x$(GPERF)" != "x" ]; then \
	  rootme=`pwd`/ ; export rootme ; cd gperf ;\
	    $(MAKE) $(FLAGS_TO_PASS) install; \
	else true; fi
	@rootme=`pwd`/ ; export rootme ; \
	$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install

installcheck:
	if [ "x$(TEST_INSTALL)" != "x" ]; then \
	  cd test-install; $(MAKE) $(TEST_INSTALL) \
	      CXX=$(INSTALLED_CXX) "CXXFLAGS=$(CXXFLAGS)" \
	      COMPILE_FLAGS="" LIBS=-lgpp; \
	else true; fi

DIST_NAME = libg++-$(LIBG++_DIST_VERSION)

$(DIST_NAME).tar.gz: dist

# Making a dist:
# cd {HERE}/..
# make -f Makefile.in libg++.tar.gz

diststuff: info gxxFAQ.txt

force:
.PHONY: $(SUBDIRS) dist force

gxxFAQ.info:	gxxFAQ.texi
	makeinfo --no-split gxxFAQ.texi

# Preprocess the texi file so that the final document will have
# hyperlinks.
# It would be nice if texi2html could do something like this itself.

# Assumption 1: the FAQ puts all http: and ftp: links in a @file{...}.
# Assumption 2: newsgroups are like @file{comp.foo}
# Assumption 3: email addresses match the regexp shown.

gxxFAQ.html:	gxxFAQ.texi
	mkdir work
	sed -e 's?@file{\([fth]*p://[^}]*\)}?@strong{<A HREF="\1">\1</A>}?' \
	    -e 's?@file{\(comp\.[-a-z+.]*\)}?<A HREF="news:\1">\1</A>?' \
	    -e 's?@file{\(gnu\.[-a-z+.]*\)}?<A HREF="news:\1">\1</A>?' \
	    -e 's?\([.+a-zA-Z0-9-]*@@[.a-zA-Z0-9-]*[a-zA-Z0-9]\)?<A HREF="mailto:\1">\1</A>?' \
	    gxxFAQ.texi > work/gxxFAQ.texi
	cd work; texi2html gxxFAQ.texi
	mv work/*.html .
	rm -r work

  # Make plain-text form.
  
gxxFAQ.txt:	gxxFAQ.texi
	makeinfo --no-split --no-headers -o - gxxFAQ.texi |\
		sed '/^Concept Index/,$$d' > gxxFAQ.txt


# Make
# FIXME: There should be an @-sign in front of the `if'.
# Leave out until this is tested a bit more.
multi-do:
	if [ -z "$(MULTIDIRS)" ]; then \
	  true; \
	else \
	  rootpre=`pwd`/; export rootpre; \
	  srcrootpre=`cd $(srcdir); pwd`/; export srcrootpre; \
	  lib=`echo $${rootpre} | sed -e 's,^.*/\([^/][^/]*\)/$$,\1,'`; \
	  compiler="$(CC)"; \
	  for i in `$${compiler} --print-multi-lib 2>/dev/null`; do \
	    dir=`echo $$i | sed -e 's/;.*$$//'`; \
	    if [ "$${dir}" = "." ]; then \
	      true; \
	    else \
	      if [ -d ../$${dir}/$${lib} ]; then \
		flags=`echo $$i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; \
		if (cd ../$${dir}/$${lib}; $(MAKE) $(FLAGS_TO_PASS) \
				CFLAGS="$(CFLAGS) $${flags}" \
				CXXFLAGS="$(CXXFLAGS) $${flags}" \
				LIBCFLAGS="$(LIBCFLAGS) $${flags}" \
				LIBCXXFLAGS="$(LIBCXXFLAGS) $${flags}" \
				$(DO)); then \
		  true; \
		else \
		  exit 1; \
		fi; \
	      else true; \
	      fi; \
	    fi; \
	  done; \
	fi

# FIXME: There should be an @-sign in front of the `if'.
# Leave out until this is tested a bit more.
multi-clean:
	if [ -z "$(MULTIDIRS)" ]; then \
	  true; \
	else \
	  lib=`pwd | sed -e 's,^.*/\([^/][^/]*\)$$,\1,'`; \
	  for dir in Makefile $(MULTIDIRS); do \
	    if [ -f ../$${dir}/$${lib}/Makefile ]; then \
	      if (cd ../$${dir}/$${lib}; $(MAKE) $(FLAGS_TO_PASS) $(DO)); \
	      then true; \
	      else exit 1; \
	      fi; \
	    else true; \
	    fi; \
	  done; \
	fi
