## Process this file with automake to generate Makefile.in AUTOMAKE_OPTIONS = cygnus dejagnu ACLOCAL_AMFLAGS = -I . -I .. # Multilib support variables. MULTISRCTOP = MULTIBUILDTOP = MULTIDIRS = MULTISUBDIR = MULTIDO = true MULTICLEAN = true LIBTOOL_VERSION_INFO = 0:0:0 # The newlib hardware floating-point routines have been disabled due to # inaccuracy. If you wish to work on them, you will need to edit the # configure.in file to re-enable the configuration option. By default, # the NEWLIB_HW_FP variable will always be false. if NEWLIB_HW_FP MATHDIR = mathfp else MATHDIR = math endif # Work around what appears to be a GNU make bug handling MAKEFLAGS # values defined in terms of make variables, as is the case for CC and # friends when we are called from the top level Makefile. AM_MAKEFLAGS = \ "AR_FLAGS=$(AR_FLAGS)" \ "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ "CFLAGS=$(CFLAGS)" \ "CCASFLAGS=$(CCASFLAGS)" \ "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ "INSTALL=$(INSTALL)" \ "LDFLAGS=$(LDFLAGS)" \ "LIBCFLAGS=$(LIBCFLAGS)" \ "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ "MAKE=$(MAKE)" \ "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ "PICFLAG=$(PICFLAG)" \ "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ "SHELL=$(SHELL)" \ "EXPECT=$(EXPECT)" \ "RUNTEST=$(RUNTEST)" \ "RUNTESTFLAGS=$(RUNTESTFLAGS)" \ "exec_prefix=$(exec_prefix)" \ "infodir=$(infodir)" \ "libdir=$(libdir)" \ "prefix=$(prefix)" \ "tooldir=$(tooldir)" \ "top_toollibdir=$(toollibdir)" \ "AR=$(AR)" \ "AS=$(AS)" \ "CC=$(CC_FOR_NEWLIB)" \ "LD=$(LD)" \ "LIBCFLAGS=$(LIBCFLAGS)" \ "NM=$(NM)" \ "PICFLAG=$(PICFLAG)" \ "RANLIB=$(RANLIB)" \ "DESTDIR=$(DESTDIR)" FLAGS_TO_PASS=$(AM_MAKEFLAGS) if HAVE_DOC DOCDIR = doc else DOCDIR = endif SUBDIRS = libc libm \ $(DOCDIR) . $(EXTRA_DIRS) tooldir = $(exec_prefix)/$(host_alias) toollibdir = $(tooldir)/lib$(MULTISUBDIR) AR_FLAGS = rc noinst_DATA = stmp-targ-include if USE_LIBTOOL toollib_LTLIBRARIES = libm.la \ libc.la else toollib_LIBRARIES = libm.a \ libc.a if HAVE_MULTISUBDIR BUILD_MULTISUBDIR = $(builddir)$(MULTISUBDIR) if HAVE_CRT0 noinst_DATA += $(BUILD_MULTISUBDIR)/$(CRT0) endif noinst_DATA += $(BUILD_MULTISUBDIR)/libc.a $(BUILD_MULTISUBDIR)/libm.a endif endif toollib_DATA = $(CRT0) $(CRT1) # The functions ldexp, frexp and modf are traditionally supplied in # both libc.a and libm.a. We build them in libm.a and copy them over, # along with some required supporting routines. MATHOBJS_IN_LIBC = \ $(lpfx)s_fpclassify.$(oext) $(lpfx)sf_fpclassify.$(oext) \ $(lpfx)s_isinf.$(oext) $(lpfx)sf_isinf.$(oext) \ $(lpfx)s_isnan.$(oext) $(lpfx)sf_isnan.$(oext) \ $(lpfx)s_isinfd.$(oext) $(lpfx)sf_isinff.$(oext) \ $(lpfx)s_isnand.$(oext) $(lpfx)sf_isnanf.$(oext) \ $(lpfx)s_nan.$(oext) $(lpfx)sf_nan.$(oext) \ $(lpfx)s_ldexp.$(oext) $(lpfx)sf_ldexp.$(oext) \ $(lpfx)s_frexp.$(oext) $(lpfx)sf_frexp.$(oext) \ $(lpfx)s_modf.$(oext) \ $(lpfx)sf_modf.$(oext) $(lpfx)s_scalbn.$(oext) \ $(lpfx)sf_scalbn.$(oext) \ $(lpfx)s_finite.$(oext) $(lpfx)sf_finite.$(oext) \ $(lpfx)s_copysign.$(oext) $(lpfx)sf_copysign.$(oext) LIBC_OBJECTLISTS = \ $(POSIX_OBJECTLIST) \ $(SIGNAL_OBJECTLIST) \ $(SYSCALL_OBJECTLIST) \ $(UNIX_OBJECTLIST) \ $(STDIO64_OBJECTLIST) \ libc/argz/objectlist.awk.in \ libc/stdlib/objectlist.awk.in \ libc/time/objectlist.awk.in \ libc/ctype/objectlist.awk.in \ libc/search/objectlist.awk.in \ libc/string/objectlist.awk.in \ libc/locale/objectlist.awk.in \ libc/misc/objectlist.awk.in \ libc/reent/objectlist.awk.in \ libc/errno/objectlist.awk.in \ libc/stdio/objectlist.awk.in \ $(MACHINE_OBJECTLIST) \ $(SYS_OBJECTLIST) \ $(SYS_MACH_OBJECTLIST) LIBM_OBJECTLISTS = \ libm/$(MATHDIR)/objectlist.awk.in \ libm/common/objectlist.awk.in \ $(LIBM_MACHINE_OBJECTLIST) libm_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -lgcc -objectlist libm-libtool-objectlist libc_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld -lgcc -objectlist libc-libtool-objectlist if USE_LIBTOOL libm_la_SOURCES = libm_la_DEPENDENCIES = libm-libtool-objectlist # objects listed later in LIBM_OBJECTLISTS will override those listed earlier libm-libtool-objectlist: $(LIBM_OBJECTLISTS) cat $(LIBM_OBJECTLISTS) | $(AWK) '{ libm[$$1] = $$2 }; END { for (x in libm) printf ("%s\n", libm[x]) }' > $@ libc_la_SOURCES = libc_la_DEPENDENCIES = libc-libtool-objectlist # objects listed later in LIBM_OBJECTLISTS and LIBC_OBJECTLISTS will override those listed earlier libc-libtool-objectlist: $(LIBM_OBJECTLISTS) $(LIBC_OBJECTLISTS) cat $(LIBM_OBJECTLISTS) $(LIBC_OBJECTLISTS) | $(AWK) '{ libc[$$1] = $$2 }; END { for (x in libc) printf ("%s\n", libc[x]) }' > $@ else libc.a: libc/libc.a libm.a rm -rf libc.a libg.a tmp mkdir tmp cd tmp; \ $(AR) x ../libm.a $(MATHOBJS_IN_LIBC) ; \ $(AR) x ../libc/libc.a ; \ $(AR) $(AR_FLAGS) ../$@ *.o $(RANLIB) libc.a ln libc.a libg.a >/dev/null 2>/dev/null || cp libc.a libg.a rm -rf tmp libc/libc.a: ; @true libm.a: libm/libm.a rm -f $@ ln $< $@ >/dev/null 2>/dev/null || cp $< $@ libm/libm.a: ; @true endif # USE_LIBTOOL if HAVE_MULTISUBDIR $(BUILD_MULTISUBDIR): $(MKDIR_P) $@ $(BUILD_MULTISUBDIR)/crt0.o: $(CRT0_DIR)$(CRT0) $(BUILD_MULTISUBDIR) rm -f $@ ln $< $@ >/dev/null 2>/dev/null || cp $< $@ $(BUILD_MULTISUBDIR)/libc.a: libc.a $(BUILD_MULTISUBDIR) rm -f $@ $(BUILD_MULTISUBDIR)/libg.a ln $< $@ >/dev/null 2>/dev/null || cp $< $@ ln libg.a $(BUILD_MULTISUBDIR)/libg.a >/dev/null 2>/dev/null || \ cp libg.a $(BUILD_MULTISUBDIR)/libg.a $(BUILD_MULTISUBDIR)/libm.a: libm.a $(BUILD_MULTISUBDIR) rm -f $@ ln $< $@ >/dev/null 2>/dev/null || cp $< $@ endif crt0.o: $(CRT0_DIR)$(CRT0) rm -f $@ ln $< $@ >/dev/null 2>/dev/null || cp $< $@ $(CRT0_DIR)$(CRT0): ; @true crt1.o: $(CRT1_DIR)$(CRT1) rm -f $@ ln $< $@ >/dev/null 2>/dev/null || cp $< $@ $(CRT1_DIR)$(CRT1): ; @true targ-include: mkdir $@ targ-include/newlib.h: targ-include/_newlib_version.h targ-include/sys targ-include/machine targ-include/bits: targ-include/_newlib_version.h targ-include/newlib.h mkdir $@ targ-include/newlib.h: newlib.h targ-include cp newlib.h $@ targ-include/_newlib_version.h: _newlib_version.h targ-include cp _newlib_version.h $@ all-recursive: stmp-targ-include # The targ-include directory just holds the includes files for the # particular system and machine we have been configured for. It is # used while building. stmp-targ-include: config.status -rm -rf targ-include stmp-targ-include $(MAKE) targ-include/sys \ targ-include/machine \ targ-include/bits -for i in $(srcdir)/libc/machine/$(machine_dir)/machine/*.h; do \ if [ -f $$i ]; then \ cp $$i targ-include/machine/`basename $$i`; \ else true; fi ; \ done -for i in $(srcdir)/libc/machine/$(machine_dir)/sys/*.h; do \ if [ -f $$i ]; then \ cp $$i targ-include/sys/`basename $$i`; \ else true; fi ; \ done -for i in $(srcdir)/libc/machine/$(machine_dir)/include/*.h; do \ if [ -f $$i ]; then \ cp $$i targ-include/`basename $$i`; \ else true; fi ; \ done -for i in $(srcdir)/libc/sys/$(sys_dir)/include/*.h; do \ if [ -f $$i ]; then \ cp $$i targ-include/`basename $$i`; \ else true; fi ; \ done -for i in $(srcdir)/libc/sys/$(sys_dir)/include/*; do \ if [ -d $$i ]; then \ for j in $$i/*.h; do \ if [ ! -d targ-include/`basename $$i` ]; then \ mkdir targ-include/`basename $$i`; \ fi; \ cp $$j targ-include/`basename $$i`/`basename $$j`; \ done \ else true; fi ; \ done -for i in $(srcdir)/libc/sys/$(sys_dir)/sys/*.h; do \ if [ -f $$i ]; then \ cp $$i targ-include/sys/`basename $$i`; \ else true; fi ; \ done -for i in $(srcdir)/libc/sys/$(sys_dir)/bits/*.h; do \ if [ -f $$i ]; then \ cp $$i targ-include/bits/`basename $$i`; \ else true; fi ; \ done -for i in $(srcdir)/libc/sys/$(sys_dir)/machine/*.h; do \ if [ -f $$i ]; then \ cp $$i targ-include/machine/`basename $$i`; \ else true; fi ; \ done -for i in $(srcdir)/libc/sys/$(sys_dir)/machine/$(machine_dir)/*.h; do \ if [ -f $$i ]; then \ cp $$i targ-include/machine/`basename $$i`; \ else true; fi ; \ done -for i in $(srcdir)/libc/sys/$(sys_dir)/machine/$(machine_dir)/include/*.h; do \ if [ -f $$i ]; then \ cp $$i targ-include/machine/`basename $$i`; \ else true; fi ; \ done $(MAKE) targ-include/newlib.h touch $@ CLEANFILES = stmp-targ-include install-data-local: install-toollibLIBRARIES if USE_LIBTOOL else rm -f $(DESTDIR)$(toollibdir)/libg.a ln $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)/libg.a >/dev/null 2>/dev/null || cp $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)/libg.a endif $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do # $(MAKE) -if [ -z "$(MULTISUBDIR)" ]; then \ $(mkinstalldirs) $(DESTDIR)$(tooldir)/include; \ for i in $(srcdir)/libc/include/*.h; do \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/`basename $$i`; \ done; \ $(INSTALL_DATA) newlib.h $(DESTDIR)$(tooldir)/include/newlib.h; \ $(INSTALL_DATA) _newlib_version.h $(DESTDIR)$(tooldir)/include/_newlib_version.h; \ $(mkinstalldirs) $(DESTDIR)$(tooldir)/include/machine; \ for i in $(srcdir)/libc/include/machine/*.h; do \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/machine/`basename $$i`; \ done; \ for i in $(srcdir)/libc/machine/$(machine_dir)/machine/*.h; do \ if [ -f $$i ]; then \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/machine/`basename $$i`; \ else true; fi ; \ done; \ $(mkinstalldirs) $(DESTDIR)$(tooldir)/include/rpc; \ for i in $(srcdir)/libc/include/rpc/*.h; do \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/rpc/`basename $$i`; \ done; \ $(mkinstalldirs) $(DESTDIR)$(tooldir)/include/ssp; \ for i in $(srcdir)/libc/include/ssp/*.h; do \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/ssp/`basename $$i`; \ done; \ $(mkinstalldirs) $(DESTDIR)$(tooldir)/include/sys; \ for i in $(srcdir)/libc/include/sys/*.h; do \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \ done; \ for i in $(srcdir)/libc/machine/$(machine_dir)/sys/*.h; do \ if [ -f $$i ]; then \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \ else true; fi ; \ done ; \ for i in $(srcdir)/libc/machine/$(machine_dir)/include/*.h; do \ if [ -f $$i ]; then \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/`basename $$i`; \ else true; fi ; \ done ; \ for i in $(srcdir)/libc/sys/$(sys_dir)/sys/*.h; do \ if [ -f $$i ]; then \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \ else true; fi ; \ done ; \ $(mkinstalldirs) $(DESTDIR)$(tooldir)/include/bits; \ for i in $(srcdir)/libc/sys/$(sys_dir)/bits/*.h; do \ if [ -f $$i ]; then \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/bits/`basename $$i`; \ else true; fi ; \ done ; \ for i in $(srcdir)/libc/sys/$(sys_dir)/machine/*.h; do \ if [ -f $$i ]; then \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/machine/`basename $$i`; \ else true; fi ; \ done ; \ for i in $(srcdir)/libc/sys/$(sys_dir)/include/*.h; do \ if [ -f $$i ]; then \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/`basename $$i`; \ else true; fi ; \ done ; \ for i in $(srcdir)/libc/sys/$(sys_dir)/include/*; do \ if [ -d $$i ]; then \ for j in $$i/*.h; do \ $(INSTALL_DATA) $$j $(DESTDIR)$(tooldir)/include/`basename $$i`/`basename $$j`; \ done ; \ else true; fi ; \ done ; \ for i in $(srcdir)/libc/sys/$(sys_dir)/machine/$(machine_dir)/include/*.h; do \ if [ -f $$i ]; then \ $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/machine/`basename $$i`; \ else true; fi ; \ done ; \ for i in $(NO_INCLUDE_LIST); do \ if [ -f $(DESTDIR)$(tooldir)/include/$$i ]; then \ rm $(DESTDIR)$(tooldir)/include/$$i; \ else true; fi ; \ done ; \ else true; fi # Force makedoc to be built before building info files. info-recursive: doc/makedoc dvi-recursive: doc/makedoc doc/makedoc: cd doc && $(MAKE) all # Recursive targets for man and install-man man: (cd doc && $(MAKE) man-cache) || exit 1; \ for d in $(SUBDIRS); do \ if test "$$d" != "."; then \ (cd $$d && $(MAKE) man) || exit 1; \ fi; \ done install-man: for d in $(SUBDIRS); do \ if test "$$d" != "."; then \ (cd $$d && $(MAKE) install-man) || exit 1; \ fi; \ done CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host # Multilib support. .PHONY: all-multi check-multi mostlyclean-multi clean-multi distclean-multi \ maintainer-clean-multi all-recursive: all-multi check-recursive: check-multi mostlyclean-recursive: mostlyclean-multi clean-recursive: clean-multi distclean-recursive: distclean-multi maintainer-clean-recursive: maintainer-clean-multi # The $(MAKE) comments below are to enable parallel building. all-multi: $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE) check-multi: $(MULTIDO) $(AM_MAKEFLAGS) DO=check multi-do # $(MAKE) mostlyclean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean # $(MAKE) clean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean # $(MAKE) distclean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean # $(MAKE) maintainer-clean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean # $(MAKE) MAKEOVERRIDES= # dejagnu support RUNTESTFLAGS= site.exp: Makefile @echo 'Making a new site.exp file...' @test ! -f site.bak || rm -f site.bak @echo '## these variables are automatically generated by make ##' > $@-t @echo '# Do not edit here. If you wish to override these values' >> $@-t @echo '# edit the last section' >> $@-t @echo 'set tool $(DEJATOOL)' >> $@-t @echo 'set tool_version $(VERSION)' >> $@-t @echo 'set srcdir $(srcdir)/testsuite' >> $@-t @echo 'set objdir' `pwd` >> $@-t @echo 'set tmpdir' `pwd`/testsuite >> $@-t @echo 'set multibuildtop ./$(MULTIBUILDTOP)' >> $@-t @echo 'set host_alias $(build_alias)' >> $@-t @echo 'set host_triplet $(build_triplet)' >> $@-t @echo 'set target_alias $(host_alias)' >> $@-t @echo 'set target_triplet $(host_triplet)' >> $@-t @echo '## All variables above are generated by configure. Do Not Edit ##' >> $@-t @test ! -f site.exp || sed '1,/^## All variables above are.*##/ d' site.exp >> $@-t @test ! -f site.exp || mv site.exp site.bak @mv $@-t site.exp check-DEJAGNU: site.exp @if [ -d testsuite ] ; then \ true ; \ else \ mkdir testsuite ; \ fi @rm -f testsuite/site.exp @cp site.exp testsuite/site.exp @rootme=`pwd` ; \ export rootme ; \ srcdir=`cd ${srcdir}; pwd` ; \ export srcdir ; \ EXPECT=`if [ -f $${rootme}/${MULTIBUILDTOP}../../expect/expect ] ; then \ echo $${rootme}/${MULTIBUILDTOP}../../expect/expect ; \ else \ echo expect ; \ fi` ; \ export EXPECT ; \ echo "Found expect: $${EXPECT}" ; \ if [ -f $(top_builddir)/$(MULTIBUILDTOP)../../expect/expect ] ; then \ TCL_LIBRARY=`cd $(top_srcdir)/../tcl/library && pwd` ; \ export TCL_LIBRARY ; \ echo "Found TCL library directory: $${TCL_LIBRARY}" ; \ fi ; \ RUNTEST=`if [ -f $${srcdir}/../dejagnu/runtest ] ; then \ echo $${srcdir}/../dejagnu/runtest ; \ else \ echo runtest ; \ fi` ; \ export RUNTEST ; \ echo "Found runtest: $${RUNTEST}" ; \ cd testsuite ; \ if $(SHELL) -c "$$RUNTEST --version" > /dev/null 2>&1 ; then \ $$RUNTEST --tool $(DEJATOOL) --srcdir $${srcdir}/testsuite $(RUNTESTFLAGS) ; \ : ; \ else \ echo "WARNING: could not find \`runtest'" 1>&2 ; \ fi clean-local: -rm -rf targ-include newlib.h _newlib_version.h stamp-*