# This file was generated automatically by configure.  Do not edit.
VPATH = ../../../../libio/tests
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
gxx_include_dir = ${prefix}/include/g++
enable_shared = no
# Copyright (C) 1993, 1998 Free Software Foundation
# 
# This file is part of the GNU IO 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)
# any later version.
# 
# This library 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 CC; see the file COPYING.  If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.

srcdir = ../../../../libio/tests

CFLAGS = -g
C_FLAGS = $(CFLAGS) -I. -I.. -I$(srcdir) -I$(srcdir)/..
CXXFLAGS = -g -O2
CC = gcc
CXX = gcc

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

MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
MULTISUBDIR =
MULTIDO = true
MULTICLEAN = true

# TOPDIR=$${rootme}$(MULTIBUILDTOP)../../../ invsubdir= subdir=
srcdir = ../../../../libio/tests
SUBDIRS = 
CHECK_SUBDIRS = 
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 = 
# End of package fragment generated by ../../../../libio/tests/config.shared.
CHECK = check-iostream check-iostdio
# Start of package rules fragment generated by ../../../../libio/tests/config.shared.

all: $(PICDIR)   multi-all
.PHONY: all

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


NOSTDINC = -nostdinc++
CXXINCLUDES = -I. -I.. -I$(srcdir) -I$(srcdir)/.. $(NOSTDINC)
CINCLUDES = -I. -I.. -I$(srcdir) -I$(srcdir)/..
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)   
.PHONY: info dvi install-info clean-info
info:
dvi:
install-info:
.PHONY: do-clean-info clean-info do-clean-dvi clean-dvi
do-clean-info:
do-clean-dvi:
clean-info: do-clean-info
clean-dvi: do-clean-dvi

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


# clean rules
.PHONY: mostlyclean clean distclean maintainer-clean realclean
mostlyclean: clean-dvi
	rm -rf *.o core $(JUNK_TO_CLEAN) 
	@$(MULTICLEAN) multi-clean DO=mostlyclean
clean: clean-dvi
	rm -rf *.o core $(JUNK_TO_CLEAN)   
	@$(MULTICLEAN) multi-clean DO=clean
distclean: clean
	@$(MULTICLEAN) multi-clean DO=distclean
	rm -rf config.status Makefile *~ Make.pack target-mkfrag multilib.out 
maintainer-clean realclean: clean clean-info
	@$(MULTICLEAN) multi-clean DO=maintainer-clean
	rm -rf config.status Makefile *~ Make.pack 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 ../../../../libio/tests/config.shared.
##

STDIO_LD_FLAGS = -u __cleanup

#LIBS = ../../libg++.a

#LIBSTDIO = ../stdio/libstdio++.a
#LIBIO = ../libio.a

#STDIOLIBS = $(STDIO_LD_FLAGS) $(LIBSTDIO) $(LIBIO) $(LIBS)
STDIOLIBS = $(LIBSTDIO) $(LIBIO) $(LIBS)
IOLIBS = -L../../libstdcxx -lstdcxx
IOSTDIOLIB = ../libio.a ../../libiberty/libiberty.a

DEPEND_SOURCES = $(srcdir)/*.C

.PHONY: check check-old check-iostream check-stdio
check: $(CHECK)


# These are tests written in C++, that test the iostream facility.
check-iostream: check-tFile check-tiomisc \
   check-hounddog check-putbackdog check-tiomanip

# These are tests written in C, that don't need C++.
# They test libio's emulation of stdio.
check-iostdio: check-tiformat check-tfformat check-tstdiomisc

# check-stdio runs test programs that use stdio.
# These aren't run by default because there may be linker tricks needed
# to build them (if libc.a contains a competing stdio implementation).

check-stdio: check-tfseek check-twrseek check-trdseek check-tpopen

# See ${MOSTLYCLEAN} in configure.in
JUNK_TO_CLEAN = tFile tiomisc hounddog putbackdog tiomanip \
   t?format *.out streamfile ftmp* tstdiomisc foo.dat

.PHONY: info
info:
.PHONY: clean-info
clean-info:
.PHONY: install-info
install-info:

tst: tst.o
	gcc -v -o tst tst.o $(STDIOLIBS)

tgetl: tgetl.o
	$(CXX) $(CXXFLAGS) -o tgetl tgetl.o $(IOLIBS)

tFile: tFile.o
	$(CXX) $(CXXFLAGS) -o tFile tFile.o $(IOLIBS)

tiomisc: tiomisc.o
	$(CXX) $(CXXFLAGS) -o tiomisc tiomisc.o $(IOLIBS)

hounddog: hounddog.o
	$(CXX) $(CXXFLAGS) -o hounddog hounddog.o $(IOLIBS)

check-hounddog: hounddog
	./hounddog <$(srcdir)/hounddog.inp > hounddog.out 2>&1
	diff -c hounddog.out $(srcdir)/hounddog.exp
	./hounddog -b0 <$(srcdir)/hounddog.inp > hound-b0.out 2>&1
	diff -c hound-b0.out $(srcdir)/hounddog.exp
	./hounddog -b2 <$(srcdir)/hounddog.inp > hound-b2.out 2>&1
	diff -c hound-b2.out $(srcdir)/hounddog.exp

putbackdog: putbackdog.o
	$(CXX) $(CXXFLAGS) -o putbackdog putbackdog.o $(IOLIBS)

check-putbackdog-regular: putbackdog
	./putbackdog <$(srcdir)/hounddog.inp > putback.out 2>&1
	diff -c putback.out $(srcdir)/hounddog.exp
check-putbackdog-nobuf: putbackdog
	./putbackdog -b0 <$(srcdir)/hounddog.inp > putback-b0.out 2>&1
	diff -c putback-b0.out $(srcdir)/hounddog.exp
check-putbackdog-buf2: putbackdog
	./putbackdog -b2 <$(srcdir)/hounddog.inp > putback-b2.out 2>&1
	diff -c putback-b2.out $(srcdir)/hounddog.exp
check-putbackdog: \
  check-putbackdog-regular check-putbackdog-nobuf check-putbackdog-buf2

tfseek: tfseek.o
	$(CC) $(CFLAGS) -o tfseek tfseek.o $(STDIOLIBS)

check-tfseek: tfseek
	./tfseek SEEK_SET fopen > tfseek-set-fopen.out 2>&1
	diff -c tfseek-set-fopen.out $(srcdir)/tfseek-set.exp
	./tfseek SEEK_SET freopen > tfseek-set-freopen.out 2>&1
	diff -c tfseek-set-freopen.out $(srcdir)/tfseek-set.exp
	./tfseek SEEK_CUR fopen > tfseek-cur-fopen.out 2>&1
	diff -c tfseek-cur-fopen.out $(srcdir)/tfseek-cur.exp
	./tfseek SEEK_CUR freopen > tfseek-cur-freopen.out 2>&1
	diff -c tfseek-cur-freopen.out $(srcdir)/tfseek-cur.exp

twrseek: twrseek.o
	$(CC) $(CFLAGS) -o twrseek twrseek.o $(STDIOLIBS)

check-twrseek: twrseek
	./twrseek > twrseek.out 2>&1
	diff -c twrseek.out $(srcdir)/twrseek.exp

trdseek: trdseek.o
	$(CC) $(CFLAGS) -o trdseek -v trdseek.o $(STDIOLIBS)

check-trdseek: trdseek
	./trdseek

check-tFile-regular: tFile
	./tFile < $(srcdir)/tFile.inp > tFile.out 2>&1
	diff -c tFile.out $(srcdir)/tFile.exp
# Run tFile with cout.rdbuf() unbuffered.
check-tFile-nobuf: tFile
	./tFile -b0 < $(srcdir)/tFile.inp > tFile-buf0.out 2>&1
	diff -c tFile-buf0.out $(srcdir)/tFile.exp
# Run tFile with a 3-byte buffer for cout.rdbuf().
check-tFile-buf3: tFile
	./tFile -b3 < $(srcdir)/tFile.inp > tFile-buf3.out 2>&1
	diff -c tFile-buf3.out $(srcdir)/tFile.exp
check-tFile: check-tFile-regular check-tFile-nobuf check-tFile-buf3

check-tiomisc: tiomisc
	./tiomisc >tiomisc.out 2>&1
	diff -c tiomisc.out $(srcdir)/tiomisc.exp

tiomanip: tiomanip.o
	$(CXX) $(CXXFLAGS) -o tiomanip tiomanip.o $(IOLIBS)
check-tiomanip: tiomanip
	./tiomanip >tiomanip.out 2>&1
	diff -c tiomanip.out $(srcdir)/tiomanip.exp

tfformat: $(srcdir)/tfformat.c
	$(CC) $(C_FLAGS) -DTEST_LIBIO -DTEST_EXACTNESS \
	  -o tfformat $(srcdir)/tfformat.c $(IOSTDIOLIB)

check-tfformat: tfformat
	./tfformat

tiformat: $(srcdir)/tiformat.c
	$(CC) $(C_FLAGS) -DTEST_LIBIO -o tiformat $(srcdir)/tiformat.c $(IOSTDIOLIB)

check-tiformat: tiformat
	./tiformat

tstdiomisc: tstdiomisc.o
	$(CC) $(CFLAGS) -o tstdiomisc tstdiomisc.o $(IOSTDIOLIB)

check-tstdiomisc: tstdiomisc
	./tstdiomisc >tstdiomisc.out 2>&1
	diff -c tstdiomisc.out $(srcdir)/tstdiomisc.exp

tpopen: tpopen.o
	$(CC) $(CFLAGS) -o tpopen tpopen.o $(STDIOLIBS)

check-tpopen: tpopen
	./tpopen > tpopen.out 2>&1
	diff -c tpopen.out $(srcdir)/tpopen.exp

trwseek: trwseek.o
	$(CC) $(CFLAGS) -o trwseek trwseek.o $(STDIOLIBS)

check-trwseek: trwseek
	./trwsseek  TMP r+ k w o

foo: foo.o
	$(CXX) $(CXXFLAGS) -o foo foo.o $(STDIOLIBS)
foo+: foo+.o
	$(CXX) $(CXXFLAGS) -o foo+ foo+.o $(IOLIBS)
