diff options
Diffstat (limited to 'c/src/make')
-rw-r--r-- | c/src/make/Makefile.am | 48 | ||||
-rw-r--r-- | c/src/make/Makefile.in | 538 | ||||
-rw-r--r-- | c/src/make/Makefile.inc.in | 50 | ||||
-rw-r--r-- | c/src/make/Templates/Makefile.am | 15 | ||||
-rw-r--r-- | c/src/make/Templates/Makefile.dir | 9 | ||||
-rw-r--r-- | c/src/make/Templates/Makefile.in | 286 | ||||
-rw-r--r-- | c/src/make/Templates/Makefile.leaf | 77 | ||||
-rw-r--r-- | c/src/make/Templates/Makefile.lib | 59 | ||||
-rw-r--r-- | c/src/make/aclocal.m4 | 954 | ||||
-rw-r--r-- | c/src/make/compilers/Makefile.am | 21 | ||||
-rw-r--r-- | c/src/make/compilers/Makefile.in | 293 | ||||
-rw-r--r-- | c/src/make/compilers/gcc.cfg.in | 203 | ||||
-rw-r--r-- | c/src/make/configure | 3399 | ||||
-rw-r--r-- | c/src/make/configure.in | 139 | ||||
-rw-r--r-- | c/src/make/custom/Makefile.am | 19 | ||||
-rw-r--r-- | c/src/make/custom/Makefile.in | 291 | ||||
-rw-r--r-- | c/src/make/custom/default.cfg.in | 86 | ||||
-rw-r--r-- | c/src/make/main.cfg.in | 73 | ||||
-rw-r--r-- | c/src/make/target.cfg.in | 72 |
19 files changed, 6632 insertions, 0 deletions
diff --git a/c/src/make/Makefile.am b/c/src/make/Makefile.am new file mode 100644 index 0000000000..dfc6f5cdde --- /dev/null +++ b/c/src/make/Makefile.am @@ -0,0 +1,48 @@ +# +# $Id$ +# + +AUTOMAKE_OPTIONS = foreign 1.4 +ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal + +rtems_makedir=$(prefix)/make + +GENERIC_FILES = \ +host.cfg target.cfg + +MAKE_FILES = README \ +directory.cfg leaf.cfg \ +lib.cfg + +rtems_make_DATA = \ +$(MAKE_FILES) \ +$(GENERIC_FILES) + +noinst_DATA = \ +main.cfg + +rtemsdir = $(prefix) +rtems_bspdir = $(rtemsdir)/@RTEMS_BSP@ +rtems_bsp_DATA = \ +Makefile.inc + +if MAINTAINER_MODE +$(srcdir)/main.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/main.cfg + sed -e 's%\$$(RTEMS_BSP)%\@RTEMS_BSP\@%g' < $< >$@ + +$(srcdir)/Makefile.inc.in: $(top_srcdir)/@RTEMS_TOPdir@/make/Templates/Makefile.inc.in + echo "RTEMS_BSP = @""RTEMS_BSP@" > $@ + echo "" >> $@ + cat $< >> $@ + +$(srcdir)/host.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/host.cfg.in + cp $< $@ + +$(srcdir)/target.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/target.cfg.in + cp $< $@ +endif + +SUBDIRS = compilers custom Templates + +include $(top_srcdir)/../../../automake/subdirs.am +include $(top_srcdir)/../../../automake/local.am diff --git a/c/src/make/Makefile.in b/c/src/make/Makefile.in new file mode 100644 index 0000000000..4b777d98ad --- /dev/null +++ b/c/src/make/Makefile.in @@ -0,0 +1,538 @@ +# 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. + +# +# $Id$ +# + + + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @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@ +BARE_CPU_CFLAGS = @BARE_CPU_CFLAGS@ +BARE_CPU_MODEL = @BARE_CPU_MODEL@ +CAT = @CAT@ +CC = @CC@ +CC_CFLAGS_DEBUG_V = @CC_CFLAGS_DEBUG_V@ +CC_CFLAGS_DEFAULT = @CC_CFLAGS_DEFAULT@ +CC_CFLAGS_PROFILE_V = @CC_CFLAGS_PROFILE_V@ +CC_FOR_TARGET = @CC_FOR_TARGET@ +CC_LDFLAGS_PROFILE_V = @CC_LDFLAGS_PROFILE_V@ +CHMOD = @CHMOD@ +CMP = @CMP@ +CP = @CP@ +CPP = @CPP@ +CUSTOM_CFG_FILES = @CUSTOM_CFG_FILES@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXX_FOR_TARGET = @CXX_FOR_TARGET@ +GCCSED = @GCCSED@ +INSTALL_CHANGE = @INSTALL_CHANGE@ +KSH = @KSH@ +LN = @LN@ +LN_S = @LN_S@ +M4 = @M4@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MV = @MV@ +PACKAGE = @PACKAGE@ +PACKHEX = @PACKHEX@ +PERL = @PERL@ +PROJECT_ROOT = @PROJECT_ROOT@ +RM = @RM@ +RTEMS_BSP = @RTEMS_BSP@ +RTEMS_CPU = @RTEMS_CPU@ +RTEMS_GAS_CODE16 = @RTEMS_GAS_CODE16@ +RTEMS_HAS_CPLUSPLUS = @RTEMS_HAS_CPLUSPLUS@ +RTEMS_HAS_MULTIPROCESSING = @RTEMS_HAS_MULTIPROCESSING@ +RTEMS_HAS_NETWORKING = @RTEMS_HAS_NETWORKING@ +RTEMS_HAS_POSIX_API = @RTEMS_HAS_POSIX_API@ +RTEMS_HAS_RDBG = @RTEMS_HAS_RDBG@ +RTEMS_HOST = @RTEMS_HOST@ +RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@ +RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_TOPdir = @RTEMS_TOPdir@ +RTEMS_USE_GCC272 = @RTEMS_USE_GCC272@ +RTEMS_USE_MACROS = @RTEMS_USE_MACROS@ +SED = @SED@ +SORT = @SORT@ +TOUCH = @TOUCH@ +VERSION = @VERSION@ +program_prefix = @program_prefix@ +rtems_cv_prog_cc_cross = @rtems_cv_prog_cc_cross@ + +AUTOMAKE_OPTIONS = foreign 1.4 +ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal + +rtems_makedir = $(prefix)/make + +GENERIC_FILES = host.cfg target.cfg + + +MAKE_FILES = README directory.cfg leaf.cfg lib.cfg + + +rtems_make_DATA = $(MAKE_FILES) $(GENERIC_FILES) + + +noinst_DATA = main.cfg + + +rtemsdir = $(prefix) +rtems_bspdir = $(rtemsdir)/@RTEMS_BSP@ +rtems_bsp_DATA = Makefile.inc + + +SUBDIRS = compilers custom Templates +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +mkinstalldirs = $(SHELL) $(top_srcdir)/../../../mkinstalldirs +CONFIG_CLEAN_FILES = Makefile.inc main.cfg host.cfg target.cfg +DATA = $(noinst_DATA) $(rtems_bsp_DATA) $(rtems_make_DATA) + +DIST_COMMON = Makefile.am Makefile.in Makefile.inc.in aclocal.m4 \ +configure configure.in host.cfg.in main.cfg.in target.cfg.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +all: all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/../../../automake/subdirs.am $(top_srcdir)/../../../automake/local.am + cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in + cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) + +config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck +$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) + cd $(srcdir) && $(AUTOCONF) +Makefile.inc: $(top_builddir)/config.status Makefile.inc.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +main.cfg: $(top_builddir)/config.status main.cfg.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +host.cfg: $(top_builddir)/config.status host.cfg.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +target.cfg: $(top_builddir)/config.status target.cfg.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + +install-rtems_bspDATA: $(rtems_bsp_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(rtems_bspdir) + @list='$(rtems_bsp_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_bspdir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_bspdir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_bspdir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_bspdir)/$$p; \ + fi; fi; \ + done + +uninstall-rtems_bspDATA: + @$(NORMAL_UNINSTALL) + list='$(rtems_bsp_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(rtems_bspdir)/$$p; \ + done + +install-rtems_makeDATA: $(rtems_make_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(rtems_makedir) + @list='$(rtems_make_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_makedir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_makedir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_makedir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_makedir)/$$p; \ + fi; fi; \ + done + +uninstall-rtems_makeDATA: + @$(NORMAL_UNINSTALL) + list='$(rtems_make_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(rtems_makedir)/$$p; \ + done + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +mostlyclean-recursive clean-recursive distclean-recursive \ +maintainer-clean-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ + rev="$$subdir $$rev"; \ + test "$$subdir" = "." && dot_seen=yes; \ + done; \ + test "$$dot_seen" = "no" && rev=". $$rev"; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +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) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS)'; \ + unique=`for i in $$list; do echo $$i; done | \ + awk ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + -rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + -rm -rf $(distdir) + GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz + mkdir $(distdir)/=build + mkdir $(distdir)/=inst + dc_install_base=`cd $(distdir)/=inst && pwd`; \ + cd $(distdir)/=build \ + && ../configure --srcdir=.. --prefix=$$dc_install_base \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) dist + -rm -rf $(distdir) + @banner="$(distdir).tar.gz is ready for distribution"; \ + dashes=`echo "$$banner" | sed s/./=/g`; \ + echo "$$dashes"; \ + echo "$$banner"; \ + echo "$$dashes" +dist: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) + -rm -rf $(distdir) +dist-all: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) + -rm -rf $(distdir) +distdir: $(DISTFILES) + -rm -rf $(distdir) + mkdir $(distdir) + -chmod 777 $(distdir) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$/$$file $(distdir)/$$file; \ + else \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file || :; \ + fi; \ + done + for subdir in $(SUBDIRS); do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + fi; \ + done +info-am: +info: info-recursive +dvi-am: +dvi: dvi-recursive +check-am: all-am +check: check-recursive +installcheck-am: +installcheck: installcheck-recursive +install-exec-am: +install-exec: install-exec-recursive + +install-data-am: install-rtems_bspDATA install-rtems_makeDATA +install-data: install-data-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-recursive +uninstall-am: uninstall-rtems_bspDATA uninstall-rtems_makeDATA +uninstall: uninstall-recursive +all-am: Makefile $(DATA) +all-redirect: all-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: installdirs-recursive +installdirs-am: + $(mkinstalldirs) $(DESTDIR)$(rtems_bspdir) $(DESTDIR)$(rtems_makedir) + + +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-tags mostlyclean-generic + +mostlyclean: mostlyclean-recursive + +clean-am: clean-tags clean-generic mostlyclean-am + +clean: clean-recursive + +distclean-am: distclean-tags distclean-generic clean-am + +distclean: distclean-recursive + -rm -f config.status + +maintainer-clean-am: 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-recursive + -rm -f config.status + +.PHONY: uninstall-rtems_bspDATA install-rtems_bspDATA \ +uninstall-rtems_makeDATA install-rtems_makeDATA install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ +dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ +install-exec install-data-am install-data install-am install \ +uninstall-am uninstall all-redirect all-am all installdirs-am \ +installdirs mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +@MAINTAINER_MODE_TRUE@$(srcdir)/main.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/main.cfg +@MAINTAINER_MODE_TRUE@ sed -e 's%\$$(RTEMS_BSP)%\@RTEMS_BSP\@%g' < $< >$@ + +@MAINTAINER_MODE_TRUE@$(srcdir)/Makefile.inc.in: $(top_srcdir)/@RTEMS_TOPdir@/make/Templates/Makefile.inc.in +@MAINTAINER_MODE_TRUE@ echo "RTEMS_BSP = @""RTEMS_BSP@" > $@ +@MAINTAINER_MODE_TRUE@ echo "" >> $@ +@MAINTAINER_MODE_TRUE@ cat $< >> $@ + +@MAINTAINER_MODE_TRUE@$(srcdir)/host.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/host.cfg.in +@MAINTAINER_MODE_TRUE@ cp $< $@ + +@MAINTAINER_MODE_TRUE@$(srcdir)/target.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/target.cfg.in +@MAINTAINER_MODE_TRUE@ cp $< $@ + +depend-recursive \ +clobber-recursive \ +preinstall-recursive \ +debug-recursive \ +debug_install-recursive \ +profile-recursive \ +profile_install-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +debug: debug-recursive +.PHONY: debug-recursive + +debug_install: debug_install-recursive +.PHONY: debug_install-recursive + +profile: profile-recursive +.PHONY: profile-recursive + +profile_install: profile_install-recursive +.PHONY: profile-recursive + +preinstall: preinstall-recursive +.PHONY: preinstall-recursive + +clobber: clobber-recursive +.PHONY: clobber-recursive + +depend: depend-recursive +.PHONY: depend-recursive + +debug-am: +debug: debug-am +.PHONY: debug debug-am + +debug_install-am: +debug_install: debug_install-am +.PHONY: debug_install debug_install-am + +profile-am: +profile: profile-am +.PHONY: profile profile-am + +profile_install-am: +profile_install: profile_install-am +.PHONY: profile_install profile_install-am + +preinstall-am: +preinstall: preinstall-am +.PHONY: preinstall preinstall-am + +clobber-am: +clobber: clobber-am +.PHONY: clobber clobber-am + +depend-am: +depend: depend-am +.PHONY: depend depend-am + +# 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: diff --git a/c/src/make/Makefile.inc.in b/c/src/make/Makefile.inc.in new file mode 100644 index 0000000000..a908cb18bf --- /dev/null +++ b/c/src/make/Makefile.inc.in @@ -0,0 +1,50 @@ +RTEMS_BSP = @RTEMS_BSP@ + +# +# +# Target specific settings. To be included in application Makefiles. +# + +prefix = @prefix@ + +CC_FOR_TARGET = @program_prefix@gcc +AS_FOR_TARGET = @program_prefix@as +AR_FOR_TARGET = @program_prefix@ar +NM_FOR_TARGET = @program_prefix@nm +LD_FOR_TARGET = @program_prefix@ld +SIZE_FOR_TARGET = @program_prefix@size +OBJCOPY_FOR_TARGET = @program_prefix@objcopy + +CC= $(CC_FOR_TARGET) +AS= $(AS_FOR_TARGET) +LD= $(LD_FOR_TARGET) +NM= $(NM_FOR_TARGET) +AR= $(AR_FOR_TARGET) +SIZE= $(SIZE_FOR_TARGET) +OBJCOPY= $(OBJCOPY_FOR_TARGET) + +export CC +export AS +export LD +export NM +export AR +export SIZE +export OBJCOPY + +RTEMS_HOST = @RTEMS_HOST@ +RTEMS_CUSTOM = $(prefix)/make/custom/$(RTEMS_BSP).cfg +PROJECT_ROOT = $(prefix)/ +RTEMS_USE_OWN_PDIR = no +RTEMS_HAS_POSIX_API = @RTEMS_HAS_POSIX_API@ +RTEMS_USE_MACROS = @RTEMS_USE_MACROS@ +RTEMS_HAS_CPLUSPLUS = @RTEMS_HAS_CPLUSPLUS@ +RTEMS_USE_GCC272 = @RTEMS_USE_GCC272@ +RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@ + +export RTEMS_BSP +export RTEMS_CUSTOM +export PROJECT_ROOT + +# FIXME: The following shouldn't be here +RTEMS_ROOT = $(PROJECT_ROOT) +export RTEMS_ROOT diff --git a/c/src/make/Templates/Makefile.am b/c/src/make/Templates/Makefile.am new file mode 100644 index 0000000000..de2fb5d1dd --- /dev/null +++ b/c/src/make/Templates/Makefile.am @@ -0,0 +1,15 @@ +# +# $Id$ +# + +AUTOMAKE_OPTIONS = foreign 1.4 + +rtems_makedir=$(prefix)/make +rtems_make_Templatesdir=$(rtems_makedir)/Templates + +rtems_make_Templates_DATA = \ +Makefile.dir \ +Makefile.leaf \ +Makefile.lib + +include $(top_srcdir)/../../../automake/local.am diff --git a/c/src/make/Templates/Makefile.dir b/c/src/make/Templates/Makefile.dir new file mode 100644 index 0000000000..e70d40c0cb --- /dev/null +++ b/c/src/make/Templates/Makefile.dir @@ -0,0 +1,9 @@ +# +# $Id$ +# + +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg +include $(RTEMS_ROOT)/make/directory.cfg + +SUB_DIRS=a b c your-directories-go-here + diff --git a/c/src/make/Templates/Makefile.in b/c/src/make/Templates/Makefile.in new file mode 100644 index 0000000000..b620949339 --- /dev/null +++ b/c/src/make/Templates/Makefile.in @@ -0,0 +1,286 @@ +# 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. + +# +# $Id$ +# + + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @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@ +BARE_CPU_CFLAGS = @BARE_CPU_CFLAGS@ +BARE_CPU_MODEL = @BARE_CPU_MODEL@ +CAT = @CAT@ +CC = @CC@ +CC_CFLAGS_DEBUG_V = @CC_CFLAGS_DEBUG_V@ +CC_CFLAGS_DEFAULT = @CC_CFLAGS_DEFAULT@ +CC_CFLAGS_PROFILE_V = @CC_CFLAGS_PROFILE_V@ +CC_FOR_TARGET = @CC_FOR_TARGET@ +CC_LDFLAGS_PROFILE_V = @CC_LDFLAGS_PROFILE_V@ +CHMOD = @CHMOD@ +CMP = @CMP@ +CP = @CP@ +CPP = @CPP@ +CUSTOM_CFG_FILES = @CUSTOM_CFG_FILES@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXX_FOR_TARGET = @CXX_FOR_TARGET@ +GCCSED = @GCCSED@ +INSTALL_CHANGE = @INSTALL_CHANGE@ +KSH = @KSH@ +LN = @LN@ +LN_S = @LN_S@ +M4 = @M4@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MV = @MV@ +PACKAGE = @PACKAGE@ +PACKHEX = @PACKHEX@ +PERL = @PERL@ +PROJECT_ROOT = @PROJECT_ROOT@ +RM = @RM@ +RTEMS_BSP = @RTEMS_BSP@ +RTEMS_CPU = @RTEMS_CPU@ +RTEMS_GAS_CODE16 = @RTEMS_GAS_CODE16@ +RTEMS_HAS_CPLUSPLUS = @RTEMS_HAS_CPLUSPLUS@ +RTEMS_HAS_MULTIPROCESSING = @RTEMS_HAS_MULTIPROCESSING@ +RTEMS_HAS_NETWORKING = @RTEMS_HAS_NETWORKING@ +RTEMS_HAS_POSIX_API = @RTEMS_HAS_POSIX_API@ +RTEMS_HAS_RDBG = @RTEMS_HAS_RDBG@ +RTEMS_HOST = @RTEMS_HOST@ +RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@ +RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_TOPdir = @RTEMS_TOPdir@ +RTEMS_USE_GCC272 = @RTEMS_USE_GCC272@ +RTEMS_USE_MACROS = @RTEMS_USE_MACROS@ +SED = @SED@ +SORT = @SORT@ +TOUCH = @TOUCH@ +VERSION = @VERSION@ +program_prefix = @program_prefix@ +rtems_cv_prog_cc_cross = @rtems_cv_prog_cc_cross@ + +AUTOMAKE_OPTIONS = foreign 1.4 + +rtems_makedir = $(prefix)/make +rtems_make_Templatesdir = $(rtems_makedir)/Templates + +rtems_make_Templates_DATA = Makefile.dir Makefile.leaf Makefile.lib + +mkinstalldirs = $(SHELL) $(top_srcdir)/../../../mkinstalldirs +CONFIG_CLEAN_FILES = +DATA = $(rtems_make_Templates_DATA) + +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +all: all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/../../../automake/local.am + cd $(top_srcdir) && $(AUTOMAKE) --foreign Templates/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +install-rtems_make_TemplatesDATA: $(rtems_make_Templates_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(rtems_make_Templatesdir) + @list='$(rtems_make_Templates_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_make_Templatesdir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_make_Templatesdir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_make_Templatesdir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_make_Templatesdir)/$$p; \ + fi; fi; \ + done + +uninstall-rtems_make_TemplatesDATA: + @$(NORMAL_UNINSTALL) + list='$(rtems_make_Templates_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(rtems_make_Templatesdir)/$$p; \ + done +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = Templates + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign Templates/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$/$$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: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-rtems_make_TemplatesDATA +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-rtems_make_TemplatesDATA +uninstall: uninstall-am +all-am: Makefile $(DATA) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + $(mkinstalldirs) $(DESTDIR)$(rtems_make_Templatesdir) + + +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-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +clean: clean-am + +distclean-am: distclean-generic clean-am + +distclean: distclean-am + +maintainer-clean-am: 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: uninstall-rtems_make_TemplatesDATA \ +install-rtems_make_TemplatesDATA tags distdir info-am info dvi-am dvi \ +check check-am installcheck-am installcheck 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 + + +debug-am: +debug: debug-am +.PHONY: debug debug-am + +debug_install-am: +debug_install: debug_install-am +.PHONY: debug_install debug_install-am + +profile-am: +profile: profile-am +.PHONY: profile profile-am + +profile_install-am: +profile_install: profile_install-am +.PHONY: profile_install profile_install-am + +preinstall-am: +preinstall: preinstall-am +.PHONY: preinstall preinstall-am + +clobber-am: +clobber: clobber-am +.PHONY: clobber clobber-am + +depend-am: +depend: depend-am +.PHONY: depend depend-am + +# 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: diff --git a/c/src/make/Templates/Makefile.leaf b/c/src/make/Templates/Makefile.leaf new file mode 100644 index 0000000000..b4c879529f --- /dev/null +++ b/c/src/make/Templates/Makefile.leaf @@ -0,0 +1,77 @@ +# +# $Id$ +# +# Templates/Makefile.leaf +# Template leaf node Makefile +# + +# C source names, if any, go here -- minus the .c +C_PIECES=xxxd xxxe xxxf +C_FILES=$(C_PIECES:%=%.c) +C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) + +# C++ source names, if any, go here -- minus the .cc +CC_PIECES=xxxa xxxb xxxc +CC_FILES=$(CC_PIECES:%=%.cc) +CC_O_FILES=$(CC_PIECES:%=${ARCH}/%.o) + +H_FILES= + +# Assembly source names, if any, go here -- minus the .S +S_PIECES= +S_FILES=$(S_PIECES:%=%.S) +S_O_FILES=$(S_FILES:%.S=${ARCH}/%.o) + +SRCS=$(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES) +OBJS=$(C_O_FILES) $(CC_O_FILES) $(S_O_FILES) + +PGMS=${ARCH}/xxx-your-program-here ${ARCH}/xxx-another-one + +# List of RTEMS managers to be included in the application goes here. +# Use: +# MANAGERS=all +# to include all RTEMS managers in the application. +MANAGERS=io event message rate_monotonic semaphore timer, etc. + + +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg +include $(RTEMS_ROOT)/make/leaf.cfg + +# +# (OPTIONAL) Add local stuff here using += +# + +DEFINES += +CPPFLAGS += +CFLAGS += + +# +# CFLAGS_DEBUG_V are used when the `make debug' target is built. +# To link your application with the non-optimized RTEMS routines, +# uncomment the following line: +# CFLAGS_DEBUG_V += -qrtems_debug +# + +LD_PATHS += xxx-your-EXTRA-library-paths-go-here, if any +LD_LIBS += xxx-your-libraries-go-here eg: -lvx +LDFLAGS += + +# +# Add your list of files to delete here. The config files +# already know how to delete some stuff, so you may want +# to just run 'make clean' first to see what gets missed. +# 'make clobber' already includes 'make clean' +# + +CLEAN_ADDITIONS += xxx-your-debris-goes-here +CLOBBER_ADDITIONS += + +all: ${ARCH} $(SRCS) $(PGMS) + +${ARCH}/xxx-your-program-here: ${OBJS} ${LINK_FILES} + $(make-exe) + +# Install the program(s), appending _g or _p as appropriate. +# for include files, just use $(INSTALL_CHANGE) +install: all + $(INSTALL_VARIANT) -m 555 ${PGMS} ${PROJECT_RELEASE}/bin diff --git a/c/src/make/Templates/Makefile.lib b/c/src/make/Templates/Makefile.lib new file mode 100644 index 0000000000..9127ea70de --- /dev/null +++ b/c/src/make/Templates/Makefile.lib @@ -0,0 +1,59 @@ +# +# $Id$ +# +# Templates/Makefile.lib +# Template library Makefile +# + +LIBNAME=libfoo.a # xxx- your library names goes here +LIB=${ARCH}/${LIBNAME} + +# C and C++ source names, if any, go here -- minus the .c or .cc +C_PIECES=xxxd xxxe xxxf +C_FILES=$(C_PIECES:%=%.c) +C_O_FILES=$(C_PIECES:%=${ARCH}/%.o) + +CC_PIECES=xxxa xxxb xxxc +CC_FILES=$(CC_PIECES:%=%.cc) +CC_O_FILES=$(CC_PIECES:%=${ARCH}/%.o) + +H_FILES= + +# Assembly source names, if any, go here -- minus the .S +S_PIECES= +S_FILES=$(S_PIECES:%=%.S) +S_O_FILES=$(S_FILES:%.S=${ARCH}/%.o) + +SRCS=$(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES) +OBJS=$(C_O_FILES) $(CC_O_FILES) $(S_O_FILES) + +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg +include $(RTEMS_ROOT)/make/lib.cfg + +# +# Add local stuff here using += +# + +DEFINES += +CPPFLAGS += +CFLAGS += + +# +# Add your list of files to delete here. The config files +# already know how to delete some stuff, so you may want +# to just run 'make clean' first to see what gets missed. +# 'make clobber' already includes 'make clean' +# + +CLEAN_ADDITIONS += xxx-your-debris-goes-here +CLOBBER_ADDITIONS += + +all: ${ARCH} $(SRCS) $(LIB) + +$(LIB): ${OBJS} + $(make-library) + +# Install the library, appending _g or _p as appropriate. +# for include files, just use $(INSTALL_CHANGE) +install: all + $(INSTALL_VARIANT) -m 644 ${LIB} ${PROJECT_RELEASE}/lib diff --git a/c/src/make/aclocal.m4 b/c/src/make/aclocal.m4 new file mode 100644 index 0000000000..dbae555199 --- /dev/null +++ b/c/src/make/aclocal.m4 @@ -0,0 +1,954 @@ +dnl aclocal.m4 generated automatically by aclocal 1.4 + +dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. + +dnl $Id$ + +dnl +dnl RTEMS_TOP($1) +dnl +dnl $1 .. relative path from this configure.in to the toplevel configure.in +dnl +AC_DEFUN(RTEMS_TOP, +[dnl +AC_ARG_WITH(target-subdir, +[ --with-target-subdir=DIR], +TARGET_SUBDIR="$withval", +TARGET_SUBDIR=".") + +RTEMS_TOPdir="$1"; +AC_SUBST(RTEMS_TOPdir) + +dnl Determine RTEMS Version string from the VERSION file +dnl Hopefully, Joel never changes its format ;- +AC_MSG_CHECKING([for RTEMS Version]) +if test -r "${srcdir}/${RTEMS_TOPdir}/VERSION"; then +changequote(,)dnl +RTEMS_VERSION=`grep Version ${srcdir}/${RTEMS_TOPdir}/VERSION | \ +sed -e 's%RTEMS[ ]*Version[ ]*\(.*\)[ ]*%\1%g'` +changequote([,])dnl +else +AC_MSG_ERROR(Unable to find ${RTEMS_TOPdir}/VERSION) +fi +if test -z "$RTEMS_VERSION"; then +AC_MSG_ERROR(Unable to determine version) +fi +AC_MSG_RESULT($RTEMS_VERSION) +])dnl + +dnl +dnl $Id$ +dnl + +dnl canonicalize target cpu +dnl NOTE: Most rtems targets do not fullfil autoconf's +dnl target naming conventions "processor-vendor-os" +dnl Therefore autoconf's AC_CANONICAL_TARGET will fail for them +dnl and we have to fix it for rtems ourselves + +AC_DEFUN(RTEMS_CANONICAL_TARGET_CPU, +[ +AC_CANONICAL_SYSTEM +AC_MSG_CHECKING(rtems target cpu) +changequote(,)dnl +case "${target}" in + # hpux unix port should go here + i[3456]86-go32-rtems*) + RTEMS_CPU=i386 + ;; + i[3456]86-pc-linux*) # unix "simulator" port + RTEMS_CPU=unix + ;; + i[3456]86-*freebsd2*) # unix "simulator" port + RTEMS_CPU=unix + ;; + no_cpu-*rtems*) + RTEMS_CPU=no_cpu + ;; + sparc-sun-solaris*) # unix "simulator" port + RTEMS_CPU=unix + ;; + *) + RTEMS_CPU=`echo $target | sed 's%^\([^-]*\)-\(.*\)$%\1%'` + ;; +esac +changequote([,])dnl +AC_SUBST(RTEMS_CPU) +AC_MSG_RESULT($RTEMS_CPU) +]) + +# Do all the work for Automake. This macro actually does too much -- +# some checks are only needed if your package does certain things. +# But this isn't really a big deal. + +# serial 1 + +dnl Usage: +dnl AM_INIT_AUTOMAKE(package,version, [no-define]) + +AC_DEFUN(AM_INIT_AUTOMAKE, +[AC_REQUIRE([AC_PROG_INSTALL]) +PACKAGE=[$1] +AC_SUBST(PACKAGE) +VERSION=[$2] +AC_SUBST(VERSION) +dnl test to see if srcdir already configured +if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then + AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) +fi +ifelse([$3],, +AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) +AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) +AC_REQUIRE([AM_SANITY_CHECK]) +AC_REQUIRE([AC_ARG_PROGRAM]) +dnl FIXME This is truly gross. +missing_dir=`cd $ac_aux_dir && pwd` +AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) +AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) +AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) +AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) +AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) +AC_REQUIRE([AC_PROG_MAKE_SET])]) + +# +# Check to make sure that the build environment is sane. +# + +AC_DEFUN(AM_SANITY_CHECK, +[AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftestfile +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` + if test "[$]*" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + if test "[$]*" != "X $srcdir/configure conftestfile" \ + && test "[$]*" != "X conftestfile $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken +alias in your environment]) + fi + + test "[$]2" = conftestfile + ) +then + # Ok. + : +else + AC_MSG_ERROR([newly created file is older than distributed files! +Check your system clock]) +fi +rm -f conftest* +AC_MSG_RESULT(yes)]) + +dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) +dnl The program must properly implement --version. +AC_DEFUN(AM_MISSING_PROG, +[AC_MSG_CHECKING(for working $2) +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if ($2 --version) < /dev/null > /dev/null 2>&1; then + $1=$2 + AC_MSG_RESULT(found) +else + $1="$3/missing $2" + AC_MSG_RESULT(missing) +fi +AC_SUBST($1)]) + +# Add --enable-maintainer-mode option to configure. +# From Jim Meyering + +# serial 1 + +AC_DEFUN(AM_MAINTAINER_MODE, +[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) + dnl maintainer-mode is disabled by default + AC_ARG_ENABLE(maintainer-mode, +[ --enable-maintainer-mode enable make rules and dependencies not useful + (and sometimes confusing) to the casual installer], + USE_MAINTAINER_MODE=$enableval, + USE_MAINTAINER_MODE=no) + AC_MSG_RESULT($USE_MAINTAINER_MODE) + AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes) + MAINT=$MAINTAINER_MODE_TRUE + AC_SUBST(MAINT)dnl +] +) + +# Define a conditional. + +AC_DEFUN(AM_CONDITIONAL, +[AC_SUBST($1_TRUE) +AC_SUBST($1_FALSE) +if $2; then + $1_TRUE= + $1_FALSE='#' +else + $1_TRUE='#' + $1_FALSE= +fi]) + +dnl $Id$ + +AC_DEFUN(RTEMS_ENABLE_MULTIPROCESSING, +[ +AC_ARG_ENABLE(multiprocessing, +[ --enable-multiprocessing enable multiprocessing interface], +[case "${enableval}" in + yes) RTEMS_HAS_MULTIPROCESSING=yes ;; + no) RTEMS_HAS_MULTIPROCESSING=no ;; + *) AC_MSG_ERROR(bad value ${enableval} for enable-multiprocessing option) ;; +esac],[RTEMS_HAS_MULTIPROCESSING=no]) +AC_SUBST(RTEMS_HAS_MULTIPROCESSING)dnl +]) + +dnl $Id$ + +AC_DEFUN(RTEMS_ENABLE_POSIX, +[ +AC_ARG_ENABLE(posix, +[ --enable-posix enable posix interface], +[case "${enableval}" in + yes) RTEMS_HAS_POSIX_API=yes ;; + no) RTEMS_HAS_POSIX_API=no ;; + *) AC_MSG_ERROR(bad value ${enableval} for enable-posix option) ;; +esac],[RTEMS_HAS_POSIX_API=yes]) +AC_SUBST(RTEMS_HAS_POSIX_API) + +changequote(,)dnl +case "${target}" in + # hpux unix port should go here + i[3456]86-go32-rtems*) + RTEMS_HAS_POSIX_API=no + ;; + i[3456]86-pc-linux*) # unix "simulator" port + RTEMS_HAS_POSIX_API=no + ;; + i[3456]86-*freebsd2*) # unix "simulator" port + RTEMS_HAS_POSIX_API=no + ;; + no_cpu-*rtems*) + RTEMS_HAS_POSIX_API=no + ;; + sparc-sun-solaris*) # unix "simulator" port + RTEMS_HAS_POSIX_API=no + ;; + *) + ;; +esac +changequote([,])dnl +AC_SUBST(RTEMS_HAS_POSIX_API) +]) + +dnl $Id$ + +AC_DEFUN(RTEMS_ENABLE_NETWORKING, +[ +AC_ARG_ENABLE(networking, +[ --enable-networking enable TCP/IP stack], +[case "${enableval}" in + yes) RTEMS_HAS_NETWORKING=yes ;; + no) RTEMS_HAS_NETWORKING=no ;; + *) AC_MSG_ERROR(bad value ${enableval} for enable-networking option) ;; +esac],[RTEMS_HAS_NETWORKING=yes]) +AC_SUBST(RTEMS_HAS_NETWORKING)dnl +]) + +dnl $Id$ + +AC_DEFUN(RTEMS_ENABLE_RDBG, +[ +AC_ARG_ENABLE(rdbg, +[ --enable-rdbg enable remote debugger], +[case "${enableval}" in + yes) RTEMS_HAS_RDBG=yes ;; + no) RTEMS_HAS_RDBG=no ;; + *) AC_MSG_ERROR(bad value ${enableval} for enable-rdbg option) ;; +esac],[RTEMS_HAS_RDBG=no]) +AC_SUBST(RTEMS_HAS_RDBG)dnl +]) + +dnl $Id$ + +AC_DEFUN(RTEMS_ENABLE_INLINES, +[AC_ARG_ENABLE(rtems-inlines, +[ --enable-rtems-inlines enable RTEMS inline functions] +[ (default:enabled, disable to use macros)], +[case "${enableval}" in + yes) RTEMS_USE_MACROS=no ;; + no) RTEMS_USE_MACROS=yes ;; + *) AC_MSG_ERROR(bad value ${enableval} for disable-rtems-inlines option) ;; +esac],[RTEMS_USE_MACROS=no]) +AC_SUBST(RTEMS_USE_MACROS)dnl +]) + +dnl $Id$ + +AC_DEFUN(RTEMS_ENABLE_CXX, +[ +AC_ARG_ENABLE(cxx, +[ --enable-cxx enable C++ support,] +[ and build the rtems++ library], +[case "${enableval}" in + yes) RTEMS_HAS_CPLUSPLUS=yes ;; + no) RTEMS_HAS_CPLUSPLUS=no ;; + *) AC_MSG_ERROR(bad value ${enableval} for enable-cxx option) ;; +esac], [RTEMS_HAS_CPLUSPLUS=no]) +]) + +dnl $Id$ + +AC_DEFUN(RTEMS_ENABLE_GCC28, +[ +AC_ARG_ENABLE(gcc28, +[ --enable-gcc28 enable use of gcc 2.8.x features], +[case "${enableval}" in + yes) RTEMS_USE_GCC272=no ;; + no) RTEMS_USE_GCC272=yes ;; + *) AC_MSG_ERROR(bad value ${enableval} for gcc-28 option) ;; +esac],[RTEMS_USE_GCC272=no]) +]) + +dnl $Id$ + +AC_DEFUN(RTEMS_ENABLE_LIBCDIR, +[ +AC_ARG_ENABLE(libcdir, +[ --enable-libcdir=directory set the directory for the C library], +[ RTEMS_LIBC_DIR="${enableval}" ; \ +test -d ${enableval} || AC_MSG_ERROR("$enableval is not a directory" ) ] ) +AC_SUBST(RTEMS_LIBC_DIR)dnl +]) + +AC_DEFUN(RTEMS_ENABLE_BARE, +[ +AC_ARG_ENABLE(bare-cpu-cflags, +[ --enable-bare-cpu-cflags specify a particular cpu cflag] +[ (bare bsp specific)], +[case "${enableval}" in + no) BARE_CPU_CFLAGS="" ;; + *) BARE_CPU_CFLAGS="${enableval}" ;; +esac], +[BARE_CPU_CFLAGS=""]) + +AC_ARG_ENABLE(bare-cpu-model, +[ --enable-bare-cpu-model specify a particular cpu model] +[ (bare bsp specific)], +[case "${enableval}" in + no) BARE_CPU_MODEL="" ;; + *) BARE_CPU_MODEL="${enableval}" ;; +esac], +[BARE_CPU_MODEL=""]) +]) + + +dnl $Id$ + +dnl Override the set of BSPs to be built. +dnl used by the toplevel configure script +dnl RTEMS_ENABLE_RTEMSBSP(rtems_bsp_list) +AC_DEFUN(RTEMS_ENABLE_RTEMSBSP, +[ +AC_ARG_ENABLE(rtemsbsp, +[ --enable-rtemsbsp=bsp1 bsp2 .. BSPs to include in build], +[case "${enableval}" in + yes|no) AC_MSG_ERROR([missing argument to --enable-rtemsbsp=\"bsp1 bsp2\"]);; + *) $1=$enableval;; +esac],[$1=""]) +]) + +dnl Pass a single BSP via an environment variable +dnl used by per BSP configure scripts +AC_DEFUN(RTEMS_ENV_RTEMSBSP, +[dnl +AC_MSG_CHECKING([for RTEMS_BSP]) +AC_CACHE_VAL(rtems_cv_RTEMS_BSP, +[dnl + test -n "${RTEMS_BSP}" && rtems_cv_RTEMS_BSP="$RTEMS_BSP"; +])dnl +if test -z "$rtems_cv_RTEMS_BSP"; then + AC_MSG_ERROR([Missing RTEMS_BSP]) +fi +RTEMS_BSP="$rtems_cv_RTEMS_BSP" +AC_MSG_RESULT(${RTEMS_BSP}) +AC_SUBST(RTEMS_BSP) +]) + +dnl $Id$ + +AC_DEFUN(RTEMS_PATH_PERL, +[ +AC_PATH_PROG(PERL,perl) +if test -z "$PERL" ; then +AC_MSG_WARN( +[***] +[ perl was not found] +[ Note: Some tools will not be built.]) +fi +]) + +dnl $Id$ + +AC_DEFUN(RTEMS_PATH_KSH, +[ +dnl NOTE: prefer bash over ksh over sh +AC_PATH_PROGS(KSH,bash ksh sh) +if test -z "$KSH"; then +dnl NOTE: This cannot happen -- /bin/sh must always exist +AC_MSG_ERROR( +[***] +[ Cannot determine a usable shell bash/ksh/sh] +[ Please contact your system administrator] ); +fi +]) + +dnl $Id$ + +dnl check if RTEMS support a cpu +AC_DEFUN(RTEMS_CHECK_CPU, +[dnl +AC_REQUIRE([RTEMS_TOP]) +AC_REQUIRE([RTEMS_CANONICAL_TARGET_CPU]) +# Is this a supported CPU? +AC_MSG_CHECKING([if cpu $RTEMS_CPU is supported]) +if test -d "$srcdir/$RTEMS_TOPdir/c/src/exec/score/cpu/$RTEMS_CPU"; then + AC_MSG_RESULT(yes) +else + AC_MSG_ERROR(no) +fi +])dnl + + +dnl $Id$ + +AC_DEFUN(RTEMS_CANONICAL_HOST, +[dnl +AC_REQUIRE([AC_CANONICAL_HOST]) +RTEMS_HOST=$host_os +changequote(,)dnl +case "${target}" in + # hpux unix port should go here + i[3456]86-pc-linux*) # unix "simulator" port + RTEMS_HOST=Linux + ;; + i[3456]86-*freebsd2*) # unix "simulator" port + RTEMS_HOST=FreeBSD + ;; + sparc-sun-solaris*) # unix "simulator" port + RTEMS_HOST=Solaris + ;; + *) + ;; +esac +changequote([,])dnl +AC_SUBST(RTEMS_HOST) +])dnl + +dnl +dnl $Id$ +dnl + +AC_DEFUN(RTEMS_PROJECT_ROOT, +[dnl +AC_REQUIRE([RTEMS_TOP]) +if test "$TARGET_SUBDIR" = "." ; then +PROJECT_ROOT=$RTEMS_TOPdir/'$(top_builddir)'; +else +PROJECT_ROOT=../$RTEMS_TOPdir/'$(top_builddir)' +fi +AC_SUBST(PROJECT_ROOT) + +RTEMS_ROOT=$RTEMS_TOPdir/'$(top_builddir)'/c/$RTEMS_BSP +AC_SUBST(RTEMS_ROOT) + +INSTALL_CHANGE="\$(KSH) \$(PROJECT_ROOT)/tools/build/install-if-change" +AC_SUBST(INSTALL_CHANGE) + +PACKHEX="\$(PROJECT_ROOT)/tools/build/packhex" +AC_SUBST(PACKHEX) +]) + + +dnl +dnl $Id$ +dnl +dnl Check for target gcc +dnl +dnl 98/05/20 Ralf Corsepius (corsepiu@faw.uni-ulm.de) +dnl Completely reworked + +AC_DEFUN(RTEMS_PROG_CC, +[ +AC_BEFORE([$0], [AC_PROG_CPP])dnl +AC_BEFORE([$0], [AC_PROG_CC])dnl +AC_REQUIRE([RTEMS_TOOL_PREFIX])dnl + +dnl Only accept gcc and cc +dnl NOTE: This might be too restrictive for native compilation +AC_PATH_PROGS(CC_FOR_TARGET, "$program_prefix"gcc "$program_prefix"cc ) +test -z "$CC_FOR_TARGET" \ + && AC_MSG_ERROR([no acceptable cc found in \$PATH]) + +dnl backup +rtems_save_CC=$CC +rtems_save_CFLAGS=$CFLAGS + +dnl temporarily set CC +CC=$CC_FOR_TARGET + +AC_PROG_CC_WORKS +AC_PROG_CC_GNU + +if test $ac_cv_prog_gcc = yes; then + GCC=yes +dnl Check whether -g works, even if CFLAGS is set, in case the package +dnl plays around with CFLAGS (such as to build both debugging and +dnl normal versions of a library), tasteless as that idea is. + ac_test_CFLAGS="${CFLAGS+set}" + ac_save_CFLAGS="$CFLAGS" + CFLAGS= + AC_PROG_CC_G + if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" + elif test $ac_cv_prog_cc_g = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-O2" + fi +else + GCC= + test "${CFLAGS+set}" = set || CFLAGS="-g" +fi + +rtems_cv_prog_gcc=$ac_cv_prog_gcc +rtems_cv_prog_cc_g=$ac_cv_prog_cc_g +rtems_cv_prog_cc_works=$ac_cv_prog_cc_works +rtems_cv_prog_cc_cross=$ac_cv_prog_cc_cross + +dnl restore initial values +CC=$rtems_save_CC +CFLAGS=$rtems_save_CFLAGS + +unset ac_cv_prog_gcc +unset ac_cv_prog_cc_g +unset ac_cv_prog_cc_works +unset ac_cv_prog_cc_cross +]) + +AC_DEFUN(RTEMS_PROG_CC_FOR_TARGET, +[ +dnl check target cc +RTEMS_PROG_CC +dnl check if the compiler supports --specs +RTEMS_GCC_SPECS +dnl check if the target compiler may use --pipe +RTEMS_GCC_PIPE +dnl check if the compiler supports --specs if gcc28 is requested +if test "$RTEMS_USE_GCC272" != "yes" ; then + if test "$rtems_cv_gcc_specs" = "no"; then + AC_MSG_WARN([*** disabling --enable-gcc28]) + RTEMS_USE_GCC272=yes + fi +fi +test "$rtems_cv_gcc_pipe" = "yes" && CC_FOR_TARGET="$CC_FOR_TARGET --pipe" + +dnl FIXME: HACK for egcs/cygwin mixing '\\' and '/' in gcc -print-* +case $host_os in +*cygwin*) GCCSED="| sed 's%\\\\%/%g'" ;; +*) ;; +esac +AC_SUBST(GCCSED) +]) + +dnl +dnl $Id$ +dnl +dnl Set program_prefix +dnl +dnl 98/05/20 Ralf Corsepius (corsepiu@faw.uni-ulm.de) +dnl Extracted from configure + +AC_DEFUN(RTEMS_TOOL_PREFIX, +[AC_REQUIRE([AC_CANONICAL_TARGET])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl + +changequote(,)dnl +if [ "${program_prefix}" = "NONE" ] ; then + if [ "${target}" = "${host}" ] ; then + program_prefix= + else + program_prefix=${target}- + fi +fi +changequote([,])dnl +]) + +dnl +dnl $Id$ +dnl +dnl Check whether the target compiler accepts -specs +dnl +dnl 98/02/11 Ralf Corsepius corsepiu@faw.uni-ulm.de +dnl + +AC_DEFUN(RTEMS_GCC_SPECS, +[AC_REQUIRE([RTEMS_PROG_CC]) +AC_CACHE_CHECK(whether $CC_FOR_TARGET accepts -specs,rtems_cv_gcc_specs, +[ +rtems_cv_gcc_specs=no +if test "$rtems_cv_prog_gcc" = "yes"; then + touch confspec + echo 'void f(){}' >conftest.c + if test -z "`${CC_FOR_TARGET} -specs confspec -c conftest.c 2>&1`";then + rtems_cv_gcc_specs=yes + fi +fi +rm -f confspec conftest* +])]) + +dnl +dnl $Id$ +dnl +dnl Check whether the target compiler accepts -pipe +dnl +dnl 98/02/11 Ralf Corsepius corsepiu@faw.uni-ulm.de +dnl + +AC_DEFUN(RTEMS_GCC_PIPE, +[AC_REQUIRE([RTEMS_PROG_CC]) +AC_REQUIRE([AC_CANONICAL_HOST]) +AC_CACHE_CHECK(whether $CC_FOR_TARGET accepts --pipe,rtems_cv_gcc_pipe, +[ +rtems_cv_gcc_pipe=no +if test "$rtems_cv_prog_gcc" = "yes"; then +case "$host_os" in + cygwin*) + ;; + *) + echo 'void f(){}' >conftest.c + if test -z "`${CC_FOR_TARGET} --pipe -c conftest.c 2>&1`";then + rtems_cv_gcc_pipe=yes + fi + rm -f conftest* + ;; +esac +fi +]) +]) + +dnl +dnl $Id$ +dnl +dnl Check for target g++ +dnl +dnl 98/05/20 Ralf Corsepius (corsepiu@faw.uni-ulm.de) +dnl Completely reworked + +AC_DEFUN(RTEMS_PROG_CXX, +[ +AC_BEFORE([$0], [AC_PROG_CXXCPP])dnl +AC_BEFORE([$0], [AC_PROG_CXX])dnl +AC_REQUIRE([RTEMS_TOOL_PREFIX])dnl + +dnl Only accept g++ and c++ +dnl NOTE: This might be too restrictive for native compilation +AC_PATH_PROGS(CXX_FOR_TARGET, "$program_prefix"g++ "$program_prefix"c++) +test -z "$CXX_FOR_TARGET" \ + && AC_MSG_ERROR([no acceptable c++ found in \$PATH]) + +dnl backup +rtems_save_CXX=$CXX +rtems_save_CXXFLAGS=$CXXFLAGS + +dnl temporarily set CXX +CXX=$CXX_FOR_TARGET + +AC_PROG_CXX_WORKS +AC_PROG_CXX_GNU + +if test $ac_cv_prog_gxx = yes; then + GXX=yes +dnl Check whether -g works, even if CXXFLAGS is set, in case the package +dnl plays around with CXXFLAGS (such as to build both debugging and +dnl normal versions of a library), tasteless as that idea is. + ac_test_CXXFLAGS="${CXXFLAGS+set}" + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS= + AC_PROG_CXX_G + if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS="$ac_save_CXXFLAGS" + elif test $ac_cv_prog_cxx_g = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-O2" + fi +else + GXX= + test "${CXXFLAGS+set}" = set || CXXFLAGS="-g" +fi + +rtems_cv_prog_gxx=$ac_cv_prog_gxx +rtems_cv_prog_cxx_g=$ac_cv_prog_cxx_g +rtems_cv_prog_cxx_works=$ac_cv_prog_cxx_works +rtems_cv_prog_cxx_cross=$ac_cv_prog_cxx_cross + +CXX=$rtems_save_CXX +CXXFLAGS=$rtems_save_CXXFLAGS + +dnl restore initial values +unset ac_cv_prog_gxx +unset ac_cv_prog_cc_g +unset ac_cv_prog_cxx_works +unset ac_cv_prog_cxx_cross +]) + +AC_DEFUN(RTEMS_PROG_CXX_FOR_TARGET, +[ + RTEMS_PROG_CXX + if test "$rtems_cv_prog_cc_cross" != "$rtems_cv_prog_cxx_cross"; then + AC_MSG_ERROR([***] + [Inconsistency in compiler configuration:] + [Target C compiler and Target C++ compiler] + [must both either be cross compilers or native compilers] + [Hint: If building a posix bsp: LD_LIBRARY_PATH?] ) + fi +]) + +dnl +dnl $Id$ +dnl +dnl Set target tools +dnl +dnl 98/06/23 Ralf Corsepius (corsepiu@faw.uni-ulm.de) +dnl fixing cache/environment variable handling +dnl adding checks for cygwin/egcs '\\'-bug +dnl adding checks for ranlib/ar -s problem +dnl +dnl 98/02/12 Ralf Corsepius (corsepiu@faw.uni-ulm.de) +dnl + +AC_DEFUN(RTEMS_GCC_PRINT, +[ case $host_os in + *cygwin*) + dnl FIXME: Hack for cygwin/egcs reporting mixed '\\' and '/' + dnl Should be removed once cygwin/egcs reports '/' only + $1=`$CC_FOR_TARGET --print-prog-name=$2 | sed -e 's%\\\\%/%g' ` + ;; + *) + $1=`$CC_FOR_TARGET --print-prog-name=$2` + ;; + esac +]) + +AC_DEFUN(RTEMS_PATH_TOOL, +[ +AC_MSG_CHECKING([target's $2]) +AC_CACHE_VAL(ac_cv_path_$1,:) +AC_MSG_RESULT([$ac_cv_path_$1]) + +if test -n "$ac_cv_path_$1"; then + dnl retrieve the value from the cache + $1=$ac_cv_path_$1 +else + dnl the cache was not set + if test -z "[$]$1" ; then + if test "$rtems_cv_prog_gcc" = "yes"; then + # We are using gcc, ask it about its tool + # NOTE: Necessary if gcc was configured to use the target's + # native tools or uses prefixes for gnutools (e.g. gas instead of as) + RTEMS_GCC_PRINT($1,$2) + fi + else + # The user set an environment variable. + # Check whether it is an absolute path, otherwise AC_PATH_PROG + # will override the environment variable, which isn't what the user + # intends + AC_MSG_CHECKING([whether environment variable $1 is an absolute path]) + case "[$]$1" in + /*) # valid + AC_MSG_RESULT("yes") + ;; + *) # invalid for AC_PATH_PROG + AC_MSG_RESULT("no") + AC_MSG_ERROR([***] + [Environment variable $1 should either] + [be unset (preferred) or contain an absolute path]) + ;; + esac + fi + + AC_PATH_PROG($1,"$program_prefix"$2,$3) +fi +]) + +AC_DEFUN(RTEMS_CANONICALIZE_TOOLS, +[AC_REQUIRE([RTEMS_PROG_CC])dnl + +dnl FIXME: What shall be done if these tools are not available? + RTEMS_PATH_TOOL(AR_FOR_TARGET,ar,no) + RTEMS_PATH_TOOL(AS_FOR_TARGET,as,no) + RTEMS_PATH_TOOL(LD_FOR_TARGET,ld,no) + RTEMS_PATH_TOOL(NM_FOR_TARGET,nm,no) + +dnl special treatment of ranlib + RTEMS_PATH_TOOL(RANLIB_FOR_TARGET,ranlib,no) + if test "$RANLIB_FOR_TARGET" = "no"; then + # ranlib wasn't found; check if ar -s is available + RTEMS_AR_FOR_TARGET_S + if test $rtems_cv_AR_FOR_TARGET_S = "yes" ; then + dnl override RANLIB_FOR_TARGET's cache + ac_cv_path_RANLIB_FOR_TARGET="$AR_FOR_TARGET -s" + RANLIB_FOR_TARGET=$ac_cv_path_RANLIB_FOR_TARGET + else + AC_MSG_ERROR([***] + [Can't figure out how to build a library index] + [Neither ranlib nor ar -s seem to be available] ) + fi + fi + +dnl NOTE: These may not be available if not using gnutools + RTEMS_PATH_TOOL(OBJCOPY_FOR_TARGET,objcopy,no) + RTEMS_PATH_TOOL(SIZE_FOR_TARGET,size,no) + RTEMS_PATH_TOOL(STRIP_FOR_TARGET,strip,no) +]) + +dnl +dnl $Id$ +dnl + +AC_DEFUN(RTEMS_AR_FOR_TARGET_S, +[ +AC_CACHE_CHECK(whether $AR_FOR_TARGET -s works, +rtems_cv_AR_FOR_TARGET_S, +[ +cat > conftest.$ac_ext <<EOF +int foo( int b ) +{ return b; } +EOF +if AC_TRY_COMMAND($CC_FOR_TARGET -o conftest.o -c conftest.$ac_ext) \ + && AC_TRY_COMMAND($AR_FOR_TARGET -sr conftest.a conftest.o) \ + && test -s conftest.a ; \ +then + rtems_cv_AR_FOR_TARGET_S="yes" +else + rtems_cv_AR_FOR_TARGET_S="no" +fi + rm -f conftest* +]) +]) + + +dnl +dnl $Id$ +dnl + +dnl check for i386 gas supporting 16 bit mode +dnl - binutils 2.9.1.0.7 and higher + +AC_DEFUN(RTEMS_I386_GAS_CODE16, +[ if test "${target_cpu}" = "i386"; then + AC_CACHE_CHECK([for 16 bit mode assembler support], + rtems_cv_prog_gas_code16, + [cat > conftest.s << EOF + .code16 + data32 + addr32 + lgdt 0 +EOF + if AC_TRY_COMMAND($AS_FOR_TARGET -o conftest.o conftest.s); then + rtems_cv_prog_gas_code16=yes + else + rtems_cv_prog_gas_code16=no + fi]) + RTEMS_GAS_CODE16="$rtems_cv_prog_gas_code16" + fi + AC_SUBST(RTEMS_GAS_CODE16) +]) + + +dnl $Id$ + +dnl Report all available bsps for a target, +dnl check if a bsp-subdirectory is present for all bsps found +dnl +dnl RTEMS_CHECK_BSPS(bsp_list) +AC_DEFUN(RTEMS_CHECK_BSPS, +[ +AC_REQUIRE([RTEMS_CHECK_CPU])dnl sets RTEMS_CPU, target +AC_REQUIRE([RTEMS_TOP])dnl sets RTEMS_TOPdir +AC_MSG_CHECKING([for bsps]) +case "${target}" in +changequote(,)dnl + i[3456]86-go32-rtems*) +changequote([,])dnl + $1="go32 go32_p5" + ;; + *) + files=`ls $srcdir/$RTEMS_TOPdir/c/src/lib/libbsp/$RTEMS_CPU` + for file in $files; do + case $file in + shared*);; + Makefile*);; + READ*);; + CVS*);; + pxfl*);; + go32*);; # so the i386 port can pick up the other Makefiles + # Now account for BSPs with build variants + gen68360) rtems_bsp="$rtems_bsp gen68360 gen68360_040";; + p4000) rtems_bsp="$rtems_bsp p4600 p4650";; + mvme162) rtems_bsp="$rtems_bsp mvme162 mvme162lx";; + *) $1="[$]$1 $file";; + esac; + done + ;; +esac +AC_MSG_RESULT([[$]$1 .. done]) +])dnl + +AC_DEFUN(RTEMS_CHECK_CUSTOM_BSP, +[dnl +AC_MSG_CHECKING([for make/custom/[$]$1.cfg]) +if test -r "$srcdir/$RTEMS_TOPdir/make/custom/[$]$1.cfg"; then + AC_MSG_RESULT([yes]) +else + AC_MSG_ERROR([no]) +fi +])dnl + +AC_DEFUN(RTEMS_CHECK_RDBG, +[dnl +AC_REQUIRE([RTEMS_TOP])dnl +AC_REQUIRE([RTEMS_CHECK_CPU])dnl +AC_CACHE_CHECK([whether cpu supports librdbg], + rtems_cv_has_rdbg, + [ + if test -d "$srcdir/${RTEMS_TOPdir}/c/src/lib/librdbg/${RTEMS_CPU}"; then + rtems_cv_has_rdbg="yes" ; + else + rtems_cv_has_rdbg="no"; + fi + ]) +]) + diff --git a/c/src/make/compilers/Makefile.am b/c/src/make/compilers/Makefile.am new file mode 100644 index 0000000000..91e6c934bb --- /dev/null +++ b/c/src/make/compilers/Makefile.am @@ -0,0 +1,21 @@ +# +# $Id$ +# + +AUTOMAKE_OPTIONS = foreign 1.4 + +rtems_makedir=$(prefix)/make +rtems_make_compilersdir=$(rtems_makedir)/compilers + +# At the moment all actively supported configurations +# use gcc-target-default.cfg only. +rtems_make_compilers_DATA= \ +gcc.cfg \ +gcc-target-default.cfg + +if MAINTAINER_MODE +$(srcdir)/gcc.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/compilers/gcc.cfg.in + cp $< $@ +endif + +include $(top_srcdir)/../../../automake/local.am diff --git a/c/src/make/compilers/Makefile.in b/c/src/make/compilers/Makefile.in new file mode 100644 index 0000000000..e802f333c9 --- /dev/null +++ b/c/src/make/compilers/Makefile.in @@ -0,0 +1,293 @@ +# 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. + +# +# $Id$ +# + + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @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@ +BARE_CPU_CFLAGS = @BARE_CPU_CFLAGS@ +BARE_CPU_MODEL = @BARE_CPU_MODEL@ +CAT = @CAT@ +CC = @CC@ +CC_CFLAGS_DEBUG_V = @CC_CFLAGS_DEBUG_V@ +CC_CFLAGS_DEFAULT = @CC_CFLAGS_DEFAULT@ +CC_CFLAGS_PROFILE_V = @CC_CFLAGS_PROFILE_V@ +CC_FOR_TARGET = @CC_FOR_TARGET@ +CC_LDFLAGS_PROFILE_V = @CC_LDFLAGS_PROFILE_V@ +CHMOD = @CHMOD@ +CMP = @CMP@ +CP = @CP@ +CPP = @CPP@ +CUSTOM_CFG_FILES = @CUSTOM_CFG_FILES@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXX_FOR_TARGET = @CXX_FOR_TARGET@ +GCCSED = @GCCSED@ +INSTALL_CHANGE = @INSTALL_CHANGE@ +KSH = @KSH@ +LN = @LN@ +LN_S = @LN_S@ +M4 = @M4@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MV = @MV@ +PACKAGE = @PACKAGE@ +PACKHEX = @PACKHEX@ +PERL = @PERL@ +PROJECT_ROOT = @PROJECT_ROOT@ +RM = @RM@ +RTEMS_BSP = @RTEMS_BSP@ +RTEMS_CPU = @RTEMS_CPU@ +RTEMS_GAS_CODE16 = @RTEMS_GAS_CODE16@ +RTEMS_HAS_CPLUSPLUS = @RTEMS_HAS_CPLUSPLUS@ +RTEMS_HAS_MULTIPROCESSING = @RTEMS_HAS_MULTIPROCESSING@ +RTEMS_HAS_NETWORKING = @RTEMS_HAS_NETWORKING@ +RTEMS_HAS_POSIX_API = @RTEMS_HAS_POSIX_API@ +RTEMS_HAS_RDBG = @RTEMS_HAS_RDBG@ +RTEMS_HOST = @RTEMS_HOST@ +RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@ +RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_TOPdir = @RTEMS_TOPdir@ +RTEMS_USE_GCC272 = @RTEMS_USE_GCC272@ +RTEMS_USE_MACROS = @RTEMS_USE_MACROS@ +SED = @SED@ +SORT = @SORT@ +TOUCH = @TOUCH@ +VERSION = @VERSION@ +program_prefix = @program_prefix@ +rtems_cv_prog_cc_cross = @rtems_cv_prog_cc_cross@ + +AUTOMAKE_OPTIONS = foreign 1.4 + +rtems_makedir = $(prefix)/make +rtems_make_compilersdir = $(rtems_makedir)/compilers + +# At the moment all actively supported configurations +# use gcc-target-default.cfg only. +rtems_make_compilers_DATA = gcc.cfg gcc-target-default.cfg + +mkinstalldirs = $(SHELL) $(top_srcdir)/../../../mkinstalldirs +CONFIG_CLEAN_FILES = gcc.cfg +DATA = $(rtems_make_compilers_DATA) + +DIST_COMMON = Makefile.am Makefile.in gcc.cfg.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +all: all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/../../../automake/local.am + cd $(top_srcdir) && $(AUTOMAKE) --foreign compilers/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +gcc.cfg: $(top_builddir)/config.status gcc.cfg.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +install-rtems_make_compilersDATA: $(rtems_make_compilers_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(rtems_make_compilersdir) + @list='$(rtems_make_compilers_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_make_compilersdir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_make_compilersdir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_make_compilersdir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_make_compilersdir)/$$p; \ + fi; fi; \ + done + +uninstall-rtems_make_compilersDATA: + @$(NORMAL_UNINSTALL) + list='$(rtems_make_compilers_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(rtems_make_compilersdir)/$$p; \ + done +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = compilers + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign compilers/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$/$$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: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-rtems_make_compilersDATA +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-rtems_make_compilersDATA +uninstall: uninstall-am +all-am: Makefile $(DATA) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + $(mkinstalldirs) $(DESTDIR)$(rtems_make_compilersdir) + + +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-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +clean: clean-am + +distclean-am: distclean-generic clean-am + +distclean: distclean-am + +maintainer-clean-am: 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: uninstall-rtems_make_compilersDATA \ +install-rtems_make_compilersDATA tags distdir info-am info dvi-am dvi \ +check check-am installcheck-am installcheck 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 + + +@MAINTAINER_MODE_TRUE@$(srcdir)/gcc.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/compilers/gcc.cfg.in +@MAINTAINER_MODE_TRUE@ cp $< $@ + +debug-am: +debug: debug-am +.PHONY: debug debug-am + +debug_install-am: +debug_install: debug_install-am +.PHONY: debug_install debug_install-am + +profile-am: +profile: profile-am +.PHONY: profile profile-am + +profile_install-am: +profile_install: profile_install-am +.PHONY: profile_install profile_install-am + +preinstall-am: +preinstall: preinstall-am +.PHONY: preinstall preinstall-am + +clobber-am: +clobber: clobber-am +.PHONY: clobber clobber-am + +depend-am: +depend: depend-am +.PHONY: depend depend-am + +# 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: diff --git a/c/src/make/compilers/gcc.cfg.in b/c/src/make/compilers/gcc.cfg.in new file mode 100644 index 0000000000..590bacc213 --- /dev/null +++ b/c/src/make/compilers/gcc.cfg.in @@ -0,0 +1,203 @@ +# +# $Id$ +# +# gcc 2.6.x native compiler +# Compiler (and tools) configuration +# + +# Additional target names (other than debug, profile) +TARGET_VARIANTS += + +# +# Pre-processor defines. +# Local tailoring (on the command line) can be done by setting XCPPFLAGS +# which is never set in the Makefile's +# + +CPPFLAGS=$(XCPPFLAGS) $(DEFINES) + +# +# Local tailoring (on the command line) can be done by setting CFLAGS +# which is never set in the Makefile's +# + +# +# CFLAGS_OPTIMIZE_V, CFLAGS_DEBUG_V, CFLAGS_PROFILE_V are the values we +# would want the corresponding macros to be set to. +# +# CFLAGS_OPTIMIZE, CFLAGS_DEBUG, CFLAGS_PROFILE are set in the leaf +# Makefiles by the 'debug:' and 'profile:' targets to their _V values. +# + +# default flags + +CFLAGS_DEFAULT = @CC_CFLAGS_DEFAULT@ + +# Under MS-DOS do not use pipes +# It turns out the pipes don't work with some non-gas assemblers either. :( +# ifneq ($(RTEMS_HOST),msdos) +# # CFLAGS_DEFAULT += -pipe +# CFLAGS_DEFAULT += +# endif + +# Additional target names (other than debug, profile) + +# optimize flag: typically -0, could use -O4 or -fast +# -O4 is ok for RTEMS +CFLAGS_OPTIMIZE_V=-O + +# debug flag; typically -g +CFLAGS_DEBUG_V=@CC_CFLAGS_DEBUG_V@ + +# when debugging, optimize flag: typically empty +# some compilers do allow optimization with their "-g" +CFLAGS_DEBUG_OPTIMIZE_V= + +# profile flag; use gprof(1) +CFLAGS_PROFILE_V=@CC_CFLAGS_PROFILE_V@ + +# default is to optimize +CFLAGS_OPTIMIZE=$(CFLAGS_OPTIMIZE_V) + +# dynamic libraries +CFLAGS_DYNAMIC_V=-fpic +ASFLAGS_DYNAMIC_V= + +# XCFLAGS are now local flags to avoid conflict with cygnus configure +XCFLAGS=$(CFLAGS_OPTIMIZE) $(CFLAGS_DEBUG) $(CFLAGS_PROFILE) \ + $(CFLAGS_DEFAULT) + +# List of library paths without -L +LD_PATHS= + +# libraries you want EVERYONE to link with +LD_LIBS= + +# ld flag to ensure pure-text +LDFLAGS_MUST_BE_PURE_V = + +# ld flag for [un]shared objects +LDFLAGS_STATIC_LIBRARIES_V = +LDFLAGS_SHARED_LIBRARIES_V = + +# ld flag for incomplete link +LDFLAGS_INCOMPLETE = -r + +# Special linker options when building lib.so +LDFLAGS_DYNAMIC_V = ?? + +# Some dynamic linking systems want the preferred name recorded in the binary +# ref: src/libxil/Makefile +LDFLAGS_DYNAMIC_LIBNAME_V = -h $(DYNAMIC_VERSION_LIBNAME) + +# ld flags for profiling, debugging +LDFLAGS_PROFILE_V = @CC_LDFLAGS_PROFILE_V@ +LDFLAGS_DEBUG_V = + +LDFLAGS=$(LDFLAGS_PROFILE) $(LDFLAGS_DEBUG) $(LD_PATHS:%=-L %) + +# +# Stuff to clean and clobber for the compiler and its tools +# + +CLEAN_CC = a.out *.o *.BAK +CLOBBER_CC = + +# +# Client compiler and support tools +# + +# CC_FOR_BUILD=gcc -O +# override CC=$(CC_FOR_BUILD) + +CC=@CC@ + +# CPP command to write file to standard output +CPP=$(CC) -E + +# flags set by cc when running cpp +CPP_CC_FLAGS=-D__STDC__ + +# egrep regexp to ignore symbol table entries in ar archives. +# Only used to make sure we skip them when coalescing libraries. +# skip __.SYMDEF and empty names (maybe bug in ranlib??). +AR_SYMBOL_TABLE="HIGHLY-UNLIKELY-TO-CONFLICT" +ARFLAGS=ruv + +# +# Command to convert a normal archive to one searchable by $(LD) +# Not needed on SVR4 +# FIXME: Should be handled by autoconf. Doesn't matter, because +# rtems doesn't have any host-libraries until now. +# + +MKLIB=echo library is complete: + +# +# How to compile stuff into ${ARCH} subdirectory +# +# NOTE: we override COMPILE.c +# + +COMPILE.c=$(CC) $(CFLAGS) $(CPPFLAGS) $(XCFLAGS) -c + +${ARCH}/%.o: %.c + ${COMPILE.c} -o $@ $< + +${ARCH}/%.o: %.cc + ${COMPILE.c} -o $@ $< + +# assembly runs gasp +${ARCH}/%.o: %.s + $(CPP) ${CPPFLAGS} $< | $(SED) 's/% /%/g' | $(SED) 's/^#.*//' >$(ARCH)/$*.i + $(AS) -o $@ $(ARCH)/$*.i + $(RM) $(ARCH)/$*.i + +# Link host applications. +define make-exe + ${CC} ${LDFLAGS} -o $@ $^ ${LD_LIBS} +endef + +# Specify our own default rule for this to prevent having CFLAGS and +# CPPFLAGS being passed to linker +# +# NOTE: This rule is only used as fallback for host-tool makefiles +# which don't provide their own rule +${ARCH}/%$(EXEEXT): ${ARCH}/%.o + $(make-exe) + +# create $(ARCH)/pgm from pgm.sh +${ARCH}/%: %.sh + $(RM) $@ + $(CP) $< $@ + $(CHMOD) +x $@ + +# Dependency files for use by gmake +# NOTE: we don't put in $(TARGET_ARCH) +# so that 'make clean' doesn't blow it away + +DEPEND=Depends-$(TARGET_ARCH:o-%=%) + +CLEAN_DEPEND=$(DEPEND).tmp +CLOBBER_DEPEND=$(DEPEND) + +# We deliberately don't have anything depend on the +# $(DEPEND) file; otherwise it will get rebuilt even +# on 'make clean' +# + +depend: $(C_FILES) $(CC_FILES) $(S_FILES) +ifneq ($(words $(C_FILES) $(CC_FILES) $(S_FILES)), 0) +# Use gcc -M to generate dependencies +# Replace foo.o with $(ARCH)/foo.o +# Replace $(ARCH) value with string $(ARCH) +# so that it will for debug and profile cases + $(COMPILE.c) -M $^ | \ + $(SED) -e 's?^\(.*\)\.o[ ]*:?$$(ARCH)/\1.o:?' \ + -e 's?$(ARCH)/?$$(ARCH)/?' >$(DEPEND).tmp + $(MV) $(DEPEND).tmp $(DEPEND) +endif + +define make-rel + $(LD) $(LDFLAGS_INCOMPLETE) $(XLDFLAGS) -o $@ $(OBJS) +endef diff --git a/c/src/make/configure b/c/src/make/configure new file mode 100644 index 0000000000..50532e36d4 --- /dev/null +++ b/c/src/make/configure @@ -0,0 +1,3399 @@ +#! /bin/sh + +# Guess values for system-dependent variables and create Makefiles. +# Generated automatically using autoconf version 2.13 +# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. +# +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Defaults: +ac_help= +ac_default_prefix=/usr/local +# Any additions from configure.in: +ac_help="$ac_help + --with-target-subdir=DIR" +ac_help="$ac_help + --enable-maintainer-mode enable make rules and dependencies not useful + (and sometimes confusing) to the casual installer" +ac_help="$ac_help + --enable-multiprocessing enable multiprocessing interface" +ac_help="$ac_help + --enable-posix enable posix interface" +ac_help="$ac_help + --enable-networking enable TCP/IP stack" +ac_help="$ac_help + --enable-rdbg enable remote debugger" +ac_help="$ac_help + --enable-rtems-inlines enable RTEMS inline functions + (default:enabled, disable to use macros)" +ac_help="$ac_help + --enable-cxx enable C++ support, + and build the rtems++ library" +ac_help="$ac_help + --enable-gcc28 enable use of gcc 2.8.x features" +ac_help="$ac_help + --enable-libcdir=directory set the directory for the C library" +ac_help="$ac_help + --enable-bare-cpu-cflags specify a particular cpu cflag + (bare bsp specific)" +ac_help="$ac_help + --enable-bare-cpu-model specify a particular cpu model + (bare bsp specific)" + +# Initialize some variables set by options. +# The variables have the same names as the options, with +# dashes changed to underlines. +build=NONE +cache_file=./config.cache +exec_prefix=NONE +host=NONE +no_create= +nonopt=NONE +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +target=NONE +verbose= +x_includes=NONE +x_libraries=NONE +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datadir='${prefix}/share' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +libdir='${exec_prefix}/lib' +includedir='${prefix}/include' +oldincludedir='/usr/include' +infodir='${prefix}/info' +mandir='${prefix}/man' + +# Initialize some other variables. +subdirs= +MFLAGS= MAKEFLAGS= +SHELL=${CONFIG_SHELL-/bin/sh} +# Maximum number of lines to put in a shell here document. +ac_max_here_lines=12 + +ac_prev= +for ac_option +do + + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval "$ac_prev=\$ac_option" + ac_prev= + continue + fi + + case "$ac_option" in + -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) ac_optarg= ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case "$ac_option" in + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir="$ac_optarg" ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build="$ac_optarg" ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file="$ac_optarg" ;; + + -datadir | --datadir | --datadi | --datad | --data | --dat | --da) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ + | --da=*) + datadir="$ac_optarg" ;; + + -disable-* | --disable-*) + ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + eval "enable_${ac_feature}=no" ;; + + -enable-* | --enable-*) + ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "enable_${ac_feature}='$ac_optarg'" ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix="$ac_optarg" ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he) + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat << EOF +Usage: configure [options] [host] +Options: [defaults in brackets after descriptions] +Configuration: + --cache-file=FILE cache test results in FILE + --help print this message + --no-create do not create output files + --quiet, --silent do not print \`checking...' messages + --version print the version of autoconf that created configure +Directory and file names: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [same as prefix] + --bindir=DIR user executables in DIR [EPREFIX/bin] + --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] + --libexecdir=DIR program executables in DIR [EPREFIX/libexec] + --datadir=DIR read-only architecture-independent data in DIR + [PREFIX/share] + --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data in DIR + [PREFIX/com] + --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] + --libdir=DIR object code libraries in DIR [EPREFIX/lib] + --includedir=DIR C header files in DIR [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] + --infodir=DIR info documentation in DIR [PREFIX/info] + --mandir=DIR man documentation in DIR [PREFIX/man] + --srcdir=DIR find the sources in DIR [configure dir or ..] + --program-prefix=PREFIX prepend PREFIX to installed program names + --program-suffix=SUFFIX append SUFFIX to installed program names + --program-transform-name=PROGRAM + run sed PROGRAM on installed program names +EOF + cat << EOF +Host type: + --build=BUILD configure for building on BUILD [BUILD=HOST] + --host=HOST configure for HOST [guessed] + --target=TARGET configure for TARGET [TARGET=HOST] +Features and packages: + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --x-includes=DIR X include files are in DIR + --x-libraries=DIR X library files are in DIR +EOF + if test -n "$ac_help"; then + echo "--enable and --with options recognized:$ac_help" + fi + exit 0 ;; + + -host | --host | --hos | --ho) + ac_prev=host ;; + -host=* | --host=* | --hos=* | --ho=*) + host="$ac_optarg" ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir="$ac_optarg" ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir="$ac_optarg" ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir="$ac_optarg" ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir="$ac_optarg" ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst \ + | --locals | --local | --loca | --loc | --lo) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* \ + | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) + localstatedir="$ac_optarg" ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir="$ac_optarg" ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir="$ac_optarg" ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix="$ac_optarg" ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix="$ac_optarg" ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix="$ac_optarg" ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name="$ac_optarg" ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir="$ac_optarg" ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir="$ac_optarg" ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site="$ac_optarg" ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir="$ac_optarg" ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir="$ac_optarg" ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target="$ac_optarg" ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers) + echo "configure generated by autoconf version 2.13" + exit 0 ;; + + -with-* | --with-*) + ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "with_${ac_package}='$ac_optarg'" ;; + + -without-* | --without-*) + ac_package=`echo $ac_option|sed -e 's/-*without-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + eval "with_${ac_package}=no" ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes="$ac_optarg" ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries="$ac_optarg" ;; + + -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } + ;; + + *) + if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then + echo "configure: warning: $ac_option: invalid host type" 1>&2 + fi + if test "x$nonopt" != xNONE; then + { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } + fi + nonopt="$ac_option" + ;; + + esac +done + +if test -n "$ac_prev"; then + { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } +fi + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +# File descriptor usage: +# 0 standard input +# 1 file creation +# 2 errors and warnings +# 3 some systems may open it to /dev/tty +# 4 used on the Kubota Titan +# 6 checking for... messages and results +# 5 compiler messages saved in config.log +if test "$silent" = yes; then + exec 6>/dev/null +else + exec 6>&1 +fi +exec 5>./config.log + +echo "\ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. +" 1>&5 + +# Strip out --no-create and --no-recursion so they do not pile up. +# Also quote any args containing shell metacharacters. +ac_configure_args= +for ac_arg +do + case "$ac_arg" in + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c) ;; + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) + ac_configure_args="$ac_configure_args '$ac_arg'" ;; + *) ac_configure_args="$ac_configure_args $ac_arg" ;; + esac +done + +# NLS nuisances. +# Only set these to C if already set. These must not be set unconditionally +# because not all systems understand e.g. LANG=C (notably SCO). +# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! +# Non-C LC_CTYPE values break the ctype check. +if test "${LANG+set}" = set; then LANG=C; export LANG; fi +if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi +if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi +if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -rf conftest* confdefs.h +# AIX cpp loses on an empty file, so make sure it contains at least a newline. +echo > confdefs.h + +# A filename unique to this package, relative to the directory that +# configure is in, which we can look for to find out if srcdir is correct. +ac_unique_file=main.cfg.in + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then its parent. + ac_prog=$0 + ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` + test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. + srcdir=$ac_confdir + if test ! -r $srcdir/$ac_unique_file; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r $srcdir/$ac_unique_file; then + if test "$ac_srcdir_defaulted" = yes; then + { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } + else + { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } + fi +fi +srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` + +# Prefer explicitly selected file to automatically selected ones. +if test -z "$CONFIG_SITE"; then + if test "x$prefix" != xNONE; then + CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" + else + CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" + fi +fi +for ac_site_file in $CONFIG_SITE; do + if test -r "$ac_site_file"; then + echo "loading site script $ac_site_file" + . "$ac_site_file" + fi +done + +if test -r "$cache_file"; then + echo "loading cache $cache_file" + . $cache_file +else + echo "creating cache $cache_file" + > $cache_file +fi + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +ac_exeext= +ac_objext=o +if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then + # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. + if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then + ac_n= ac_c=' +' ac_t=' ' + else + ac_n=-n ac_c= ac_t= + fi +else + ac_n= ac_c='\c' ac_t= +fi + + +# Check whether --with-target-subdir or --without-target-subdir was given. +if test "${with_target_subdir+set}" = set; then + withval="$with_target_subdir" + TARGET_SUBDIR="$withval" +else + TARGET_SUBDIR="." +fi + + +RTEMS_TOPdir="../../.."; + + +echo $ac_n "checking for RTEMS Version""... $ac_c" 1>&6 +echo "configure:567: checking for RTEMS Version" >&5 +if test -r "${srcdir}/${RTEMS_TOPdir}/VERSION"; then +RTEMS_VERSION=`grep Version ${srcdir}/${RTEMS_TOPdir}/VERSION | \ +sed -e 's%RTEMS[ ]*Version[ ]*\(.*\)[ ]*%\1%g'` +else +{ echo "configure: error: Unable to find ${RTEMS_TOPdir}/VERSION" 1>&2; exit 1; } +fi +if test -z "$RTEMS_VERSION"; then +{ echo "configure: error: Unable to determine version" 1>&2; exit 1; } +fi +echo "$ac_t""$RTEMS_VERSION" 1>&6 + +ac_aux_dir= +for ac_dir in ../../.. $srcdir/../../..; do + if test -f $ac_dir/install-sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f $ac_dir/install.sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + fi +done +if test -z "$ac_aux_dir"; then + { echo "configure: error: can not find install-sh or install.sh in ../../.. $srcdir/../../.." 1>&2; exit 1; } +fi +ac_config_guess=$ac_aux_dir/config.guess +ac_config_sub=$ac_aux_dir/config.sub +ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. + + +echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 +echo "configure:600: checking whether ${MAKE-make} sets \${MAKE}" >&5 +set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftestmake <<\EOF +all: + @echo 'ac_maketemp="${MAKE}"' +EOF +# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=` +if test -n "$ac_maketemp"; then + eval ac_cv_prog_make_${ac_make}_set=yes +else + eval ac_cv_prog_make_${ac_make}_set=no +fi +rm -f conftestmake +fi +if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then + echo "$ac_t""yes" 1>&6 + SET_MAKE= +else + echo "$ac_t""no" 1>&6 + SET_MAKE="MAKE=${MAKE-make}" +fi + + + +# Do some error checking and defaulting for the host and target type. +# The inputs are: +# configure --host=HOST --target=TARGET --build=BUILD NONOPT +# +# The rules are: +# 1. You are not allowed to specify --host, --target, and nonopt at the +# same time. +# 2. Host defaults to nonopt. +# 3. If nonopt is not specified, then host defaults to the current host, +# as determined by config.guess. +# 4. Target and build default to nonopt. +# 5. If nonopt is not specified, then target and build default to host. + +# The aliases save the names the user supplied, while $host etc. +# will get canonicalized. +case $host---$target---$nonopt in +NONE---*---* | *---NONE---* | *---*---NONE) ;; +*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;; +esac + + +# Make sure we can run config.sub. +if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : +else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } +fi + +echo $ac_n "checking host system type""... $ac_c" 1>&6 +echo "configure:655: checking host system type" >&5 + +host_alias=$host +case "$host_alias" in +NONE) + case $nonopt in + NONE) + if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : + else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } + fi ;; + *) host_alias=$nonopt ;; + esac ;; +esac + +host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` +host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echo "$ac_t""$host" 1>&6 + +echo $ac_n "checking target system type""... $ac_c" 1>&6 +echo "configure:676: checking target system type" >&5 + +target_alias=$target +case "$target_alias" in +NONE) + case $nonopt in + NONE) target_alias=$host_alias ;; + *) target_alias=$nonopt ;; + esac ;; +esac + +target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias` +target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echo "$ac_t""$target" 1>&6 + +echo $ac_n "checking build system type""... $ac_c" 1>&6 +echo "configure:694: checking build system type" >&5 + +build_alias=$build +case "$build_alias" in +NONE) + case $nonopt in + NONE) build_alias=$host_alias ;; + *) build_alias=$nonopt ;; + esac ;; +esac + +build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias` +build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echo "$ac_t""$build" 1>&6 + +test "$host_alias" != "$target_alias" && + test "$program_prefix$program_suffix$program_transform_name" = \ + NONENONEs,x,x, && + program_prefix=${target_alias}- + +echo $ac_n "checking rtems target cpu""... $ac_c" 1>&6 +echo "configure:717: checking rtems target cpu" >&5 +case "${target}" in + # hpux unix port should go here + i[3456]86-go32-rtems*) + RTEMS_CPU=i386 + ;; + i[3456]86-pc-linux*) # unix "simulator" port + RTEMS_CPU=unix + ;; + i[3456]86-*freebsd2*) # unix "simulator" port + RTEMS_CPU=unix + ;; + no_cpu-*rtems*) + RTEMS_CPU=no_cpu + ;; + sparc-sun-solaris*) # unix "simulator" port + RTEMS_CPU=unix + ;; + *) + RTEMS_CPU=`echo $target | sed 's%^\([^-]*\)-\(.*\)$%\1%'` + ;; +esac + +echo "$ac_t""$RTEMS_CPU" 1>&6 + + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# ./install, which can be erroneously created by make from ./install.sh. +echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 +echo "configure:755: checking for a BSD compatible install" >&5 +if test -z "$INSTALL"; then +if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" + for ac_dir in $PATH; do + # Account for people who put trailing slashes in PATH elements. + case "$ac_dir/" in + /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + if test -f $ac_dir/$ac_prog; then + if test $ac_prog = install && + grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + else + ac_cv_path_install="$ac_dir/$ac_prog -c" + break 2 + fi + fi + done + ;; + esac + done + IFS="$ac_save_IFS" + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL="$ac_cv_path_install" + else + # As a last resort, use the slow shell script. We don't cache a + # path for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the path is relative. + INSTALL="$ac_install_sh" + fi +fi +echo "$ac_t""$INSTALL" 1>&6 + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 +echo "configure:808: checking whether build environment is sane" >&5 +# Just in case +sleep 1 +echo timestamp > conftestfile +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` + if test "$*" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + if test "$*" != "X $srcdir/configure conftestfile" \ + && test "$*" != "X conftestfile $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + { echo "configure: error: ls -t appears to fail. Make sure there is not a broken +alias in your environment" 1>&2; exit 1; } + fi + + test "$2" = conftestfile + ) +then + # Ok. + : +else + { echo "configure: error: newly created file is older than distributed files! +Check your system clock" 1>&2; exit 1; } +fi +rm -f conftest* +echo "$ac_t""yes" 1>&6 +if test "$program_transform_name" = s,x,x,; then + program_transform_name= +else + # Double any \ or $. echo might interpret backslashes. + cat <<\EOF_SED > conftestsed +s,\\,\\\\,g; s,\$,$$,g +EOF_SED + program_transform_name="`echo $program_transform_name|sed -f conftestsed`" + rm -f conftestsed +fi +test "$program_prefix" != NONE && + program_transform_name="s,^,${program_prefix},; $program_transform_name" +# Use a double $ so make ignores it. +test "$program_suffix" != NONE && + program_transform_name="s,\$\$,${program_suffix},; $program_transform_name" + +# sed with no file args requires a program. +test "$program_transform_name" = "" && program_transform_name="s,x,x," + + +PACKAGE=rtems-c-src-make + +VERSION=$RTEMS_VERSION + +if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then + { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } +fi + + + +missing_dir=`cd $ac_aux_dir && pwd` +echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 +echo "configure:877: checking for working aclocal" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (aclocal --version) < /dev/null > /dev/null 2>&1; then + ACLOCAL=aclocal + echo "$ac_t""found" 1>&6 +else + ACLOCAL="$missing_dir/missing aclocal" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 +echo "configure:890: checking for working autoconf" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoconf --version) < /dev/null > /dev/null 2>&1; then + AUTOCONF=autoconf + echo "$ac_t""found" 1>&6 +else + AUTOCONF="$missing_dir/missing autoconf" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working automake""... $ac_c" 1>&6 +echo "configure:903: checking for working automake" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (automake --version) < /dev/null > /dev/null 2>&1; then + AUTOMAKE=automake + echo "$ac_t""found" 1>&6 +else + AUTOMAKE="$missing_dir/missing automake" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 +echo "configure:916: checking for working autoheader" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoheader --version) < /dev/null > /dev/null 2>&1; then + AUTOHEADER=autoheader + echo "$ac_t""found" 1>&6 +else + AUTOHEADER="$missing_dir/missing autoheader" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 +echo "configure:929: checking for working makeinfo" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (makeinfo --version) < /dev/null > /dev/null 2>&1; then + MAKEINFO=makeinfo + echo "$ac_t""found" 1>&6 +else + MAKEINFO="$missing_dir/missing makeinfo" + echo "$ac_t""missing" 1>&6 +fi + + +echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 +echo "configure:943: checking whether to enable maintainer-specific portions of Makefiles" >&5 + # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. +if test "${enable_maintainer_mode+set}" = set; then + enableval="$enable_maintainer_mode" + USE_MAINTAINER_MODE=$enableval +else + USE_MAINTAINER_MODE=no +fi + + echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6 + + +if test $USE_MAINTAINER_MODE = yes; then + MAINTAINER_MODE_TRUE= + MAINTAINER_MODE_FALSE='#' +else + MAINTAINER_MODE_TRUE='#' + MAINTAINER_MODE_FALSE= +fi + MAINT=$MAINTAINER_MODE_TRUE + + + + +# Check whether --enable-multiprocessing or --disable-multiprocessing was given. +if test "${enable_multiprocessing+set}" = set; then + enableval="$enable_multiprocessing" + case "${enableval}" in + yes) RTEMS_HAS_MULTIPROCESSING=yes ;; + no) RTEMS_HAS_MULTIPROCESSING=no ;; + *) { echo "configure: error: bad value ${enableval} for enable-multiprocessing option" 1>&2; exit 1; } ;; +esac +else + RTEMS_HAS_MULTIPROCESSING=no +fi + + + +# Check whether --enable-posix or --disable-posix was given. +if test "${enable_posix+set}" = set; then + enableval="$enable_posix" + case "${enableval}" in + yes) RTEMS_HAS_POSIX_API=yes ;; + no) RTEMS_HAS_POSIX_API=no ;; + *) { echo "configure: error: bad value ${enableval} for enable-posix option" 1>&2; exit 1; } ;; +esac +else + RTEMS_HAS_POSIX_API=yes +fi + + + +case "${target}" in + # hpux unix port should go here + i[3456]86-go32-rtems*) + RTEMS_HAS_POSIX_API=no + ;; + i[3456]86-pc-linux*) # unix "simulator" port + RTEMS_HAS_POSIX_API=no + ;; + i[3456]86-*freebsd2*) # unix "simulator" port + RTEMS_HAS_POSIX_API=no + ;; + no_cpu-*rtems*) + RTEMS_HAS_POSIX_API=no + ;; + sparc-sun-solaris*) # unix "simulator" port + RTEMS_HAS_POSIX_API=no + ;; + *) + ;; +esac + + + +# Check whether --enable-networking or --disable-networking was given. +if test "${enable_networking+set}" = set; then + enableval="$enable_networking" + case "${enableval}" in + yes) RTEMS_HAS_NETWORKING=yes ;; + no) RTEMS_HAS_NETWORKING=no ;; + *) { echo "configure: error: bad value ${enableval} for enable-networking option" 1>&2; exit 1; } ;; +esac +else + RTEMS_HAS_NETWORKING=yes +fi + + + +# Check whether --enable-rdbg or --disable-rdbg was given. +if test "${enable_rdbg+set}" = set; then + enableval="$enable_rdbg" + case "${enableval}" in + yes) RTEMS_HAS_RDBG=yes ;; + no) RTEMS_HAS_RDBG=no ;; + *) { echo "configure: error: bad value ${enableval} for enable-rdbg option" 1>&2; exit 1; } ;; +esac +else + RTEMS_HAS_RDBG=no +fi + + +# Check whether --enable-rtems-inlines or --disable-rtems-inlines was given. +if test "${enable_rtems_inlines+set}" = set; then + enableval="$enable_rtems_inlines" + case "${enableval}" in + yes) RTEMS_USE_MACROS=no ;; + no) RTEMS_USE_MACROS=yes ;; + *) { echo "configure: error: bad value ${enableval} for disable-rtems-inlines option" 1>&2; exit 1; } ;; +esac +else + RTEMS_USE_MACROS=no +fi + + + +# Check whether --enable-cxx or --disable-cxx was given. +if test "${enable_cxx+set}" = set; then + enableval="$enable_cxx" + case "${enableval}" in + yes) RTEMS_HAS_CPLUSPLUS=yes ;; + no) RTEMS_HAS_CPLUSPLUS=no ;; + *) { echo "configure: error: bad value ${enableval} for enable-cxx option" 1>&2; exit 1; } ;; +esac +else + RTEMS_HAS_CPLUSPLUS=no +fi + + + +# Check whether --enable-gcc28 or --disable-gcc28 was given. +if test "${enable_gcc28+set}" = set; then + enableval="$enable_gcc28" + case "${enableval}" in + yes) RTEMS_USE_GCC272=no ;; + no) RTEMS_USE_GCC272=yes ;; + *) { echo "configure: error: bad value ${enableval} for gcc-28 option" 1>&2; exit 1; } ;; +esac +else + RTEMS_USE_GCC272=no +fi + + + +# Check whether --enable-libcdir or --disable-libcdir was given. +if test "${enable_libcdir+set}" = set; then + enableval="$enable_libcdir" + RTEMS_LIBC_DIR="${enableval}" ; \ +test -d ${enableval} || { echo "configure: error: "$enableval is not a directory" " 1>&2; exit 1; } +fi + + + +# Check whether --enable-bare-cpu-cflags or --disable-bare-cpu-cflags was given. +if test "${enable_bare_cpu_cflags+set}" = set; then + enableval="$enable_bare_cpu_cflags" + case "${enableval}" in + no) BARE_CPU_CFLAGS="" ;; + *) BARE_CPU_CFLAGS="${enableval}" ;; +esac +else + BARE_CPU_CFLAGS="" +fi + + +# Check whether --enable-bare-cpu-model or --disable-bare-cpu-model was given. +if test "${enable_bare_cpu_model+set}" = set; then + enableval="$enable_bare_cpu_model" + case "${enableval}" in + no) BARE_CPU_MODEL="" ;; + *) BARE_CPU_MODEL="${enableval}" ;; +esac +else + BARE_CPU_MODEL="" +fi + + + +echo $ac_n "checking for RTEMS_BSP""... $ac_c" 1>&6 +echo "configure:1122: checking for RTEMS_BSP" >&5 +if eval "test \"`echo '$''{'rtems_cv_RTEMS_BSP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + test -n "${RTEMS_BSP}" && rtems_cv_RTEMS_BSP="$RTEMS_BSP"; + +fi +if test -z "$rtems_cv_RTEMS_BSP"; then + { echo "configure: error: Missing RTEMS_BSP" 1>&2; exit 1; } +fi +RTEMS_BSP="$rtems_cv_RTEMS_BSP" +echo "$ac_t""${RTEMS_BSP}" 1>&6 + + + + +# Extract the first word of "cat", so it can be a program name with args. +set dummy cat; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1141: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_CAT'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$CAT" in + /*) + ac_cv_path_CAT="$CAT" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_CAT="$CAT" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_CAT="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +CAT="$ac_cv_path_CAT" +if test -n "$CAT"; then + echo "$ac_t""$CAT" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +# Extract the first word of "rm", so it can be a program name with args. +set dummy rm; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1176: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_RM'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$RM" in + /*) + ac_cv_path_RM="$RM" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_RM="$RM" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_RM="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +RM="$ac_cv_path_RM" +if test -n "$RM"; then + echo "$ac_t""$RM" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +# Extract the first word of "cp", so it can be a program name with args. +set dummy cp; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1211: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_CP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$CP" in + /*) + ac_cv_path_CP="$CP" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_CP="$CP" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_CP="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +CP="$ac_cv_path_CP" +if test -n "$CP"; then + echo "$ac_t""$CP" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +# Extract the first word of "mv", so it can be a program name with args. +set dummy mv; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1246: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_MV'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$MV" in + /*) + ac_cv_path_MV="$MV" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_MV="$MV" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_MV="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +MV="$ac_cv_path_MV" +if test -n "$MV"; then + echo "$ac_t""$MV" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +# Extract the first word of "ln", so it can be a program name with args. +set dummy ln; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1281: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_LN'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$LN" in + /*) + ac_cv_path_LN="$LN" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_LN="$LN" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_LN="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +LN="$ac_cv_path_LN" +if test -n "$LN"; then + echo "$ac_t""$LN" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 +echo "configure:1314: checking whether ln -s works" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + rm -f conftestdata +if ln -s X conftestdata 2>/dev/null +then + rm -f conftestdata + ac_cv_prog_LN_S="ln -s" +else + ac_cv_prog_LN_S=ln +fi +fi +LN_S="$ac_cv_prog_LN_S" +if test "$ac_cv_prog_LN_S" = "ln -s"; then + echo "$ac_t""yes" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +# Extract the first word of "chmod", so it can be a program name with args. +set dummy chmod; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1337: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_CHMOD'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$CHMOD" in + /*) + ac_cv_path_CHMOD="$CHMOD" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_CHMOD="$CHMOD" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_CHMOD="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +CHMOD="$ac_cv_path_CHMOD" +if test -n "$CHMOD"; then + echo "$ac_t""$CHMOD" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +# Extract the first word of "sort", so it can be a program name with args. +set dummy sort; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1372: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_SORT'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$SORT" in + /*) + ac_cv_path_SORT="$SORT" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_SORT="$SORT" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_SORT="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +SORT="$ac_cv_path_SORT" +if test -n "$SORT"; then + echo "$ac_t""$SORT" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# ./install, which can be erroneously created by make from ./install.sh. +echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 +echo "configure:1416: checking for a BSD compatible install" >&5 +if test -z "$INSTALL"; then +if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" + for ac_dir in $PATH; do + # Account for people who put trailing slashes in PATH elements. + case "$ac_dir/" in + /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + if test -f $ac_dir/$ac_prog; then + if test $ac_prog = install && + grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + else + ac_cv_path_install="$ac_dir/$ac_prog -c" + break 2 + fi + fi + done + ;; + esac + done + IFS="$ac_save_IFS" + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL="$ac_cv_path_install" + else + # As a last resort, use the slow shell script. We don't cache a + # path for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the path is relative. + INSTALL="$ac_install_sh" + fi +fi +echo "$ac_t""$INSTALL" 1>&6 + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + + +# Extract the first word of "perl", so it can be a program name with args. +set dummy perl; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1472: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$PERL" in + /*) + ac_cv_path_PERL="$PERL" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_PERL="$PERL" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_PERL="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +PERL="$ac_cv_path_PERL" +if test -n "$PERL"; then + echo "$ac_t""$PERL" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +if test -z "$PERL" ; then +echo "configure: warning: *** + perl was not found + Note: Some tools will not be built." 1>&2 +fi + + +# Extract the first word of "touch", so it can be a program name with args. +set dummy touch; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1514: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_TOUCH'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$TOUCH" in + /*) + ac_cv_path_TOUCH="$TOUCH" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_TOUCH="$TOUCH" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_TOUCH="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +TOUCH="$ac_cv_path_TOUCH" +if test -n "$TOUCH"; then + echo "$ac_t""$TOUCH" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +# Extract the first word of "cmp", so it can be a program name with args. +set dummy cmp; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1549: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_CMP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$CMP" in + /*) + ac_cv_path_CMP="$CMP" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_CMP="$CMP" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_CMP="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +CMP="$ac_cv_path_CMP" +if test -n "$CMP"; then + echo "$ac_t""$CMP" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + +# Extract the first word of "sed", so it can be a program name with args. +set dummy sed; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1585: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_SED'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$SED" in + /*) + ac_cv_path_SED="$SED" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_SED="$SED" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_SED="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +SED="$ac_cv_path_SED" +if test -n "$SED"; then + echo "$ac_t""$SED" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +for ac_prog in gm4 m4 +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1622: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_M4'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$M4" in + /*) + ac_cv_path_M4="$M4" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_M4="$M4" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_M4="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +M4="$ac_cv_path_M4" +if test -n "$M4"; then + echo "$ac_t""$M4" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$M4" && break +done + + + +for ac_prog in bash ksh sh +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1664: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_KSH'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$KSH" in + /*) + ac_cv_path_KSH="$KSH" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_KSH="$KSH" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_KSH="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +KSH="$ac_cv_path_KSH" +if test -n "$KSH"; then + echo "$ac_t""$KSH" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$KSH" && break +done + +if test -z "$KSH"; then +{ echo "configure: error: *** + Cannot determine a usable shell bash/ksh/sh + Please contact your system administrator " 1>&2; exit 1; }; +fi + + + + + +# Is this a supported CPU? +echo $ac_n "checking if cpu $RTEMS_CPU is supported""... $ac_c" 1>&6 +echo "configure:1711: checking if cpu $RTEMS_CPU is supported" >&5 +if test -d "$srcdir/$RTEMS_TOPdir/c/src/exec/score/cpu/$RTEMS_CPU"; then + echo "$ac_t""yes" 1>&6 +else + { echo "configure: error: no" 1>&2; exit 1; } +fi + + +RTEMS_HOST=$host_os +case "${target}" in + # hpux unix port should go here + i[3456]86-pc-linux*) # unix "simulator" port + RTEMS_HOST=Linux + ;; + i[3456]86-*freebsd2*) # unix "simulator" port + RTEMS_HOST=FreeBSD + ;; + sparc-sun-solaris*) # unix "simulator" port + RTEMS_HOST=Solaris + ;; + *) + ;; +esac + + + + +if test "$TARGET_SUBDIR" = "." ; then +PROJECT_ROOT=$RTEMS_TOPdir/'$(top_builddir)'; +else +PROJECT_ROOT=../$RTEMS_TOPdir/'$(top_builddir)' +fi + + +RTEMS_ROOT=$RTEMS_TOPdir/'$(top_builddir)'/c/$RTEMS_BSP + + +INSTALL_CHANGE="\$(KSH) \$(PROJECT_ROOT)/tools/build/install-if-change" + + +PACKHEX="\$(PROJECT_ROOT)/tools/build/packhex" + + + + +if [ "${program_prefix}" = "NONE" ] ; then + if [ "${target}" = "${host}" ] ; then + program_prefix= + else + program_prefix=${target}- + fi +fi + + + + +for ac_prog in "$program_prefix"gcc "$program_prefix"cc +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1772: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_CC_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$CC_FOR_TARGET" in + /*) + ac_cv_path_CC_FOR_TARGET="$CC_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_CC_FOR_TARGET="$CC_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_CC_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +CC_FOR_TARGET="$ac_cv_path_CC_FOR_TARGET" +if test -n "$CC_FOR_TARGET"; then + echo "$ac_t""$CC_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$CC_FOR_TARGET" && break +done + +test -z "$CC_FOR_TARGET" \ + && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } + +rtems_save_CC=$CC +rtems_save_CFLAGS=$CFLAGS + +CC=$CC_FOR_TARGET + +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:1816: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +cat > conftest.$ac_ext << EOF + +#line 1827 "configure" +#include "confdefs.h" + +main(){return(0);} +EOF +if { (eval echo configure:1832: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + ac_cv_prog_cc_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cc_cross=no + else + ac_cv_prog_cc_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cc_works=no +fi +rm -fr conftest* +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 +if test $ac_cv_prog_cc_works = no; then + { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:1858: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 +cross_compiling=$ac_cv_prog_cc_cross + +echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 +echo "configure:1863: checking whether we are using GNU C" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.c <<EOF +#ifdef __GNUC__ + yes; +#endif +EOF +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1872: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gcc=yes +else + ac_cv_prog_gcc=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gcc" 1>&6 + +if test $ac_cv_prog_gcc = yes; then + GCC=yes + ac_test_CFLAGS="${CFLAGS+set}" + ac_save_CFLAGS="$CFLAGS" + CFLAGS= + echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:1887: checking whether ${CC-cc} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.c +if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then + ac_cv_prog_cc_g=yes +else + ac_cv_prog_cc_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 + if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" + elif test $ac_cv_prog_cc_g = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-O2" + fi +else + GCC= + test "${CFLAGS+set}" = set || CFLAGS="-g" +fi + +rtems_cv_prog_gcc=$ac_cv_prog_gcc +rtems_cv_prog_cc_g=$ac_cv_prog_cc_g +rtems_cv_prog_cc_works=$ac_cv_prog_cc_works +rtems_cv_prog_cc_cross=$ac_cv_prog_cc_cross + +CC=$rtems_save_CC +CFLAGS=$rtems_save_CFLAGS + +unset ac_cv_prog_gcc +unset ac_cv_prog_cc_g +unset ac_cv_prog_cc_works +unset ac_cv_prog_cc_cross + + +echo $ac_n "checking whether $CC_FOR_TARGET accepts -specs""... $ac_c" 1>&6 +echo "configure:1929: checking whether $CC_FOR_TARGET accepts -specs" >&5 +if eval "test \"`echo '$''{'rtems_cv_gcc_specs'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +rtems_cv_gcc_specs=no +if test "$rtems_cv_prog_gcc" = "yes"; then + touch confspec + echo 'void f(){}' >conftest.c + if test -z "`${CC_FOR_TARGET} -specs confspec -c conftest.c 2>&1`";then + rtems_cv_gcc_specs=yes + fi +fi +rm -f confspec conftest* + +fi + +echo "$ac_t""$rtems_cv_gcc_specs" 1>&6 + + +echo $ac_n "checking whether $CC_FOR_TARGET accepts --pipe""... $ac_c" 1>&6 +echo "configure:1950: checking whether $CC_FOR_TARGET accepts --pipe" >&5 +if eval "test \"`echo '$''{'rtems_cv_gcc_pipe'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +rtems_cv_gcc_pipe=no +if test "$rtems_cv_prog_gcc" = "yes"; then +case "$host_os" in + cygwin*) + ;; + *) + echo 'void f(){}' >conftest.c + if test -z "`${CC_FOR_TARGET} --pipe -c conftest.c 2>&1`";then + rtems_cv_gcc_pipe=yes + fi + rm -f conftest* + ;; +esac +fi + +fi + +echo "$ac_t""$rtems_cv_gcc_pipe" 1>&6 + +if test "$RTEMS_USE_GCC272" != "yes" ; then + if test "$rtems_cv_gcc_specs" = "no"; then + echo "configure: warning: *** disabling --enable-gcc28" 1>&2 + RTEMS_USE_GCC272=yes + fi +fi +test "$rtems_cv_gcc_pipe" = "yes" && CC_FOR_TARGET="$CC_FOR_TARGET --pipe" + +case $host_os in +*cygwin*) GCCSED="| sed 's%\\\\%/%g'" ;; +*) ;; +esac + + + +if test "$RTEMS_HAS_CPLUSPLUS" = "yes"; then + + + +for ac_prog in "$program_prefix"g++ "$program_prefix"c++ +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1998: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_CXX_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$CXX_FOR_TARGET" in + /*) + ac_cv_path_CXX_FOR_TARGET="$CXX_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_CXX_FOR_TARGET="$CXX_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_CXX_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + ;; +esac +fi +CXX_FOR_TARGET="$ac_cv_path_CXX_FOR_TARGET" +if test -n "$CXX_FOR_TARGET"; then + echo "$ac_t""$CXX_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$CXX_FOR_TARGET" && break +done + +test -z "$CXX_FOR_TARGET" \ + && { echo "configure: error: no acceptable c++ found in \$PATH" 1>&2; exit 1; } + +rtems_save_CXX=$CXX +rtems_save_CXXFLAGS=$CXXFLAGS + +CXX=$CXX_FOR_TARGET + +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:2042: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 + +ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +cat > conftest.$ac_ext << EOF + +#line 2053 "configure" +#include "confdefs.h" + +int main(){return(0);} +EOF +if { (eval echo configure:2058: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + ac_cv_prog_cxx_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cxx_cross=no + else + ac_cv_prog_cxx_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cxx_works=no +fi +rm -fr conftest* +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +echo "$ac_t""$ac_cv_prog_cxx_works" 1>&6 +if test $ac_cv_prog_cxx_works = no; then + { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:2084: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6 +cross_compiling=$ac_cv_prog_cxx_cross + +echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 +echo "configure:2089: checking whether we are using GNU C++" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.C <<EOF +#ifdef __GNUC__ + yes; +#endif +EOF +if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:2098: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gxx=yes +else + ac_cv_prog_gxx=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gxx" 1>&6 + +if test $ac_cv_prog_gxx = yes; then + GXX=yes + ac_test_CXXFLAGS="${CXXFLAGS+set}" + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS= + echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 +echo "configure:2113: checking whether ${CXX-g++} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.cc +if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then + ac_cv_prog_cxx_g=yes +else + ac_cv_prog_cxx_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cxx_g" 1>&6 + if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS="$ac_save_CXXFLAGS" + elif test $ac_cv_prog_cxx_g = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-O2" + fi +else + GXX= + test "${CXXFLAGS+set}" = set || CXXFLAGS="-g" +fi + +rtems_cv_prog_gxx=$ac_cv_prog_gxx +rtems_cv_prog_cxx_g=$ac_cv_prog_cxx_g +rtems_cv_prog_cxx_works=$ac_cv_prog_cxx_works +rtems_cv_prog_cxx_cross=$ac_cv_prog_cxx_cross + +CXX=$rtems_save_CXX +CXXFLAGS=$rtems_save_CXXFLAGS + +unset ac_cv_prog_gxx +unset ac_cv_prog_cc_g +unset ac_cv_prog_cxx_works +unset ac_cv_prog_cxx_cross + + if test "$rtems_cv_prog_cc_cross" != "$rtems_cv_prog_cxx_cross"; then + { echo "configure: error: *** + Inconsistency in compiler configuration: + Target C compiler and Target C++ compiler + must both either be cross compilers or native compilers + Hint: If building a posix bsp: LD_LIBRARY_PATH? " 1>&2; exit 1; } + fi + +fi + + + +echo $ac_n "checking target's ar""... $ac_c" 1>&6 +echo "configure:2166: checking target's ar" >&5 +if eval "test \"`echo '$''{'ac_cv_path_AR_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + : +fi + +echo "$ac_t""$ac_cv_path_AR_FOR_TARGET" 1>&6 + +if test -n "$ac_cv_path_AR_FOR_TARGET"; then + AR_FOR_TARGET=$ac_cv_path_AR_FOR_TARGET +else + if test -z "$AR_FOR_TARGET" ; then + if test "$rtems_cv_prog_gcc" = "yes"; then + # We are using gcc, ask it about its tool + # NOTE: Necessary if gcc was configured to use the target's + # native tools or uses prefixes for gnutools (e.g. gas instead of as) + case $host_os in + *cygwin*) + AR_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ar | sed -e 's%\\\\%/%g' ` + ;; + *) + AR_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ar` + ;; + esac + + fi + else + # The user set an environment variable. + # Check whether it is an absolute path, otherwise AC_PATH_PROG + # will override the environment variable, which isn't what the user + # intends + echo $ac_n "checking whether environment variable AR_FOR_TARGET is an absolute path""... $ac_c" 1>&6 +echo "configure:2199: checking whether environment variable AR_FOR_TARGET is an absolute path" >&5 + case "$AR_FOR_TARGET" in + /*) # valid + echo "$ac_t"""yes"" 1>&6 + ;; + *) # invalid for AC_PATH_PROG + echo "$ac_t"""no"" 1>&6 + { echo "configure: error: *** + Environment variable AR_FOR_TARGET should either + be unset (preferred) or contain an absolute path" 1>&2; exit 1; } + ;; + esac + fi + + # Extract the first word of ""$program_prefix"ar", so it can be a program name with args. +set dummy "$program_prefix"ar; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2216: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_AR_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$AR_FOR_TARGET" in + /*) + ac_cv_path_AR_FOR_TARGET="$AR_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_AR_FOR_TARGET="$AR_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_AR_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_AR_FOR_TARGET" && ac_cv_path_AR_FOR_TARGET="no" + ;; +esac +fi +AR_FOR_TARGET="$ac_cv_path_AR_FOR_TARGET" +if test -n "$AR_FOR_TARGET"; then + echo "$ac_t""$AR_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +fi + + +echo $ac_n "checking target's as""... $ac_c" 1>&6 +echo "configure:2253: checking target's as" >&5 +if eval "test \"`echo '$''{'ac_cv_path_AS_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + : +fi + +echo "$ac_t""$ac_cv_path_AS_FOR_TARGET" 1>&6 + +if test -n "$ac_cv_path_AS_FOR_TARGET"; then + AS_FOR_TARGET=$ac_cv_path_AS_FOR_TARGET +else + if test -z "$AS_FOR_TARGET" ; then + if test "$rtems_cv_prog_gcc" = "yes"; then + # We are using gcc, ask it about its tool + # NOTE: Necessary if gcc was configured to use the target's + # native tools or uses prefixes for gnutools (e.g. gas instead of as) + case $host_os in + *cygwin*) + AS_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=as | sed -e 's%\\\\%/%g' ` + ;; + *) + AS_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=as` + ;; + esac + + fi + else + # The user set an environment variable. + # Check whether it is an absolute path, otherwise AC_PATH_PROG + # will override the environment variable, which isn't what the user + # intends + echo $ac_n "checking whether environment variable AS_FOR_TARGET is an absolute path""... $ac_c" 1>&6 +echo "configure:2286: checking whether environment variable AS_FOR_TARGET is an absolute path" >&5 + case "$AS_FOR_TARGET" in + /*) # valid + echo "$ac_t"""yes"" 1>&6 + ;; + *) # invalid for AC_PATH_PROG + echo "$ac_t"""no"" 1>&6 + { echo "configure: error: *** + Environment variable AS_FOR_TARGET should either + be unset (preferred) or contain an absolute path" 1>&2; exit 1; } + ;; + esac + fi + + # Extract the first word of ""$program_prefix"as", so it can be a program name with args. +set dummy "$program_prefix"as; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2303: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_AS_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$AS_FOR_TARGET" in + /*) + ac_cv_path_AS_FOR_TARGET="$AS_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_AS_FOR_TARGET="$AS_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_AS_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_AS_FOR_TARGET" && ac_cv_path_AS_FOR_TARGET="no" + ;; +esac +fi +AS_FOR_TARGET="$ac_cv_path_AS_FOR_TARGET" +if test -n "$AS_FOR_TARGET"; then + echo "$ac_t""$AS_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +fi + + +echo $ac_n "checking target's ld""... $ac_c" 1>&6 +echo "configure:2340: checking target's ld" >&5 +if eval "test \"`echo '$''{'ac_cv_path_LD_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + : +fi + +echo "$ac_t""$ac_cv_path_LD_FOR_TARGET" 1>&6 + +if test -n "$ac_cv_path_LD_FOR_TARGET"; then + LD_FOR_TARGET=$ac_cv_path_LD_FOR_TARGET +else + if test -z "$LD_FOR_TARGET" ; then + if test "$rtems_cv_prog_gcc" = "yes"; then + # We are using gcc, ask it about its tool + # NOTE: Necessary if gcc was configured to use the target's + # native tools or uses prefixes for gnutools (e.g. gas instead of as) + case $host_os in + *cygwin*) + LD_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ld | sed -e 's%\\\\%/%g' ` + ;; + *) + LD_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ld` + ;; + esac + + fi + else + # The user set an environment variable. + # Check whether it is an absolute path, otherwise AC_PATH_PROG + # will override the environment variable, which isn't what the user + # intends + echo $ac_n "checking whether environment variable LD_FOR_TARGET is an absolute path""... $ac_c" 1>&6 +echo "configure:2373: checking whether environment variable LD_FOR_TARGET is an absolute path" >&5 + case "$LD_FOR_TARGET" in + /*) # valid + echo "$ac_t"""yes"" 1>&6 + ;; + *) # invalid for AC_PATH_PROG + echo "$ac_t"""no"" 1>&6 + { echo "configure: error: *** + Environment variable LD_FOR_TARGET should either + be unset (preferred) or contain an absolute path" 1>&2; exit 1; } + ;; + esac + fi + + # Extract the first word of ""$program_prefix"ld", so it can be a program name with args. +set dummy "$program_prefix"ld; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2390: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_LD_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$LD_FOR_TARGET" in + /*) + ac_cv_path_LD_FOR_TARGET="$LD_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_LD_FOR_TARGET="$LD_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_LD_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_LD_FOR_TARGET" && ac_cv_path_LD_FOR_TARGET="no" + ;; +esac +fi +LD_FOR_TARGET="$ac_cv_path_LD_FOR_TARGET" +if test -n "$LD_FOR_TARGET"; then + echo "$ac_t""$LD_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +fi + + +echo $ac_n "checking target's nm""... $ac_c" 1>&6 +echo "configure:2427: checking target's nm" >&5 +if eval "test \"`echo '$''{'ac_cv_path_NM_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + : +fi + +echo "$ac_t""$ac_cv_path_NM_FOR_TARGET" 1>&6 + +if test -n "$ac_cv_path_NM_FOR_TARGET"; then + NM_FOR_TARGET=$ac_cv_path_NM_FOR_TARGET +else + if test -z "$NM_FOR_TARGET" ; then + if test "$rtems_cv_prog_gcc" = "yes"; then + # We are using gcc, ask it about its tool + # NOTE: Necessary if gcc was configured to use the target's + # native tools or uses prefixes for gnutools (e.g. gas instead of as) + case $host_os in + *cygwin*) + NM_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=nm | sed -e 's%\\\\%/%g' ` + ;; + *) + NM_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=nm` + ;; + esac + + fi + else + # The user set an environment variable. + # Check whether it is an absolute path, otherwise AC_PATH_PROG + # will override the environment variable, which isn't what the user + # intends + echo $ac_n "checking whether environment variable NM_FOR_TARGET is an absolute path""... $ac_c" 1>&6 +echo "configure:2460: checking whether environment variable NM_FOR_TARGET is an absolute path" >&5 + case "$NM_FOR_TARGET" in + /*) # valid + echo "$ac_t"""yes"" 1>&6 + ;; + *) # invalid for AC_PATH_PROG + echo "$ac_t"""no"" 1>&6 + { echo "configure: error: *** + Environment variable NM_FOR_TARGET should either + be unset (preferred) or contain an absolute path" 1>&2; exit 1; } + ;; + esac + fi + + # Extract the first word of ""$program_prefix"nm", so it can be a program name with args. +set dummy "$program_prefix"nm; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2477: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_NM_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$NM_FOR_TARGET" in + /*) + ac_cv_path_NM_FOR_TARGET="$NM_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_NM_FOR_TARGET="$NM_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_NM_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_NM_FOR_TARGET" && ac_cv_path_NM_FOR_TARGET="no" + ;; +esac +fi +NM_FOR_TARGET="$ac_cv_path_NM_FOR_TARGET" +if test -n "$NM_FOR_TARGET"; then + echo "$ac_t""$NM_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +fi + + + +echo $ac_n "checking target's ranlib""... $ac_c" 1>&6 +echo "configure:2515: checking target's ranlib" >&5 +if eval "test \"`echo '$''{'ac_cv_path_RANLIB_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + : +fi + +echo "$ac_t""$ac_cv_path_RANLIB_FOR_TARGET" 1>&6 + +if test -n "$ac_cv_path_RANLIB_FOR_TARGET"; then + RANLIB_FOR_TARGET=$ac_cv_path_RANLIB_FOR_TARGET +else + if test -z "$RANLIB_FOR_TARGET" ; then + if test "$rtems_cv_prog_gcc" = "yes"; then + # We are using gcc, ask it about its tool + # NOTE: Necessary if gcc was configured to use the target's + # native tools or uses prefixes for gnutools (e.g. gas instead of as) + case $host_os in + *cygwin*) + RANLIB_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ranlib | sed -e 's%\\\\%/%g' ` + ;; + *) + RANLIB_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ranlib` + ;; + esac + + fi + else + # The user set an environment variable. + # Check whether it is an absolute path, otherwise AC_PATH_PROG + # will override the environment variable, which isn't what the user + # intends + echo $ac_n "checking whether environment variable RANLIB_FOR_TARGET is an absolute path""... $ac_c" 1>&6 +echo "configure:2548: checking whether environment variable RANLIB_FOR_TARGET is an absolute path" >&5 + case "$RANLIB_FOR_TARGET" in + /*) # valid + echo "$ac_t"""yes"" 1>&6 + ;; + *) # invalid for AC_PATH_PROG + echo "$ac_t"""no"" 1>&6 + { echo "configure: error: *** + Environment variable RANLIB_FOR_TARGET should either + be unset (preferred) or contain an absolute path" 1>&2; exit 1; } + ;; + esac + fi + + # Extract the first word of ""$program_prefix"ranlib", so it can be a program name with args. +set dummy "$program_prefix"ranlib; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2565: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_RANLIB_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$RANLIB_FOR_TARGET" in + /*) + ac_cv_path_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_RANLIB_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_RANLIB_FOR_TARGET" && ac_cv_path_RANLIB_FOR_TARGET="no" + ;; +esac +fi +RANLIB_FOR_TARGET="$ac_cv_path_RANLIB_FOR_TARGET" +if test -n "$RANLIB_FOR_TARGET"; then + echo "$ac_t""$RANLIB_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +fi + + if test "$RANLIB_FOR_TARGET" = "no"; then + # ranlib wasn't found; check if ar -s is available + +echo $ac_n "checking whether $AR_FOR_TARGET -s works""... $ac_c" 1>&6 +echo "configure:2604: checking whether $AR_FOR_TARGET -s works" >&5 +if eval "test \"`echo '$''{'rtems_cv_AR_FOR_TARGET_S'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + +cat > conftest.$ac_ext <<EOF +int foo( int b ) +{ return b; } +EOF +if { ac_try='$CC_FOR_TARGET -o conftest.o -c conftest.$ac_ext'; { (eval echo configure:2613: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } \ + && { ac_try='$AR_FOR_TARGET -sr conftest.a conftest.o'; { (eval echo configure:2614: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } \ + && test -s conftest.a ; \ +then + rtems_cv_AR_FOR_TARGET_S="yes" +else + rtems_cv_AR_FOR_TARGET_S="no" +fi + rm -f conftest* + +fi + +echo "$ac_t""$rtems_cv_AR_FOR_TARGET_S" 1>&6 + + if test $rtems_cv_AR_FOR_TARGET_S = "yes" ; then + ac_cv_path_RANLIB_FOR_TARGET="$AR_FOR_TARGET -s" + RANLIB_FOR_TARGET=$ac_cv_path_RANLIB_FOR_TARGET + else + { echo "configure: error: *** + Can't figure out how to build a library index + Neither ranlib nor ar -s seem to be available " 1>&2; exit 1; } + fi + fi + + +echo $ac_n "checking target's objcopy""... $ac_c" 1>&6 +echo "configure:2639: checking target's objcopy" >&5 +if eval "test \"`echo '$''{'ac_cv_path_OBJCOPY_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + : +fi + +echo "$ac_t""$ac_cv_path_OBJCOPY_FOR_TARGET" 1>&6 + +if test -n "$ac_cv_path_OBJCOPY_FOR_TARGET"; then + OBJCOPY_FOR_TARGET=$ac_cv_path_OBJCOPY_FOR_TARGET +else + if test -z "$OBJCOPY_FOR_TARGET" ; then + if test "$rtems_cv_prog_gcc" = "yes"; then + # We are using gcc, ask it about its tool + # NOTE: Necessary if gcc was configured to use the target's + # native tools or uses prefixes for gnutools (e.g. gas instead of as) + case $host_os in + *cygwin*) + OBJCOPY_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=objcopy | sed -e 's%\\\\%/%g' ` + ;; + *) + OBJCOPY_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=objcopy` + ;; + esac + + fi + else + # The user set an environment variable. + # Check whether it is an absolute path, otherwise AC_PATH_PROG + # will override the environment variable, which isn't what the user + # intends + echo $ac_n "checking whether environment variable OBJCOPY_FOR_TARGET is an absolute path""... $ac_c" 1>&6 +echo "configure:2672: checking whether environment variable OBJCOPY_FOR_TARGET is an absolute path" >&5 + case "$OBJCOPY_FOR_TARGET" in + /*) # valid + echo "$ac_t"""yes"" 1>&6 + ;; + *) # invalid for AC_PATH_PROG + echo "$ac_t"""no"" 1>&6 + { echo "configure: error: *** + Environment variable OBJCOPY_FOR_TARGET should either + be unset (preferred) or contain an absolute path" 1>&2; exit 1; } + ;; + esac + fi + + # Extract the first word of ""$program_prefix"objcopy", so it can be a program name with args. +set dummy "$program_prefix"objcopy; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2689: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_OBJCOPY_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$OBJCOPY_FOR_TARGET" in + /*) + ac_cv_path_OBJCOPY_FOR_TARGET="$OBJCOPY_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_OBJCOPY_FOR_TARGET="$OBJCOPY_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_OBJCOPY_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_OBJCOPY_FOR_TARGET" && ac_cv_path_OBJCOPY_FOR_TARGET="no" + ;; +esac +fi +OBJCOPY_FOR_TARGET="$ac_cv_path_OBJCOPY_FOR_TARGET" +if test -n "$OBJCOPY_FOR_TARGET"; then + echo "$ac_t""$OBJCOPY_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +fi + + +echo $ac_n "checking target's size""... $ac_c" 1>&6 +echo "configure:2726: checking target's size" >&5 +if eval "test \"`echo '$''{'ac_cv_path_SIZE_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + : +fi + +echo "$ac_t""$ac_cv_path_SIZE_FOR_TARGET" 1>&6 + +if test -n "$ac_cv_path_SIZE_FOR_TARGET"; then + SIZE_FOR_TARGET=$ac_cv_path_SIZE_FOR_TARGET +else + if test -z "$SIZE_FOR_TARGET" ; then + if test "$rtems_cv_prog_gcc" = "yes"; then + # We are using gcc, ask it about its tool + # NOTE: Necessary if gcc was configured to use the target's + # native tools or uses prefixes for gnutools (e.g. gas instead of as) + case $host_os in + *cygwin*) + SIZE_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=size | sed -e 's%\\\\%/%g' ` + ;; + *) + SIZE_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=size` + ;; + esac + + fi + else + # The user set an environment variable. + # Check whether it is an absolute path, otherwise AC_PATH_PROG + # will override the environment variable, which isn't what the user + # intends + echo $ac_n "checking whether environment variable SIZE_FOR_TARGET is an absolute path""... $ac_c" 1>&6 +echo "configure:2759: checking whether environment variable SIZE_FOR_TARGET is an absolute path" >&5 + case "$SIZE_FOR_TARGET" in + /*) # valid + echo "$ac_t"""yes"" 1>&6 + ;; + *) # invalid for AC_PATH_PROG + echo "$ac_t"""no"" 1>&6 + { echo "configure: error: *** + Environment variable SIZE_FOR_TARGET should either + be unset (preferred) or contain an absolute path" 1>&2; exit 1; } + ;; + esac + fi + + # Extract the first word of ""$program_prefix"size", so it can be a program name with args. +set dummy "$program_prefix"size; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2776: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_SIZE_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$SIZE_FOR_TARGET" in + /*) + ac_cv_path_SIZE_FOR_TARGET="$SIZE_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_SIZE_FOR_TARGET="$SIZE_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_SIZE_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_SIZE_FOR_TARGET" && ac_cv_path_SIZE_FOR_TARGET="no" + ;; +esac +fi +SIZE_FOR_TARGET="$ac_cv_path_SIZE_FOR_TARGET" +if test -n "$SIZE_FOR_TARGET"; then + echo "$ac_t""$SIZE_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +fi + + +echo $ac_n "checking target's strip""... $ac_c" 1>&6 +echo "configure:2813: checking target's strip" >&5 +if eval "test \"`echo '$''{'ac_cv_path_STRIP_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + : +fi + +echo "$ac_t""$ac_cv_path_STRIP_FOR_TARGET" 1>&6 + +if test -n "$ac_cv_path_STRIP_FOR_TARGET"; then + STRIP_FOR_TARGET=$ac_cv_path_STRIP_FOR_TARGET +else + if test -z "$STRIP_FOR_TARGET" ; then + if test "$rtems_cv_prog_gcc" = "yes"; then + # We are using gcc, ask it about its tool + # NOTE: Necessary if gcc was configured to use the target's + # native tools or uses prefixes for gnutools (e.g. gas instead of as) + case $host_os in + *cygwin*) + STRIP_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=strip | sed -e 's%\\\\%/%g' ` + ;; + *) + STRIP_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=strip` + ;; + esac + + fi + else + # The user set an environment variable. + # Check whether it is an absolute path, otherwise AC_PATH_PROG + # will override the environment variable, which isn't what the user + # intends + echo $ac_n "checking whether environment variable STRIP_FOR_TARGET is an absolute path""... $ac_c" 1>&6 +echo "configure:2846: checking whether environment variable STRIP_FOR_TARGET is an absolute path" >&5 + case "$STRIP_FOR_TARGET" in + /*) # valid + echo "$ac_t"""yes"" 1>&6 + ;; + *) # invalid for AC_PATH_PROG + echo "$ac_t"""no"" 1>&6 + { echo "configure: error: *** + Environment variable STRIP_FOR_TARGET should either + be unset (preferred) or contain an absolute path" 1>&2; exit 1; } + ;; + esac + fi + + # Extract the first word of ""$program_prefix"strip", so it can be a program name with args. +set dummy "$program_prefix"strip; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2863: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_path_STRIP_FOR_TARGET'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + case "$STRIP_FOR_TARGET" in + /*) + ac_cv_path_STRIP_FOR_TARGET="$STRIP_FOR_TARGET" # Let the user override the test with a path. + ;; + ?:/*) + ac_cv_path_STRIP_FOR_TARGET="$STRIP_FOR_TARGET" # Let the user override the test with a dos path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" + ac_dummy="$PATH" + for ac_dir in $ac_dummy; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_path_STRIP_FOR_TARGET="$ac_dir/$ac_word" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_STRIP_FOR_TARGET" && ac_cv_path_STRIP_FOR_TARGET="no" + ;; +esac +fi +STRIP_FOR_TARGET="$ac_cv_path_STRIP_FOR_TARGET" +if test -n "$STRIP_FOR_TARGET"; then + echo "$ac_t""$STRIP_FOR_TARGET" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +fi + + + + if test "${target_cpu}" = "i386"; then + echo $ac_n "checking for 16 bit mode assembler support""... $ac_c" 1>&6 +echo "configure:2902: checking for 16 bit mode assembler support" >&5 +if eval "test \"`echo '$''{'rtems_cv_prog_gas_code16'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.s << EOF + .code16 + data32 + addr32 + lgdt 0 +EOF + if { ac_try='$AS_FOR_TARGET -o conftest.o conftest.s'; { (eval echo configure:2912: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + rtems_cv_prog_gas_code16=yes + else + rtems_cv_prog_gas_code16=no + fi +fi + +echo "$ac_t""$rtems_cv_prog_gas_code16" 1>&6 + RTEMS_GAS_CODE16="$rtems_cv_prog_gas_code16" + fi + + + + +echo $ac_n "checking for make/custom/$RTEMS_BSP.cfg""... $ac_c" 1>&6 +echo "configure:2927: checking for make/custom/$RTEMS_BSP.cfg" >&5 +if test -r "$srcdir/$RTEMS_TOPdir/make/custom/$RTEMS_BSP.cfg"; then + echo "$ac_t""yes" 1>&6 +else + { echo "configure: error: no" 1>&2; exit 1; } +fi + + +if test "$RTEMS_HAS_RDBG" = "yes"; then + echo $ac_n "checking whether cpu supports librdbg""... $ac_c" 1>&6 +echo "configure:2937: checking whether cpu supports librdbg" >&5 +if eval "test \"`echo '$''{'rtems_cv_has_rdbg'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + + if test -d "$srcdir/${RTEMS_TOPdir}/c/src/lib/librdbg/${RTEMS_CPU}"; then + rtems_cv_has_rdbg="yes" ; + else + rtems_cv_has_rdbg="no"; + fi + +fi + +echo "$ac_t""$rtems_cv_has_rdbg" 1>&6 + + RTEMS_HAS_RDBG="$rtems_cv_has_rdbg"; +fi + + + + + + + + + + + + + +# Collect the files needed to build a BSP +cfg_dir="${RTEMS_TOPdir}/make" +cfg_srcs="" +cfg_dsts="" +CUSTOM_CFG_FILES="" +f="${RTEMS_BSP}.cfg" +while test -n "$f"; do + if test -r "${srcdir}/${cfg_dir}/custom/$f"; then + cfg_srcs="$cfg_srcs ${cfg_dir}/custom/$f" + cfg_dsts="$cfg_dsts custom/$f" + CUSTOM_CFG_FILES="$CUSTOM_CFG_FILES $f" + f=`grep "^include.*make/custom" ${srcdir}/${cfg_dir}/custom/$f \ + | sed \ + -e 's%^.*custom\/%%' \ + -e s%\$\(RTEMS_HOST\)%${RTEMS_HOST}% \ + -e 's%default\.cfg%%'`; + else break; fi; +done + + +# Symlink the *.cfg files from the toplevel make directory into the build +# trees c/<bsp>/make subdirectories + + + + + + + + + + +trap '' 1 2 15 +cat > confcache <<\EOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +EOF +# The following way of writing the cache mishandles newlines in values, +# but we know of no workaround that is simple, portable, and efficient. +# So, don't put newlines in cache variables' values. +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +(set) 2>&1 | + case `(ac_space=' '; set | grep ac_space) 2>&1` in + *ac_space=\ *) + # `set' does not quote correctly, so add quotes (double-quote substitution + # turns \\\\ into \\, and sed turns \\ into \). + sed -n \ + -e "s/'/'\\\\''/g" \ + -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" + ;; + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' + ;; + esac >> confcache +if cmp -s $cache_file confcache; then + : +else + if test -w $cache_file; then + echo "updating cache $cache_file" + cat confcache > $cache_file + else + echo "not updating unwritable cache $cache_file" + fi +fi +rm -f confcache + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +# Any assignment to VPATH causes Sun make to only execute +# the first set of double-colon rules, so remove it if not needed. +# If there is a colon in the path, we need to keep it. +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' +fi + +trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 + +# Transform confdefs.h into DEFS. +# Protect against shell expansion while executing Makefile rules. +# Protect against Makefile macro expansion. +cat > conftest.defs <<\EOF +s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g +s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g +s%\[%\\&%g +s%\]%\\&%g +s%\$%$$%g +EOF +DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` +rm -f conftest.defs + + +# Without the "./", some shells look in PATH for config.status. +: ${CONFIG_STATUS=./config.status} + +echo creating $CONFIG_STATUS +rm -f $CONFIG_STATUS +cat > $CONFIG_STATUS <<EOF +#! /bin/sh +# Generated automatically by configure. +# Run this file to recreate the current configuration. +# This directory was configured as follows, +# on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# +# $0 $ac_configure_args +# +# Compiler output produced by configure, useful for debugging +# configure, is in ./config.log if it exists. + +ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" +for ac_option +do + case "\$ac_option" in + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" + exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; + -version | --version | --versio | --versi | --vers | --ver | --ve | --v) + echo "$CONFIG_STATUS generated by autoconf version 2.13" + exit 0 ;; + -help | --help | --hel | --he | --h) + echo "\$ac_cs_usage"; exit 0 ;; + *) echo "\$ac_cs_usage"; exit 1 ;; + esac +done + +ac_given_srcdir=$srcdir +ac_given_INSTALL="$INSTALL" + +trap 'rm -fr `echo "Makefile +Makefile.inc +main.cfg +host.cfg +target.cfg +Templates/Makefile +custom/Makefile +custom/default.cfg +compilers/Makefile +compilers/gcc.cfg +" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 +EOF +cat >> $CONFIG_STATUS <<EOF + +# Protect against being on the right side of a sed subst in config.status. +sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g; + s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF +$ac_vpsub +$extrasub +s%@SHELL@%$SHELL%g +s%@CFLAGS@%$CFLAGS%g +s%@CPPFLAGS@%$CPPFLAGS%g +s%@CXXFLAGS@%$CXXFLAGS%g +s%@FFLAGS@%$FFLAGS%g +s%@DEFS@%$DEFS%g +s%@LDFLAGS@%$LDFLAGS%g +s%@LIBS@%$LIBS%g +s%@exec_prefix@%$exec_prefix%g +s%@prefix@%$prefix%g +s%@program_transform_name@%$program_transform_name%g +s%@bindir@%$bindir%g +s%@sbindir@%$sbindir%g +s%@libexecdir@%$libexecdir%g +s%@datadir@%$datadir%g +s%@sysconfdir@%$sysconfdir%g +s%@sharedstatedir@%$sharedstatedir%g +s%@localstatedir@%$localstatedir%g +s%@libdir@%$libdir%g +s%@includedir@%$includedir%g +s%@oldincludedir@%$oldincludedir%g +s%@infodir@%$infodir%g +s%@mandir@%$mandir%g +s%@RTEMS_TOPdir@%$RTEMS_TOPdir%g +s%@SET_MAKE@%$SET_MAKE%g +s%@host@%$host%g +s%@host_alias@%$host_alias%g +s%@host_cpu@%$host_cpu%g +s%@host_vendor@%$host_vendor%g +s%@host_os@%$host_os%g +s%@target@%$target%g +s%@target_alias@%$target_alias%g +s%@target_cpu@%$target_cpu%g +s%@target_vendor@%$target_vendor%g +s%@target_os@%$target_os%g +s%@build@%$build%g +s%@build_alias@%$build_alias%g +s%@build_cpu@%$build_cpu%g +s%@build_vendor@%$build_vendor%g +s%@build_os@%$build_os%g +s%@RTEMS_CPU@%$RTEMS_CPU%g +s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g +s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g +s%@INSTALL_DATA@%$INSTALL_DATA%g +s%@PACKAGE@%$PACKAGE%g +s%@VERSION@%$VERSION%g +s%@ACLOCAL@%$ACLOCAL%g +s%@AUTOCONF@%$AUTOCONF%g +s%@AUTOMAKE@%$AUTOMAKE%g +s%@AUTOHEADER@%$AUTOHEADER%g +s%@MAKEINFO@%$MAKEINFO%g +s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g +s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g +s%@MAINT@%$MAINT%g +s%@RTEMS_HAS_MULTIPROCESSING@%$RTEMS_HAS_MULTIPROCESSING%g +s%@RTEMS_HAS_POSIX_API@%$RTEMS_HAS_POSIX_API%g +s%@RTEMS_HAS_NETWORKING@%$RTEMS_HAS_NETWORKING%g +s%@RTEMS_HAS_RDBG@%$RTEMS_HAS_RDBG%g +s%@RTEMS_USE_MACROS@%$RTEMS_USE_MACROS%g +s%@RTEMS_LIBC_DIR@%$RTEMS_LIBC_DIR%g +s%@RTEMS_BSP@%$RTEMS_BSP%g +s%@CAT@%$CAT%g +s%@RM@%$RM%g +s%@CP@%$CP%g +s%@MV@%$MV%g +s%@LN@%$LN%g +s%@LN_S@%$LN_S%g +s%@CHMOD@%$CHMOD%g +s%@SORT@%$SORT%g +s%@PERL@%$PERL%g +s%@TOUCH@%$TOUCH%g +s%@CMP@%$CMP%g +s%@SED@%$SED%g +s%@M4@%$M4%g +s%@KSH@%$KSH%g +s%@RTEMS_HOST@%$RTEMS_HOST%g +s%@PROJECT_ROOT@%$PROJECT_ROOT%g +s%@RTEMS_ROOT@%$RTEMS_ROOT%g +s%@INSTALL_CHANGE@%$INSTALL_CHANGE%g +s%@PACKHEX@%$PACKHEX%g +s%@CC_FOR_TARGET@%$CC_FOR_TARGET%g +s%@GCCSED@%$GCCSED%g +s%@CXX_FOR_TARGET@%$CXX_FOR_TARGET%g +s%@AR_FOR_TARGET@%$AR_FOR_TARGET%g +s%@AS_FOR_TARGET@%$AS_FOR_TARGET%g +s%@LD_FOR_TARGET@%$LD_FOR_TARGET%g +s%@NM_FOR_TARGET@%$NM_FOR_TARGET%g +s%@RANLIB_FOR_TARGET@%$RANLIB_FOR_TARGET%g +s%@OBJCOPY_FOR_TARGET@%$OBJCOPY_FOR_TARGET%g +s%@SIZE_FOR_TARGET@%$SIZE_FOR_TARGET%g +s%@STRIP_FOR_TARGET@%$STRIP_FOR_TARGET%g +s%@RTEMS_GAS_CODE16@%$RTEMS_GAS_CODE16%g +s%@rtems_cv_prog_cc_cross@%$rtems_cv_prog_cc_cross%g +s%@RTEMS_HAS_CPLUSPLUS@%$RTEMS_HAS_CPLUSPLUS%g +s%@RTEMS_USE_GCC272@%$RTEMS_USE_GCC272%g +s%@BARE_CPU_CFLAGS@%$BARE_CPU_CFLAGS%g +s%@BARE_CPU_MODEL@%$BARE_CPU_MODEL%g +s%@program_prefix@%$program_prefix%g +s%@CC_CFLAGS_DEFAULT@%$CC_CFLAGS_DEFAULT%g +s%@CC_CFLAGS_DEBUG_V@%$CC_CFLAGS_DEBUG_V%g +s%@CC_CFLAGS_PROFILE_V@%$CC_CFLAGS_PROFILE_V%g +s%@CC_LDFLAGS_PROFILE_V@%$CC_LDFLAGS_PROFILE_V%g +s%@CUSTOM_CFG_FILES@%$CUSTOM_CFG_FILES%g + +CEOF +EOF + +cat >> $CONFIG_STATUS <<\EOF + +# Split the substitutions into bite-sized pieces for seds with +# small command number limits, like on Digital OSF/1 and HP-UX. +ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script. +ac_file=1 # Number of current file. +ac_beg=1 # First line for current file. +ac_end=$ac_max_sed_cmds # Line after last line for current file. +ac_more_lines=: +ac_sed_cmds="" +while $ac_more_lines; do + if test $ac_beg -gt 1; then + sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file + else + sed "${ac_end}q" conftest.subs > conftest.s$ac_file + fi + if test ! -s conftest.s$ac_file; then + ac_more_lines=false + rm -f conftest.s$ac_file + else + if test -z "$ac_sed_cmds"; then + ac_sed_cmds="sed -f conftest.s$ac_file" + else + ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" + fi + ac_file=`expr $ac_file + 1` + ac_beg=$ac_end + ac_end=`expr $ac_end + $ac_max_sed_cmds` + fi +done +if test -z "$ac_sed_cmds"; then + ac_sed_cmds=cat +fi +EOF + +cat >> $CONFIG_STATUS <<EOF + +CONFIG_FILES=\${CONFIG_FILES-"Makefile +Makefile.inc +main.cfg +host.cfg +target.cfg +Templates/Makefile +custom/Makefile +custom/default.cfg +compilers/Makefile +compilers/gcc.cfg +"} +EOF +cat >> $CONFIG_STATUS <<\EOF +for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. + + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` + if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then + # The file is in a subdirectory. + test ! -d "$ac_dir" && mkdir "$ac_dir" + ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" + # A "../" for each directory in $ac_dir_suffix. + ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` + else + ac_dir_suffix= ac_dots= + fi + + case "$ac_given_srcdir" in + .) srcdir=. + if test -z "$ac_dots"; then top_srcdir=. + else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; + /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; + *) # Relative path. + srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" + top_srcdir="$ac_dots$ac_given_srcdir" ;; + esac + + case "$ac_given_INSTALL" in + [/$]*) INSTALL="$ac_given_INSTALL" ;; + *) INSTALL="$ac_dots$ac_given_INSTALL" ;; + esac + + echo creating "$ac_file" + rm -f "$ac_file" + configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." + case "$ac_file" in + *Makefile*) ac_comsub="1i\\ +# $configure_input" ;; + *) ac_comsub= ;; + esac + + ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` + sed -e "$ac_comsub +s%@configure_input@%$configure_input%g +s%@srcdir@%$srcdir%g +s%@top_srcdir@%$top_srcdir%g +s%@INSTALL@%$INSTALL%g +" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file +fi; done +rm -f conftest.s* + +EOF + +cat >> $CONFIG_STATUS <<EOF +ac_sources="$cfg_srcs $cfg_dir/Templates/Makefile.lib $cfg_dir/Templates/Makefile.leaf $cfg_dir/Templates/Makefile.dir $cfg_dir/compilers/gcc-target-default.cfg $cfg_dir/directory.cfg $cfg_dir/leaf.cfg $cfg_dir/lib.cfg $cfg_dir/README" +ac_dests="$cfg_dsts Templates/Makefile.lib Templates/Makefile.leaf Templates/Makefile.dir compilers/gcc-target-default.cfg directory.cfg leaf.cfg lib.cfg README" +EOF + +cat >> $CONFIG_STATUS <<\EOF +srcdir=$ac_given_srcdir +while test -n "$ac_sources"; do + set $ac_dests; ac_dest=$1; shift; ac_dests=$* + set $ac_sources; ac_source=$1; shift; ac_sources=$* + + echo "linking $srcdir/$ac_source to $ac_dest" + + if test ! -r $srcdir/$ac_source; then + { echo "configure: error: $srcdir/$ac_source: File not found" 1>&2; exit 1; } + fi + rm -f $ac_dest + + # Make relative symlinks. + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dest_dir=`echo $ac_dest|sed 's%/[^/][^/]*$%%'` + if test "$ac_dest_dir" != "$ac_dest" && test "$ac_dest_dir" != .; then + # The dest file is in a subdirectory. + test ! -d "$ac_dest_dir" && mkdir "$ac_dest_dir" + ac_dest_dir_suffix="/`echo $ac_dest_dir|sed 's%^\./%%'`" + # A "../" for each directory in $ac_dest_dir_suffix. + ac_dots=`echo $ac_dest_dir_suffix|sed 's%/[^/]*%../%g'` + else + ac_dest_dir_suffix= ac_dots= + fi + + case "$srcdir" in + [/$]*) ac_rel_source="$srcdir/$ac_source" ;; + *) ac_rel_source="$ac_dots$srcdir/$ac_source" ;; + esac + + # Make a symlink if possible; otherwise try a hard link. + if ln -s $ac_rel_source $ac_dest 2>/dev/null || + ln $srcdir/$ac_source $ac_dest; then : + else + { echo "configure: error: can not link $ac_dest to $srcdir/$ac_source" 1>&2; exit 1; } + fi +done +EOF +cat >> $CONFIG_STATUS <<EOF + +EOF +cat >> $CONFIG_STATUS <<\EOF + +exit 0 +EOF +chmod +x $CONFIG_STATUS +rm -fr confdefs* $ac_clean_files +test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 + diff --git a/c/src/make/configure.in b/c/src/make/configure.in new file mode 100644 index 0000000000..e89887480e --- /dev/null +++ b/c/src/make/configure.in @@ -0,0 +1,139 @@ +dnl Process this file with autoconf to produce a configure script. +dnl +dnl $Id$ + +dnl +dnl This script configures the configuration files below make/ +dnl + +AC_PREREQ(2.13) +AC_INIT(main.cfg.in) +RTEMS_TOP(../../..) +AC_CONFIG_AUX_DIR(../../..) + +AC_PROG_MAKE_SET +RTEMS_CANONICAL_TARGET_CPU + +AM_INIT_AUTOMAKE(rtems-c-src-make,$RTEMS_VERSION,no) +AM_MAINTAINER_MODE + +RTEMS_ENABLE_MULTIPROCESSING +RTEMS_ENABLE_POSIX +RTEMS_ENABLE_NETWORKING +RTEMS_ENABLE_RDBG +RTEMS_ENABLE_INLINES +RTEMS_ENABLE_CXX +RTEMS_ENABLE_GCC28 +RTEMS_ENABLE_LIBCDIR +RTEMS_ENABLE_BARE +dnl RTEMS_ENABLE_RTEMSBSP + +RTEMS_ENV_RTEMSBSP + +dnl BEGIN configure.host.in + +AC_PATH_PROG(CAT,cat) +AC_PATH_PROG(RM,rm) +AC_PATH_PROG(CP,cp) +AC_PATH_PROG(MV,mv) +AC_PATH_PROG(LN,ln) +AC_PROG_LN_S +AC_PATH_PROG(CHMOD,chmod) +AC_PATH_PROG(SORT,sort) +AC_PROG_INSTALL +RTEMS_PATH_PERL + +AC_PATH_PROG(TOUCH,touch) +AC_PATH_PROG(CMP,cmp) + +AC_PATH_PROG(SED,sed) +AC_PATH_PROGS(M4,gm4 m4) + +RTEMS_PATH_KSH + +dnl BEGIN configure.target.in + +RTEMS_CHECK_CPU +RTEMS_CANONICAL_HOST + +RTEMS_PROJECT_ROOT + +dnl check target cc +RTEMS_PROG_CC_FOR_TARGET + +dnl check for g++ +if test "$RTEMS_HAS_CPLUSPLUS" = "yes"; then + RTEMS_PROG_CXX_FOR_TARGET +fi + +RTEMS_CANONICALIZE_TOOLS + +dnl if this is an i386, does gas have good code16 support? +RTEMS_I386_GAS_CODE16 + +dnl RTEMS_CHECK_BSPS(rtems_bsp) + +RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) + +if test "$RTEMS_HAS_RDBG" = "yes"; then + RTEMS_CHECK_RDBG + RTEMS_HAS_RDBG="$rtems_cv_has_rdbg"; +fi + +dnl END configure.target.in + +AC_SUBST(rtems_cv_prog_cc_cross) +AC_SUBST(RTEMS_HAS_CPLUSPLUS) +AC_SUBST(RTEMS_USE_GCC272) +AC_SUBST(BARE_CPU_CFLAGS) +AC_SUBST(BARE_CPU_MODEL) +AC_SUBST(program_prefix) +AC_SUBST(CC_CFLAGS_DEFAULT) +AC_SUBST(CC_CFLAGS_DEBUG_V) +AC_SUBST(CC_CFLAGS_PROFILE_V) +AC_SUBST(CC_LDFLAGS_PROFILE_V) + +# Collect the files needed to build a BSP +cfg_dir="${RTEMS_TOPdir}/make" +cfg_srcs="" +cfg_dsts="" +CUSTOM_CFG_FILES="" +f="${RTEMS_BSP}.cfg" +while test -n "$f"; do + if test -r "${srcdir}/${cfg_dir}/custom/$f"; then + cfg_srcs="$cfg_srcs ${cfg_dir}/custom/$f" + cfg_dsts="$cfg_dsts custom/$f" + CUSTOM_CFG_FILES="$CUSTOM_CFG_FILES $f" + f=`grep "^include.*make/custom" ${srcdir}/${cfg_dir}/custom/$f \ + | sed \ + -e 's%^.*custom\/%%' \ + -e s%\$\(RTEMS_HOST\)%${RTEMS_HOST}% \ + -e 's%default\.cfg%%'`; + else break; fi; +done +AC_SUBST(CUSTOM_CFG_FILES) + +# Symlink the *.cfg files from the toplevel make directory into the build +# trees c/<bsp>/make subdirectories +AC_LINK_FILES($cfg_srcs,$cfg_dsts) +AC_LINK_FILES($cfg_dir/Templates/Makefile.lib,Templates/Makefile.lib) +AC_LINK_FILES($cfg_dir/Templates/Makefile.leaf,Templates/Makefile.leaf) +AC_LINK_FILES($cfg_dir/Templates/Makefile.dir,Templates/Makefile.dir) +AC_LINK_FILES($cfg_dir/compilers/gcc-target-default.cfg,compilers/gcc-target-default.cfg) +AC_LINK_FILES($cfg_dir/directory.cfg,directory.cfg) +AC_LINK_FILES($cfg_dir/leaf.cfg,leaf.cfg) +AC_LINK_FILES($cfg_dir/lib.cfg,lib.cfg) +AC_LINK_FILES($cfg_dir/README,README) + +AC_OUTPUT( +Makefile +Makefile.inc +main.cfg +host.cfg +target.cfg +Templates/Makefile +custom/Makefile +custom/default.cfg +compilers/Makefile +compilers/gcc.cfg +) diff --git a/c/src/make/custom/Makefile.am b/c/src/make/custom/Makefile.am new file mode 100644 index 0000000000..3313913c03 --- /dev/null +++ b/c/src/make/custom/Makefile.am @@ -0,0 +1,19 @@ +# +# $Id$ +# + +AUTOMAKE_OPTIONS = foreign 1.4 + +rtems_makedir=$(prefix)/make +rtems_make_customdir=$(rtems_makedir)/custom +rtems_make_custom_DATA = @CUSTOM_CFG_FILES@ + +noinst_DATA = \ +default.cfg + +if MAINTAINER_MODE +$(srcdir)/default.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/custom/default.cfg + sed -e 's%\$$(RTEMS_BSP)%\@RTEMS_BSP\@%g' < $< >$@ +endif + +include $(top_srcdir)/../../../automake/local.am diff --git a/c/src/make/custom/Makefile.in b/c/src/make/custom/Makefile.in new file mode 100644 index 0000000000..ce9154d19c --- /dev/null +++ b/c/src/make/custom/Makefile.in @@ -0,0 +1,291 @@ +# 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. + +# +# $Id$ +# + + + +SHELL = @SHELL@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @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@ +BARE_CPU_CFLAGS = @BARE_CPU_CFLAGS@ +BARE_CPU_MODEL = @BARE_CPU_MODEL@ +CAT = @CAT@ +CC = @CC@ +CC_CFLAGS_DEBUG_V = @CC_CFLAGS_DEBUG_V@ +CC_CFLAGS_DEFAULT = @CC_CFLAGS_DEFAULT@ +CC_CFLAGS_PROFILE_V = @CC_CFLAGS_PROFILE_V@ +CC_FOR_TARGET = @CC_FOR_TARGET@ +CC_LDFLAGS_PROFILE_V = @CC_LDFLAGS_PROFILE_V@ +CHMOD = @CHMOD@ +CMP = @CMP@ +CP = @CP@ +CPP = @CPP@ +CUSTOM_CFG_FILES = @CUSTOM_CFG_FILES@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXX_FOR_TARGET = @CXX_FOR_TARGET@ +GCCSED = @GCCSED@ +INSTALL_CHANGE = @INSTALL_CHANGE@ +KSH = @KSH@ +LN = @LN@ +LN_S = @LN_S@ +M4 = @M4@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MV = @MV@ +PACKAGE = @PACKAGE@ +PACKHEX = @PACKHEX@ +PERL = @PERL@ +PROJECT_ROOT = @PROJECT_ROOT@ +RM = @RM@ +RTEMS_BSP = @RTEMS_BSP@ +RTEMS_CPU = @RTEMS_CPU@ +RTEMS_GAS_CODE16 = @RTEMS_GAS_CODE16@ +RTEMS_HAS_CPLUSPLUS = @RTEMS_HAS_CPLUSPLUS@ +RTEMS_HAS_MULTIPROCESSING = @RTEMS_HAS_MULTIPROCESSING@ +RTEMS_HAS_NETWORKING = @RTEMS_HAS_NETWORKING@ +RTEMS_HAS_POSIX_API = @RTEMS_HAS_POSIX_API@ +RTEMS_HAS_RDBG = @RTEMS_HAS_RDBG@ +RTEMS_HOST = @RTEMS_HOST@ +RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@ +RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_TOPdir = @RTEMS_TOPdir@ +RTEMS_USE_GCC272 = @RTEMS_USE_GCC272@ +RTEMS_USE_MACROS = @RTEMS_USE_MACROS@ +SED = @SED@ +SORT = @SORT@ +TOUCH = @TOUCH@ +VERSION = @VERSION@ +program_prefix = @program_prefix@ +rtems_cv_prog_cc_cross = @rtems_cv_prog_cc_cross@ + +AUTOMAKE_OPTIONS = foreign 1.4 + +rtems_makedir = $(prefix)/make +rtems_make_customdir = $(rtems_makedir)/custom +rtems_make_custom_DATA = @CUSTOM_CFG_FILES@ + +noinst_DATA = default.cfg + +mkinstalldirs = $(SHELL) $(top_srcdir)/../../../mkinstalldirs +CONFIG_CLEAN_FILES = default.cfg +DATA = $(noinst_DATA) $(rtems_make_custom_DATA) + +DIST_COMMON = Makefile.am Makefile.in default.cfg.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP_ENV = --best +all: all-redirect +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/../../../automake/local.am + cd $(top_srcdir) && $(AUTOMAKE) --foreign custom/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +default.cfg: $(top_builddir)/config.status default.cfg.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +install-rtems_make_customDATA: $(rtems_make_custom_DATA) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(rtems_make_customdir) + @list='$(rtems_make_custom_DATA)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_make_customdir)/$$p"; \ + $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(rtems_make_customdir)/$$p; \ + else if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_make_customdir)/$$p"; \ + $(INSTALL_DATA) $$p $(DESTDIR)$(rtems_make_customdir)/$$p; \ + fi; fi; \ + done + +uninstall-rtems_make_customDATA: + @$(NORMAL_UNINSTALL) + list='$(rtems_make_custom_DATA)'; for p in $$list; do \ + rm -f $(DESTDIR)$(rtems_make_customdir)/$$p; \ + done +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = custom + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign custom/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + if test -d $$d/$$file; then \ + cp -pr $$/$$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: all-am +check: check-am +installcheck-am: +installcheck: installcheck-am +install-exec-am: +install-exec: install-exec-am + +install-data-am: install-rtems_make_customDATA +install-data: install-data-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +install: install-am +uninstall-am: uninstall-rtems_make_customDATA +uninstall: uninstall-am +all-am: Makefile $(DATA) +all-redirect: all-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install +installdirs: + $(mkinstalldirs) $(DESTDIR)$(rtems_make_customdir) + + +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-generic + +mostlyclean: mostlyclean-am + +clean-am: clean-generic mostlyclean-am + +clean: clean-am + +distclean-am: distclean-generic clean-am + +distclean: distclean-am + +maintainer-clean-am: 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: uninstall-rtems_make_customDATA install-rtems_make_customDATA \ +tags distdir info-am info dvi-am dvi check check-am installcheck-am \ +installcheck 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 + + +@MAINTAINER_MODE_TRUE@$(srcdir)/default.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/custom/default.cfg +@MAINTAINER_MODE_TRUE@ sed -e 's%\$$(RTEMS_BSP)%\@RTEMS_BSP\@%g' < $< >$@ + +debug-am: +debug: debug-am +.PHONY: debug debug-am + +debug_install-am: +debug_install: debug_install-am +.PHONY: debug_install debug_install-am + +profile-am: +profile: profile-am +.PHONY: profile profile-am + +profile_install-am: +profile_install: profile_install-am +.PHONY: profile_install profile_install-am + +preinstall-am: +preinstall: preinstall-am +.PHONY: preinstall preinstall-am + +clobber-am: +clobber: clobber-am +.PHONY: clobber clobber-am + +depend-am: +depend: depend-am +.PHONY: depend depend-am + +# 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: diff --git a/c/src/make/custom/default.cfg.in b/c/src/make/custom/default.cfg.in new file mode 100644 index 0000000000..fa35d61bd9 --- /dev/null +++ b/c/src/make/custom/default.cfg.in @@ -0,0 +1,86 @@ +# Default target settings +# +# Some of these values are redefined in the target specific .cfg files. +# +# Created by Jiri Gaisler, 16-03-97 (who is owed a debt of gratitude +# for converting RTEMS to autoconf. Thanks. --joel) +# +# $Id$ +# + +include $(RTEMS_ROOT)/make/target.cfg +include $(RTEMS_ROOT)/make/host.cfg + +# Specify here the host and target "architectures" +HOST_ARCH=o-$(RTEMS_HOST) +ifndef TARGET_ARCH +TARGET_ARCH=o-@RTEMS_BSP@ +endif + +include $(RTEMS_ROOT)/make/main.cfg + +# use the inline functions instead of the macros +# ref: src/exec/generic/Makefile +ifeq ($(RTEMS_USE_MACROS),yes) +INLINE=macros +INLINE_UPCASE= +else +INLINE=inline +INLINE_UPCASE=INLINE +endif + +# HOST Compiler config file +# You may also want to specify where the compiler resides here. +CONFIG.$(HOST_ARCH).CC = $(PROJECT_ROOT)/make/compilers/gcc.cfg + +## Target compiler config file, if any +CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-target-default.cfg + +## GCC specs extension file location +RTEMS_BSP_SPECS = $(PROJECT_ROOT)/@RTEMS_BSP@/lib/bsp_specs + +## LIBC support +## Specify the one you want here and fill in the blanks. +## Currently CYGNUS newlib is supported. +## NOTE: RTEMS libcsupport.a includes RTEMS versions of stuff like +## malloc, gettimeofday, etc. + +# Define this to yes if C++ is included in the development environment. +# This requires that at least the GNU C++ compiler and libg++ be installed. +ifeq ($(RTEMS_HAS_CPLUSPLUS),yes) +HAS_CPLUSPLUS=yes +else +HAS_CPLUSPLUS=no +endif + +# Define this to yes if this target supports multiprocessor environments. +ifeq ($(RTEMS_HAS_MULTIPROCESSING),yes) +HAS_MP=yes +else +HAS_MP=no +endif + +# Define this to yes if this target wants the TCP/IP stack +ifeq ($(RTEMS_HAS_NETWORKING),yes) +HAS_NETWORKING=yes +else +HAS_NETWORKING=no +endif + +# Define this to yes if this target wants the remote debugger +ifeq ($(RTEMS_HAS_RDBG),yes) +HAS_RDBG=yes +else +HAS_RDBG=no +endif + +# Define this to yes if this target wants the posix api +ifeq ($(RTEMS_HAS_POSIX_API),yes) +HAS_POSIX_API=yes +else +HAS_POSIX_API=no +endif + +# Base name of start file +START_BASE=start + diff --git a/c/src/make/main.cfg.in b/c/src/make/main.cfg.in new file mode 100644 index 0000000000..e0af9ab95a --- /dev/null +++ b/c/src/make/main.cfg.in @@ -0,0 +1,73 @@ +# +# $Id$ +# +# make/main.cfg +# +# Make(1) configuration file include'd by all Makefile's +# + +# +# where things are relative to PROJECT_ROOT; shouldn't need to change, +# but could be overridden in custom files. +# + +PROJECT_RELEASE=$(PROJECT_ROOT)/@RTEMS_BSP@ +PROJECT_BIN=$(PROJECT_RELEASE)/bin +PROJECT_INCLUDE=$(PROJECT_RELEASE)/lib/include +PROJECT_TOOLS = $(PROJECT_RELEASE)/build-tools + +# +# Target architecture; may be changed as per 'make "ARCH=${TARGET_ARCH}-debug"' +# This is where the object files get put. +# + +ARCH=${TARGET_ARCH} + +VARIANT= + +# +# Initial target for make(1) +# Once this is established we can safely include other targets +# within this make-include file. +# + +default_target: all + +# +# Default makefile name +# May be overridden by command line macro assignment +# + +MAKEFILE=Makefile + +# +# Target variant names +# and rule to expand them into (for example): sun4 sun4-debug sun4-profile +# Note compiler config may add to TARGET_VARIANTS +# + +TARGET_VARIANTS = debug profile + +# +# Generate list of object directories: sun4, sun4-debug, sun4-profile +# +VARIANTS=${TARGET_ARCH} ${TARGET_VARIANTS:%=${TARGET_ARCH}-%} + +# +# List of "recursion-able" targets for directory Makefiles +# + +RECURSE_TARGETS=all clean protos get clobber depend install \ +preinstall-recursive \ +$(TARGET_VARIANTS) $(TARGET_VARIANTS:%=%_install) + +${ARCH}: + test -d ${ARCH} || mkdir ${ARCH} + + +# general purpose forcing dependency; try to use .PHONY instead +FORCEIT: + +FORCE: + +.PHONY: $(RECURSE_TARGETS) diff --git a/c/src/make/target.cfg.in b/c/src/make/target.cfg.in new file mode 100644 index 0000000000..f40a3753f3 --- /dev/null +++ b/c/src/make/target.cfg.in @@ -0,0 +1,72 @@ +# +# $Id$ +# +# Target specific settings. +# + +prefix = @prefix@ + +CFLAGS = @CFLAGS@ +CPPFLAGS = @CPPFLAGS@ +DEFS = @DEFS@ +LDFLAGS = +LIBS = @LIBS@ + +CC = @CC_FOR_TARGET@ +AS = @AS_FOR_TARGET@ +AR = @AR_FOR_TARGET@ +NM = @NM_FOR_TARGET@ +LD = @LD_FOR_TARGET@ +SIZE = @SIZE_FOR_TARGET@ +STRIP = @STRIP_FOR_TARGET@ +OBJCOPY = @OBJCOPY_FOR_TARGET@ +RANLIB = @RANLIB_FOR_TARGET@ + +CXX = @CXX_FOR_TARGET@ + +export CC +export AS +export LD +export NM +export AR +export SIZE +export OBJCOPY + +export CXX + +RTEMS_CROSS_TARGET=@rtems_cv_prog_cc_cross@ + +RTEMS_HOST = @RTEMS_HOST@ +RTEMS_HAS_MULTIPROCESSING = @RTEMS_HAS_MULTIPROCESSING@ +RTEMS_HAS_POSIX_API = @RTEMS_HAS_POSIX_API@ +RTEMS_HAS_NETWORKING = @RTEMS_HAS_NETWORKING@ +RTEMS_HAS_RDBG = @RTEMS_HAS_RDBG@ +RTEMS_HAS_CPLUSPLUS = @RTEMS_HAS_CPLUSPLUS@ +RTEMS_USE_MACROS = @RTEMS_USE_MACROS@ +RTEMS_USE_GCC272 = @RTEMS_USE_GCC272@ +RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@ +RTEMS_CPU = @RTEMS_CPU@ + +# the following are only used for the bare bsp +BARE_CPU_MODEL = @BARE_CPU_MODEL@ +BARE_CPU_CFLAGS = @BARE_CPU_CFLAGS@ + +XCFLAGS=$(CFLAGS_FOR_TARGET) + +export RTEMS_BSP +export RTEMS_CUSTOM +export PROJECT_ROOT + +# List (possibly empty) of required managers +# We require: +# region -- used by lib/libcsupport for malloc() +# ext -- used by libc for libc reentrancy hooks + +MANAGERS_REQUIRED=region ext sem + +# Create a RTEMS executable based on MANAGERS which was set in +# app's Makefile + +MANAGERS_NOT_WANTED=$(filter-out $(MANAGERS) \ + $(MANAGERS_REQUIRED), $(MANAGER_LIST)) + |