Search
lxdream.org :: lxdream :: r1:eea311cfd33e
lxdream 0.9.1
released Jun 29
Download Now
changeset1:eea311cfd33e
parent0:ed8e5e0e94f1
child2:42349f6ea216
authornkeynes
dateSat Mar 13 00:03:32 2004 +0000 (20 years ago)
This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches.
AUTHORS
ChangeLog
Makefile.am
Makefile.in
NEWS
README
TODO
acconfig.h
aclocal.m4
autogen.sh
config.h.in
configure
configure.in
dream.glade
dream.gladep
pixmaps/dcemu.gif
po/ChangeLog
po/Makefile.in.in
po/POTFILES.in
src/Makefile.am
src/Makefile.in
src/aica.c
src/aica.h
src/asic.c
src/asic.h
src/bootstrap.c
src/bootstrap.h
src/dream.h
src/gdrom/cdi.c
src/gdrom/cdi.h
src/gui/callbacks.c
src/gui/callbacks.h
src/gui/gui.c
src/gui/gui.h
src/gui/gui_mmr.c
src/gui/interface.c
src/gui/interface.h
src/gui/support.c
src/gui/support.h
src/loader.c
src/machine.c
src/main.c
src/maple/maple.c
src/maple/maple.h
src/pvr2/pvr2.c
src/pvr2/pvr2.h
src/sh4/Makefile
src/sh4/Makefile.am
src/sh4/Makefile.in
src/sh4/intc.c
src/sh4/intc.h
src/sh4/mem.c
src/sh4/mem.h
src/sh4/mmio.h
src/sh4/sh4core.c
src/sh4/sh4core.h
src/sh4/sh4dasm.c
src/sh4/sh4dasm.h
src/sh4/sh4mmio.c
src/sh4/sh4mmio.h
src/tst.c
src/tst1.c
src/video.c
src/video.h
stamp-h.in
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/ChangeLog Sat Mar 13 00:03:32 2004 +0000
1.3 @@ -0,0 +1,2 @@
1.4 +07 Mar 2004 - Restarting the project. Ported the gui layer to Gtk 2.0
1.5 + (although still need to replace the GtkCLists at some point)
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
2.2 +++ b/Makefile.am Sat Mar 13 00:03:32 2004 +0000
2.3 @@ -0,0 +1,30 @@
2.4 +## Process this file with automake to produce Makefile.in
2.5 +
2.6 +SUBDIRS = src po
2.7 +
2.8 +EXTRA_DIST = \
2.9 + autogen.sh \
2.10 + dream.glade \
2.11 + dream.gladep
2.12 +
2.13 +install-data-local:
2.14 + @$(NORMAL_INSTALL)
2.15 + if test -d $(srcdir)/pixmaps; then \
2.16 + $(mkinstalldirs) $(DESTDIR)$(datadir)/pixmaps/$(PACKAGE); \
2.17 + for pixmap in $(srcdir)/pixmaps/*; do \
2.18 + if test -f $$pixmap; then \
2.19 + $(INSTALL_DATA) $$pixmap $(DESTDIR)$(datadir)/pixmaps/$(PACKAGE); \
2.20 + fi \
2.21 + done \
2.22 + fi
2.23 +
2.24 +dist-hook:
2.25 + if test -d pixmaps; then \
2.26 + mkdir $(distdir)/pixmaps; \
2.27 + for pixmap in pixmaps/*; do \
2.28 + if test -f $$pixmap; then \
2.29 + cp -p $$pixmap $(distdir)/pixmaps; \
2.30 + fi \
2.31 + done \
2.32 + fi
2.33 +
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2 +++ b/Makefile.in Sat Mar 13 00:03:32 2004 +0000
3.3 @@ -0,0 +1,563 @@
3.4 +# Makefile.in generated by automake 1.7.9 from Makefile.am.
3.5 +# @configure_input@
3.6 +
3.7 +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
3.8 +# Free Software Foundation, Inc.
3.9 +# This Makefile.in is free software; the Free Software Foundation
3.10 +# gives unlimited permission to copy and/or distribute it,
3.11 +# with or without modifications, as long as this notice is preserved.
3.12 +
3.13 +# This program is distributed in the hope that it will be useful,
3.14 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
3.15 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
3.16 +# PARTICULAR PURPOSE.
3.17 +
3.18 +@SET_MAKE@
3.19 +
3.20 +srcdir = @srcdir@
3.21 +top_srcdir = @top_srcdir@
3.22 +VPATH = @srcdir@
3.23 +pkgdatadir = $(datadir)/@PACKAGE@
3.24 +pkglibdir = $(libdir)/@PACKAGE@
3.25 +pkgincludedir = $(includedir)/@PACKAGE@
3.26 +top_builddir = .
3.27 +
3.28 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
3.29 +INSTALL = @INSTALL@
3.30 +install_sh_DATA = $(install_sh) -c -m 644
3.31 +install_sh_PROGRAM = $(install_sh) -c
3.32 +install_sh_SCRIPT = $(install_sh) -c
3.33 +INSTALL_HEADER = $(INSTALL_DATA)
3.34 +transform = $(program_transform_name)
3.35 +NORMAL_INSTALL = :
3.36 +PRE_INSTALL = :
3.37 +POST_INSTALL = :
3.38 +NORMAL_UNINSTALL = :
3.39 +PRE_UNINSTALL = :
3.40 +POST_UNINSTALL = :
3.41 +ACLOCAL = @ACLOCAL@
3.42 +AMDEP_FALSE = @AMDEP_FALSE@
3.43 +AMDEP_TRUE = @AMDEP_TRUE@
3.44 +AMTAR = @AMTAR@
3.45 +AUTOCONF = @AUTOCONF@
3.46 +AUTOHEADER = @AUTOHEADER@
3.47 +AUTOMAKE = @AUTOMAKE@
3.48 +AWK = @AWK@
3.49 +CATALOGS = @CATALOGS@
3.50 +CATOBJEXT = @CATOBJEXT@
3.51 +CC = @CC@
3.52 +CCDEPMODE = @CCDEPMODE@
3.53 +CFLAGS = @CFLAGS@
3.54 +CPP = @CPP@
3.55 +CPPFLAGS = @CPPFLAGS@
3.56 +CYGPATH_W = @CYGPATH_W@
3.57 +DATADIRNAME = @DATADIRNAME@
3.58 +DEFS = @DEFS@
3.59 +DEPDIR = @DEPDIR@
3.60 +ECHO_C = @ECHO_C@
3.61 +ECHO_N = @ECHO_N@
3.62 +ECHO_T = @ECHO_T@
3.63 +EGREP = @EGREP@
3.64 +EXEEXT = @EXEEXT@
3.65 +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
3.66 +GMOFILES = @GMOFILES@
3.67 +GMSGFMT = @GMSGFMT@
3.68 +INSTALL_DATA = @INSTALL_DATA@
3.69 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
3.70 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
3.71 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
3.72 +INSTOBJEXT = @INSTOBJEXT@
3.73 +INTLLIBS = @INTLLIBS@
3.74 +LDFLAGS = @LDFLAGS@
3.75 +LIBOBJS = @LIBOBJS@
3.76 +LIBS = @LIBS@
3.77 +LTLIBOBJS = @LTLIBOBJS@
3.78 +MAINT = @MAINT@
3.79 +MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
3.80 +MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
3.81 +MAKEINFO = @MAKEINFO@
3.82 +MKINSTALLDIRS = @MKINSTALLDIRS@
3.83 +MSGFMT = @MSGFMT@
3.84 +OBJEXT = @OBJEXT@
3.85 +PACKAGE = @PACKAGE@
3.86 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
3.87 +PACKAGE_CFLAGS = @PACKAGE_CFLAGS@
3.88 +PACKAGE_LIBS = @PACKAGE_LIBS@
3.89 +PACKAGE_NAME = @PACKAGE_NAME@
3.90 +PACKAGE_STRING = @PACKAGE_STRING@
3.91 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
3.92 +PACKAGE_VERSION = @PACKAGE_VERSION@
3.93 +PATH_SEPARATOR = @PATH_SEPARATOR@
3.94 +PKG_CONFIG = @PKG_CONFIG@
3.95 +POFILES = @POFILES@
3.96 +POSUB = @POSUB@
3.97 +PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
3.98 +PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
3.99 +SET_MAKE = @SET_MAKE@
3.100 +SHELL = @SHELL@
3.101 +STRIP = @STRIP@
3.102 +USE_NLS = @USE_NLS@
3.103 +VERSION = @VERSION@
3.104 +XGETTEXT = @XGETTEXT@
3.105 +ac_ct_CC = @ac_ct_CC@
3.106 +ac_ct_STRIP = @ac_ct_STRIP@
3.107 +am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
3.108 +am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
3.109 +am__include = @am__include@
3.110 +am__leading_dot = @am__leading_dot@
3.111 +am__quote = @am__quote@
3.112 +bindir = @bindir@
3.113 +build_alias = @build_alias@
3.114 +datadir = @datadir@
3.115 +exec_prefix = @exec_prefix@
3.116 +host_alias = @host_alias@
3.117 +includedir = @includedir@
3.118 +infodir = @infodir@
3.119 +install_sh = @install_sh@
3.120 +libdir = @libdir@
3.121 +libexecdir = @libexecdir@
3.122 +localstatedir = @localstatedir@
3.123 +mandir = @mandir@
3.124 +oldincludedir = @oldincludedir@
3.125 +prefix = @prefix@
3.126 +program_transform_name = @program_transform_name@
3.127 +sbindir = @sbindir@
3.128 +sharedstatedir = @sharedstatedir@
3.129 +sysconfdir = @sysconfdir@
3.130 +target_alias = @target_alias@
3.131 +
3.132 +SUBDIRS = src po
3.133 +
3.134 +EXTRA_DIST = \
3.135 + autogen.sh \
3.136 + dream.glade \
3.137 + dream.gladep
3.138 +
3.139 +subdir = .
3.140 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
3.141 +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
3.142 +CONFIG_HEADER = config.h
3.143 +CONFIG_CLEAN_FILES =
3.144 +DIST_SOURCES =
3.145 +
3.146 +RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
3.147 + ps-recursive install-info-recursive uninstall-info-recursive \
3.148 + all-recursive install-data-recursive install-exec-recursive \
3.149 + installdirs-recursive install-recursive uninstall-recursive \
3.150 + check-recursive installcheck-recursive
3.151 +DIST_COMMON = README $(srcdir)/Makefile.in $(srcdir)/configure AUTHORS \
3.152 + COPYING ChangeLog INSTALL Makefile.am NEWS acconfig.h \
3.153 + aclocal.m4 config.h.in configure.in depcomp install-sh missing \
3.154 + mkinstalldirs
3.155 +DIST_SUBDIRS = $(SUBDIRS)
3.156 +all: config.h
3.157 + $(MAKE) $(AM_MAKEFLAGS) all-recursive
3.158 +
3.159 +.SUFFIXES:
3.160 +
3.161 +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
3.162 + configure.lineno
3.163 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
3.164 + cd $(top_srcdir) && \
3.165 + $(AUTOMAKE) --gnu Makefile
3.166 +Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
3.167 + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)
3.168 +
3.169 +$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
3.170 + $(SHELL) ./config.status --recheck
3.171 +$(srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
3.172 + cd $(srcdir) && $(AUTOCONF)
3.173 +
3.174 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in
3.175 + cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
3.176 +
3.177 +config.h: stamp-h1
3.178 + @if test ! -f $@; then \
3.179 + rm -f stamp-h1; \
3.180 + $(MAKE) stamp-h1; \
3.181 + else :; fi
3.182 +
3.183 +stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
3.184 + @rm -f stamp-h1
3.185 + cd $(top_builddir) && $(SHELL) ./config.status config.h
3.186 +
3.187 +$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/acconfig.h
3.188 + cd $(top_srcdir) && $(AUTOHEADER)
3.189 + touch $(srcdir)/config.h.in
3.190 +
3.191 +distclean-hdr:
3.192 + -rm -f config.h stamp-h1
3.193 +uninstall-info-am:
3.194 +
3.195 +# This directory's subdirectories are mostly independent; you can cd
3.196 +# into them and run `make' without going through this Makefile.
3.197 +# To change the values of `make' variables: instead of editing Makefiles,
3.198 +# (1) if the variable is set in `config.status', edit `config.status'
3.199 +# (which will cause the Makefiles to be regenerated when you run `make');
3.200 +# (2) otherwise, pass the desired values on the `make' command line.
3.201 +$(RECURSIVE_TARGETS):
3.202 + @set fnord $$MAKEFLAGS; amf=$$2; \
3.203 + dot_seen=no; \
3.204 + target=`echo $@ | sed s/-recursive//`; \
3.205 + list='$(SUBDIRS)'; for subdir in $$list; do \
3.206 + echo "Making $$target in $$subdir"; \
3.207 + if test "$$subdir" = "."; then \
3.208 + dot_seen=yes; \
3.209 + local_target="$$target-am"; \
3.210 + else \
3.211 + local_target="$$target"; \
3.212 + fi; \
3.213 + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
3.214 + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
3.215 + done; \
3.216 + if test "$$dot_seen" = "no"; then \
3.217 + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
3.218 + fi; test -z "$$fail"
3.219 +
3.220 +mostlyclean-recursive clean-recursive distclean-recursive \
3.221 +maintainer-clean-recursive:
3.222 + @set fnord $$MAKEFLAGS; amf=$$2; \
3.223 + dot_seen=no; \
3.224 + case "$@" in \
3.225 + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
3.226 + *) list='$(SUBDIRS)' ;; \
3.227 + esac; \
3.228 + rev=''; for subdir in $$list; do \
3.229 + if test "$$subdir" = "."; then :; else \
3.230 + rev="$$subdir $$rev"; \
3.231 + fi; \
3.232 + done; \
3.233 + rev="$$rev ."; \
3.234 + target=`echo $@ | sed s/-recursive//`; \
3.235 + for subdir in $$rev; do \
3.236 + echo "Making $$target in $$subdir"; \
3.237 + if test "$$subdir" = "."; then \
3.238 + local_target="$$target-am"; \
3.239 + else \
3.240 + local_target="$$target"; \
3.241 + fi; \
3.242 + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
3.243 + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
3.244 + done && test -z "$$fail"
3.245 +tags-recursive:
3.246 + list='$(SUBDIRS)'; for subdir in $$list; do \
3.247 + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
3.248 + done
3.249 +ctags-recursive:
3.250 + list='$(SUBDIRS)'; for subdir in $$list; do \
3.251 + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
3.252 + done
3.253 +
3.254 +ETAGS = etags
3.255 +ETAGSFLAGS =
3.256 +
3.257 +CTAGS = ctags
3.258 +CTAGSFLAGS =
3.259 +
3.260 +tags: TAGS
3.261 +
3.262 +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
3.263 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
3.264 + unique=`for i in $$list; do \
3.265 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
3.266 + done | \
3.267 + $(AWK) ' { files[$$0] = 1; } \
3.268 + END { for (i in files) print i; }'`; \
3.269 + mkid -fID $$unique
3.270 +
3.271 +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
3.272 + $(TAGS_FILES) $(LISP)
3.273 + tags=; \
3.274 + here=`pwd`; \
3.275 + if (etags --etags-include --version) >/dev/null 2>&1; then \
3.276 + include_option=--etags-include; \
3.277 + else \
3.278 + include_option=--include; \
3.279 + fi; \
3.280 + list='$(SUBDIRS)'; for subdir in $$list; do \
3.281 + if test "$$subdir" = .; then :; else \
3.282 + test -f $$subdir/TAGS && \
3.283 + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
3.284 + fi; \
3.285 + done; \
3.286 + list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
3.287 + unique=`for i in $$list; do \
3.288 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
3.289 + done | \
3.290 + $(AWK) ' { files[$$0] = 1; } \
3.291 + END { for (i in files) print i; }'`; \
3.292 + test -z "$(ETAGS_ARGS)$$tags$$unique" \
3.293 + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
3.294 + $$tags $$unique
3.295 +
3.296 +ctags: CTAGS
3.297 +CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
3.298 + $(TAGS_FILES) $(LISP)
3.299 + tags=; \
3.300 + here=`pwd`; \
3.301 + list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
3.302 + unique=`for i in $$list; do \
3.303 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
3.304 + done | \
3.305 + $(AWK) ' { files[$$0] = 1; } \
3.306 + END { for (i in files) print i; }'`; \
3.307 + test -z "$(CTAGS_ARGS)$$tags$$unique" \
3.308 + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
3.309 + $$tags $$unique
3.310 +
3.311 +GTAGS:
3.312 + here=`$(am__cd) $(top_builddir) && pwd` \
3.313 + && cd $(top_srcdir) \
3.314 + && gtags -i $(GTAGS_ARGS) $$here
3.315 +
3.316 +distclean-tags:
3.317 + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
3.318 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
3.319 +
3.320 +top_distdir = .
3.321 +distdir = $(PACKAGE)-$(VERSION)
3.322 +
3.323 +am__remove_distdir = \
3.324 + { test ! -d $(distdir) \
3.325 + || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
3.326 + && rm -fr $(distdir); }; }
3.327 +
3.328 +GZIP_ENV = --best
3.329 +distuninstallcheck_listfiles = find . -type f -print
3.330 +distcleancheck_listfiles = find . -type f -print
3.331 +
3.332 +distdir: $(DISTFILES)
3.333 + $(am__remove_distdir)
3.334 + mkdir $(distdir)
3.335 + $(mkinstalldirs) $(distdir)/po
3.336 + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
3.337 + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
3.338 + list='$(DISTFILES)'; for file in $$list; do \
3.339 + case $$file in \
3.340 + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
3.341 + $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
3.342 + esac; \
3.343 + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
3.344 + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
3.345 + if test "$$dir" != "$$file" && test "$$dir" != "."; then \
3.346 + dir="/$$dir"; \
3.347 + $(mkinstalldirs) "$(distdir)$$dir"; \
3.348 + else \
3.349 + dir=''; \
3.350 + fi; \
3.351 + if test -d $$d/$$file; then \
3.352 + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
3.353 + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
3.354 + fi; \
3.355 + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
3.356 + else \
3.357 + test -f $(distdir)/$$file \
3.358 + || cp -p $$d/$$file $(distdir)/$$file \
3.359 + || exit 1; \
3.360 + fi; \
3.361 + done
3.362 + list='$(SUBDIRS)'; for subdir in $$list; do \
3.363 + if test "$$subdir" = .; then :; else \
3.364 + test -d $(distdir)/$$subdir \
3.365 + || mkdir $(distdir)/$$subdir \
3.366 + || exit 1; \
3.367 + (cd $$subdir && \
3.368 + $(MAKE) $(AM_MAKEFLAGS) \
3.369 + top_distdir="$(top_distdir)" \
3.370 + distdir=../$(distdir)/$$subdir \
3.371 + distdir) \
3.372 + || exit 1; \
3.373 + fi; \
3.374 + done
3.375 + $(MAKE) $(AM_MAKEFLAGS) \
3.376 + top_distdir="$(top_distdir)" distdir="$(distdir)" \
3.377 + dist-hook
3.378 + -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
3.379 + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
3.380 + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
3.381 + ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
3.382 + || chmod -R a+r $(distdir)
3.383 +dist-gzip: distdir
3.384 + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
3.385 + $(am__remove_distdir)
3.386 +
3.387 +dist dist-all: distdir
3.388 + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
3.389 + $(am__remove_distdir)
3.390 +
3.391 +# This target untars the dist file and tries a VPATH configuration. Then
3.392 +# it guarantees that the distribution is self-contained by making another
3.393 +# tarfile.
3.394 +distcheck: dist
3.395 + $(am__remove_distdir)
3.396 + GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf -
3.397 + chmod -R a-w $(distdir); chmod a+w $(distdir)
3.398 + mkdir $(distdir)/_build
3.399 + mkdir $(distdir)/_inst
3.400 + chmod a-w $(distdir)
3.401 + dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
3.402 + && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
3.403 + && cd $(distdir)/_build \
3.404 + && ../configure --srcdir=.. --prefix="$$dc_install_base" \
3.405 + $(DISTCHECK_CONFIGURE_FLAGS) \
3.406 + && $(MAKE) $(AM_MAKEFLAGS) \
3.407 + && $(MAKE) $(AM_MAKEFLAGS) dvi \
3.408 + && $(MAKE) $(AM_MAKEFLAGS) check \
3.409 + && $(MAKE) $(AM_MAKEFLAGS) install \
3.410 + && $(MAKE) $(AM_MAKEFLAGS) installcheck \
3.411 + && $(MAKE) $(AM_MAKEFLAGS) uninstall \
3.412 + && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
3.413 + distuninstallcheck \
3.414 + && chmod -R a-w "$$dc_install_base" \
3.415 + && ({ \
3.416 + (cd ../.. && $(mkinstalldirs) "$$dc_destdir") \
3.417 + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
3.418 + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
3.419 + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
3.420 + distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
3.421 + } || { rm -rf "$$dc_destdir"; exit 1; }) \
3.422 + && rm -rf "$$dc_destdir" \
3.423 + && $(MAKE) $(AM_MAKEFLAGS) dist-gzip \
3.424 + && rm -f $(distdir).tar.gz \
3.425 + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
3.426 + $(am__remove_distdir)
3.427 + @echo "$(distdir).tar.gz is ready for distribution" | \
3.428 + sed 'h;s/./=/g;p;x;p;x'
3.429 +distuninstallcheck:
3.430 + @cd $(distuninstallcheck_dir) \
3.431 + && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
3.432 + || { echo "ERROR: files left after uninstall:" ; \
3.433 + if test -n "$(DESTDIR)"; then \
3.434 + echo " (check DESTDIR support)"; \
3.435 + fi ; \
3.436 + $(distuninstallcheck_listfiles) ; \
3.437 + exit 1; } >&2
3.438 +distcleancheck: distclean
3.439 + @if test '$(srcdir)' = . ; then \
3.440 + echo "ERROR: distcleancheck can only run from a VPATH build" ; \
3.441 + exit 1 ; \
3.442 + fi
3.443 + @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
3.444 + || { echo "ERROR: files left in build directory after distclean:" ; \
3.445 + $(distcleancheck_listfiles) ; \
3.446 + exit 1; } >&2
3.447 +check-am: all-am
3.448 +check: check-recursive
3.449 +all-am: Makefile config.h
3.450 +installdirs: installdirs-recursive
3.451 +installdirs-am:
3.452 +
3.453 +install: install-recursive
3.454 +install-exec: install-exec-recursive
3.455 +install-data: install-data-recursive
3.456 +uninstall: uninstall-recursive
3.457 +
3.458 +install-am: all-am
3.459 + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
3.460 +
3.461 +installcheck: installcheck-recursive
3.462 +install-strip:
3.463 + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
3.464 + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
3.465 + `test -z '$(STRIP)' || \
3.466 + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
3.467 +mostlyclean-generic:
3.468 +
3.469 +clean-generic:
3.470 +
3.471 +distclean-generic:
3.472 + -rm -f $(CONFIG_CLEAN_FILES)
3.473 +
3.474 +maintainer-clean-generic:
3.475 + @echo "This command is intended for maintainers to use"
3.476 + @echo "it deletes files that may require special tools to rebuild."
3.477 +clean: clean-recursive
3.478 +
3.479 +clean-am: clean-generic mostlyclean-am
3.480 +
3.481 +distclean: distclean-recursive
3.482 + -rm -f $(am__CONFIG_DISTCLEAN_FILES)
3.483 + -rm -f Makefile
3.484 +distclean-am: clean-am distclean-generic distclean-hdr distclean-tags
3.485 +
3.486 +dvi: dvi-recursive
3.487 +
3.488 +dvi-am:
3.489 +
3.490 +info: info-recursive
3.491 +
3.492 +info-am:
3.493 +
3.494 +install-data-am: install-data-local
3.495 +
3.496 +install-exec-am:
3.497 +
3.498 +install-info: install-info-recursive
3.499 +
3.500 +install-man:
3.501 +
3.502 +installcheck-am:
3.503 +
3.504 +maintainer-clean: maintainer-clean-recursive
3.505 + -rm -f $(am__CONFIG_DISTCLEAN_FILES)
3.506 + -rm -rf $(top_srcdir)/autom4te.cache
3.507 + -rm -f Makefile
3.508 +maintainer-clean-am: distclean-am maintainer-clean-generic
3.509 +
3.510 +mostlyclean: mostlyclean-recursive
3.511 +
3.512 +mostlyclean-am: mostlyclean-generic
3.513 +
3.514 +pdf: pdf-recursive
3.515 +
3.516 +pdf-am:
3.517 +
3.518 +ps: ps-recursive
3.519 +
3.520 +ps-am:
3.521 +
3.522 +uninstall-am: uninstall-info-am
3.523 +
3.524 +uninstall-info: uninstall-info-recursive
3.525 +
3.526 +.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
3.527 + clean-generic clean-recursive ctags ctags-recursive dist \
3.528 + dist-all dist-gzip distcheck distclean distclean-generic \
3.529 + distclean-hdr distclean-recursive distclean-tags distcleancheck \
3.530 + distdir distuninstallcheck dvi dvi-am dvi-recursive info \
3.531 + info-am info-recursive install install-am install-data \
3.532 + install-data-am install-data-local install-data-recursive \
3.533 + install-exec install-exec-am install-exec-recursive \
3.534 + install-info install-info-am install-info-recursive install-man \
3.535 + install-recursive install-strip installcheck installcheck-am \
3.536 + installdirs installdirs-am installdirs-recursive \
3.537 + maintainer-clean maintainer-clean-generic \
3.538 + maintainer-clean-recursive mostlyclean mostlyclean-generic \
3.539 + mostlyclean-recursive pdf pdf-am pdf-recursive ps ps-am \
3.540 + ps-recursive tags tags-recursive uninstall uninstall-am \
3.541 + uninstall-info-am uninstall-info-recursive uninstall-recursive
3.542 +
3.543 +
3.544 +install-data-local:
3.545 + @$(NORMAL_INSTALL)
3.546 + if test -d $(srcdir)/pixmaps; then \
3.547 + $(mkinstalldirs) $(DESTDIR)$(datadir)/pixmaps/$(PACKAGE); \
3.548 + for pixmap in $(srcdir)/pixmaps/*; do \
3.549 + if test -f $$pixmap; then \
3.550 + $(INSTALL_DATA) $$pixmap $(DESTDIR)$(datadir)/pixmaps/$(PACKAGE); \
3.551 + fi \
3.552 + done \
3.553 + fi
3.554 +
3.555 +dist-hook:
3.556 + if test -d pixmaps; then \
3.557 + mkdir $(distdir)/pixmaps; \
3.558 + for pixmap in pixmaps/*; do \
3.559 + if test -f $$pixmap; then \
3.560 + cp -p $$pixmap $(distdir)/pixmaps; \
3.561 + fi \
3.562 + done \
3.563 + fi
3.564 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
3.565 +# Otherwise a system limit (for SysV at least) may be exceeded.
3.566 +.NOEXPORT:
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
4.2 +++ b/TODO Sat Mar 13 00:03:32 2004 +0000
4.3 @@ -0,0 +1,15 @@
4.4 +Immediate stuff to look at:
4.5 +
4.6 + * Maple bus
4.7 + - various controllers
4.8 +
4.9 + * IDE/GDRom drive
4.10 + - cd-file interface (cdi, bin/cue, , nrg, mds, etc)
4.11 +
4.12 +And then
4.13 + * EXTDMA unit
4.14 + * PowerVR chip
4.15 + * Sound chip
4.16 + - ARM7trm cpu core (yeah, this one will be fun)
4.17 + - DSP side
4.18 + * network adapter
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
5.2 +++ b/acconfig.h Sat Mar 13 00:03:32 2004 +0000
5.3 @@ -0,0 +1,7 @@
5.4 +#undef ENABLE_NLS
5.5 +#undef HAVE_CATGETS
5.6 +#undef HAVE_GETTEXT
5.7 +#undef GETTEXT_PACKAGE
5.8 +#undef HAVE_LC_MESSAGES
5.9 +#undef HAVE_STPCPY
5.10 +#undef HAVE_LIBSM
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
6.2 +++ b/aclocal.m4 Sat Mar 13 00:03:32 2004 +0000
6.3 @@ -0,0 +1,1474 @@
6.4 +# generated automatically by aclocal 1.7.9 -*- Autoconf -*-
6.5 +
6.6 +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002
6.7 +# Free Software Foundation, Inc.
6.8 +# This file is free software; the Free Software Foundation
6.9 +# gives unlimited permission to copy and/or distribute it,
6.10 +# with or without modifications, as long as this notice is preserved.
6.11 +
6.12 +# This program is distributed in the hope that it will be useful,
6.13 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
6.14 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
6.15 +# PARTICULAR PURPOSE.
6.16 +
6.17 +# Do all the work for Automake. -*- Autoconf -*-
6.18 +
6.19 +# This macro actually does too much some checks are only needed if
6.20 +# your package does certain things. But this isn't really a big deal.
6.21 +
6.22 +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
6.23 +# Free Software Foundation, Inc.
6.24 +
6.25 +# This program is free software; you can redistribute it and/or modify
6.26 +# it under the terms of the GNU General Public License as published by
6.27 +# the Free Software Foundation; either version 2, or (at your option)
6.28 +# any later version.
6.29 +
6.30 +# This program is distributed in the hope that it will be useful,
6.31 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.32 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.33 +# GNU General Public License for more details.
6.34 +
6.35 +# You should have received a copy of the GNU General Public License
6.36 +# along with this program; if not, write to the Free Software
6.37 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.38 +# 02111-1307, USA.
6.39 +
6.40 +# serial 10
6.41 +
6.42 +AC_PREREQ([2.54])
6.43 +
6.44 +# Autoconf 2.50 wants to disallow AM_ names. We explicitly allow
6.45 +# the ones we care about.
6.46 +m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
6.47 +
6.48 +# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
6.49 +# AM_INIT_AUTOMAKE([OPTIONS])
6.50 +# -----------------------------------------------
6.51 +# The call with PACKAGE and VERSION arguments is the old style
6.52 +# call (pre autoconf-2.50), which is being phased out. PACKAGE
6.53 +# and VERSION should now be passed to AC_INIT and removed from
6.54 +# the call to AM_INIT_AUTOMAKE.
6.55 +# We support both call styles for the transition. After
6.56 +# the next Automake release, Autoconf can make the AC_INIT
6.57 +# arguments mandatory, and then we can depend on a new Autoconf
6.58 +# release and drop the old call support.
6.59 +AC_DEFUN([AM_INIT_AUTOMAKE],
6.60 +[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
6.61 + AC_REQUIRE([AC_PROG_INSTALL])dnl
6.62 +# test to see if srcdir already configured
6.63 +if test "`cd $srcdir && pwd`" != "`pwd`" &&
6.64 + test -f $srcdir/config.status; then
6.65 + AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
6.66 +fi
6.67 +
6.68 +# test whether we have cygpath
6.69 +if test -z "$CYGPATH_W"; then
6.70 + if (cygpath --version) >/dev/null 2>/dev/null; then
6.71 + CYGPATH_W='cygpath -w'
6.72 + else
6.73 + CYGPATH_W=echo
6.74 + fi
6.75 +fi
6.76 +AC_SUBST([CYGPATH_W])
6.77 +
6.78 +# Define the identity of the package.
6.79 +dnl Distinguish between old-style and new-style calls.
6.80 +m4_ifval([$2],
6.81 +[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
6.82 + AC_SUBST([PACKAGE], [$1])dnl
6.83 + AC_SUBST([VERSION], [$2])],
6.84 +[_AM_SET_OPTIONS([$1])dnl
6.85 + AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
6.86 + AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
6.87 +
6.88 +_AM_IF_OPTION([no-define],,
6.89 +[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
6.90 + AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
6.91 +
6.92 +# Some tools Automake needs.
6.93 +AC_REQUIRE([AM_SANITY_CHECK])dnl
6.94 +AC_REQUIRE([AC_ARG_PROGRAM])dnl
6.95 +AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
6.96 +AM_MISSING_PROG(AUTOCONF, autoconf)
6.97 +AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
6.98 +AM_MISSING_PROG(AUTOHEADER, autoheader)
6.99 +AM_MISSING_PROG(MAKEINFO, makeinfo)
6.100 +AM_MISSING_PROG(AMTAR, tar)
6.101 +AM_PROG_INSTALL_SH
6.102 +AM_PROG_INSTALL_STRIP
6.103 +# We need awk for the "check" target. The system "awk" is bad on
6.104 +# some platforms.
6.105 +AC_REQUIRE([AC_PROG_AWK])dnl
6.106 +AC_REQUIRE([AC_PROG_MAKE_SET])dnl
6.107 +AC_REQUIRE([AM_SET_LEADING_DOT])dnl
6.108 +
6.109 +_AM_IF_OPTION([no-dependencies],,
6.110 +[AC_PROVIDE_IFELSE([AC_PROG_CC],
6.111 + [_AM_DEPENDENCIES(CC)],
6.112 + [define([AC_PROG_CC],
6.113 + defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
6.114 +AC_PROVIDE_IFELSE([AC_PROG_CXX],
6.115 + [_AM_DEPENDENCIES(CXX)],
6.116 + [define([AC_PROG_CXX],
6.117 + defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
6.118 +])
6.119 +])
6.120 +
6.121 +
6.122 +# When config.status generates a header, we must update the stamp-h file.
6.123 +# This file resides in the same directory as the config header
6.124 +# that is generated. The stamp files are numbered to have different names.
6.125 +
6.126 +# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
6.127 +# loop where config.status creates the headers, so we can generate
6.128 +# our stamp files there.
6.129 +AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
6.130 +[# Compute $1's index in $config_headers.
6.131 +_am_stamp_count=1
6.132 +for _am_header in $config_headers :; do
6.133 + case $_am_header in
6.134 + $1 | $1:* )
6.135 + break ;;
6.136 + * )
6.137 + _am_stamp_count=`expr $_am_stamp_count + 1` ;;
6.138 + esac
6.139 +done
6.140 +echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
6.141 +
6.142 +# Copyright 2002 Free Software Foundation, Inc.
6.143 +
6.144 +# This program is free software; you can redistribute it and/or modify
6.145 +# it under the terms of the GNU General Public License as published by
6.146 +# the Free Software Foundation; either version 2, or (at your option)
6.147 +# any later version.
6.148 +
6.149 +# This program is distributed in the hope that it will be useful,
6.150 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.151 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.152 +# GNU General Public License for more details.
6.153 +
6.154 +# You should have received a copy of the GNU General Public License
6.155 +# along with this program; if not, write to the Free Software
6.156 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.157 +
6.158 +# AM_AUTOMAKE_VERSION(VERSION)
6.159 +# ----------------------------
6.160 +# Automake X.Y traces this macro to ensure aclocal.m4 has been
6.161 +# generated from the m4 files accompanying Automake X.Y.
6.162 +AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.7"])
6.163 +
6.164 +# AM_SET_CURRENT_AUTOMAKE_VERSION
6.165 +# -------------------------------
6.166 +# Call AM_AUTOMAKE_VERSION so it can be traced.
6.167 +# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
6.168 +AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
6.169 + [AM_AUTOMAKE_VERSION([1.7.9])])
6.170 +
6.171 +# Helper functions for option handling. -*- Autoconf -*-
6.172 +
6.173 +# Copyright 2001, 2002 Free Software Foundation, Inc.
6.174 +
6.175 +# This program is free software; you can redistribute it and/or modify
6.176 +# it under the terms of the GNU General Public License as published by
6.177 +# the Free Software Foundation; either version 2, or (at your option)
6.178 +# any later version.
6.179 +
6.180 +# This program is distributed in the hope that it will be useful,
6.181 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.182 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.183 +# GNU General Public License for more details.
6.184 +
6.185 +# You should have received a copy of the GNU General Public License
6.186 +# along with this program; if not, write to the Free Software
6.187 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.188 +# 02111-1307, USA.
6.189 +
6.190 +# serial 2
6.191 +
6.192 +# _AM_MANGLE_OPTION(NAME)
6.193 +# -----------------------
6.194 +AC_DEFUN([_AM_MANGLE_OPTION],
6.195 +[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
6.196 +
6.197 +# _AM_SET_OPTION(NAME)
6.198 +# ------------------------------
6.199 +# Set option NAME. Presently that only means defining a flag for this option.
6.200 +AC_DEFUN([_AM_SET_OPTION],
6.201 +[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
6.202 +
6.203 +# _AM_SET_OPTIONS(OPTIONS)
6.204 +# ----------------------------------
6.205 +# OPTIONS is a space-separated list of Automake options.
6.206 +AC_DEFUN([_AM_SET_OPTIONS],
6.207 +[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
6.208 +
6.209 +# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
6.210 +# -------------------------------------------
6.211 +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
6.212 +AC_DEFUN([_AM_IF_OPTION],
6.213 +[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
6.214 +
6.215 +#
6.216 +# Check to make sure that the build environment is sane.
6.217 +#
6.218 +
6.219 +# Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc.
6.220 +
6.221 +# This program is free software; you can redistribute it and/or modify
6.222 +# it under the terms of the GNU General Public License as published by
6.223 +# the Free Software Foundation; either version 2, or (at your option)
6.224 +# any later version.
6.225 +
6.226 +# This program is distributed in the hope that it will be useful,
6.227 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.228 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.229 +# GNU General Public License for more details.
6.230 +
6.231 +# You should have received a copy of the GNU General Public License
6.232 +# along with this program; if not, write to the Free Software
6.233 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.234 +# 02111-1307, USA.
6.235 +
6.236 +# serial 3
6.237 +
6.238 +# AM_SANITY_CHECK
6.239 +# ---------------
6.240 +AC_DEFUN([AM_SANITY_CHECK],
6.241 +[AC_MSG_CHECKING([whether build environment is sane])
6.242 +# Just in case
6.243 +sleep 1
6.244 +echo timestamp > conftest.file
6.245 +# Do `set' in a subshell so we don't clobber the current shell's
6.246 +# arguments. Must try -L first in case configure is actually a
6.247 +# symlink; some systems play weird games with the mod time of symlinks
6.248 +# (eg FreeBSD returns the mod time of the symlink's containing
6.249 +# directory).
6.250 +if (
6.251 + set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
6.252 + if test "$[*]" = "X"; then
6.253 + # -L didn't work.
6.254 + set X `ls -t $srcdir/configure conftest.file`
6.255 + fi
6.256 + rm -f conftest.file
6.257 + if test "$[*]" != "X $srcdir/configure conftest.file" \
6.258 + && test "$[*]" != "X conftest.file $srcdir/configure"; then
6.259 +
6.260 + # If neither matched, then we have a broken ls. This can happen
6.261 + # if, for instance, CONFIG_SHELL is bash and it inherits a
6.262 + # broken ls alias from the environment. This has actually
6.263 + # happened. Such a system could not be considered "sane".
6.264 + AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
6.265 +alias in your environment])
6.266 + fi
6.267 +
6.268 + test "$[2]" = conftest.file
6.269 + )
6.270 +then
6.271 + # Ok.
6.272 + :
6.273 +else
6.274 + AC_MSG_ERROR([newly created file is older than distributed files!
6.275 +Check your system clock])
6.276 +fi
6.277 +AC_MSG_RESULT(yes)])
6.278 +
6.279 +# -*- Autoconf -*-
6.280 +
6.281 +
6.282 +# Copyright 1997, 1999, 2000, 2001 Free Software Foundation, Inc.
6.283 +
6.284 +# This program is free software; you can redistribute it and/or modify
6.285 +# it under the terms of the GNU General Public License as published by
6.286 +# the Free Software Foundation; either version 2, or (at your option)
6.287 +# any later version.
6.288 +
6.289 +# This program is distributed in the hope that it will be useful,
6.290 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.291 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.292 +# GNU General Public License for more details.
6.293 +
6.294 +# You should have received a copy of the GNU General Public License
6.295 +# along with this program; if not, write to the Free Software
6.296 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.297 +# 02111-1307, USA.
6.298 +
6.299 +# serial 3
6.300 +
6.301 +# AM_MISSING_PROG(NAME, PROGRAM)
6.302 +# ------------------------------
6.303 +AC_DEFUN([AM_MISSING_PROG],
6.304 +[AC_REQUIRE([AM_MISSING_HAS_RUN])
6.305 +$1=${$1-"${am_missing_run}$2"}
6.306 +AC_SUBST($1)])
6.307 +
6.308 +
6.309 +# AM_MISSING_HAS_RUN
6.310 +# ------------------
6.311 +# Define MISSING if not defined so far and test if it supports --run.
6.312 +# If it does, set am_missing_run to use it, otherwise, to nothing.
6.313 +AC_DEFUN([AM_MISSING_HAS_RUN],
6.314 +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
6.315 +test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
6.316 +# Use eval to expand $SHELL
6.317 +if eval "$MISSING --run true"; then
6.318 + am_missing_run="$MISSING --run "
6.319 +else
6.320 + am_missing_run=
6.321 + AC_MSG_WARN([`missing' script is too old or missing])
6.322 +fi
6.323 +])
6.324 +
6.325 +# AM_AUX_DIR_EXPAND
6.326 +
6.327 +# Copyright 2001 Free Software Foundation, Inc.
6.328 +
6.329 +# This program is free software; you can redistribute it and/or modify
6.330 +# it under the terms of the GNU General Public License as published by
6.331 +# the Free Software Foundation; either version 2, or (at your option)
6.332 +# any later version.
6.333 +
6.334 +# This program is distributed in the hope that it will be useful,
6.335 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.336 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.337 +# GNU General Public License for more details.
6.338 +
6.339 +# You should have received a copy of the GNU General Public License
6.340 +# along with this program; if not, write to the Free Software
6.341 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.342 +# 02111-1307, USA.
6.343 +
6.344 +# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
6.345 +# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
6.346 +# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
6.347 +#
6.348 +# Of course, Automake must honor this variable whenever it calls a
6.349 +# tool from the auxiliary directory. The problem is that $srcdir (and
6.350 +# therefore $ac_aux_dir as well) can be either absolute or relative,
6.351 +# depending on how configure is run. This is pretty annoying, since
6.352 +# it makes $ac_aux_dir quite unusable in subdirectories: in the top
6.353 +# source directory, any form will work fine, but in subdirectories a
6.354 +# relative path needs to be adjusted first.
6.355 +#
6.356 +# $ac_aux_dir/missing
6.357 +# fails when called from a subdirectory if $ac_aux_dir is relative
6.358 +# $top_srcdir/$ac_aux_dir/missing
6.359 +# fails if $ac_aux_dir is absolute,
6.360 +# fails when called from a subdirectory in a VPATH build with
6.361 +# a relative $ac_aux_dir
6.362 +#
6.363 +# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
6.364 +# are both prefixed by $srcdir. In an in-source build this is usually
6.365 +# harmless because $srcdir is `.', but things will broke when you
6.366 +# start a VPATH build or use an absolute $srcdir.
6.367 +#
6.368 +# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
6.369 +# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
6.370 +# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
6.371 +# and then we would define $MISSING as
6.372 +# MISSING="\${SHELL} $am_aux_dir/missing"
6.373 +# This will work as long as MISSING is not called from configure, because
6.374 +# unfortunately $(top_srcdir) has no meaning in configure.
6.375 +# However there are other variables, like CC, which are often used in
6.376 +# configure, and could therefore not use this "fixed" $ac_aux_dir.
6.377 +#
6.378 +# Another solution, used here, is to always expand $ac_aux_dir to an
6.379 +# absolute PATH. The drawback is that using absolute paths prevent a
6.380 +# configured tree to be moved without reconfiguration.
6.381 +
6.382 +# Rely on autoconf to set up CDPATH properly.
6.383 +AC_PREREQ([2.50])
6.384 +
6.385 +AC_DEFUN([AM_AUX_DIR_EXPAND], [
6.386 +# expand $ac_aux_dir to an absolute path
6.387 +am_aux_dir=`cd $ac_aux_dir && pwd`
6.388 +])
6.389 +
6.390 +# AM_PROG_INSTALL_SH
6.391 +# ------------------
6.392 +# Define $install_sh.
6.393 +
6.394 +# Copyright 2001 Free Software Foundation, Inc.
6.395 +
6.396 +# This program is free software; you can redistribute it and/or modify
6.397 +# it under the terms of the GNU General Public License as published by
6.398 +# the Free Software Foundation; either version 2, or (at your option)
6.399 +# any later version.
6.400 +
6.401 +# This program is distributed in the hope that it will be useful,
6.402 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.403 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.404 +# GNU General Public License for more details.
6.405 +
6.406 +# You should have received a copy of the GNU General Public License
6.407 +# along with this program; if not, write to the Free Software
6.408 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.409 +# 02111-1307, USA.
6.410 +
6.411 +AC_DEFUN([AM_PROG_INSTALL_SH],
6.412 +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
6.413 +install_sh=${install_sh-"$am_aux_dir/install-sh"}
6.414 +AC_SUBST(install_sh)])
6.415 +
6.416 +# AM_PROG_INSTALL_STRIP
6.417 +
6.418 +# Copyright 2001 Free Software Foundation, Inc.
6.419 +
6.420 +# This program is free software; you can redistribute it and/or modify
6.421 +# it under the terms of the GNU General Public License as published by
6.422 +# the Free Software Foundation; either version 2, or (at your option)
6.423 +# any later version.
6.424 +
6.425 +# This program is distributed in the hope that it will be useful,
6.426 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.427 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.428 +# GNU General Public License for more details.
6.429 +
6.430 +# You should have received a copy of the GNU General Public License
6.431 +# along with this program; if not, write to the Free Software
6.432 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.433 +# 02111-1307, USA.
6.434 +
6.435 +# One issue with vendor `install' (even GNU) is that you can't
6.436 +# specify the program used to strip binaries. This is especially
6.437 +# annoying in cross-compiling environments, where the build's strip
6.438 +# is unlikely to handle the host's binaries.
6.439 +# Fortunately install-sh will honor a STRIPPROG variable, so we
6.440 +# always use install-sh in `make install-strip', and initialize
6.441 +# STRIPPROG with the value of the STRIP variable (set by the user).
6.442 +AC_DEFUN([AM_PROG_INSTALL_STRIP],
6.443 +[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
6.444 +# Installed binaries are usually stripped using `strip' when the user
6.445 +# run `make install-strip'. However `strip' might not be the right
6.446 +# tool to use in cross-compilation environments, therefore Automake
6.447 +# will honor the `STRIP' environment variable to overrule this program.
6.448 +dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
6.449 +if test "$cross_compiling" != no; then
6.450 + AC_CHECK_TOOL([STRIP], [strip], :)
6.451 +fi
6.452 +INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
6.453 +AC_SUBST([INSTALL_STRIP_PROGRAM])])
6.454 +
6.455 +# -*- Autoconf -*-
6.456 +# Copyright (C) 2003 Free Software Foundation, Inc.
6.457 +
6.458 +# This program is free software; you can redistribute it and/or modify
6.459 +# it under the terms of the GNU General Public License as published by
6.460 +# the Free Software Foundation; either version 2, or (at your option)
6.461 +# any later version.
6.462 +
6.463 +# This program is distributed in the hope that it will be useful,
6.464 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.465 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.466 +# GNU General Public License for more details.
6.467 +
6.468 +# You should have received a copy of the GNU General Public License
6.469 +# along with this program; if not, write to the Free Software
6.470 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.471 +# 02111-1307, USA.
6.472 +
6.473 +# serial 1
6.474 +
6.475 +# Check whether the underlying file-system supports filenames
6.476 +# with a leading dot. For instance MS-DOS doesn't.
6.477 +AC_DEFUN([AM_SET_LEADING_DOT],
6.478 +[rm -rf .tst 2>/dev/null
6.479 +mkdir .tst 2>/dev/null
6.480 +if test -d .tst; then
6.481 + am__leading_dot=.
6.482 +else
6.483 + am__leading_dot=_
6.484 +fi
6.485 +rmdir .tst 2>/dev/null
6.486 +AC_SUBST([am__leading_dot])])
6.487 +
6.488 +# serial 5 -*- Autoconf -*-
6.489 +
6.490 +# Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
6.491 +
6.492 +# This program is free software; you can redistribute it and/or modify
6.493 +# it under the terms of the GNU General Public License as published by
6.494 +# the Free Software Foundation; either version 2, or (at your option)
6.495 +# any later version.
6.496 +
6.497 +# This program is distributed in the hope that it will be useful,
6.498 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.499 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.500 +# GNU General Public License for more details.
6.501 +
6.502 +# You should have received a copy of the GNU General Public License
6.503 +# along with this program; if not, write to the Free Software
6.504 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.505 +# 02111-1307, USA.
6.506 +
6.507 +
6.508 +# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
6.509 +# written in clear, in which case automake, when reading aclocal.m4,
6.510 +# will think it sees a *use*, and therefore will trigger all it's
6.511 +# C support machinery. Also note that it means that autoscan, seeing
6.512 +# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
6.513 +
6.514 +
6.515 +
6.516 +# _AM_DEPENDENCIES(NAME)
6.517 +# ----------------------
6.518 +# See how the compiler implements dependency checking.
6.519 +# NAME is "CC", "CXX", "GCJ", or "OBJC".
6.520 +# We try a few techniques and use that to set a single cache variable.
6.521 +#
6.522 +# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
6.523 +# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
6.524 +# dependency, and given that the user is not expected to run this macro,
6.525 +# just rely on AC_PROG_CC.
6.526 +AC_DEFUN([_AM_DEPENDENCIES],
6.527 +[AC_REQUIRE([AM_SET_DEPDIR])dnl
6.528 +AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
6.529 +AC_REQUIRE([AM_MAKE_INCLUDE])dnl
6.530 +AC_REQUIRE([AM_DEP_TRACK])dnl
6.531 +
6.532 +ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
6.533 + [$1], CXX, [depcc="$CXX" am_compiler_list=],
6.534 + [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
6.535 + [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
6.536 + [depcc="$$1" am_compiler_list=])
6.537 +
6.538 +AC_CACHE_CHECK([dependency style of $depcc],
6.539 + [am_cv_$1_dependencies_compiler_type],
6.540 +[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
6.541 + # We make a subdir and do the tests there. Otherwise we can end up
6.542 + # making bogus files that we don't know about and never remove. For
6.543 + # instance it was reported that on HP-UX the gcc test will end up
6.544 + # making a dummy file named `D' -- because `-MD' means `put the output
6.545 + # in D'.
6.546 + mkdir conftest.dir
6.547 + # Copy depcomp to subdir because otherwise we won't find it if we're
6.548 + # using a relative directory.
6.549 + cp "$am_depcomp" conftest.dir
6.550 + cd conftest.dir
6.551 + # We will build objects and dependencies in a subdirectory because
6.552 + # it helps to detect inapplicable dependency modes. For instance
6.553 + # both Tru64's cc and ICC support -MD to output dependencies as a
6.554 + # side effect of compilation, but ICC will put the dependencies in
6.555 + # the current directory while Tru64 will put them in the object
6.556 + # directory.
6.557 + mkdir sub
6.558 +
6.559 + am_cv_$1_dependencies_compiler_type=none
6.560 + if test "$am_compiler_list" = ""; then
6.561 + am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
6.562 + fi
6.563 + for depmode in $am_compiler_list; do
6.564 + # Setup a source with many dependencies, because some compilers
6.565 + # like to wrap large dependency lists on column 80 (with \), and
6.566 + # we should not choose a depcomp mode which is confused by this.
6.567 + #
6.568 + # We need to recreate these files for each test, as the compiler may
6.569 + # overwrite some of them when testing with obscure command lines.
6.570 + # This happens at least with the AIX C compiler.
6.571 + : > sub/conftest.c
6.572 + for i in 1 2 3 4 5 6; do
6.573 + echo '#include "conftst'$i'.h"' >> sub/conftest.c
6.574 + : > sub/conftst$i.h
6.575 + done
6.576 + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
6.577 +
6.578 + case $depmode in
6.579 + nosideeffect)
6.580 + # after this tag, mechanisms are not by side-effect, so they'll
6.581 + # only be used when explicitly requested
6.582 + if test "x$enable_dependency_tracking" = xyes; then
6.583 + continue
6.584 + else
6.585 + break
6.586 + fi
6.587 + ;;
6.588 + none) break ;;
6.589 + esac
6.590 + # We check with `-c' and `-o' for the sake of the "dashmstdout"
6.591 + # mode. It turns out that the SunPro C++ compiler does not properly
6.592 + # handle `-M -o', and we need to detect this.
6.593 + if depmode=$depmode \
6.594 + source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
6.595 + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
6.596 + $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
6.597 + >/dev/null 2>conftest.err &&
6.598 + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
6.599 + grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
6.600 + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
6.601 + # icc doesn't choke on unknown options, it will just issue warnings
6.602 + # (even with -Werror). So we grep stderr for any message
6.603 + # that says an option was ignored.
6.604 + if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
6.605 + am_cv_$1_dependencies_compiler_type=$depmode
6.606 + break
6.607 + fi
6.608 + fi
6.609 + done
6.610 +
6.611 + cd ..
6.612 + rm -rf conftest.dir
6.613 +else
6.614 + am_cv_$1_dependencies_compiler_type=none
6.615 +fi
6.616 +])
6.617 +AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
6.618 +AM_CONDITIONAL([am__fastdep$1], [
6.619 + test "x$enable_dependency_tracking" != xno \
6.620 + && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
6.621 +])
6.622 +
6.623 +
6.624 +# AM_SET_DEPDIR
6.625 +# -------------
6.626 +# Choose a directory name for dependency files.
6.627 +# This macro is AC_REQUIREd in _AM_DEPENDENCIES
6.628 +AC_DEFUN([AM_SET_DEPDIR],
6.629 +[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
6.630 +AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
6.631 +])
6.632 +
6.633 +
6.634 +# AM_DEP_TRACK
6.635 +# ------------
6.636 +AC_DEFUN([AM_DEP_TRACK],
6.637 +[AC_ARG_ENABLE(dependency-tracking,
6.638 +[ --disable-dependency-tracking Speeds up one-time builds
6.639 + --enable-dependency-tracking Do not reject slow dependency extractors])
6.640 +if test "x$enable_dependency_tracking" != xno; then
6.641 + am_depcomp="$ac_aux_dir/depcomp"
6.642 + AMDEPBACKSLASH='\'
6.643 +fi
6.644 +AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
6.645 +AC_SUBST([AMDEPBACKSLASH])
6.646 +])
6.647 +
6.648 +# Generate code to set up dependency tracking. -*- Autoconf -*-
6.649 +
6.650 +# Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
6.651 +
6.652 +# This program is free software; you can redistribute it and/or modify
6.653 +# it under the terms of the GNU General Public License as published by
6.654 +# the Free Software Foundation; either version 2, or (at your option)
6.655 +# any later version.
6.656 +
6.657 +# This program is distributed in the hope that it will be useful,
6.658 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.659 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.660 +# GNU General Public License for more details.
6.661 +
6.662 +# You should have received a copy of the GNU General Public License
6.663 +# along with this program; if not, write to the Free Software
6.664 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.665 +# 02111-1307, USA.
6.666 +
6.667 +#serial 2
6.668 +
6.669 +# _AM_OUTPUT_DEPENDENCY_COMMANDS
6.670 +# ------------------------------
6.671 +AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
6.672 +[for mf in $CONFIG_FILES; do
6.673 + # Strip MF so we end up with the name of the file.
6.674 + mf=`echo "$mf" | sed -e 's/:.*$//'`
6.675 + # Check whether this is an Automake generated Makefile or not.
6.676 + # We used to match only the files named `Makefile.in', but
6.677 + # some people rename them; so instead we look at the file content.
6.678 + # Grep'ing the first line is not enough: some people post-process
6.679 + # each Makefile.in and add a new line on top of each file to say so.
6.680 + # So let's grep whole file.
6.681 + if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
6.682 + dirpart=`AS_DIRNAME("$mf")`
6.683 + else
6.684 + continue
6.685 + fi
6.686 + grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue
6.687 + # Extract the definition of DEP_FILES from the Makefile without
6.688 + # running `make'.
6.689 + DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
6.690 + test -z "$DEPDIR" && continue
6.691 + # When using ansi2knr, U may be empty or an underscore; expand it
6.692 + U=`sed -n -e '/^U = / s///p' < "$mf"`
6.693 + test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
6.694 + # We invoke sed twice because it is the simplest approach to
6.695 + # changing $(DEPDIR) to its actual value in the expansion.
6.696 + for file in `sed -n -e '
6.697 + /^DEP_FILES = .*\\\\$/ {
6.698 + s/^DEP_FILES = //
6.699 + :loop
6.700 + s/\\\\$//
6.701 + p
6.702 + n
6.703 + /\\\\$/ b loop
6.704 + p
6.705 + }
6.706 + /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
6.707 + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
6.708 + # Make sure the directory exists.
6.709 + test -f "$dirpart/$file" && continue
6.710 + fdir=`AS_DIRNAME(["$file"])`
6.711 + AS_MKDIR_P([$dirpart/$fdir])
6.712 + # echo "creating $dirpart/$file"
6.713 + echo '# dummy' > "$dirpart/$file"
6.714 + done
6.715 +done
6.716 +])# _AM_OUTPUT_DEPENDENCY_COMMANDS
6.717 +
6.718 +
6.719 +# AM_OUTPUT_DEPENDENCY_COMMANDS
6.720 +# -----------------------------
6.721 +# This macro should only be invoked once -- use via AC_REQUIRE.
6.722 +#
6.723 +# This code is only required when automatic dependency tracking
6.724 +# is enabled. FIXME. This creates each `.P' file that we will
6.725 +# need in order to bootstrap the dependency handling code.
6.726 +AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
6.727 +[AC_CONFIG_COMMANDS([depfiles],
6.728 + [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
6.729 + [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
6.730 +])
6.731 +
6.732 +# Check to see how 'make' treats includes. -*- Autoconf -*-
6.733 +
6.734 +# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
6.735 +
6.736 +# This program is free software; you can redistribute it and/or modify
6.737 +# it under the terms of the GNU General Public License as published by
6.738 +# the Free Software Foundation; either version 2, or (at your option)
6.739 +# any later version.
6.740 +
6.741 +# This program is distributed in the hope that it will be useful,
6.742 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.743 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.744 +# GNU General Public License for more details.
6.745 +
6.746 +# You should have received a copy of the GNU General Public License
6.747 +# along with this program; if not, write to the Free Software
6.748 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.749 +# 02111-1307, USA.
6.750 +
6.751 +# serial 2
6.752 +
6.753 +# AM_MAKE_INCLUDE()
6.754 +# -----------------
6.755 +# Check to see how make treats includes.
6.756 +AC_DEFUN([AM_MAKE_INCLUDE],
6.757 +[am_make=${MAKE-make}
6.758 +cat > confinc << 'END'
6.759 +am__doit:
6.760 + @echo done
6.761 +.PHONY: am__doit
6.762 +END
6.763 +# If we don't find an include directive, just comment out the code.
6.764 +AC_MSG_CHECKING([for style of include used by $am_make])
6.765 +am__include="#"
6.766 +am__quote=
6.767 +_am_result=none
6.768 +# First try GNU make style include.
6.769 +echo "include confinc" > confmf
6.770 +# We grep out `Entering directory' and `Leaving directory'
6.771 +# messages which can occur if `w' ends up in MAKEFLAGS.
6.772 +# In particular we don't look at `^make:' because GNU make might
6.773 +# be invoked under some other name (usually "gmake"), in which
6.774 +# case it prints its new name instead of `make'.
6.775 +if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
6.776 + am__include=include
6.777 + am__quote=
6.778 + _am_result=GNU
6.779 +fi
6.780 +# Now try BSD make style include.
6.781 +if test "$am__include" = "#"; then
6.782 + echo '.include "confinc"' > confmf
6.783 + if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
6.784 + am__include=.include
6.785 + am__quote="\""
6.786 + _am_result=BSD
6.787 + fi
6.788 +fi
6.789 +AC_SUBST([am__include])
6.790 +AC_SUBST([am__quote])
6.791 +AC_MSG_RESULT([$_am_result])
6.792 +rm -f confinc confmf
6.793 +])
6.794 +
6.795 +# AM_CONDITIONAL -*- Autoconf -*-
6.796 +
6.797 +# Copyright 1997, 2000, 2001 Free Software Foundation, Inc.
6.798 +
6.799 +# This program is free software; you can redistribute it and/or modify
6.800 +# it under the terms of the GNU General Public License as published by
6.801 +# the Free Software Foundation; either version 2, or (at your option)
6.802 +# any later version.
6.803 +
6.804 +# This program is distributed in the hope that it will be useful,
6.805 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.806 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.807 +# GNU General Public License for more details.
6.808 +
6.809 +# You should have received a copy of the GNU General Public License
6.810 +# along with this program; if not, write to the Free Software
6.811 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.812 +# 02111-1307, USA.
6.813 +
6.814 +# serial 5
6.815 +
6.816 +AC_PREREQ(2.52)
6.817 +
6.818 +# AM_CONDITIONAL(NAME, SHELL-CONDITION)
6.819 +# -------------------------------------
6.820 +# Define a conditional.
6.821 +AC_DEFUN([AM_CONDITIONAL],
6.822 +[ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
6.823 + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
6.824 +AC_SUBST([$1_TRUE])
6.825 +AC_SUBST([$1_FALSE])
6.826 +if $2; then
6.827 + $1_TRUE=
6.828 + $1_FALSE='#'
6.829 +else
6.830 + $1_TRUE='#'
6.831 + $1_FALSE=
6.832 +fi
6.833 +AC_CONFIG_COMMANDS_PRE(
6.834 +[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
6.835 + AC_MSG_ERROR([conditional "$1" was never defined.
6.836 +Usually this means the macro was only invoked conditionally.])
6.837 +fi])])
6.838 +
6.839 +# Add --enable-maintainer-mode option to configure.
6.840 +# From Jim Meyering
6.841 +
6.842 +# Copyright 1996, 1998, 2000, 2001, 2002 Free Software Foundation, Inc.
6.843 +
6.844 +# This program is free software; you can redistribute it and/or modify
6.845 +# it under the terms of the GNU General Public License as published by
6.846 +# the Free Software Foundation; either version 2, or (at your option)
6.847 +# any later version.
6.848 +
6.849 +# This program is distributed in the hope that it will be useful,
6.850 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.851 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.852 +# GNU General Public License for more details.
6.853 +
6.854 +# You should have received a copy of the GNU General Public License
6.855 +# along with this program; if not, write to the Free Software
6.856 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.857 +# 02111-1307, USA.
6.858 +
6.859 +# serial 2
6.860 +
6.861 +AC_DEFUN([AM_MAINTAINER_MODE],
6.862 +[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
6.863 + dnl maintainer-mode is disabled by default
6.864 + AC_ARG_ENABLE(maintainer-mode,
6.865 +[ --enable-maintainer-mode enable make rules and dependencies not useful
6.866 + (and sometimes confusing) to the casual installer],
6.867 + USE_MAINTAINER_MODE=$enableval,
6.868 + USE_MAINTAINER_MODE=no)
6.869 + AC_MSG_RESULT([$USE_MAINTAINER_MODE])
6.870 + AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes])
6.871 + MAINT=$MAINTAINER_MODE_TRUE
6.872 + AC_SUBST(MAINT)dnl
6.873 +]
6.874 +)
6.875 +
6.876 +AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
6.877 +
6.878 +# Like AC_CONFIG_HEADER, but automatically create stamp file. -*- Autoconf -*-
6.879 +
6.880 +# Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc.
6.881 +
6.882 +# This program is free software; you can redistribute it and/or modify
6.883 +# it under the terms of the GNU General Public License as published by
6.884 +# the Free Software Foundation; either version 2, or (at your option)
6.885 +# any later version.
6.886 +
6.887 +# This program is distributed in the hope that it will be useful,
6.888 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.889 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.890 +# GNU General Public License for more details.
6.891 +
6.892 +# You should have received a copy of the GNU General Public License
6.893 +# along with this program; if not, write to the Free Software
6.894 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.895 +# 02111-1307, USA.
6.896 +
6.897 +AC_PREREQ([2.52])
6.898 +
6.899 +# serial 6
6.900 +
6.901 +# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
6.902 +AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
6.903 +
6.904 +# isc-posix.m4 serial 2 (gettext-0.11.2)
6.905 +dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
6.906 +dnl This file is free software, distributed under the terms of the GNU
6.907 +dnl General Public License. As a special exception to the GNU General
6.908 +dnl Public License, this file may be distributed as part of a program
6.909 +dnl that contains a configuration script generated by Autoconf, under
6.910 +dnl the same distribution terms as the rest of that program.
6.911 +
6.912 +# This file is not needed with autoconf-2.53 and newer. Remove it in 2005.
6.913 +
6.914 +# This test replaces the one in autoconf.
6.915 +# Currently this macro should have the same name as the autoconf macro
6.916 +# because gettext's gettext.m4 (distributed in the automake package)
6.917 +# still uses it. Otherwise, the use in gettext.m4 makes autoheader
6.918 +# give these diagnostics:
6.919 +# configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX
6.920 +# configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX
6.921 +
6.922 +undefine([AC_ISC_POSIX])
6.923 +
6.924 +AC_DEFUN([AC_ISC_POSIX],
6.925 + [
6.926 + dnl This test replaces the obsolescent AC_ISC_POSIX kludge.
6.927 + AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"])
6.928 + ]
6.929 +)
6.930 +
6.931 +
6.932 +# Copyright 1996, 1997, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
6.933 +
6.934 +# This program is free software; you can redistribute it and/or modify
6.935 +# it under the terms of the GNU General Public License as published by
6.936 +# the Free Software Foundation; either version 2, or (at your option)
6.937 +# any later version.
6.938 +
6.939 +# This program is distributed in the hope that it will be useful,
6.940 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
6.941 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6.942 +# GNU General Public License for more details.
6.943 +
6.944 +# You should have received a copy of the GNU General Public License
6.945 +# along with this program; if not, write to the Free Software
6.946 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
6.947 +# 02111-1307, USA.
6.948 +
6.949 +# serial 2
6.950 +
6.951 +# @defmac AC_PROG_CC_STDC
6.952 +# @maindex PROG_CC_STDC
6.953 +# @ovindex CC
6.954 +# If the C compiler in not in ANSI C mode by default, try to add an option
6.955 +# to output variable @code{CC} to make it so. This macro tries various
6.956 +# options that select ANSI C on some system or another. It considers the
6.957 +# compiler to be in ANSI C mode if it handles function prototypes correctly.
6.958 +#
6.959 +# If you use this macro, you should check after calling it whether the C
6.960 +# compiler has been set to accept ANSI C; if not, the shell variable
6.961 +# @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source
6.962 +# code in ANSI C, you can make an un-ANSIfied copy of it by using the
6.963 +# program @code{ansi2knr}, which comes with Ghostscript.
6.964 +# @end defmac
6.965 +
6.966 +AC_DEFUN([AM_PROG_CC_STDC],
6.967 +[AC_REQUIRE([AC_PROG_CC])
6.968 +AC_BEFORE([$0], [AC_C_INLINE])
6.969 +AC_BEFORE([$0], [AC_C_CONST])
6.970 +dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require
6.971 +dnl a magic option to avoid problems with ANSI preprocessor commands
6.972 +dnl like #elif.
6.973 +dnl FIXME: can't do this because then AC_AIX won't work due to a
6.974 +dnl circular dependency.
6.975 +dnl AC_BEFORE([$0], [AC_PROG_CPP])
6.976 +AC_MSG_CHECKING([for ${CC-cc} option to accept ANSI C])
6.977 +AC_CACHE_VAL(am_cv_prog_cc_stdc,
6.978 +[am_cv_prog_cc_stdc=no
6.979 +ac_save_CC="$CC"
6.980 +# Don't try gcc -ansi; that turns off useful extensions and
6.981 +# breaks some systems' header files.
6.982 +# AIX -qlanglvl=ansi
6.983 +# Ultrix and OSF/1 -std1
6.984 +# HP-UX 10.20 and later -Ae
6.985 +# HP-UX older versions -Aa -D_HPUX_SOURCE
6.986 +# SVR4 -Xc -D__EXTENSIONS__
6.987 +for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
6.988 +do
6.989 + CC="$ac_save_CC $ac_arg"
6.990 + AC_TRY_COMPILE(
6.991 +[#include <stdarg.h>
6.992 +#include <stdio.h>
6.993 +#include <sys/types.h>
6.994 +#include <sys/stat.h>
6.995 +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
6.996 +struct buf { int x; };
6.997 +FILE * (*rcsopen) (struct buf *, struct stat *, int);
6.998 +static char *e (p, i)
6.999 + char **p;
6.1000 + int i;
6.1001 +{
6.1002 + return p[i];
6.1003 +}
6.1004 +static char *f (char * (*g) (char **, int), char **p, ...)
6.1005 +{
6.1006 + char *s;
6.1007 + va_list v;
6.1008 + va_start (v,p);
6.1009 + s = g (p, va_arg (v,int));
6.1010 + va_end (v);
6.1011 + return s;
6.1012 +}
6.1013 +int test (int i, double x);
6.1014 +struct s1 {int (*f) (int a);};
6.1015 +struct s2 {int (*f) (double a);};
6.1016 +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
6.1017 +int argc;
6.1018 +char **argv;
6.1019 +], [
6.1020 +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
6.1021 +],
6.1022 +[am_cv_prog_cc_stdc="$ac_arg"; break])
6.1023 +done
6.1024 +CC="$ac_save_CC"
6.1025 +])
6.1026 +if test -z "$am_cv_prog_cc_stdc"; then
6.1027 + AC_MSG_RESULT([none needed])
6.1028 +else
6.1029 + AC_MSG_RESULT([$am_cv_prog_cc_stdc])
6.1030 +fi
6.1031 +case "x$am_cv_prog_cc_stdc" in
6.1032 + x|xno) ;;
6.1033 + *) CC="$CC $am_cv_prog_cc_stdc" ;;
6.1034 +esac
6.1035 +])
6.1036 +
6.1037 +AU_DEFUN([fp_PROG_CC_STDC], [AM_PROG_CC_STDC])
6.1038 +
6.1039 +
6.1040 +dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not)
6.1041 +dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page
6.1042 +dnl also defines GSTUFF_PKG_ERRORS on error
6.1043 +AC_DEFUN(PKG_CHECK_MODULES, [
6.1044 + succeeded=no
6.1045 +
6.1046 + if test -z "$PKG_CONFIG"; then
6.1047 + AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
6.1048 + fi
6.1049 +
6.1050 + if test "$PKG_CONFIG" = "no" ; then
6.1051 + echo "*** The pkg-config script could not be found. Make sure it is"
6.1052 + echo "*** in your path, or set the PKG_CONFIG environment variable"
6.1053 + echo "*** to the full path to pkg-config."
6.1054 + echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
6.1055 + else
6.1056 + PKG_CONFIG_MIN_VERSION=0.9.0
6.1057 + if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
6.1058 + AC_MSG_CHECKING(for $2)
6.1059 +
6.1060 + if $PKG_CONFIG --exists "$2" ; then
6.1061 + AC_MSG_RESULT(yes)
6.1062 + succeeded=yes
6.1063 +
6.1064 + AC_MSG_CHECKING($1_CFLAGS)
6.1065 + $1_CFLAGS=`$PKG_CONFIG --cflags "$2"`
6.1066 + AC_MSG_RESULT($$1_CFLAGS)
6.1067 +
6.1068 + AC_MSG_CHECKING($1_LIBS)
6.1069 + $1_LIBS=`$PKG_CONFIG --libs "$2"`
6.1070 + AC_MSG_RESULT($$1_LIBS)
6.1071 + else
6.1072 + $1_CFLAGS=""
6.1073 + $1_LIBS=""
6.1074 + ## If we have a custom action on failure, don't print errors, but
6.1075 + ## do set a variable so people can do so.
6.1076 + $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
6.1077 + ifelse([$4], ,echo $$1_PKG_ERRORS,)
6.1078 + fi
6.1079 +
6.1080 + AC_SUBST($1_CFLAGS)
6.1081 + AC_SUBST($1_LIBS)
6.1082 + else
6.1083 + echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
6.1084 + echo "*** See http://www.freedesktop.org/software/pkgconfig"
6.1085 + fi
6.1086 + fi
6.1087 +
6.1088 + if test $succeeded = yes; then
6.1089 + ifelse([$3], , :, [$3])
6.1090 + else
6.1091 + ifelse([$4], , AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4])
6.1092 + fi
6.1093 +])
6.1094 +
6.1095 +
6.1096 +
6.1097 +# Copyright (C) 1995-2002 Free Software Foundation, Inc.
6.1098 +# Copyright (C) 2001-2003 Red Hat, Inc.
6.1099 +#
6.1100 +# This file is free software, distributed under the terms of the GNU
6.1101 +# General Public License. As a special exception to the GNU General
6.1102 +# Public License, this file may be distributed as part of a program
6.1103 +# that contains a configuration script generated by Autoconf, under
6.1104 +# the same distribution terms as the rest of that program.
6.1105 +#
6.1106 +# This file can be copied and used freely without restrictions. It can
6.1107 +# be used in projects which are not available under the GNU Public License
6.1108 +# but which still want to provide support for the GNU gettext functionality.
6.1109 +#
6.1110 +# Macro to add for using GNU gettext.
6.1111 +# Ulrich Drepper <drepper@cygnus.com>, 1995, 1996
6.1112 +#
6.1113 +# Modified to never use included libintl.
6.1114 +# Owen Taylor <otaylor@redhat.com>, 12/15/1998
6.1115 +#
6.1116 +# Major rework to remove unused code
6.1117 +# Owen Taylor <otaylor@redhat.com>, 12/11/2002
6.1118 +#
6.1119 +# Added better handling of ALL_LINGUAS from GNU gettext version
6.1120 +# written by Bruno Haible, Owen Taylor <otaylor.redhat.com> 5/30/3002
6.1121 +
6.1122 +#
6.1123 +# We need this here as well, since someone might use autoconf-2.5x
6.1124 +# to configure GLib then an older version to configure a package
6.1125 +# using AM_GLIB_GNU_GETTEXT
6.1126 +AC_PREREQ(2.53)
6.1127 +
6.1128 +dnl
6.1129 +dnl We go to great lengths to make sure that aclocal won't
6.1130 +dnl try to pull in the installed version of these macros
6.1131 +dnl when running aclocal in the glib directory.
6.1132 +dnl
6.1133 +m4_copy([AC_DEFUN],[glib_DEFUN])
6.1134 +m4_copy([AC_REQUIRE],[glib_REQUIRE])
6.1135 +dnl
6.1136 +dnl At the end, if we're not within glib, we'll define the public
6.1137 +dnl definitions in terms of our private definitions.
6.1138 +dnl
6.1139 +
6.1140 +# GLIB_LC_MESSAGES
6.1141 +#--------------------
6.1142 +glib_DEFUN([GLIB_LC_MESSAGES],
6.1143 + [AC_CHECK_HEADERS([locale.h])
6.1144 + if test $ac_cv_header_locale_h = yes; then
6.1145 + AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
6.1146 + [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
6.1147 + am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
6.1148 + if test $am_cv_val_LC_MESSAGES = yes; then
6.1149 + AC_DEFINE(HAVE_LC_MESSAGES, 1,
6.1150 + [Define if your <locale.h> file defines LC_MESSAGES.])
6.1151 + fi
6.1152 + fi])
6.1153 +
6.1154 +# GLIB_PATH_PROG_WITH_TEST
6.1155 +#----------------------------
6.1156 +dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
6.1157 +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
6.1158 +glib_DEFUN([GLIB_PATH_PROG_WITH_TEST],
6.1159 +[# Extract the first word of "$2", so it can be a program name with args.
6.1160 +set dummy $2; ac_word=[$]2
6.1161 +AC_MSG_CHECKING([for $ac_word])
6.1162 +AC_CACHE_VAL(ac_cv_path_$1,
6.1163 +[case "[$]$1" in
6.1164 + /*)
6.1165 + ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
6.1166 + ;;
6.1167 + *)
6.1168 + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
6.1169 + for ac_dir in ifelse([$5], , $PATH, [$5]); do
6.1170 + test -z "$ac_dir" && ac_dir=.
6.1171 + if test -f $ac_dir/$ac_word; then
6.1172 + if [$3]; then
6.1173 + ac_cv_path_$1="$ac_dir/$ac_word"
6.1174 + break
6.1175 + fi
6.1176 + fi
6.1177 + done
6.1178 + IFS="$ac_save_ifs"
6.1179 +dnl If no 4th arg is given, leave the cache variable unset,
6.1180 +dnl so AC_PATH_PROGS will keep looking.
6.1181 +ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
6.1182 +])dnl
6.1183 + ;;
6.1184 +esac])dnl
6.1185 +$1="$ac_cv_path_$1"
6.1186 +if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
6.1187 + AC_MSG_RESULT([$]$1)
6.1188 +else
6.1189 + AC_MSG_RESULT(no)
6.1190 +fi
6.1191 +AC_SUBST($1)dnl
6.1192 +])
6.1193 +
6.1194 +# GLIB_WITH_NLS
6.1195 +#-----------------
6.1196 +glib_DEFUN([GLIB_WITH_NLS],
6.1197 + dnl NLS is obligatory
6.1198 + [USE_NLS=yes
6.1199 + AC_SUBST(USE_NLS)
6.1200 +
6.1201 + gt_cv_have_gettext=no
6.1202 +
6.1203 + CATOBJEXT=NONE
6.1204 + XGETTEXT=:
6.1205 + INTLLIBS=
6.1206 +
6.1207 + AC_CHECK_HEADER(libintl.h,
6.1208 + [gt_cv_func_dgettext_libintl="no"
6.1209 + libintl_extra_libs=""
6.1210 +
6.1211 + #
6.1212 + # First check in libc
6.1213 + #
6.1214 + AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
6.1215 + [AC_TRY_LINK([
6.1216 +#include <libintl.h>
6.1217 +],
6.1218 + [return (int) dgettext ("","")],
6.1219 + gt_cv_func_dgettext_libc=yes,
6.1220 + gt_cv_func_dgettext_libc=no)
6.1221 + ])
6.1222 +
6.1223 + if test "$gt_cv_func_dgettext_libc" = "yes" ; then
6.1224 + AC_CHECK_FUNCS(bind_textdomain_codeset)
6.1225 + fi
6.1226 +
6.1227 + #
6.1228 + # If we don't have everything we want, check in libintl
6.1229 + #
6.1230 + if test "$gt_cv_func_dgettext_libc" != "yes" \
6.1231 + || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
6.1232 +
6.1233 + AC_CHECK_LIB(intl, bindtextdomain,
6.1234 + [AC_CHECK_LIB(intl, dgettext,
6.1235 + gt_cv_func_dgettext_libintl=yes)])
6.1236 +
6.1237 + if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
6.1238 + AC_MSG_CHECKING([if -liconv is needed to use gettext])
6.1239 + AC_MSG_RESULT([])
6.1240 + AC_CHECK_LIB(intl, dcgettext,
6.1241 + [gt_cv_func_dgettext_libintl=yes
6.1242 + libintl_extra_libs=-liconv],
6.1243 + :,-liconv)
6.1244 + fi
6.1245 +
6.1246 + #
6.1247 + # If we found libintl, then check in it for bind_textdomain_codeset();
6.1248 + # we'll prefer libc if neither have bind_textdomain_codeset(),
6.1249 + # and both have dgettext
6.1250 + #
6.1251 + if test "$gt_cv_func_dgettext_libintl" = "yes" ; then
6.1252 + glib_save_LIBS="$LIBS"
6.1253 + LIBS="$LIBS -lintl $libintl_extra_libs"
6.1254 + unset ac_cv_func_bind_textdomain_codeset
6.1255 + AC_CHECK_FUNCS(bind_textdomain_codeset)
6.1256 + LIBS="$glib_save_LIBS"
6.1257 +
6.1258 + if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then
6.1259 + gt_cv_func_dgettext_libc=no
6.1260 + else
6.1261 + if test "$gt_cv_func_dgettext_libc" = "yes"; then
6.1262 + gt_cv_func_dgettext_libintl=no
6.1263 + fi
6.1264 + fi
6.1265 + fi
6.1266 + fi
6.1267 +
6.1268 + if test "$gt_cv_func_dgettext_libc" = "yes" \
6.1269 + || test "$gt_cv_func_dgettext_libintl" = "yes"; then
6.1270 + gt_cv_have_gettext=yes
6.1271 + fi
6.1272 +
6.1273 + if test "$gt_cv_func_dgettext_libintl" = "yes"; then
6.1274 + INTLLIBS="-lintl $libintl_extra_libs"
6.1275 + fi
6.1276 +
6.1277 + if test "$gt_cv_have_gettext" = "yes"; then
6.1278 + AC_DEFINE(HAVE_GETTEXT,1,
6.1279 + [Define if the GNU gettext() function is already present or preinstalled.])
6.1280 + GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
6.1281 + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
6.1282 + if test "$MSGFMT" != "no"; then
6.1283 + glib_save_LIBS="$LIBS"
6.1284 + LIBS="$LIBS $INTLLIBS"
6.1285 + AC_CHECK_FUNCS(dcgettext)
6.1286 + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
6.1287 + GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
6.1288 + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
6.1289 + AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
6.1290 + return _nl_msg_cat_cntr],
6.1291 + [CATOBJEXT=.gmo
6.1292 + DATADIRNAME=share],
6.1293 + [case $host in
6.1294 + *-*-solaris*)
6.1295 + dnl On Solaris, if bind_textdomain_codeset is in libc,
6.1296 + dnl GNU format message catalog is always supported,
6.1297 + dnl since both are added to the libc all together.
6.1298 + dnl Hence, we'd like to go with DATADIRNAME=share and
6.1299 + dnl and CATOBJEXT=.gmo in this case.
6.1300 + AC_CHECK_FUNC(bind_textdomain_codeset,
6.1301 + [CATOBJEXT=.gmo
6.1302 + DATADIRNAME=share],
6.1303 + [CATOBJEXT=.mo
6.1304 + DATADIRNAME=lib])
6.1305 + ;;
6.1306 + *)
6.1307 + CATOBJEXT=.mo
6.1308 + DATADIRNAME=lib
6.1309 + ;;
6.1310 + esac])
6.1311 + LIBS="$glib_save_LIBS"
6.1312 + INSTOBJEXT=.mo
6.1313 + else
6.1314 + gt_cv_have_gettext=no
6.1315 + fi
6.1316 + fi
6.1317 + ])
6.1318 +
6.1319 + if test "$gt_cv_have_gettext" = "yes" ; then
6.1320 + AC_DEFINE(ENABLE_NLS, 1,
6.1321 + [always defined to indicate that i18n is enabled])
6.1322 + fi
6.1323 +
6.1324 + dnl Test whether we really found GNU xgettext.
6.1325 + if test "$XGETTEXT" != ":"; then
6.1326 + dnl If it is not GNU xgettext we define it as : so that the
6.1327 + dnl Makefiles still can work.
6.1328 + if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
6.1329 + : ;
6.1330 + else
6.1331 + AC_MSG_RESULT(
6.1332 + [found xgettext program is not GNU xgettext; ignore it])
6.1333 + XGETTEXT=":"
6.1334 + fi
6.1335 + fi
6.1336 +
6.1337 + # We need to process the po/ directory.
6.1338 + POSUB=po
6.1339 +
6.1340 + AC_OUTPUT_COMMANDS(
6.1341 + [case "$CONFIG_FILES" in *po/Makefile.in*)
6.1342 + sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
6.1343 + esac])
6.1344 +
6.1345 + dnl These rules are solely for the distribution goal. While doing this
6.1346 + dnl we only have to keep exactly one list of the available catalogs
6.1347 + dnl in configure.in.
6.1348 + for lang in $ALL_LINGUAS; do
6.1349 + GMOFILES="$GMOFILES $lang.gmo"
6.1350 + POFILES="$POFILES $lang.po"
6.1351 + done
6.1352 +
6.1353 + dnl Make all variables we use known to autoconf.
6.1354 + AC_SUBST(CATALOGS)
6.1355 + AC_SUBST(CATOBJEXT)
6.1356 + AC_SUBST(DATADIRNAME)
6.1357 + AC_SUBST(GMOFILES)
6.1358 + AC_SUBST(INSTOBJEXT)
6.1359 + AC_SUBST(INTLLIBS)
6.1360 + AC_SUBST(PO_IN_DATADIR_TRUE)
6.1361 + AC_SUBST(PO_IN_DATADIR_FALSE)
6.1362 + AC_SUBST(POFILES)
6.1363 + AC_SUBST(POSUB)
6.1364 + ])
6.1365 +
6.1366 +# AM_GLIB_GNU_GETTEXT
6.1367 +# -------------------
6.1368 +# Do checks necessary for use of gettext. If a suitable implementation
6.1369 +# of gettext is found in either in libintl or in the C library,
6.1370 +# it will set INTLLIBS to the libraries needed for use of gettext
6.1371 +# and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable
6.1372 +# gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST()
6.1373 +# on various variables needed by the Makefile.in.in installed by
6.1374 +# glib-gettextize.
6.1375 +dnl
6.1376 +glib_DEFUN(GLIB_GNU_GETTEXT,
6.1377 + [AC_REQUIRE([AC_PROG_CC])dnl
6.1378 + AC_REQUIRE([AC_HEADER_STDC])dnl
6.1379 +
6.1380 + GLIB_LC_MESSAGES
6.1381 + GLIB_WITH_NLS
6.1382 +
6.1383 + if test "$gt_cv_have_gettext" = "yes"; then
6.1384 + if test "x$ALL_LINGUAS" = "x"; then
6.1385 + LINGUAS=
6.1386 + else
6.1387 + AC_MSG_CHECKING(for catalogs to be installed)
6.1388 + NEW_LINGUAS=
6.1389 + for presentlang in $ALL_LINGUAS; do
6.1390 + useit=no
6.1391 + if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then
6.1392 + desiredlanguages="$LINGUAS"
6.1393 + else
6.1394 + desiredlanguages="$ALL_LINGUAS"
6.1395 + fi
6.1396 + for desiredlang in $desiredlanguages; do
6.1397 + # Use the presentlang catalog if desiredlang is
6.1398 + # a. equal to presentlang, or
6.1399 + # b. a variant of presentlang (because in this case,
6.1400 + # presentlang can be used as a fallback for messages
6.1401 + # which are not translated in the desiredlang catalog).
6.1402 + case "$desiredlang" in
6.1403 + "$presentlang"*) useit=yes;;
6.1404 + esac
6.1405 + done
6.1406 + if test $useit = yes; then
6.1407 + NEW_LINGUAS="$NEW_LINGUAS $presentlang"
6.1408 + fi
6.1409 + done
6.1410 + LINGUAS=$NEW_LINGUAS
6.1411 + AC_MSG_RESULT($LINGUAS)
6.1412 + fi
6.1413 +
6.1414 + dnl Construct list of names of catalog files to be constructed.
6.1415 + if test -n "$LINGUAS"; then
6.1416 + for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
6.1417 + fi
6.1418 + fi
6.1419 +
6.1420 + dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
6.1421 + dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
6.1422 + dnl Try to locate is.
6.1423 + MKINSTALLDIRS=
6.1424 + if test -n "$ac_aux_dir"; then
6.1425 + MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
6.1426 + fi
6.1427 + if test -z "$MKINSTALLDIRS"; then
6.1428 + MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
6.1429 + fi
6.1430 + AC_SUBST(MKINSTALLDIRS)
6.1431 +
6.1432 + dnl Generate list of files to be processed by xgettext which will
6.1433 + dnl be included in po/Makefile.
6.1434 + test -d po || mkdir po
6.1435 + if test "x$srcdir" != "x."; then
6.1436 + if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
6.1437 + posrcprefix="$srcdir/"
6.1438 + else
6.1439 + posrcprefix="../$srcdir/"
6.1440 + fi
6.1441 + else
6.1442 + posrcprefix="../"
6.1443 + fi
6.1444 + rm -f po/POTFILES
6.1445 + sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
6.1446 + < $srcdir/po/POTFILES.in > po/POTFILES
6.1447 + ])
6.1448 +
6.1449 +# AM_GLIB_DEFINE_LOCALEDIR(VARIABLE)
6.1450 +# -------------------------------
6.1451 +# Define VARIABLE to the location where catalog files will
6.1452 +# be installed by po/Makefile.
6.1453 +glib_DEFUN(GLIB_DEFINE_LOCALEDIR,
6.1454 +[glib_REQUIRE([GLIB_GNU_GETTEXT])dnl
6.1455 +glib_save_prefix="$prefix"
6.1456 +glib_save_exec_prefix="$exec_prefix"
6.1457 +test "x$prefix" = xNONE && prefix=$ac_default_prefix
6.1458 +test "x$exec_prefix" = xNONE && exec_prefix=$prefix
6.1459 +if test "x$CATOBJEXT" = "x.mo" ; then
6.1460 + localedir=`eval echo "${libdir}/locale"`
6.1461 +else
6.1462 + localedir=`eval echo "${datadir}/locale"`
6.1463 +fi
6.1464 +prefix="$glib_save_prefix"
6.1465 +exec_prefix="$glib_save_exec_prefix"
6.1466 +AC_DEFINE_UNQUOTED($1, "$localedir",
6.1467 + [Define the location where the catalogs will be installed])
6.1468 +])
6.1469 +
6.1470 +dnl
6.1471 +dnl Now the definitions that aclocal will find
6.1472 +dnl
6.1473 +ifdef(glib_configure_in,[],[
6.1474 +AC_DEFUN(AM_GLIB_GNU_GETTEXT,[GLIB_GNU_GETTEXT($@)])
6.1475 +AC_DEFUN(AM_GLIB_DEFINE_LOCALEDIR,[GLIB_DEFINE_LOCALEDIR($@)])
6.1476 +])dnl
6.1477 +
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
7.2 +++ b/autogen.sh Sat Mar 13 00:03:32 2004 +0000
7.3 @@ -0,0 +1,159 @@
7.4 +#!/bin/sh
7.5 +# Run this to generate all the initial makefiles, etc.
7.6 +
7.7 +srcdir=`dirname $0`
7.8 +test -z "$srcdir" && srcdir=.
7.9 +
7.10 +DIE=0
7.11 +
7.12 +if [ -n "$GNOME2_DIR" ]; then
7.13 + ACLOCAL_FLAGS="-I $GNOME2_DIR/share/aclocal $ACLOCAL_FLAGS"
7.14 + LD_LIBRARY_PATH="$GNOME2_DIR/lib:$LD_LIBRARY_PATH"
7.15 + PATH="$GNOME2_DIR/bin:$PATH"
7.16 + export PATH
7.17 + export LD_LIBRARY_PATH
7.18 +fi
7.19 +
7.20 +(test -f $srcdir/configure.in) || {
7.21 + echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
7.22 + echo " top-level package directory"
7.23 + exit 1
7.24 +}
7.25 +
7.26 +(autoconf --version) < /dev/null > /dev/null 2>&1 || {
7.27 + echo
7.28 + echo "**Error**: You must have \`autoconf' installed."
7.29 + echo "Download the appropriate package for your distribution,"
7.30 + echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
7.31 + DIE=1
7.32 +}
7.33 +
7.34 +(grep "^AC_PROG_INTLTOOL" $srcdir/configure.in >/dev/null) && {
7.35 + (intltoolize --version) < /dev/null > /dev/null 2>&1 || {
7.36 + echo
7.37 + echo "**Error**: You must have \`intltool' installed."
7.38 + echo "You can get it from:"
7.39 + echo " ftp://ftp.gnome.org/pub/GNOME/"
7.40 + DIE=1
7.41 + }
7.42 +}
7.43 +
7.44 +(grep "^AM_PROG_XML_I18N_TOOLS" $srcdir/configure.in >/dev/null) && {
7.45 + (xml-i18n-toolize --version) < /dev/null > /dev/null 2>&1 || {
7.46 + echo
7.47 + echo "**Error**: You must have \`xml-i18n-toolize' installed."
7.48 + echo "You can get it from:"
7.49 + echo " ftp://ftp.gnome.org/pub/GNOME/"
7.50 + DIE=1
7.51 + }
7.52 +}
7.53 +
7.54 +(grep "^AM_PROG_LIBTOOL" $srcdir/configure.in >/dev/null) && {
7.55 + (libtool --version) < /dev/null > /dev/null 2>&1 || {
7.56 + echo
7.57 + echo "**Error**: You must have \`libtool' installed."
7.58 + echo "You can get it from: ftp://ftp.gnu.org/pub/gnu/"
7.59 + DIE=1
7.60 + }
7.61 +}
7.62 +
7.63 +(grep "^AM_GLIB_GNU_GETTEXT" $srcdir/configure.in >/dev/null) && {
7.64 + (grep "sed.*POTFILES" $srcdir/configure.in) > /dev/null || \
7.65 + (glib-gettextize --version) < /dev/null > /dev/null 2>&1 || {
7.66 + echo
7.67 + echo "**Error**: You must have \`glib' installed."
7.68 + echo "You can get it from: ftp://ftp.gtk.org/pub/gtk"
7.69 + DIE=1
7.70 + }
7.71 +}
7.72 +
7.73 +(automake --version) < /dev/null > /dev/null 2>&1 || {
7.74 + echo
7.75 + echo "**Error**: You must have \`automake' installed."
7.76 + echo "You can get it from: ftp://ftp.gnu.org/pub/gnu/"
7.77 + DIE=1
7.78 + NO_AUTOMAKE=yes
7.79 +}
7.80 +
7.81 +
7.82 +# if no automake, don't bother testing for aclocal
7.83 +test -n "$NO_AUTOMAKE" || (aclocal --version) < /dev/null > /dev/null 2>&1 || {
7.84 + echo
7.85 + echo "**Error**: Missing \`aclocal'. The version of \`automake'"
7.86 + echo "installed doesn't appear recent enough."
7.87 + echo "You can get automake from ftp://ftp.gnu.org/pub/gnu/"
7.88 + DIE=1
7.89 +}
7.90 +
7.91 +if test "$DIE" -eq 1; then
7.92 + exit 1
7.93 +fi
7.94 +
7.95 +if test -z "$*"; then
7.96 + echo "**Warning**: I am going to run \`configure' with no arguments."
7.97 + echo "If you wish to pass any to it, please specify them on the"
7.98 + echo \`$0\'" command line."
7.99 + echo
7.100 +fi
7.101 +
7.102 +case $CC in
7.103 +xlc )
7.104 + am_opt=--include-deps;;
7.105 +esac
7.106 +
7.107 +for coin in `find $srcdir -path $srcdir/CVS -prune -o -name configure.in -print`
7.108 +do
7.109 + dr=`dirname $coin`
7.110 + if test -f $dr/NO-AUTO-GEN; then
7.111 + echo skipping $dr -- flagged as no auto-gen
7.112 + else
7.113 + echo processing $dr
7.114 + ( cd $dr
7.115 +
7.116 + aclocalinclude="$ACLOCAL_FLAGS"
7.117 +
7.118 + if grep "^AM_GLIB_GNU_GETTEXT" configure.in >/dev/null; then
7.119 + echo "Creating $dr/aclocal.m4 ..."
7.120 + test -r $dr/aclocal.m4 || touch $dr/aclocal.m4
7.121 + echo "Running glib-gettextize... Ignore non-fatal messages."
7.122 + echo "no" | glib-gettextize --force --copy
7.123 + echo "Making $dr/aclocal.m4 writable ..."
7.124 + test -r $dr/aclocal.m4 && chmod u+w $dr/aclocal.m4
7.125 + fi
7.126 + if grep "^AC_PROG_INTLTOOL" configure.in >/dev/null; then
7.127 + echo "Running intltoolize..."
7.128 + intltoolize --copy --force --automake
7.129 + fi
7.130 + if grep "^AM_PROG_XML_I18N_TOOLS" configure.in >/dev/null; then
7.131 + echo "Running xml-i18n-toolize..."
7.132 + xml-i18n-toolize --copy --force --automake
7.133 + fi
7.134 + if grep "^AM_PROG_LIBTOOL" configure.in >/dev/null; then
7.135 + if test -z "$NO_LIBTOOLIZE" ; then
7.136 + echo "Running libtoolize..."
7.137 + libtoolize --force --copy
7.138 + fi
7.139 + fi
7.140 + echo "Running aclocal $aclocalinclude ..."
7.141 + aclocal $aclocalinclude
7.142 + if grep "^AM_CONFIG_HEADER" configure.in >/dev/null; then
7.143 + echo "Running autoheader..."
7.144 + autoheader
7.145 + fi
7.146 + echo "Running automake --gnu $am_opt ..."
7.147 + automake --add-missing --gnu $am_opt
7.148 + echo "Running autoconf ..."
7.149 + autoconf
7.150 + )
7.151 + fi
7.152 +done
7.153 +
7.154 +conf_flags="--enable-maintainer-mode"
7.155 +
7.156 +if test x$NOCONFIGURE = x; then
7.157 + echo Running $srcdir/configure $conf_flags "$@" ...
7.158 + $srcdir/configure $conf_flags "$@" \
7.159 + && echo Now type \`make\' to compile. || exit 1
7.160 +else
7.161 + echo Skipping configure process.
7.162 +fi
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
8.2 +++ b/config.h.in Sat Mar 13 00:03:32 2004 +0000
8.3 @@ -0,0 +1,77 @@
8.4 +/* config.h.in. Generated from configure.in by autoheader. */
8.5 +#undef ENABLE_NLS
8.6 +#undef HAVE_CATGETS
8.7 +#undef HAVE_GETTEXT
8.8 +#undef GETTEXT_PACKAGE
8.9 +#undef HAVE_LC_MESSAGES
8.10 +#undef HAVE_STPCPY
8.11 +#undef HAVE_LIBSM
8.12 +
8.13 +/* always defined to indicate that i18n is enabled */
8.14 +#undef ENABLE_NLS
8.15 +
8.16 +/* Define to 1 if you have the `bind_textdomain_codeset' function. */
8.17 +#undef HAVE_BIND_TEXTDOMAIN_CODESET
8.18 +
8.19 +/* Define to 1 if you have the `dcgettext' function. */
8.20 +#undef HAVE_DCGETTEXT
8.21 +
8.22 +/* Define if the GNU gettext() function is already present or preinstalled. */
8.23 +#undef HAVE_GETTEXT
8.24 +
8.25 +/* Define to 1 if you have the <inttypes.h> header file. */
8.26 +#undef HAVE_INTTYPES_H
8.27 +
8.28 +/* Define if your <locale.h> file defines LC_MESSAGES. */
8.29 +#undef HAVE_LC_MESSAGES
8.30 +
8.31 +/* Define to 1 if you have the <locale.h> header file. */
8.32 +#undef HAVE_LOCALE_H
8.33 +
8.34 +/* Define to 1 if you have the <memory.h> header file. */
8.35 +#undef HAVE_MEMORY_H
8.36 +
8.37 +/* Define to 1 if you have the <stdint.h> header file. */
8.38 +#undef HAVE_STDINT_H
8.39 +
8.40 +/* Define to 1 if you have the <stdlib.h> header file. */
8.41 +#undef HAVE_STDLIB_H
8.42 +
8.43 +/* Define to 1 if you have the <strings.h> header file. */
8.44 +#undef HAVE_STRINGS_H
8.45 +
8.46 +/* Define to 1 if you have the <string.h> header file. */
8.47 +#undef HAVE_STRING_H
8.48 +
8.49 +/* Define to 1 if you have the <sys/stat.h> header file. */
8.50 +#undef HAVE_SYS_STAT_H
8.51 +
8.52 +/* Define to 1 if you have the <sys/types.h> header file. */
8.53 +#undef HAVE_SYS_TYPES_H
8.54 +
8.55 +/* Define to 1 if you have the <unistd.h> header file. */
8.56 +#undef HAVE_UNISTD_H
8.57 +
8.58 +/* Name of package */
8.59 +#undef PACKAGE
8.60 +
8.61 +/* Define to the address where bug reports for this package should be sent. */
8.62 +#undef PACKAGE_BUGREPORT
8.63 +
8.64 +/* Define to the full name of this package. */
8.65 +#undef PACKAGE_NAME
8.66 +
8.67 +/* Define to the full name and version of this package. */
8.68 +#undef PACKAGE_STRING
8.69 +
8.70 +/* Define to the one symbol short name of this package. */
8.71 +#undef PACKAGE_TARNAME
8.72 +
8.73 +/* Define to the version of this package. */
8.74 +#undef PACKAGE_VERSION
8.75 +
8.76 +/* Define to 1 if you have the ANSI C header files. */
8.77 +#undef STDC_HEADERS
8.78 +
8.79 +/* Version number of package */
8.80 +#undef VERSION
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/configure Sat Mar 13 00:03:32 2004 +0000
9.3 @@ -0,0 +1,7223 @@
9.4 +#! /bin/sh
9.5 +# Guess values for system-dependent variables and create Makefiles.
9.6 +# Generated by GNU Autoconf 2.59.
9.7 +#
9.8 +# Copyright (C) 2003 Free Software Foundation, Inc.
9.9 +# This configure script is free software; the Free Software Foundation
9.10 +# gives unlimited permission to copy, distribute and modify it.
9.11 +## --------------------- ##
9.12 +## M4sh Initialization. ##
9.13 +## --------------------- ##
9.14 +
9.15 +# Be Bourne compatible
9.16 +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
9.17 + emulate sh
9.18 + NULLCMD=:
9.19 + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
9.20 + # is contrary to our usage. Disable this feature.
9.21 + alias -g '${1+"$@"}'='"$@"'
9.22 +elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
9.23 + set -o posix
9.24 +fi
9.25 +DUALCASE=1; export DUALCASE # for MKS sh
9.26 +
9.27 +# Support unset when possible.
9.28 +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
9.29 + as_unset=unset
9.30 +else
9.31 + as_unset=false
9.32 +fi
9.33 +
9.34 +
9.35 +# Work around bugs in pre-3.0 UWIN ksh.
9.36 +$as_unset ENV MAIL MAILPATH
9.37 +PS1='$ '
9.38 +PS2='> '
9.39 +PS4='+ '
9.40 +
9.41 +# NLS nuisances.
9.42 +for as_var in \
9.43 + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
9.44 + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
9.45 + LC_TELEPHONE LC_TIME
9.46 +do
9.47 + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
9.48 + eval $as_var=C; export $as_var
9.49 + else
9.50 + $as_unset $as_var
9.51 + fi
9.52 +done
9.53 +
9.54 +# Required to use basename.
9.55 +if expr a : '\(a\)' >/dev/null 2>&1; then
9.56 + as_expr=expr
9.57 +else
9.58 + as_expr=false
9.59 +fi
9.60 +
9.61 +if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
9.62 + as_basename=basename
9.63 +else
9.64 + as_basename=false
9.65 +fi
9.66 +
9.67 +
9.68 +# Name of the executable.
9.69 +as_me=`$as_basename "$0" ||
9.70 +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
9.71 + X"$0" : 'X\(//\)$' \| \
9.72 + X"$0" : 'X\(/\)$' \| \
9.73 + . : '\(.\)' 2>/dev/null ||
9.74 +echo X/"$0" |
9.75 + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
9.76 + /^X\/\(\/\/\)$/{ s//\1/; q; }
9.77 + /^X\/\(\/\).*/{ s//\1/; q; }
9.78 + s/.*/./; q'`
9.79 +
9.80 +
9.81 +# PATH needs CR, and LINENO needs CR and PATH.
9.82 +# Avoid depending upon Character Ranges.
9.83 +as_cr_letters='abcdefghijklmnopqrstuvwxyz'
9.84 +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
9.85 +as_cr_Letters=$as_cr_letters$as_cr_LETTERS
9.86 +as_cr_digits='0123456789'
9.87 +as_cr_alnum=$as_cr_Letters$as_cr_digits
9.88 +
9.89 +# The user is always right.
9.90 +if test "${PATH_SEPARATOR+set}" != set; then
9.91 + echo "#! /bin/sh" >conf$$.sh
9.92 + echo "exit 0" >>conf$$.sh
9.93 + chmod +x conf$$.sh
9.94 + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
9.95 + PATH_SEPARATOR=';'
9.96 + else
9.97 + PATH_SEPARATOR=:
9.98 + fi
9.99 + rm -f conf$$.sh
9.100 +fi
9.101 +
9.102 +
9.103 + as_lineno_1=$LINENO
9.104 + as_lineno_2=$LINENO
9.105 + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
9.106 + test "x$as_lineno_1" != "x$as_lineno_2" &&
9.107 + test "x$as_lineno_3" = "x$as_lineno_2" || {
9.108 + # Find who we are. Look in the path if we contain no path at all
9.109 + # relative or not.
9.110 + case $0 in
9.111 + *[\\/]* ) as_myself=$0 ;;
9.112 + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.113 +for as_dir in $PATH
9.114 +do
9.115 + IFS=$as_save_IFS
9.116 + test -z "$as_dir" && as_dir=.
9.117 + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
9.118 +done
9.119 +
9.120 + ;;
9.121 + esac
9.122 + # We did not find ourselves, most probably we were run as `sh COMMAND'
9.123 + # in which case we are not to be found in the path.
9.124 + if test "x$as_myself" = x; then
9.125 + as_myself=$0
9.126 + fi
9.127 + if test ! -f "$as_myself"; then
9.128 + { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
9.129 + { (exit 1); exit 1; }; }
9.130 + fi
9.131 + case $CONFIG_SHELL in
9.132 + '')
9.133 + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.134 +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
9.135 +do
9.136 + IFS=$as_save_IFS
9.137 + test -z "$as_dir" && as_dir=.
9.138 + for as_base in sh bash ksh sh5; do
9.139 + case $as_dir in
9.140 + /*)
9.141 + if ("$as_dir/$as_base" -c '
9.142 + as_lineno_1=$LINENO
9.143 + as_lineno_2=$LINENO
9.144 + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
9.145 + test "x$as_lineno_1" != "x$as_lineno_2" &&
9.146 + test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
9.147 + $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
9.148 + $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
9.149 + CONFIG_SHELL=$as_dir/$as_base
9.150 + export CONFIG_SHELL
9.151 + exec "$CONFIG_SHELL" "$0" ${1+"$@"}
9.152 + fi;;
9.153 + esac
9.154 + done
9.155 +done
9.156 +;;
9.157 + esac
9.158 +
9.159 + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
9.160 + # uniformly replaced by the line number. The first 'sed' inserts a
9.161 + # line-number line before each line; the second 'sed' does the real
9.162 + # work. The second script uses 'N' to pair each line-number line
9.163 + # with the numbered line, and appends trailing '-' during
9.164 + # substitution so that $LINENO is not a special case at line end.
9.165 + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
9.166 + # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
9.167 + sed '=' <$as_myself |
9.168 + sed '
9.169 + N
9.170 + s,$,-,
9.171 + : loop
9.172 + s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
9.173 + t loop
9.174 + s,-$,,
9.175 + s,^['$as_cr_digits']*\n,,
9.176 + ' >$as_me.lineno &&
9.177 + chmod +x $as_me.lineno ||
9.178 + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
9.179 + { (exit 1); exit 1; }; }
9.180 +
9.181 + # Don't try to exec as it changes $[0], causing all sort of problems
9.182 + # (the dirname of $[0] is not the place where we might find the
9.183 + # original and so on. Autoconf is especially sensible to this).
9.184 + . ./$as_me.lineno
9.185 + # Exit status is that of the last command.
9.186 + exit
9.187 +}
9.188 +
9.189 +
9.190 +case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
9.191 + *c*,-n*) ECHO_N= ECHO_C='
9.192 +' ECHO_T=' ' ;;
9.193 + *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
9.194 + *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
9.195 +esac
9.196 +
9.197 +if expr a : '\(a\)' >/dev/null 2>&1; then
9.198 + as_expr=expr
9.199 +else
9.200 + as_expr=false
9.201 +fi
9.202 +
9.203 +rm -f conf$$ conf$$.exe conf$$.file
9.204 +echo >conf$$.file
9.205 +if ln -s conf$$.file conf$$ 2>/dev/null; then
9.206 + # We could just check for DJGPP; but this test a) works b) is more generic
9.207 + # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
9.208 + if test -f conf$$.exe; then
9.209 + # Don't use ln at all; we don't have any links
9.210 + as_ln_s='cp -p'
9.211 + else
9.212 + as_ln_s='ln -s'
9.213 + fi
9.214 +elif ln conf$$.file conf$$ 2>/dev/null; then
9.215 + as_ln_s=ln
9.216 +else
9.217 + as_ln_s='cp -p'
9.218 +fi
9.219 +rm -f conf$$ conf$$.exe conf$$.file
9.220 +
9.221 +if mkdir -p . 2>/dev/null; then
9.222 + as_mkdir_p=:
9.223 +else
9.224 + test -d ./-p && rmdir ./-p
9.225 + as_mkdir_p=false
9.226 +fi
9.227 +
9.228 +as_executable_p="test -f"
9.229 +
9.230 +# Sed expression to map a string onto a valid CPP name.
9.231 +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
9.232 +
9.233 +# Sed expression to map a string onto a valid variable name.
9.234 +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
9.235 +
9.236 +
9.237 +# IFS
9.238 +# We need space, tab and new line, in precisely that order.
9.239 +as_nl='
9.240 +'
9.241 +IFS=" $as_nl"
9.242 +
9.243 +# CDPATH.
9.244 +$as_unset CDPATH
9.245 +
9.246 +
9.247 +# Name of the host.
9.248 +# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
9.249 +# so uname gets run too.
9.250 +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
9.251 +
9.252 +exec 6>&1
9.253 +
9.254 +#
9.255 +# Initializations.
9.256 +#
9.257 +ac_default_prefix=/usr/local
9.258 +ac_config_libobj_dir=.
9.259 +cross_compiling=no
9.260 +subdirs=
9.261 +MFLAGS=
9.262 +MAKEFLAGS=
9.263 +SHELL=${CONFIG_SHELL-/bin/sh}
9.264 +
9.265 +# Maximum number of lines to put in a shell here document.
9.266 +# This variable seems obsolete. It should probably be removed, and
9.267 +# only ac_max_sed_lines should be used.
9.268 +: ${ac_max_here_lines=38}
9.269 +
9.270 +# Identity of this package.
9.271 +PACKAGE_NAME=
9.272 +PACKAGE_TARNAME=
9.273 +PACKAGE_VERSION=
9.274 +PACKAGE_STRING=
9.275 +PACKAGE_BUGREPORT=
9.276 +
9.277 +ac_unique_file="configure.in"
9.278 +# Factoring default headers for most tests.
9.279 +ac_includes_default="\
9.280 +#include <stdio.h>
9.281 +#if HAVE_SYS_TYPES_H
9.282 +# include <sys/types.h>
9.283 +#endif
9.284 +#if HAVE_SYS_STAT_H
9.285 +# include <sys/stat.h>
9.286 +#endif
9.287 +#if STDC_HEADERS
9.288 +# include <stdlib.h>
9.289 +# include <stddef.h>
9.290 +#else
9.291 +# if HAVE_STDLIB_H
9.292 +# include <stdlib.h>
9.293 +# endif
9.294 +#endif
9.295 +#if HAVE_STRING_H
9.296 +# if !STDC_HEADERS && HAVE_MEMORY_H
9.297 +# include <memory.h>
9.298 +# endif
9.299 +# include <string.h>
9.300 +#endif
9.301 +#if HAVE_STRINGS_H
9.302 +# include <strings.h>
9.303 +#endif
9.304 +#if HAVE_INTTYPES_H
9.305 +# include <inttypes.h>
9.306 +#else
9.307 +# if HAVE_STDINT_H
9.308 +# include <stdint.h>
9.309 +# endif
9.310 +#endif
9.311 +#if HAVE_UNISTD_H
9.312 +# include <unistd.h>
9.313 +#endif"
9.314 +
9.315 +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE am__leading_dot MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP PKG_CONFIG PACKAGE_CFLAGS PACKAGE_LIBS GETTEXT_PACKAGE USE_NLS MSGFMT GMSGFMT XGETTEXT CATALOGS CATOBJEXT DATADIRNAME GMOFILES INSTOBJEXT INTLLIBS PO_IN_DATADIR_TRUE PO_IN_DATADIR_FALSE POFILES POSUB MKINSTALLDIRS LIBOBJS LTLIBOBJS'
9.316 +ac_subst_files=''
9.317 +
9.318 +# Initialize some variables set by options.
9.319 +ac_init_help=
9.320 +ac_init_version=false
9.321 +# The variables have the same names as the options, with
9.322 +# dashes changed to underlines.
9.323 +cache_file=/dev/null
9.324 +exec_prefix=NONE
9.325 +no_create=
9.326 +no_recursion=
9.327 +prefix=NONE
9.328 +program_prefix=NONE
9.329 +program_suffix=NONE
9.330 +program_transform_name=s,x,x,
9.331 +silent=
9.332 +site=
9.333 +srcdir=
9.334 +verbose=
9.335 +x_includes=NONE
9.336 +x_libraries=NONE
9.337 +
9.338 +# Installation directory options.
9.339 +# These are left unexpanded so users can "make install exec_prefix=/foo"
9.340 +# and all the variables that are supposed to be based on exec_prefix
9.341 +# by default will actually change.
9.342 +# Use braces instead of parens because sh, perl, etc. also accept them.
9.343 +bindir='${exec_prefix}/bin'
9.344 +sbindir='${exec_prefix}/sbin'
9.345 +libexecdir='${exec_prefix}/libexec'
9.346 +datadir='${prefix}/share'
9.347 +sysconfdir='${prefix}/etc'
9.348 +sharedstatedir='${prefix}/com'
9.349 +localstatedir='${prefix}/var'
9.350 +libdir='${exec_prefix}/lib'
9.351 +includedir='${prefix}/include'
9.352 +oldincludedir='/usr/include'
9.353 +infodir='${prefix}/info'
9.354 +mandir='${prefix}/man'
9.355 +
9.356 +ac_prev=
9.357 +for ac_option
9.358 +do
9.359 + # If the previous option needs an argument, assign it.
9.360 + if test -n "$ac_prev"; then
9.361 + eval "$ac_prev=\$ac_option"
9.362 + ac_prev=
9.363 + continue
9.364 + fi
9.365 +
9.366 + ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
9.367 +
9.368 + # Accept the important Cygnus configure options, so we can diagnose typos.
9.369 +
9.370 + case $ac_option in
9.371 +
9.372 + -bindir | --bindir | --bindi | --bind | --bin | --bi)
9.373 + ac_prev=bindir ;;
9.374 + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
9.375 + bindir=$ac_optarg ;;
9.376 +
9.377 + -build | --build | --buil | --bui | --bu)
9.378 + ac_prev=build_alias ;;
9.379 + -build=* | --build=* | --buil=* | --bui=* | --bu=*)
9.380 + build_alias=$ac_optarg ;;
9.381 +
9.382 + -cache-file | --cache-file | --cache-fil | --cache-fi \
9.383 + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
9.384 + ac_prev=cache_file ;;
9.385 + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
9.386 + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
9.387 + cache_file=$ac_optarg ;;
9.388 +
9.389 + --config-cache | -C)
9.390 + cache_file=config.cache ;;
9.391 +
9.392 + -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
9.393 + ac_prev=datadir ;;
9.394 + -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
9.395 + | --da=*)
9.396 + datadir=$ac_optarg ;;
9.397 +
9.398 + -disable-* | --disable-*)
9.399 + ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
9.400 + # Reject names that are not valid shell variable names.
9.401 + expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
9.402 + { echo "$as_me: error: invalid feature name: $ac_feature" >&2
9.403 + { (exit 1); exit 1; }; }
9.404 + ac_feature=`echo $ac_feature | sed 's/-/_/g'`
9.405 + eval "enable_$ac_feature=no" ;;
9.406 +
9.407 + -enable-* | --enable-*)
9.408 + ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
9.409 + # Reject names that are not valid shell variable names.
9.410 + expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
9.411 + { echo "$as_me: error: invalid feature name: $ac_feature" >&2
9.412 + { (exit 1); exit 1; }; }
9.413 + ac_feature=`echo $ac_feature | sed 's/-/_/g'`
9.414 + case $ac_option in
9.415 + *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
9.416 + *) ac_optarg=yes ;;
9.417 + esac
9.418 + eval "enable_$ac_feature='$ac_optarg'" ;;
9.419 +
9.420 + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
9.421 + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
9.422 + | --exec | --exe | --ex)
9.423 + ac_prev=exec_prefix ;;
9.424 + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
9.425 + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
9.426 + | --exec=* | --exe=* | --ex=*)
9.427 + exec_prefix=$ac_optarg ;;
9.428 +
9.429 + -gas | --gas | --ga | --g)
9.430 + # Obsolete; use --with-gas.
9.431 + with_gas=yes ;;
9.432 +
9.433 + -help | --help | --hel | --he | -h)
9.434 + ac_init_help=long ;;
9.435 + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
9.436 + ac_init_help=recursive ;;
9.437 + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
9.438 + ac_init_help=short ;;
9.439 +
9.440 + -host | --host | --hos | --ho)
9.441 + ac_prev=host_alias ;;
9.442 + -host=* | --host=* | --hos=* | --ho=*)
9.443 + host_alias=$ac_optarg ;;
9.444 +
9.445 + -includedir | --includedir | --includedi | --included | --include \
9.446 + | --includ | --inclu | --incl | --inc)
9.447 + ac_prev=includedir ;;
9.448 + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
9.449 + | --includ=* | --inclu=* | --incl=* | --inc=*)
9.450 + includedir=$ac_optarg ;;
9.451 +
9.452 + -infodir | --infodir | --infodi | --infod | --info | --inf)
9.453 + ac_prev=infodir ;;
9.454 + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
9.455 + infodir=$ac_optarg ;;
9.456 +
9.457 + -libdir | --libdir | --libdi | --libd)
9.458 + ac_prev=libdir ;;
9.459 + -libdir=* | --libdir=* | --libdi=* | --libd=*)
9.460 + libdir=$ac_optarg ;;
9.461 +
9.462 + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
9.463 + | --libexe | --libex | --libe)
9.464 + ac_prev=libexecdir ;;
9.465 + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
9.466 + | --libexe=* | --libex=* | --libe=*)
9.467 + libexecdir=$ac_optarg ;;
9.468 +
9.469 + -localstatedir | --localstatedir | --localstatedi | --localstated \
9.470 + | --localstate | --localstat | --localsta | --localst \
9.471 + | --locals | --local | --loca | --loc | --lo)
9.472 + ac_prev=localstatedir ;;
9.473 + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
9.474 + | --localstate=* | --localstat=* | --localsta=* | --localst=* \
9.475 + | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
9.476 + localstatedir=$ac_optarg ;;
9.477 +
9.478 + -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
9.479 + ac_prev=mandir ;;
9.480 + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
9.481 + mandir=$ac_optarg ;;
9.482 +
9.483 + -nfp | --nfp | --nf)
9.484 + # Obsolete; use --without-fp.
9.485 + with_fp=no ;;
9.486 +
9.487 + -no-create | --no-create | --no-creat | --no-crea | --no-cre \
9.488 + | --no-cr | --no-c | -n)
9.489 + no_create=yes ;;
9.490 +
9.491 + -no-recursion | --no-recursion | --no-recursio | --no-recursi \
9.492 + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
9.493 + no_recursion=yes ;;
9.494 +
9.495 + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
9.496 + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
9.497 + | --oldin | --oldi | --old | --ol | --o)
9.498 + ac_prev=oldincludedir ;;
9.499 + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
9.500 + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
9.501 + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
9.502 + oldincludedir=$ac_optarg ;;
9.503 +
9.504 + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
9.505 + ac_prev=prefix ;;
9.506 + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
9.507 + prefix=$ac_optarg ;;
9.508 +
9.509 + -program-prefix | --program-prefix | --program-prefi | --program-pref \
9.510 + | --program-pre | --program-pr | --program-p)
9.511 + ac_prev=program_prefix ;;
9.512 + -program-prefix=* | --program-prefix=* | --program-prefi=* \
9.513 + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
9.514 + program_prefix=$ac_optarg ;;
9.515 +
9.516 + -program-suffix | --program-suffix | --program-suffi | --program-suff \
9.517 + | --program-suf | --program-su | --program-s)
9.518 + ac_prev=program_suffix ;;
9.519 + -program-suffix=* | --program-suffix=* | --program-suffi=* \
9.520 + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
9.521 + program_suffix=$ac_optarg ;;
9.522 +
9.523 + -program-transform-name | --program-transform-name \
9.524 + | --program-transform-nam | --program-transform-na \
9.525 + | --program-transform-n | --program-transform- \
9.526 + | --program-transform | --program-transfor \
9.527 + | --program-transfo | --program-transf \
9.528 + | --program-trans | --program-tran \
9.529 + | --progr-tra | --program-tr | --program-t)
9.530 + ac_prev=program_transform_name ;;
9.531 + -program-transform-name=* | --program-transform-name=* \
9.532 + | --program-transform-nam=* | --program-transform-na=* \
9.533 + | --program-transform-n=* | --program-transform-=* \
9.534 + | --program-transform=* | --program-transfor=* \
9.535 + | --program-transfo=* | --program-transf=* \
9.536 + | --program-trans=* | --program-tran=* \
9.537 + | --progr-tra=* | --program-tr=* | --program-t=*)
9.538 + program_transform_name=$ac_optarg ;;
9.539 +
9.540 + -q | -quiet | --quiet | --quie | --qui | --qu | --q \
9.541 + | -silent | --silent | --silen | --sile | --sil)
9.542 + silent=yes ;;
9.543 +
9.544 + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
9.545 + ac_prev=sbindir ;;
9.546 + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
9.547 + | --sbi=* | --sb=*)
9.548 + sbindir=$ac_optarg ;;
9.549 +
9.550 + -sharedstatedir | --sharedstatedir | --sharedstatedi \
9.551 + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
9.552 + | --sharedst | --shareds | --shared | --share | --shar \
9.553 + | --sha | --sh)
9.554 + ac_prev=sharedstatedir ;;
9.555 + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
9.556 + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
9.557 + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
9.558 + | --sha=* | --sh=*)
9.559 + sharedstatedir=$ac_optarg ;;
9.560 +
9.561 + -site | --site | --sit)
9.562 + ac_prev=site ;;
9.563 + -site=* | --site=* | --sit=*)
9.564 + site=$ac_optarg ;;
9.565 +
9.566 + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
9.567 + ac_prev=srcdir ;;
9.568 + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
9.569 + srcdir=$ac_optarg ;;
9.570 +
9.571 + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
9.572 + | --syscon | --sysco | --sysc | --sys | --sy)
9.573 + ac_prev=sysconfdir ;;
9.574 + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
9.575 + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
9.576 + sysconfdir=$ac_optarg ;;
9.577 +
9.578 + -target | --target | --targe | --targ | --tar | --ta | --t)
9.579 + ac_prev=target_alias ;;
9.580 + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
9.581 + target_alias=$ac_optarg ;;
9.582 +
9.583 + -v | -verbose | --verbose | --verbos | --verbo | --verb)
9.584 + verbose=yes ;;
9.585 +
9.586 + -version | --version | --versio | --versi | --vers | -V)
9.587 + ac_init_version=: ;;
9.588 +
9.589 + -with-* | --with-*)
9.590 + ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
9.591 + # Reject names that are not valid shell variable names.
9.592 + expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
9.593 + { echo "$as_me: error: invalid package name: $ac_package" >&2
9.594 + { (exit 1); exit 1; }; }
9.595 + ac_package=`echo $ac_package| sed 's/-/_/g'`
9.596 + case $ac_option in
9.597 + *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
9.598 + *) ac_optarg=yes ;;
9.599 + esac
9.600 + eval "with_$ac_package='$ac_optarg'" ;;
9.601 +
9.602 + -without-* | --without-*)
9.603 + ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
9.604 + # Reject names that are not valid shell variable names.
9.605 + expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
9.606 + { echo "$as_me: error: invalid package name: $ac_package" >&2
9.607 + { (exit 1); exit 1; }; }
9.608 + ac_package=`echo $ac_package | sed 's/-/_/g'`
9.609 + eval "with_$ac_package=no" ;;
9.610 +
9.611 + --x)
9.612 + # Obsolete; use --with-x.
9.613 + with_x=yes ;;
9.614 +
9.615 + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
9.616 + | --x-incl | --x-inc | --x-in | --x-i)
9.617 + ac_prev=x_includes ;;
9.618 + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
9.619 + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
9.620 + x_includes=$ac_optarg ;;
9.621 +
9.622 + -x-libraries | --x-libraries | --x-librarie | --x-librari \
9.623 + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
9.624 + ac_prev=x_libraries ;;
9.625 + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
9.626 + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
9.627 + x_libraries=$ac_optarg ;;
9.628 +
9.629 + -*) { echo "$as_me: error: unrecognized option: $ac_option
9.630 +Try \`$0 --help' for more information." >&2
9.631 + { (exit 1); exit 1; }; }
9.632 + ;;
9.633 +
9.634 + *=*)
9.635 + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
9.636 + # Reject names that are not valid shell variable names.
9.637 + expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
9.638 + { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
9.639 + { (exit 1); exit 1; }; }
9.640 + ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
9.641 + eval "$ac_envvar='$ac_optarg'"
9.642 + export $ac_envvar ;;
9.643 +
9.644 + *)
9.645 + # FIXME: should be removed in autoconf 3.0.
9.646 + echo "$as_me: WARNING: you should use --build, --host, --target" >&2
9.647 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
9.648 + echo "$as_me: WARNING: invalid host type: $ac_option" >&2
9.649 + : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
9.650 + ;;
9.651 +
9.652 + esac
9.653 +done
9.654 +
9.655 +if test -n "$ac_prev"; then
9.656 + ac_option=--`echo $ac_prev | sed 's/_/-/g'`
9.657 + { echo "$as_me: error: missing argument to $ac_option" >&2
9.658 + { (exit 1); exit 1; }; }
9.659 +fi
9.660 +
9.661 +# Be sure to have absolute paths.
9.662 +for ac_var in exec_prefix prefix
9.663 +do
9.664 + eval ac_val=$`echo $ac_var`
9.665 + case $ac_val in
9.666 + [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
9.667 + *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
9.668 + { (exit 1); exit 1; }; };;
9.669 + esac
9.670 +done
9.671 +
9.672 +# Be sure to have absolute paths.
9.673 +for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
9.674 + localstatedir libdir includedir oldincludedir infodir mandir
9.675 +do
9.676 + eval ac_val=$`echo $ac_var`
9.677 + case $ac_val in
9.678 + [\\/$]* | ?:[\\/]* ) ;;
9.679 + *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
9.680 + { (exit 1); exit 1; }; };;
9.681 + esac
9.682 +done
9.683 +
9.684 +# There might be people who depend on the old broken behavior: `$host'
9.685 +# used to hold the argument of --host etc.
9.686 +# FIXME: To remove some day.
9.687 +build=$build_alias
9.688 +host=$host_alias
9.689 +target=$target_alias
9.690 +
9.691 +# FIXME: To remove some day.
9.692 +if test "x$host_alias" != x; then
9.693 + if test "x$build_alias" = x; then
9.694 + cross_compiling=maybe
9.695 + echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
9.696 + If a cross compiler is detected then cross compile mode will be used." >&2
9.697 + elif test "x$build_alias" != "x$host_alias"; then
9.698 + cross_compiling=yes
9.699 + fi
9.700 +fi
9.701 +
9.702 +ac_tool_prefix=
9.703 +test -n "$host_alias" && ac_tool_prefix=$host_alias-
9.704 +
9.705 +test "$silent" = yes && exec 6>/dev/null
9.706 +
9.707 +
9.708 +# Find the source files, if location was not specified.
9.709 +if test -z "$srcdir"; then
9.710 + ac_srcdir_defaulted=yes
9.711 + # Try the directory containing this script, then its parent.
9.712 + ac_confdir=`(dirname "$0") 2>/dev/null ||
9.713 +$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.714 + X"$0" : 'X\(//\)[^/]' \| \
9.715 + X"$0" : 'X\(//\)$' \| \
9.716 + X"$0" : 'X\(/\)' \| \
9.717 + . : '\(.\)' 2>/dev/null ||
9.718 +echo X"$0" |
9.719 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.720 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.721 + /^X\(\/\/\)$/{ s//\1/; q; }
9.722 + /^X\(\/\).*/{ s//\1/; q; }
9.723 + s/.*/./; q'`
9.724 + srcdir=$ac_confdir
9.725 + if test ! -r $srcdir/$ac_unique_file; then
9.726 + srcdir=..
9.727 + fi
9.728 +else
9.729 + ac_srcdir_defaulted=no
9.730 +fi
9.731 +if test ! -r $srcdir/$ac_unique_file; then
9.732 + if test "$ac_srcdir_defaulted" = yes; then
9.733 + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
9.734 + { (exit 1); exit 1; }; }
9.735 + else
9.736 + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
9.737 + { (exit 1); exit 1; }; }
9.738 + fi
9.739 +fi
9.740 +(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
9.741 + { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
9.742 + { (exit 1); exit 1; }; }
9.743 +srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
9.744 +ac_env_build_alias_set=${build_alias+set}
9.745 +ac_env_build_alias_value=$build_alias
9.746 +ac_cv_env_build_alias_set=${build_alias+set}
9.747 +ac_cv_env_build_alias_value=$build_alias
9.748 +ac_env_host_alias_set=${host_alias+set}
9.749 +ac_env_host_alias_value=$host_alias
9.750 +ac_cv_env_host_alias_set=${host_alias+set}
9.751 +ac_cv_env_host_alias_value=$host_alias
9.752 +ac_env_target_alias_set=${target_alias+set}
9.753 +ac_env_target_alias_value=$target_alias
9.754 +ac_cv_env_target_alias_set=${target_alias+set}
9.755 +ac_cv_env_target_alias_value=$target_alias
9.756 +ac_env_CC_set=${CC+set}
9.757 +ac_env_CC_value=$CC
9.758 +ac_cv_env_CC_set=${CC+set}
9.759 +ac_cv_env_CC_value=$CC
9.760 +ac_env_CFLAGS_set=${CFLAGS+set}
9.761 +ac_env_CFLAGS_value=$CFLAGS
9.762 +ac_cv_env_CFLAGS_set=${CFLAGS+set}
9.763 +ac_cv_env_CFLAGS_value=$CFLAGS
9.764 +ac_env_LDFLAGS_set=${LDFLAGS+set}
9.765 +ac_env_LDFLAGS_value=$LDFLAGS
9.766 +ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
9.767 +ac_cv_env_LDFLAGS_value=$LDFLAGS
9.768 +ac_env_CPPFLAGS_set=${CPPFLAGS+set}
9.769 +ac_env_CPPFLAGS_value=$CPPFLAGS
9.770 +ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
9.771 +ac_cv_env_CPPFLAGS_value=$CPPFLAGS
9.772 +ac_env_CPP_set=${CPP+set}
9.773 +ac_env_CPP_value=$CPP
9.774 +ac_cv_env_CPP_set=${CPP+set}
9.775 +ac_cv_env_CPP_value=$CPP
9.776 +
9.777 +#
9.778 +# Report the --help message.
9.779 +#
9.780 +if test "$ac_init_help" = "long"; then
9.781 + # Omit some internal or obsolete options to make the list less imposing.
9.782 + # This message is too long to be a string in the A/UX 3.1 sh.
9.783 + cat <<_ACEOF
9.784 +\`configure' configures this package to adapt to many kinds of systems.
9.785 +
9.786 +Usage: $0 [OPTION]... [VAR=VALUE]...
9.787 +
9.788 +To assign environment variables (e.g., CC, CFLAGS...), specify them as
9.789 +VAR=VALUE. See below for descriptions of some of the useful variables.
9.790 +
9.791 +Defaults for the options are specified in brackets.
9.792 +
9.793 +Configuration:
9.794 + -h, --help display this help and exit
9.795 + --help=short display options specific to this package
9.796 + --help=recursive display the short help of all the included packages
9.797 + -V, --version display version information and exit
9.798 + -q, --quiet, --silent do not print \`checking...' messages
9.799 + --cache-file=FILE cache test results in FILE [disabled]
9.800 + -C, --config-cache alias for \`--cache-file=config.cache'
9.801 + -n, --no-create do not create output files
9.802 + --srcdir=DIR find the sources in DIR [configure dir or \`..']
9.803 +
9.804 +_ACEOF
9.805 +
9.806 + cat <<_ACEOF
9.807 +Installation directories:
9.808 + --prefix=PREFIX install architecture-independent files in PREFIX
9.809 + [$ac_default_prefix]
9.810 + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
9.811 + [PREFIX]
9.812 +
9.813 +By default, \`make install' will install all the files in
9.814 +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
9.815 +an installation prefix other than \`$ac_default_prefix' using \`--prefix',
9.816 +for instance \`--prefix=\$HOME'.
9.817 +
9.818 +For better control, use the options below.
9.819 +
9.820 +Fine tuning of the installation directories:
9.821 + --bindir=DIR user executables [EPREFIX/bin]
9.822 + --sbindir=DIR system admin executables [EPREFIX/sbin]
9.823 + --libexecdir=DIR program executables [EPREFIX/libexec]
9.824 + --datadir=DIR read-only architecture-independent data [PREFIX/share]
9.825 + --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
9.826 + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
9.827 + --localstatedir=DIR modifiable single-machine data [PREFIX/var]
9.828 + --libdir=DIR object code libraries [EPREFIX/lib]
9.829 + --includedir=DIR C header files [PREFIX/include]
9.830 + --oldincludedir=DIR C header files for non-gcc [/usr/include]
9.831 + --infodir=DIR info documentation [PREFIX/info]
9.832 + --mandir=DIR man documentation [PREFIX/man]
9.833 +_ACEOF
9.834 +
9.835 + cat <<\_ACEOF
9.836 +
9.837 +Program names:
9.838 + --program-prefix=PREFIX prepend PREFIX to installed program names
9.839 + --program-suffix=SUFFIX append SUFFIX to installed program names
9.840 + --program-transform-name=PROGRAM run sed PROGRAM on installed program names
9.841 +_ACEOF
9.842 +fi
9.843 +
9.844 +if test -n "$ac_init_help"; then
9.845 +
9.846 + cat <<\_ACEOF
9.847 +
9.848 +Optional Features:
9.849 + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
9.850 + --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
9.851 + --enable-maintainer-mode enable make rules and dependencies not useful
9.852 + (and sometimes confusing) to the casual installer
9.853 + --disable-dependency-tracking Speeds up one-time builds
9.854 + --enable-dependency-tracking Do not reject slow dependency extractors
9.855 +
9.856 +Some influential environment variables:
9.857 + CC C compiler command
9.858 + CFLAGS C compiler flags
9.859 + LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
9.860 + nonstandard directory <lib dir>
9.861 + CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
9.862 + headers in a nonstandard directory <include dir>
9.863 + CPP C preprocessor
9.864 +
9.865 +Use these variables to override the choices made by `configure' or to help
9.866 +it to find libraries and programs with nonstandard names/locations.
9.867 +
9.868 +_ACEOF
9.869 +fi
9.870 +
9.871 +if test "$ac_init_help" = "recursive"; then
9.872 + # If there are subdirs, report their specific --help.
9.873 + ac_popdir=`pwd`
9.874 + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
9.875 + test -d $ac_dir || continue
9.876 + ac_builddir=.
9.877 +
9.878 +if test "$ac_dir" != .; then
9.879 + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
9.880 + # A "../" for each directory in $ac_dir_suffix.
9.881 + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
9.882 +else
9.883 + ac_dir_suffix= ac_top_builddir=
9.884 +fi
9.885 +
9.886 +case $srcdir in
9.887 + .) # No --srcdir option. We are building in place.
9.888 + ac_srcdir=.
9.889 + if test -z "$ac_top_builddir"; then
9.890 + ac_top_srcdir=.
9.891 + else
9.892 + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
9.893 + fi ;;
9.894 + [\\/]* | ?:[\\/]* ) # Absolute path.
9.895 + ac_srcdir=$srcdir$ac_dir_suffix;
9.896 + ac_top_srcdir=$srcdir ;;
9.897 + *) # Relative path.
9.898 + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
9.899 + ac_top_srcdir=$ac_top_builddir$srcdir ;;
9.900 +esac
9.901 +
9.902 +# Do not use `cd foo && pwd` to compute absolute paths, because
9.903 +# the directories may not exist.
9.904 +case `pwd` in
9.905 +.) ac_abs_builddir="$ac_dir";;
9.906 +*)
9.907 + case "$ac_dir" in
9.908 + .) ac_abs_builddir=`pwd`;;
9.909 + [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
9.910 + *) ac_abs_builddir=`pwd`/"$ac_dir";;
9.911 + esac;;
9.912 +esac
9.913 +case $ac_abs_builddir in
9.914 +.) ac_abs_top_builddir=${ac_top_builddir}.;;
9.915 +*)
9.916 + case ${ac_top_builddir}. in
9.917 + .) ac_abs_top_builddir=$ac_abs_builddir;;
9.918 + [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
9.919 + *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
9.920 + esac;;
9.921 +esac
9.922 +case $ac_abs_builddir in
9.923 +.) ac_abs_srcdir=$ac_srcdir;;
9.924 +*)
9.925 + case $ac_srcdir in
9.926 + .) ac_abs_srcdir=$ac_abs_builddir;;
9.927 + [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
9.928 + *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
9.929 + esac;;
9.930 +esac
9.931 +case $ac_abs_builddir in
9.932 +.) ac_abs_top_srcdir=$ac_top_srcdir;;
9.933 +*)
9.934 + case $ac_top_srcdir in
9.935 + .) ac_abs_top_srcdir=$ac_abs_builddir;;
9.936 + [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
9.937 + *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
9.938 + esac;;
9.939 +esac
9.940 +
9.941 + cd $ac_dir
9.942 + # Check for guested configure; otherwise get Cygnus style configure.
9.943 + if test -f $ac_srcdir/configure.gnu; then
9.944 + echo
9.945 + $SHELL $ac_srcdir/configure.gnu --help=recursive
9.946 + elif test -f $ac_srcdir/configure; then
9.947 + echo
9.948 + $SHELL $ac_srcdir/configure --help=recursive
9.949 + elif test -f $ac_srcdir/configure.ac ||
9.950 + test -f $ac_srcdir/configure.in; then
9.951 + echo
9.952 + $ac_configure --help
9.953 + else
9.954 + echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
9.955 + fi
9.956 + cd "$ac_popdir"
9.957 + done
9.958 +fi
9.959 +
9.960 +test -n "$ac_init_help" && exit 0
9.961 +if $ac_init_version; then
9.962 + cat <<\_ACEOF
9.963 +
9.964 +Copyright (C) 2003 Free Software Foundation, Inc.
9.965 +This configure script is free software; the Free Software Foundation
9.966 +gives unlimited permission to copy, distribute and modify it.
9.967 +_ACEOF
9.968 + exit 0
9.969 +fi
9.970 +exec 5>config.log
9.971 +cat >&5 <<_ACEOF
9.972 +This file contains any messages produced by compilers while
9.973 +running configure, to aid debugging if configure makes a mistake.
9.974 +
9.975 +It was created by $as_me, which was
9.976 +generated by GNU Autoconf 2.59. Invocation command line was
9.977 +
9.978 + $ $0 $@
9.979 +
9.980 +_ACEOF
9.981 +{
9.982 +cat <<_ASUNAME
9.983 +## --------- ##
9.984 +## Platform. ##
9.985 +## --------- ##
9.986 +
9.987 +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
9.988 +uname -m = `(uname -m) 2>/dev/null || echo unknown`
9.989 +uname -r = `(uname -r) 2>/dev/null || echo unknown`
9.990 +uname -s = `(uname -s) 2>/dev/null || echo unknown`
9.991 +uname -v = `(uname -v) 2>/dev/null || echo unknown`
9.992 +
9.993 +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
9.994 +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
9.995 +
9.996 +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
9.997 +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
9.998 +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
9.999 +hostinfo = `(hostinfo) 2>/dev/null || echo unknown`
9.1000 +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
9.1001 +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
9.1002 +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
9.1003 +
9.1004 +_ASUNAME
9.1005 +
9.1006 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1007 +for as_dir in $PATH
9.1008 +do
9.1009 + IFS=$as_save_IFS
9.1010 + test -z "$as_dir" && as_dir=.
9.1011 + echo "PATH: $as_dir"
9.1012 +done
9.1013 +
9.1014 +} >&5
9.1015 +
9.1016 +cat >&5 <<_ACEOF
9.1017 +
9.1018 +
9.1019 +## ----------- ##
9.1020 +## Core tests. ##
9.1021 +## ----------- ##
9.1022 +
9.1023 +_ACEOF
9.1024 +
9.1025 +
9.1026 +# Keep a trace of the command line.
9.1027 +# Strip out --no-create and --no-recursion so they do not pile up.
9.1028 +# Strip out --silent because we don't want to record it for future runs.
9.1029 +# Also quote any args containing shell meta-characters.
9.1030 +# Make two passes to allow for proper duplicate-argument suppression.
9.1031 +ac_configure_args=
9.1032 +ac_configure_args0=
9.1033 +ac_configure_args1=
9.1034 +ac_sep=
9.1035 +ac_must_keep_next=false
9.1036 +for ac_pass in 1 2
9.1037 +do
9.1038 + for ac_arg
9.1039 + do
9.1040 + case $ac_arg in
9.1041 + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
9.1042 + -q | -quiet | --quiet | --quie | --qui | --qu | --q \
9.1043 + | -silent | --silent | --silen | --sile | --sil)
9.1044 + continue ;;
9.1045 + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
9.1046 + ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
9.1047 + esac
9.1048 + case $ac_pass in
9.1049 + 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
9.1050 + 2)
9.1051 + ac_configure_args1="$ac_configure_args1 '$ac_arg'"
9.1052 + if test $ac_must_keep_next = true; then
9.1053 + ac_must_keep_next=false # Got value, back to normal.
9.1054 + else
9.1055 + case $ac_arg in
9.1056 + *=* | --config-cache | -C | -disable-* | --disable-* \
9.1057 + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
9.1058 + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
9.1059 + | -with-* | --with-* | -without-* | --without-* | --x)
9.1060 + case "$ac_configure_args0 " in
9.1061 + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
9.1062 + esac
9.1063 + ;;
9.1064 + -* ) ac_must_keep_next=true ;;
9.1065 + esac
9.1066 + fi
9.1067 + ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
9.1068 + # Get rid of the leading space.
9.1069 + ac_sep=" "
9.1070 + ;;
9.1071 + esac
9.1072 + done
9.1073 +done
9.1074 +$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
9.1075 +$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
9.1076 +
9.1077 +# When interrupted or exit'd, cleanup temporary files, and complete
9.1078 +# config.log. We remove comments because anyway the quotes in there
9.1079 +# would cause problems or look ugly.
9.1080 +# WARNING: Be sure not to use single quotes in there, as some shells,
9.1081 +# such as our DU 5.0 friend, will then `close' the trap.
9.1082 +trap 'exit_status=$?
9.1083 + # Save into config.log some information that might help in debugging.
9.1084 + {
9.1085 + echo
9.1086 +
9.1087 + cat <<\_ASBOX
9.1088 +## ---------------- ##
9.1089 +## Cache variables. ##
9.1090 +## ---------------- ##
9.1091 +_ASBOX
9.1092 + echo
9.1093 + # The following way of writing the cache mishandles newlines in values,
9.1094 +{
9.1095 + (set) 2>&1 |
9.1096 + case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
9.1097 + *ac_space=\ *)
9.1098 + sed -n \
9.1099 + "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
9.1100 + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
9.1101 + ;;
9.1102 + *)
9.1103 + sed -n \
9.1104 + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
9.1105 + ;;
9.1106 + esac;
9.1107 +}
9.1108 + echo
9.1109 +
9.1110 + cat <<\_ASBOX
9.1111 +## ----------------- ##
9.1112 +## Output variables. ##
9.1113 +## ----------------- ##
9.1114 +_ASBOX
9.1115 + echo
9.1116 + for ac_var in $ac_subst_vars
9.1117 + do
9.1118 + eval ac_val=$`echo $ac_var`
9.1119 + echo "$ac_var='"'"'$ac_val'"'"'"
9.1120 + done | sort
9.1121 + echo
9.1122 +
9.1123 + if test -n "$ac_subst_files"; then
9.1124 + cat <<\_ASBOX
9.1125 +## ------------- ##
9.1126 +## Output files. ##
9.1127 +## ------------- ##
9.1128 +_ASBOX
9.1129 + echo
9.1130 + for ac_var in $ac_subst_files
9.1131 + do
9.1132 + eval ac_val=$`echo $ac_var`
9.1133 + echo "$ac_var='"'"'$ac_val'"'"'"
9.1134 + done | sort
9.1135 + echo
9.1136 + fi
9.1137 +
9.1138 + if test -s confdefs.h; then
9.1139 + cat <<\_ASBOX
9.1140 +## ----------- ##
9.1141 +## confdefs.h. ##
9.1142 +## ----------- ##
9.1143 +_ASBOX
9.1144 + echo
9.1145 + sed "/^$/d" confdefs.h | sort
9.1146 + echo
9.1147 + fi
9.1148 + test "$ac_signal" != 0 &&
9.1149 + echo "$as_me: caught signal $ac_signal"
9.1150 + echo "$as_me: exit $exit_status"
9.1151 + } >&5
9.1152 + rm -f core *.core &&
9.1153 + rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
9.1154 + exit $exit_status
9.1155 + ' 0
9.1156 +for ac_signal in 1 2 13 15; do
9.1157 + trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
9.1158 +done
9.1159 +ac_signal=0
9.1160 +
9.1161 +# confdefs.h avoids OS command line length limits that DEFS can exceed.
9.1162 +rm -rf conftest* confdefs.h
9.1163 +# AIX cpp loses on an empty file, so make sure it contains at least a newline.
9.1164 +echo >confdefs.h
9.1165 +
9.1166 +# Predefined preprocessor variables.
9.1167 +
9.1168 +cat >>confdefs.h <<_ACEOF
9.1169 +#define PACKAGE_NAME "$PACKAGE_NAME"
9.1170 +_ACEOF
9.1171 +
9.1172 +
9.1173 +cat >>confdefs.h <<_ACEOF
9.1174 +#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
9.1175 +_ACEOF
9.1176 +
9.1177 +
9.1178 +cat >>confdefs.h <<_ACEOF
9.1179 +#define PACKAGE_VERSION "$PACKAGE_VERSION"
9.1180 +_ACEOF
9.1181 +
9.1182 +
9.1183 +cat >>confdefs.h <<_ACEOF
9.1184 +#define PACKAGE_STRING "$PACKAGE_STRING"
9.1185 +_ACEOF
9.1186 +
9.1187 +
9.1188 +cat >>confdefs.h <<_ACEOF
9.1189 +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
9.1190 +_ACEOF
9.1191 +
9.1192 +
9.1193 +# Let the site file select an alternate cache file if it wants to.
9.1194 +# Prefer explicitly selected file to automatically selected ones.
9.1195 +if test -z "$CONFIG_SITE"; then
9.1196 + if test "x$prefix" != xNONE; then
9.1197 + CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
9.1198 + else
9.1199 + CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
9.1200 + fi
9.1201 +fi
9.1202 +for ac_site_file in $CONFIG_SITE; do
9.1203 + if test -r "$ac_site_file"; then
9.1204 + { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
9.1205 +echo "$as_me: loading site script $ac_site_file" >&6;}
9.1206 + sed 's/^/| /' "$ac_site_file" >&5
9.1207 + . "$ac_site_file"
9.1208 + fi
9.1209 +done
9.1210 +
9.1211 +if test -r "$cache_file"; then
9.1212 + # Some versions of bash will fail to source /dev/null (special
9.1213 + # files actually), so we avoid doing that.
9.1214 + if test -f "$cache_file"; then
9.1215 + { echo "$as_me:$LINENO: loading cache $cache_file" >&5
9.1216 +echo "$as_me: loading cache $cache_file" >&6;}
9.1217 + case $cache_file in
9.1218 + [\\/]* | ?:[\\/]* ) . $cache_file;;
9.1219 + *) . ./$cache_file;;
9.1220 + esac
9.1221 + fi
9.1222 +else
9.1223 + { echo "$as_me:$LINENO: creating cache $cache_file" >&5
9.1224 +echo "$as_me: creating cache $cache_file" >&6;}
9.1225 + >$cache_file
9.1226 +fi
9.1227 +
9.1228 +# Check that the precious variables saved in the cache have kept the same
9.1229 +# value.
9.1230 +ac_cache_corrupted=false
9.1231 +for ac_var in `(set) 2>&1 |
9.1232 + sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
9.1233 + eval ac_old_set=\$ac_cv_env_${ac_var}_set
9.1234 + eval ac_new_set=\$ac_env_${ac_var}_set
9.1235 + eval ac_old_val="\$ac_cv_env_${ac_var}_value"
9.1236 + eval ac_new_val="\$ac_env_${ac_var}_value"
9.1237 + case $ac_old_set,$ac_new_set in
9.1238 + set,)
9.1239 + { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
9.1240 +echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
9.1241 + ac_cache_corrupted=: ;;
9.1242 + ,set)
9.1243 + { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
9.1244 +echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
9.1245 + ac_cache_corrupted=: ;;
9.1246 + ,);;
9.1247 + *)
9.1248 + if test "x$ac_old_val" != "x$ac_new_val"; then
9.1249 + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
9.1250 +echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
9.1251 + { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
9.1252 +echo "$as_me: former value: $ac_old_val" >&2;}
9.1253 + { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
9.1254 +echo "$as_me: current value: $ac_new_val" >&2;}
9.1255 + ac_cache_corrupted=:
9.1256 + fi;;
9.1257 + esac
9.1258 + # Pass precious variables to config.status.
9.1259 + if test "$ac_new_set" = set; then
9.1260 + case $ac_new_val in
9.1261 + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
9.1262 + ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
9.1263 + *) ac_arg=$ac_var=$ac_new_val ;;
9.1264 + esac
9.1265 + case " $ac_configure_args " in
9.1266 + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
9.1267 + *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
9.1268 + esac
9.1269 + fi
9.1270 +done
9.1271 +if $ac_cache_corrupted; then
9.1272 + { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
9.1273 +echo "$as_me: error: changes in the environment can compromise the build" >&2;}
9.1274 + { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
9.1275 +echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
9.1276 + { (exit 1); exit 1; }; }
9.1277 +fi
9.1278 +
9.1279 +ac_ext=c
9.1280 +ac_cpp='$CPP $CPPFLAGS'
9.1281 +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
9.1282 +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
9.1283 +ac_compiler_gnu=$ac_cv_c_compiler_gnu
9.1284 +
9.1285 +
9.1286 +
9.1287 +
9.1288 +
9.1289 +
9.1290 +
9.1291 +
9.1292 +
9.1293 +
9.1294 +
9.1295 +
9.1296 +
9.1297 +
9.1298 +
9.1299 +
9.1300 +
9.1301 +
9.1302 +
9.1303 +am__api_version="1.7"
9.1304 +ac_aux_dir=
9.1305 +for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
9.1306 + if test -f $ac_dir/install-sh; then
9.1307 + ac_aux_dir=$ac_dir
9.1308 + ac_install_sh="$ac_aux_dir/install-sh -c"
9.1309 + break
9.1310 + elif test -f $ac_dir/install.sh; then
9.1311 + ac_aux_dir=$ac_dir
9.1312 + ac_install_sh="$ac_aux_dir/install.sh -c"
9.1313 + break
9.1314 + elif test -f $ac_dir/shtool; then
9.1315 + ac_aux_dir=$ac_dir
9.1316 + ac_install_sh="$ac_aux_dir/shtool install -c"
9.1317 + break
9.1318 + fi
9.1319 +done
9.1320 +if test -z "$ac_aux_dir"; then
9.1321 + { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
9.1322 +echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
9.1323 + { (exit 1); exit 1; }; }
9.1324 +fi
9.1325 +ac_config_guess="$SHELL $ac_aux_dir/config.guess"
9.1326 +ac_config_sub="$SHELL $ac_aux_dir/config.sub"
9.1327 +ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
9.1328 +
9.1329 +# Find a good install program. We prefer a C program (faster),
9.1330 +# so one script is as good as another. But avoid the broken or
9.1331 +# incompatible versions:
9.1332 +# SysV /etc/install, /usr/sbin/install
9.1333 +# SunOS /usr/etc/install
9.1334 +# IRIX /sbin/install
9.1335 +# AIX /bin/install
9.1336 +# AmigaOS /C/install, which installs bootblocks on floppy discs
9.1337 +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
9.1338 +# AFS /usr/afsws/bin/install, which mishandles nonexistent args
9.1339 +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
9.1340 +# OS/2's system install, which has a completely different semantic
9.1341 +# ./install, which can be erroneously created by make from ./install.sh.
9.1342 +echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
9.1343 +echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
9.1344 +if test -z "$INSTALL"; then
9.1345 +if test "${ac_cv_path_install+set}" = set; then
9.1346 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1347 +else
9.1348 + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1349 +for as_dir in $PATH
9.1350 +do
9.1351 + IFS=$as_save_IFS
9.1352 + test -z "$as_dir" && as_dir=.
9.1353 + # Account for people who put trailing slashes in PATH elements.
9.1354 +case $as_dir/ in
9.1355 + ./ | .// | /cC/* | \
9.1356 + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
9.1357 + ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
9.1358 + /usr/ucb/* ) ;;
9.1359 + *)
9.1360 + # OSF1 and SCO ODT 3.0 have their own names for install.
9.1361 + # Don't use installbsd from OSF since it installs stuff as root
9.1362 + # by default.
9.1363 + for ac_prog in ginstall scoinst install; do
9.1364 + for ac_exec_ext in '' $ac_executable_extensions; do
9.1365 + if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
9.1366 + if test $ac_prog = install &&
9.1367 + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
9.1368 + # AIX install. It has an incompatible calling convention.
9.1369 + :
9.1370 + elif test $ac_prog = install &&
9.1371 + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
9.1372 + # program-specific install script used by HP pwplus--don't use.
9.1373 + :
9.1374 + else
9.1375 + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
9.1376 + break 3
9.1377 + fi
9.1378 + fi
9.1379 + done
9.1380 + done
9.1381 + ;;
9.1382 +esac
9.1383 +done
9.1384 +
9.1385 +
9.1386 +fi
9.1387 + if test "${ac_cv_path_install+set}" = set; then
9.1388 + INSTALL=$ac_cv_path_install
9.1389 + else
9.1390 + # As a last resort, use the slow shell script. We don't cache a
9.1391 + # path for INSTALL within a source directory, because that will
9.1392 + # break other packages using the cache if that directory is
9.1393 + # removed, or if the path is relative.
9.1394 + INSTALL=$ac_install_sh
9.1395 + fi
9.1396 +fi
9.1397 +echo "$as_me:$LINENO: result: $INSTALL" >&5
9.1398 +echo "${ECHO_T}$INSTALL" >&6
9.1399 +
9.1400 +# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
9.1401 +# It thinks the first close brace ends the variable substitution.
9.1402 +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
9.1403 +
9.1404 +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
9.1405 +
9.1406 +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
9.1407 +
9.1408 +echo "$as_me:$LINENO: checking whether build environment is sane" >&5
9.1409 +echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6
9.1410 +# Just in case
9.1411 +sleep 1
9.1412 +echo timestamp > conftest.file
9.1413 +# Do `set' in a subshell so we don't clobber the current shell's
9.1414 +# arguments. Must try -L first in case configure is actually a
9.1415 +# symlink; some systems play weird games with the mod time of symlinks
9.1416 +# (eg FreeBSD returns the mod time of the symlink's containing
9.1417 +# directory).
9.1418 +if (
9.1419 + set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
9.1420 + if test "$*" = "X"; then
9.1421 + # -L didn't work.
9.1422 + set X `ls -t $srcdir/configure conftest.file`
9.1423 + fi
9.1424 + rm -f conftest.file
9.1425 + if test "$*" != "X $srcdir/configure conftest.file" \
9.1426 + && test "$*" != "X conftest.file $srcdir/configure"; then
9.1427 +
9.1428 + # If neither matched, then we have a broken ls. This can happen
9.1429 + # if, for instance, CONFIG_SHELL is bash and it inherits a
9.1430 + # broken ls alias from the environment. This has actually
9.1431 + # happened. Such a system could not be considered "sane".
9.1432 + { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken
9.1433 +alias in your environment" >&5
9.1434 +echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken
9.1435 +alias in your environment" >&2;}
9.1436 + { (exit 1); exit 1; }; }
9.1437 + fi
9.1438 +
9.1439 + test "$2" = conftest.file
9.1440 + )
9.1441 +then
9.1442 + # Ok.
9.1443 + :
9.1444 +else
9.1445 + { { echo "$as_me:$LINENO: error: newly created file is older than distributed files!
9.1446 +Check your system clock" >&5
9.1447 +echo "$as_me: error: newly created file is older than distributed files!
9.1448 +Check your system clock" >&2;}
9.1449 + { (exit 1); exit 1; }; }
9.1450 +fi
9.1451 +echo "$as_me:$LINENO: result: yes" >&5
9.1452 +echo "${ECHO_T}yes" >&6
9.1453 +test "$program_prefix" != NONE &&
9.1454 + program_transform_name="s,^,$program_prefix,;$program_transform_name"
9.1455 +# Use a double $ so make ignores it.
9.1456 +test "$program_suffix" != NONE &&
9.1457 + program_transform_name="s,\$,$program_suffix,;$program_transform_name"
9.1458 +# Double any \ or $. echo might interpret backslashes.
9.1459 +# By default was `s,x,x', remove it if useless.
9.1460 +cat <<\_ACEOF >conftest.sed
9.1461 +s/[\\$]/&&/g;s/;s,x,x,$//
9.1462 +_ACEOF
9.1463 +program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
9.1464 +rm conftest.sed
9.1465 +
9.1466 +
9.1467 +# expand $ac_aux_dir to an absolute path
9.1468 +am_aux_dir=`cd $ac_aux_dir && pwd`
9.1469 +
9.1470 +test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
9.1471 +# Use eval to expand $SHELL
9.1472 +if eval "$MISSING --run true"; then
9.1473 + am_missing_run="$MISSING --run "
9.1474 +else
9.1475 + am_missing_run=
9.1476 + { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
9.1477 +echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
9.1478 +fi
9.1479 +
9.1480 +for ac_prog in gawk mawk nawk awk
9.1481 +do
9.1482 + # Extract the first word of "$ac_prog", so it can be a program name with args.
9.1483 +set dummy $ac_prog; ac_word=$2
9.1484 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.1485 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.1486 +if test "${ac_cv_prog_AWK+set}" = set; then
9.1487 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1488 +else
9.1489 + if test -n "$AWK"; then
9.1490 + ac_cv_prog_AWK="$AWK" # Let the user override the test.
9.1491 +else
9.1492 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1493 +for as_dir in $PATH
9.1494 +do
9.1495 + IFS=$as_save_IFS
9.1496 + test -z "$as_dir" && as_dir=.
9.1497 + for ac_exec_ext in '' $ac_executable_extensions; do
9.1498 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.1499 + ac_cv_prog_AWK="$ac_prog"
9.1500 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.1501 + break 2
9.1502 + fi
9.1503 +done
9.1504 +done
9.1505 +
9.1506 +fi
9.1507 +fi
9.1508 +AWK=$ac_cv_prog_AWK
9.1509 +if test -n "$AWK"; then
9.1510 + echo "$as_me:$LINENO: result: $AWK" >&5
9.1511 +echo "${ECHO_T}$AWK" >&6
9.1512 +else
9.1513 + echo "$as_me:$LINENO: result: no" >&5
9.1514 +echo "${ECHO_T}no" >&6
9.1515 +fi
9.1516 +
9.1517 + test -n "$AWK" && break
9.1518 +done
9.1519 +
9.1520 +echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
9.1521 +echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
9.1522 +set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
9.1523 +if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
9.1524 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1525 +else
9.1526 + cat >conftest.make <<\_ACEOF
9.1527 +all:
9.1528 + @echo 'ac_maketemp="$(MAKE)"'
9.1529 +_ACEOF
9.1530 +# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
9.1531 +eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
9.1532 +if test -n "$ac_maketemp"; then
9.1533 + eval ac_cv_prog_make_${ac_make}_set=yes
9.1534 +else
9.1535 + eval ac_cv_prog_make_${ac_make}_set=no
9.1536 +fi
9.1537 +rm -f conftest.make
9.1538 +fi
9.1539 +if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
9.1540 + echo "$as_me:$LINENO: result: yes" >&5
9.1541 +echo "${ECHO_T}yes" >&6
9.1542 + SET_MAKE=
9.1543 +else
9.1544 + echo "$as_me:$LINENO: result: no" >&5
9.1545 +echo "${ECHO_T}no" >&6
9.1546 + SET_MAKE="MAKE=${MAKE-make}"
9.1547 +fi
9.1548 +
9.1549 +rm -rf .tst 2>/dev/null
9.1550 +mkdir .tst 2>/dev/null
9.1551 +if test -d .tst; then
9.1552 + am__leading_dot=.
9.1553 +else
9.1554 + am__leading_dot=_
9.1555 +fi
9.1556 +rmdir .tst 2>/dev/null
9.1557 +
9.1558 + # test to see if srcdir already configured
9.1559 +if test "`cd $srcdir && pwd`" != "`pwd`" &&
9.1560 + test -f $srcdir/config.status; then
9.1561 + { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
9.1562 +echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
9.1563 + { (exit 1); exit 1; }; }
9.1564 +fi
9.1565 +
9.1566 +# test whether we have cygpath
9.1567 +if test -z "$CYGPATH_W"; then
9.1568 + if (cygpath --version) >/dev/null 2>/dev/null; then
9.1569 + CYGPATH_W='cygpath -w'
9.1570 + else
9.1571 + CYGPATH_W=echo
9.1572 + fi
9.1573 +fi
9.1574 +
9.1575 +
9.1576 +# Define the identity of the package.
9.1577 + PACKAGE=dream
9.1578 + VERSION=0.1
9.1579 +
9.1580 +
9.1581 +cat >>confdefs.h <<_ACEOF
9.1582 +#define PACKAGE "$PACKAGE"
9.1583 +_ACEOF
9.1584 +
9.1585 +
9.1586 +cat >>confdefs.h <<_ACEOF
9.1587 +#define VERSION "$VERSION"
9.1588 +_ACEOF
9.1589 +
9.1590 +# Some tools Automake needs.
9.1591 +
9.1592 +ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
9.1593 +
9.1594 +
9.1595 +AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
9.1596 +
9.1597 +
9.1598 +AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
9.1599 +
9.1600 +
9.1601 +AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
9.1602 +
9.1603 +
9.1604 +MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
9.1605 +
9.1606 +
9.1607 +AMTAR=${AMTAR-"${am_missing_run}tar"}
9.1608 +
9.1609 +install_sh=${install_sh-"$am_aux_dir/install-sh"}
9.1610 +
9.1611 +# Installed binaries are usually stripped using `strip' when the user
9.1612 +# run `make install-strip'. However `strip' might not be the right
9.1613 +# tool to use in cross-compilation environments, therefore Automake
9.1614 +# will honor the `STRIP' environment variable to overrule this program.
9.1615 +if test "$cross_compiling" != no; then
9.1616 + if test -n "$ac_tool_prefix"; then
9.1617 + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
9.1618 +set dummy ${ac_tool_prefix}strip; ac_word=$2
9.1619 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.1620 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.1621 +if test "${ac_cv_prog_STRIP+set}" = set; then
9.1622 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1623 +else
9.1624 + if test -n "$STRIP"; then
9.1625 + ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
9.1626 +else
9.1627 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1628 +for as_dir in $PATH
9.1629 +do
9.1630 + IFS=$as_save_IFS
9.1631 + test -z "$as_dir" && as_dir=.
9.1632 + for ac_exec_ext in '' $ac_executable_extensions; do
9.1633 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.1634 + ac_cv_prog_STRIP="${ac_tool_prefix}strip"
9.1635 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.1636 + break 2
9.1637 + fi
9.1638 +done
9.1639 +done
9.1640 +
9.1641 +fi
9.1642 +fi
9.1643 +STRIP=$ac_cv_prog_STRIP
9.1644 +if test -n "$STRIP"; then
9.1645 + echo "$as_me:$LINENO: result: $STRIP" >&5
9.1646 +echo "${ECHO_T}$STRIP" >&6
9.1647 +else
9.1648 + echo "$as_me:$LINENO: result: no" >&5
9.1649 +echo "${ECHO_T}no" >&6
9.1650 +fi
9.1651 +
9.1652 +fi
9.1653 +if test -z "$ac_cv_prog_STRIP"; then
9.1654 + ac_ct_STRIP=$STRIP
9.1655 + # Extract the first word of "strip", so it can be a program name with args.
9.1656 +set dummy strip; ac_word=$2
9.1657 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.1658 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.1659 +if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
9.1660 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1661 +else
9.1662 + if test -n "$ac_ct_STRIP"; then
9.1663 + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
9.1664 +else
9.1665 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1666 +for as_dir in $PATH
9.1667 +do
9.1668 + IFS=$as_save_IFS
9.1669 + test -z "$as_dir" && as_dir=.
9.1670 + for ac_exec_ext in '' $ac_executable_extensions; do
9.1671 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.1672 + ac_cv_prog_ac_ct_STRIP="strip"
9.1673 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.1674 + break 2
9.1675 + fi
9.1676 +done
9.1677 +done
9.1678 +
9.1679 + test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":"
9.1680 +fi
9.1681 +fi
9.1682 +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
9.1683 +if test -n "$ac_ct_STRIP"; then
9.1684 + echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
9.1685 +echo "${ECHO_T}$ac_ct_STRIP" >&6
9.1686 +else
9.1687 + echo "$as_me:$LINENO: result: no" >&5
9.1688 +echo "${ECHO_T}no" >&6
9.1689 +fi
9.1690 +
9.1691 + STRIP=$ac_ct_STRIP
9.1692 +else
9.1693 + STRIP="$ac_cv_prog_STRIP"
9.1694 +fi
9.1695 +
9.1696 +fi
9.1697 +INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
9.1698 +
9.1699 +# We need awk for the "check" target. The system "awk" is bad on
9.1700 +# some platforms.
9.1701 +
9.1702 +
9.1703 +
9.1704 +echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5
9.1705 +echo $ECHO_N "checking whether to enable maintainer-specific portions of Makefiles... $ECHO_C" >&6
9.1706 + # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
9.1707 +if test "${enable_maintainer_mode+set}" = set; then
9.1708 + enableval="$enable_maintainer_mode"
9.1709 + USE_MAINTAINER_MODE=$enableval
9.1710 +else
9.1711 + USE_MAINTAINER_MODE=no
9.1712 +fi;
9.1713 + echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5
9.1714 +echo "${ECHO_T}$USE_MAINTAINER_MODE" >&6
9.1715 +
9.1716 +
9.1717 +if test $USE_MAINTAINER_MODE = yes; then
9.1718 + MAINTAINER_MODE_TRUE=
9.1719 + MAINTAINER_MODE_FALSE='#'
9.1720 +else
9.1721 + MAINTAINER_MODE_TRUE='#'
9.1722 + MAINTAINER_MODE_FALSE=
9.1723 +fi
9.1724 +
9.1725 + MAINT=$MAINTAINER_MODE_TRUE
9.1726 +
9.1727 +
9.1728 + ac_config_headers="$ac_config_headers config.h"
9.1729 +
9.1730 +
9.1731 +DEPDIR="${am__leading_dot}deps"
9.1732 +
9.1733 + ac_config_commands="$ac_config_commands depfiles"
9.1734 +
9.1735 +
9.1736 +am_make=${MAKE-make}
9.1737 +cat > confinc << 'END'
9.1738 +am__doit:
9.1739 + @echo done
9.1740 +.PHONY: am__doit
9.1741 +END
9.1742 +# If we don't find an include directive, just comment out the code.
9.1743 +echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
9.1744 +echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6
9.1745 +am__include="#"
9.1746 +am__quote=
9.1747 +_am_result=none
9.1748 +# First try GNU make style include.
9.1749 +echo "include confinc" > confmf
9.1750 +# We grep out `Entering directory' and `Leaving directory'
9.1751 +# messages which can occur if `w' ends up in MAKEFLAGS.
9.1752 +# In particular we don't look at `^make:' because GNU make might
9.1753 +# be invoked under some other name (usually "gmake"), in which
9.1754 +# case it prints its new name instead of `make'.
9.1755 +if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
9.1756 + am__include=include
9.1757 + am__quote=
9.1758 + _am_result=GNU
9.1759 +fi
9.1760 +# Now try BSD make style include.
9.1761 +if test "$am__include" = "#"; then
9.1762 + echo '.include "confinc"' > confmf
9.1763 + if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
9.1764 + am__include=.include
9.1765 + am__quote="\""
9.1766 + _am_result=BSD
9.1767 + fi
9.1768 +fi
9.1769 +
9.1770 +
9.1771 +echo "$as_me:$LINENO: result: $_am_result" >&5
9.1772 +echo "${ECHO_T}$_am_result" >&6
9.1773 +rm -f confinc confmf
9.1774 +
9.1775 +# Check whether --enable-dependency-tracking or --disable-dependency-tracking was given.
9.1776 +if test "${enable_dependency_tracking+set}" = set; then
9.1777 + enableval="$enable_dependency_tracking"
9.1778 +
9.1779 +fi;
9.1780 +if test "x$enable_dependency_tracking" != xno; then
9.1781 + am_depcomp="$ac_aux_dir/depcomp"
9.1782 + AMDEPBACKSLASH='\'
9.1783 +fi
9.1784 +
9.1785 +
9.1786 +if test "x$enable_dependency_tracking" != xno; then
9.1787 + AMDEP_TRUE=
9.1788 + AMDEP_FALSE='#'
9.1789 +else
9.1790 + AMDEP_TRUE='#'
9.1791 + AMDEP_FALSE=
9.1792 +fi
9.1793 +
9.1794 +
9.1795 +
9.1796 +ac_ext=c
9.1797 +ac_cpp='$CPP $CPPFLAGS'
9.1798 +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
9.1799 +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
9.1800 +ac_compiler_gnu=$ac_cv_c_compiler_gnu
9.1801 +if test -n "$ac_tool_prefix"; then
9.1802 + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
9.1803 +set dummy ${ac_tool_prefix}gcc; ac_word=$2
9.1804 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.1805 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.1806 +if test "${ac_cv_prog_CC+set}" = set; then
9.1807 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1808 +else
9.1809 + if test -n "$CC"; then
9.1810 + ac_cv_prog_CC="$CC" # Let the user override the test.
9.1811 +else
9.1812 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1813 +for as_dir in $PATH
9.1814 +do
9.1815 + IFS=$as_save_IFS
9.1816 + test -z "$as_dir" && as_dir=.
9.1817 + for ac_exec_ext in '' $ac_executable_extensions; do
9.1818 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.1819 + ac_cv_prog_CC="${ac_tool_prefix}gcc"
9.1820 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.1821 + break 2
9.1822 + fi
9.1823 +done
9.1824 +done
9.1825 +
9.1826 +fi
9.1827 +fi
9.1828 +CC=$ac_cv_prog_CC
9.1829 +if test -n "$CC"; then
9.1830 + echo "$as_me:$LINENO: result: $CC" >&5
9.1831 +echo "${ECHO_T}$CC" >&6
9.1832 +else
9.1833 + echo "$as_me:$LINENO: result: no" >&5
9.1834 +echo "${ECHO_T}no" >&6
9.1835 +fi
9.1836 +
9.1837 +fi
9.1838 +if test -z "$ac_cv_prog_CC"; then
9.1839 + ac_ct_CC=$CC
9.1840 + # Extract the first word of "gcc", so it can be a program name with args.
9.1841 +set dummy gcc; ac_word=$2
9.1842 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.1843 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.1844 +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
9.1845 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1846 +else
9.1847 + if test -n "$ac_ct_CC"; then
9.1848 + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
9.1849 +else
9.1850 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1851 +for as_dir in $PATH
9.1852 +do
9.1853 + IFS=$as_save_IFS
9.1854 + test -z "$as_dir" && as_dir=.
9.1855 + for ac_exec_ext in '' $ac_executable_extensions; do
9.1856 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.1857 + ac_cv_prog_ac_ct_CC="gcc"
9.1858 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.1859 + break 2
9.1860 + fi
9.1861 +done
9.1862 +done
9.1863 +
9.1864 +fi
9.1865 +fi
9.1866 +ac_ct_CC=$ac_cv_prog_ac_ct_CC
9.1867 +if test -n "$ac_ct_CC"; then
9.1868 + echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
9.1869 +echo "${ECHO_T}$ac_ct_CC" >&6
9.1870 +else
9.1871 + echo "$as_me:$LINENO: result: no" >&5
9.1872 +echo "${ECHO_T}no" >&6
9.1873 +fi
9.1874 +
9.1875 + CC=$ac_ct_CC
9.1876 +else
9.1877 + CC="$ac_cv_prog_CC"
9.1878 +fi
9.1879 +
9.1880 +if test -z "$CC"; then
9.1881 + if test -n "$ac_tool_prefix"; then
9.1882 + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
9.1883 +set dummy ${ac_tool_prefix}cc; ac_word=$2
9.1884 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.1885 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.1886 +if test "${ac_cv_prog_CC+set}" = set; then
9.1887 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1888 +else
9.1889 + if test -n "$CC"; then
9.1890 + ac_cv_prog_CC="$CC" # Let the user override the test.
9.1891 +else
9.1892 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1893 +for as_dir in $PATH
9.1894 +do
9.1895 + IFS=$as_save_IFS
9.1896 + test -z "$as_dir" && as_dir=.
9.1897 + for ac_exec_ext in '' $ac_executable_extensions; do
9.1898 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.1899 + ac_cv_prog_CC="${ac_tool_prefix}cc"
9.1900 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.1901 + break 2
9.1902 + fi
9.1903 +done
9.1904 +done
9.1905 +
9.1906 +fi
9.1907 +fi
9.1908 +CC=$ac_cv_prog_CC
9.1909 +if test -n "$CC"; then
9.1910 + echo "$as_me:$LINENO: result: $CC" >&5
9.1911 +echo "${ECHO_T}$CC" >&6
9.1912 +else
9.1913 + echo "$as_me:$LINENO: result: no" >&5
9.1914 +echo "${ECHO_T}no" >&6
9.1915 +fi
9.1916 +
9.1917 +fi
9.1918 +if test -z "$ac_cv_prog_CC"; then
9.1919 + ac_ct_CC=$CC
9.1920 + # Extract the first word of "cc", so it can be a program name with args.
9.1921 +set dummy cc; ac_word=$2
9.1922 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.1923 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.1924 +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
9.1925 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1926 +else
9.1927 + if test -n "$ac_ct_CC"; then
9.1928 + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
9.1929 +else
9.1930 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1931 +for as_dir in $PATH
9.1932 +do
9.1933 + IFS=$as_save_IFS
9.1934 + test -z "$as_dir" && as_dir=.
9.1935 + for ac_exec_ext in '' $ac_executable_extensions; do
9.1936 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.1937 + ac_cv_prog_ac_ct_CC="cc"
9.1938 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.1939 + break 2
9.1940 + fi
9.1941 +done
9.1942 +done
9.1943 +
9.1944 +fi
9.1945 +fi
9.1946 +ac_ct_CC=$ac_cv_prog_ac_ct_CC
9.1947 +if test -n "$ac_ct_CC"; then
9.1948 + echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
9.1949 +echo "${ECHO_T}$ac_ct_CC" >&6
9.1950 +else
9.1951 + echo "$as_me:$LINENO: result: no" >&5
9.1952 +echo "${ECHO_T}no" >&6
9.1953 +fi
9.1954 +
9.1955 + CC=$ac_ct_CC
9.1956 +else
9.1957 + CC="$ac_cv_prog_CC"
9.1958 +fi
9.1959 +
9.1960 +fi
9.1961 +if test -z "$CC"; then
9.1962 + # Extract the first word of "cc", so it can be a program name with args.
9.1963 +set dummy cc; ac_word=$2
9.1964 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.1965 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.1966 +if test "${ac_cv_prog_CC+set}" = set; then
9.1967 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.1968 +else
9.1969 + if test -n "$CC"; then
9.1970 + ac_cv_prog_CC="$CC" # Let the user override the test.
9.1971 +else
9.1972 + ac_prog_rejected=no
9.1973 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.1974 +for as_dir in $PATH
9.1975 +do
9.1976 + IFS=$as_save_IFS
9.1977 + test -z "$as_dir" && as_dir=.
9.1978 + for ac_exec_ext in '' $ac_executable_extensions; do
9.1979 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.1980 + if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
9.1981 + ac_prog_rejected=yes
9.1982 + continue
9.1983 + fi
9.1984 + ac_cv_prog_CC="cc"
9.1985 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.1986 + break 2
9.1987 + fi
9.1988 +done
9.1989 +done
9.1990 +
9.1991 +if test $ac_prog_rejected = yes; then
9.1992 + # We found a bogon in the path, so make sure we never use it.
9.1993 + set dummy $ac_cv_prog_CC
9.1994 + shift
9.1995 + if test $# != 0; then
9.1996 + # We chose a different compiler from the bogus one.
9.1997 + # However, it has the same basename, so the bogon will be chosen
9.1998 + # first if we set CC to just the basename; use the full file name.
9.1999 + shift
9.2000 + ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
9.2001 + fi
9.2002 +fi
9.2003 +fi
9.2004 +fi
9.2005 +CC=$ac_cv_prog_CC
9.2006 +if test -n "$CC"; then
9.2007 + echo "$as_me:$LINENO: result: $CC" >&5
9.2008 +echo "${ECHO_T}$CC" >&6
9.2009 +else
9.2010 + echo "$as_me:$LINENO: result: no" >&5
9.2011 +echo "${ECHO_T}no" >&6
9.2012 +fi
9.2013 +
9.2014 +fi
9.2015 +if test -z "$CC"; then
9.2016 + if test -n "$ac_tool_prefix"; then
9.2017 + for ac_prog in cl
9.2018 + do
9.2019 + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
9.2020 +set dummy $ac_tool_prefix$ac_prog; ac_word=$2
9.2021 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.2022 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.2023 +if test "${ac_cv_prog_CC+set}" = set; then
9.2024 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2025 +else
9.2026 + if test -n "$CC"; then
9.2027 + ac_cv_prog_CC="$CC" # Let the user override the test.
9.2028 +else
9.2029 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.2030 +for as_dir in $PATH
9.2031 +do
9.2032 + IFS=$as_save_IFS
9.2033 + test -z "$as_dir" && as_dir=.
9.2034 + for ac_exec_ext in '' $ac_executable_extensions; do
9.2035 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.2036 + ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
9.2037 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.2038 + break 2
9.2039 + fi
9.2040 +done
9.2041 +done
9.2042 +
9.2043 +fi
9.2044 +fi
9.2045 +CC=$ac_cv_prog_CC
9.2046 +if test -n "$CC"; then
9.2047 + echo "$as_me:$LINENO: result: $CC" >&5
9.2048 +echo "${ECHO_T}$CC" >&6
9.2049 +else
9.2050 + echo "$as_me:$LINENO: result: no" >&5
9.2051 +echo "${ECHO_T}no" >&6
9.2052 +fi
9.2053 +
9.2054 + test -n "$CC" && break
9.2055 + done
9.2056 +fi
9.2057 +if test -z "$CC"; then
9.2058 + ac_ct_CC=$CC
9.2059 + for ac_prog in cl
9.2060 +do
9.2061 + # Extract the first word of "$ac_prog", so it can be a program name with args.
9.2062 +set dummy $ac_prog; ac_word=$2
9.2063 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.2064 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.2065 +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
9.2066 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2067 +else
9.2068 + if test -n "$ac_ct_CC"; then
9.2069 + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
9.2070 +else
9.2071 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.2072 +for as_dir in $PATH
9.2073 +do
9.2074 + IFS=$as_save_IFS
9.2075 + test -z "$as_dir" && as_dir=.
9.2076 + for ac_exec_ext in '' $ac_executable_extensions; do
9.2077 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.2078 + ac_cv_prog_ac_ct_CC="$ac_prog"
9.2079 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.2080 + break 2
9.2081 + fi
9.2082 +done
9.2083 +done
9.2084 +
9.2085 +fi
9.2086 +fi
9.2087 +ac_ct_CC=$ac_cv_prog_ac_ct_CC
9.2088 +if test -n "$ac_ct_CC"; then
9.2089 + echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
9.2090 +echo "${ECHO_T}$ac_ct_CC" >&6
9.2091 +else
9.2092 + echo "$as_me:$LINENO: result: no" >&5
9.2093 +echo "${ECHO_T}no" >&6
9.2094 +fi
9.2095 +
9.2096 + test -n "$ac_ct_CC" && break
9.2097 +done
9.2098 +
9.2099 + CC=$ac_ct_CC
9.2100 +fi
9.2101 +
9.2102 +fi
9.2103 +
9.2104 +
9.2105 +test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
9.2106 +See \`config.log' for more details." >&5
9.2107 +echo "$as_me: error: no acceptable C compiler found in \$PATH
9.2108 +See \`config.log' for more details." >&2;}
9.2109 + { (exit 1); exit 1; }; }
9.2110 +
9.2111 +# Provide some information about the compiler.
9.2112 +echo "$as_me:$LINENO:" \
9.2113 + "checking for C compiler version" >&5
9.2114 +ac_compiler=`set X $ac_compile; echo $2`
9.2115 +{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
9.2116 + (eval $ac_compiler --version </dev/null >&5) 2>&5
9.2117 + ac_status=$?
9.2118 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2119 + (exit $ac_status); }
9.2120 +{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
9.2121 + (eval $ac_compiler -v </dev/null >&5) 2>&5
9.2122 + ac_status=$?
9.2123 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2124 + (exit $ac_status); }
9.2125 +{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
9.2126 + (eval $ac_compiler -V </dev/null >&5) 2>&5
9.2127 + ac_status=$?
9.2128 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2129 + (exit $ac_status); }
9.2130 +
9.2131 +cat >conftest.$ac_ext <<_ACEOF
9.2132 +/* confdefs.h. */
9.2133 +_ACEOF
9.2134 +cat confdefs.h >>conftest.$ac_ext
9.2135 +cat >>conftest.$ac_ext <<_ACEOF
9.2136 +/* end confdefs.h. */
9.2137 +
9.2138 +int
9.2139 +main ()
9.2140 +{
9.2141 +
9.2142 + ;
9.2143 + return 0;
9.2144 +}
9.2145 +_ACEOF
9.2146 +ac_clean_files_save=$ac_clean_files
9.2147 +ac_clean_files="$ac_clean_files a.out a.exe b.out"
9.2148 +# Try to create an executable without -o first, disregard a.out.
9.2149 +# It will help us diagnose broken compilers, and finding out an intuition
9.2150 +# of exeext.
9.2151 +echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
9.2152 +echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
9.2153 +ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
9.2154 +if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
9.2155 + (eval $ac_link_default) 2>&5
9.2156 + ac_status=$?
9.2157 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2158 + (exit $ac_status); }; then
9.2159 + # Find the output, starting from the most likely. This scheme is
9.2160 +# not robust to junk in `.', hence go to wildcards (a.*) only as a last
9.2161 +# resort.
9.2162 +
9.2163 +# Be careful to initialize this variable, since it used to be cached.
9.2164 +# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
9.2165 +ac_cv_exeext=
9.2166 +# b.out is created by i960 compilers.
9.2167 +for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
9.2168 +do
9.2169 + test -f "$ac_file" || continue
9.2170 + case $ac_file in
9.2171 + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
9.2172 + ;;
9.2173 + conftest.$ac_ext )
9.2174 + # This is the source file.
9.2175 + ;;
9.2176 + [ab].out )
9.2177 + # We found the default executable, but exeext='' is most
9.2178 + # certainly right.
9.2179 + break;;
9.2180 + *.* )
9.2181 + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
9.2182 + # FIXME: I believe we export ac_cv_exeext for Libtool,
9.2183 + # but it would be cool to find out if it's true. Does anybody
9.2184 + # maintain Libtool? --akim.
9.2185 + export ac_cv_exeext
9.2186 + break;;
9.2187 + * )
9.2188 + break;;
9.2189 + esac
9.2190 +done
9.2191 +else
9.2192 + echo "$as_me: failed program was:" >&5
9.2193 +sed 's/^/| /' conftest.$ac_ext >&5
9.2194 +
9.2195 +{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
9.2196 +See \`config.log' for more details." >&5
9.2197 +echo "$as_me: error: C compiler cannot create executables
9.2198 +See \`config.log' for more details." >&2;}
9.2199 + { (exit 77); exit 77; }; }
9.2200 +fi
9.2201 +
9.2202 +ac_exeext=$ac_cv_exeext
9.2203 +echo "$as_me:$LINENO: result: $ac_file" >&5
9.2204 +echo "${ECHO_T}$ac_file" >&6
9.2205 +
9.2206 +# Check the compiler produces executables we can run. If not, either
9.2207 +# the compiler is broken, or we cross compile.
9.2208 +echo "$as_me:$LINENO: checking whether the C compiler works" >&5
9.2209 +echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
9.2210 +# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
9.2211 +# If not cross compiling, check that we can run a simple program.
9.2212 +if test "$cross_compiling" != yes; then
9.2213 + if { ac_try='./$ac_file'
9.2214 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2215 + (eval $ac_try) 2>&5
9.2216 + ac_status=$?
9.2217 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2218 + (exit $ac_status); }; }; then
9.2219 + cross_compiling=no
9.2220 + else
9.2221 + if test "$cross_compiling" = maybe; then
9.2222 + cross_compiling=yes
9.2223 + else
9.2224 + { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
9.2225 +If you meant to cross compile, use \`--host'.
9.2226 +See \`config.log' for more details." >&5
9.2227 +echo "$as_me: error: cannot run C compiled programs.
9.2228 +If you meant to cross compile, use \`--host'.
9.2229 +See \`config.log' for more details." >&2;}
9.2230 + { (exit 1); exit 1; }; }
9.2231 + fi
9.2232 + fi
9.2233 +fi
9.2234 +echo "$as_me:$LINENO: result: yes" >&5
9.2235 +echo "${ECHO_T}yes" >&6
9.2236 +
9.2237 +rm -f a.out a.exe conftest$ac_cv_exeext b.out
9.2238 +ac_clean_files=$ac_clean_files_save
9.2239 +# Check the compiler produces executables we can run. If not, either
9.2240 +# the compiler is broken, or we cross compile.
9.2241 +echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
9.2242 +echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
9.2243 +echo "$as_me:$LINENO: result: $cross_compiling" >&5
9.2244 +echo "${ECHO_T}$cross_compiling" >&6
9.2245 +
9.2246 +echo "$as_me:$LINENO: checking for suffix of executables" >&5
9.2247 +echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
9.2248 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.2249 + (eval $ac_link) 2>&5
9.2250 + ac_status=$?
9.2251 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2252 + (exit $ac_status); }; then
9.2253 + # If both `conftest.exe' and `conftest' are `present' (well, observable)
9.2254 +# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
9.2255 +# work properly (i.e., refer to `conftest.exe'), while it won't with
9.2256 +# `rm'.
9.2257 +for ac_file in conftest.exe conftest conftest.*; do
9.2258 + test -f "$ac_file" || continue
9.2259 + case $ac_file in
9.2260 + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;;
9.2261 + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
9.2262 + export ac_cv_exeext
9.2263 + break;;
9.2264 + * ) break;;
9.2265 + esac
9.2266 +done
9.2267 +else
9.2268 + { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
9.2269 +See \`config.log' for more details." >&5
9.2270 +echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
9.2271 +See \`config.log' for more details." >&2;}
9.2272 + { (exit 1); exit 1; }; }
9.2273 +fi
9.2274 +
9.2275 +rm -f conftest$ac_cv_exeext
9.2276 +echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
9.2277 +echo "${ECHO_T}$ac_cv_exeext" >&6
9.2278 +
9.2279 +rm -f conftest.$ac_ext
9.2280 +EXEEXT=$ac_cv_exeext
9.2281 +ac_exeext=$EXEEXT
9.2282 +echo "$as_me:$LINENO: checking for suffix of object files" >&5
9.2283 +echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
9.2284 +if test "${ac_cv_objext+set}" = set; then
9.2285 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2286 +else
9.2287 + cat >conftest.$ac_ext <<_ACEOF
9.2288 +/* confdefs.h. */
9.2289 +_ACEOF
9.2290 +cat confdefs.h >>conftest.$ac_ext
9.2291 +cat >>conftest.$ac_ext <<_ACEOF
9.2292 +/* end confdefs.h. */
9.2293 +
9.2294 +int
9.2295 +main ()
9.2296 +{
9.2297 +
9.2298 + ;
9.2299 + return 0;
9.2300 +}
9.2301 +_ACEOF
9.2302 +rm -f conftest.o conftest.obj
9.2303 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.2304 + (eval $ac_compile) 2>&5
9.2305 + ac_status=$?
9.2306 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2307 + (exit $ac_status); }; then
9.2308 + for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
9.2309 + case $ac_file in
9.2310 + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
9.2311 + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
9.2312 + break;;
9.2313 + esac
9.2314 +done
9.2315 +else
9.2316 + echo "$as_me: failed program was:" >&5
9.2317 +sed 's/^/| /' conftest.$ac_ext >&5
9.2318 +
9.2319 +{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
9.2320 +See \`config.log' for more details." >&5
9.2321 +echo "$as_me: error: cannot compute suffix of object files: cannot compile
9.2322 +See \`config.log' for more details." >&2;}
9.2323 + { (exit 1); exit 1; }; }
9.2324 +fi
9.2325 +
9.2326 +rm -f conftest.$ac_cv_objext conftest.$ac_ext
9.2327 +fi
9.2328 +echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
9.2329 +echo "${ECHO_T}$ac_cv_objext" >&6
9.2330 +OBJEXT=$ac_cv_objext
9.2331 +ac_objext=$OBJEXT
9.2332 +echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
9.2333 +echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
9.2334 +if test "${ac_cv_c_compiler_gnu+set}" = set; then
9.2335 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2336 +else
9.2337 + cat >conftest.$ac_ext <<_ACEOF
9.2338 +/* confdefs.h. */
9.2339 +_ACEOF
9.2340 +cat confdefs.h >>conftest.$ac_ext
9.2341 +cat >>conftest.$ac_ext <<_ACEOF
9.2342 +/* end confdefs.h. */
9.2343 +
9.2344 +int
9.2345 +main ()
9.2346 +{
9.2347 +#ifndef __GNUC__
9.2348 + choke me
9.2349 +#endif
9.2350 +
9.2351 + ;
9.2352 + return 0;
9.2353 +}
9.2354 +_ACEOF
9.2355 +rm -f conftest.$ac_objext
9.2356 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.2357 + (eval $ac_compile) 2>conftest.er1
9.2358 + ac_status=$?
9.2359 + grep -v '^ *+' conftest.er1 >conftest.err
9.2360 + rm -f conftest.er1
9.2361 + cat conftest.err >&5
9.2362 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2363 + (exit $ac_status); } &&
9.2364 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.2365 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2366 + (eval $ac_try) 2>&5
9.2367 + ac_status=$?
9.2368 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2369 + (exit $ac_status); }; } &&
9.2370 + { ac_try='test -s conftest.$ac_objext'
9.2371 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2372 + (eval $ac_try) 2>&5
9.2373 + ac_status=$?
9.2374 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2375 + (exit $ac_status); }; }; then
9.2376 + ac_compiler_gnu=yes
9.2377 +else
9.2378 + echo "$as_me: failed program was:" >&5
9.2379 +sed 's/^/| /' conftest.$ac_ext >&5
9.2380 +
9.2381 +ac_compiler_gnu=no
9.2382 +fi
9.2383 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.2384 +ac_cv_c_compiler_gnu=$ac_compiler_gnu
9.2385 +
9.2386 +fi
9.2387 +echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
9.2388 +echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
9.2389 +GCC=`test $ac_compiler_gnu = yes && echo yes`
9.2390 +ac_test_CFLAGS=${CFLAGS+set}
9.2391 +ac_save_CFLAGS=$CFLAGS
9.2392 +CFLAGS="-g"
9.2393 +echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
9.2394 +echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
9.2395 +if test "${ac_cv_prog_cc_g+set}" = set; then
9.2396 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2397 +else
9.2398 + cat >conftest.$ac_ext <<_ACEOF
9.2399 +/* confdefs.h. */
9.2400 +_ACEOF
9.2401 +cat confdefs.h >>conftest.$ac_ext
9.2402 +cat >>conftest.$ac_ext <<_ACEOF
9.2403 +/* end confdefs.h. */
9.2404 +
9.2405 +int
9.2406 +main ()
9.2407 +{
9.2408 +
9.2409 + ;
9.2410 + return 0;
9.2411 +}
9.2412 +_ACEOF
9.2413 +rm -f conftest.$ac_objext
9.2414 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.2415 + (eval $ac_compile) 2>conftest.er1
9.2416 + ac_status=$?
9.2417 + grep -v '^ *+' conftest.er1 >conftest.err
9.2418 + rm -f conftest.er1
9.2419 + cat conftest.err >&5
9.2420 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2421 + (exit $ac_status); } &&
9.2422 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.2423 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2424 + (eval $ac_try) 2>&5
9.2425 + ac_status=$?
9.2426 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2427 + (exit $ac_status); }; } &&
9.2428 + { ac_try='test -s conftest.$ac_objext'
9.2429 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2430 + (eval $ac_try) 2>&5
9.2431 + ac_status=$?
9.2432 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2433 + (exit $ac_status); }; }; then
9.2434 + ac_cv_prog_cc_g=yes
9.2435 +else
9.2436 + echo "$as_me: failed program was:" >&5
9.2437 +sed 's/^/| /' conftest.$ac_ext >&5
9.2438 +
9.2439 +ac_cv_prog_cc_g=no
9.2440 +fi
9.2441 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.2442 +fi
9.2443 +echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
9.2444 +echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
9.2445 +if test "$ac_test_CFLAGS" = set; then
9.2446 + CFLAGS=$ac_save_CFLAGS
9.2447 +elif test $ac_cv_prog_cc_g = yes; then
9.2448 + if test "$GCC" = yes; then
9.2449 + CFLAGS="-g -O2"
9.2450 + else
9.2451 + CFLAGS="-g"
9.2452 + fi
9.2453 +else
9.2454 + if test "$GCC" = yes; then
9.2455 + CFLAGS="-O2"
9.2456 + else
9.2457 + CFLAGS=
9.2458 + fi
9.2459 +fi
9.2460 +echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
9.2461 +echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
9.2462 +if test "${ac_cv_prog_cc_stdc+set}" = set; then
9.2463 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2464 +else
9.2465 + ac_cv_prog_cc_stdc=no
9.2466 +ac_save_CC=$CC
9.2467 +cat >conftest.$ac_ext <<_ACEOF
9.2468 +/* confdefs.h. */
9.2469 +_ACEOF
9.2470 +cat confdefs.h >>conftest.$ac_ext
9.2471 +cat >>conftest.$ac_ext <<_ACEOF
9.2472 +/* end confdefs.h. */
9.2473 +#include <stdarg.h>
9.2474 +#include <stdio.h>
9.2475 +#include <sys/types.h>
9.2476 +#include <sys/stat.h>
9.2477 +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
9.2478 +struct buf { int x; };
9.2479 +FILE * (*rcsopen) (struct buf *, struct stat *, int);
9.2480 +static char *e (p, i)
9.2481 + char **p;
9.2482 + int i;
9.2483 +{
9.2484 + return p[i];
9.2485 +}
9.2486 +static char *f (char * (*g) (char **, int), char **p, ...)
9.2487 +{
9.2488 + char *s;
9.2489 + va_list v;
9.2490 + va_start (v,p);
9.2491 + s = g (p, va_arg (v,int));
9.2492 + va_end (v);
9.2493 + return s;
9.2494 +}
9.2495 +
9.2496 +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
9.2497 + function prototypes and stuff, but not '\xHH' hex character constants.
9.2498 + These don't provoke an error unfortunately, instead are silently treated
9.2499 + as 'x'. The following induces an error, until -std1 is added to get
9.2500 + proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
9.2501 + array size at least. It's necessary to write '\x00'==0 to get something
9.2502 + that's true only with -std1. */
9.2503 +int osf4_cc_array ['\x00' == 0 ? 1 : -1];
9.2504 +
9.2505 +int test (int i, double x);
9.2506 +struct s1 {int (*f) (int a);};
9.2507 +struct s2 {int (*f) (double a);};
9.2508 +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
9.2509 +int argc;
9.2510 +char **argv;
9.2511 +int
9.2512 +main ()
9.2513 +{
9.2514 +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
9.2515 + ;
9.2516 + return 0;
9.2517 +}
9.2518 +_ACEOF
9.2519 +# Don't try gcc -ansi; that turns off useful extensions and
9.2520 +# breaks some systems' header files.
9.2521 +# AIX -qlanglvl=ansi
9.2522 +# Ultrix and OSF/1 -std1
9.2523 +# HP-UX 10.20 and later -Ae
9.2524 +# HP-UX older versions -Aa -D_HPUX_SOURCE
9.2525 +# SVR4 -Xc -D__EXTENSIONS__
9.2526 +for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
9.2527 +do
9.2528 + CC="$ac_save_CC $ac_arg"
9.2529 + rm -f conftest.$ac_objext
9.2530 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.2531 + (eval $ac_compile) 2>conftest.er1
9.2532 + ac_status=$?
9.2533 + grep -v '^ *+' conftest.er1 >conftest.err
9.2534 + rm -f conftest.er1
9.2535 + cat conftest.err >&5
9.2536 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2537 + (exit $ac_status); } &&
9.2538 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.2539 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2540 + (eval $ac_try) 2>&5
9.2541 + ac_status=$?
9.2542 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2543 + (exit $ac_status); }; } &&
9.2544 + { ac_try='test -s conftest.$ac_objext'
9.2545 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2546 + (eval $ac_try) 2>&5
9.2547 + ac_status=$?
9.2548 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2549 + (exit $ac_status); }; }; then
9.2550 + ac_cv_prog_cc_stdc=$ac_arg
9.2551 +break
9.2552 +else
9.2553 + echo "$as_me: failed program was:" >&5
9.2554 +sed 's/^/| /' conftest.$ac_ext >&5
9.2555 +
9.2556 +fi
9.2557 +rm -f conftest.err conftest.$ac_objext
9.2558 +done
9.2559 +rm -f conftest.$ac_ext conftest.$ac_objext
9.2560 +CC=$ac_save_CC
9.2561 +
9.2562 +fi
9.2563 +
9.2564 +case "x$ac_cv_prog_cc_stdc" in
9.2565 + x|xno)
9.2566 + echo "$as_me:$LINENO: result: none needed" >&5
9.2567 +echo "${ECHO_T}none needed" >&6 ;;
9.2568 + *)
9.2569 + echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
9.2570 +echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
9.2571 + CC="$CC $ac_cv_prog_cc_stdc" ;;
9.2572 +esac
9.2573 +
9.2574 +# Some people use a C++ compiler to compile C. Since we use `exit',
9.2575 +# in C++ we need to declare it. In case someone uses the same compiler
9.2576 +# for both compiling C and C++ we need to have the C++ compiler decide
9.2577 +# the declaration of exit, since it's the most demanding environment.
9.2578 +cat >conftest.$ac_ext <<_ACEOF
9.2579 +#ifndef __cplusplus
9.2580 + choke me
9.2581 +#endif
9.2582 +_ACEOF
9.2583 +rm -f conftest.$ac_objext
9.2584 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.2585 + (eval $ac_compile) 2>conftest.er1
9.2586 + ac_status=$?
9.2587 + grep -v '^ *+' conftest.er1 >conftest.err
9.2588 + rm -f conftest.er1
9.2589 + cat conftest.err >&5
9.2590 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2591 + (exit $ac_status); } &&
9.2592 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.2593 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2594 + (eval $ac_try) 2>&5
9.2595 + ac_status=$?
9.2596 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2597 + (exit $ac_status); }; } &&
9.2598 + { ac_try='test -s conftest.$ac_objext'
9.2599 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2600 + (eval $ac_try) 2>&5
9.2601 + ac_status=$?
9.2602 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2603 + (exit $ac_status); }; }; then
9.2604 + for ac_declaration in \
9.2605 + '' \
9.2606 + 'extern "C" void std::exit (int) throw (); using std::exit;' \
9.2607 + 'extern "C" void std::exit (int); using std::exit;' \
9.2608 + 'extern "C" void exit (int) throw ();' \
9.2609 + 'extern "C" void exit (int);' \
9.2610 + 'void exit (int);'
9.2611 +do
9.2612 + cat >conftest.$ac_ext <<_ACEOF
9.2613 +/* confdefs.h. */
9.2614 +_ACEOF
9.2615 +cat confdefs.h >>conftest.$ac_ext
9.2616 +cat >>conftest.$ac_ext <<_ACEOF
9.2617 +/* end confdefs.h. */
9.2618 +$ac_declaration
9.2619 +#include <stdlib.h>
9.2620 +int
9.2621 +main ()
9.2622 +{
9.2623 +exit (42);
9.2624 + ;
9.2625 + return 0;
9.2626 +}
9.2627 +_ACEOF
9.2628 +rm -f conftest.$ac_objext
9.2629 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.2630 + (eval $ac_compile) 2>conftest.er1
9.2631 + ac_status=$?
9.2632 + grep -v '^ *+' conftest.er1 >conftest.err
9.2633 + rm -f conftest.er1
9.2634 + cat conftest.err >&5
9.2635 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2636 + (exit $ac_status); } &&
9.2637 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.2638 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2639 + (eval $ac_try) 2>&5
9.2640 + ac_status=$?
9.2641 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2642 + (exit $ac_status); }; } &&
9.2643 + { ac_try='test -s conftest.$ac_objext'
9.2644 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2645 + (eval $ac_try) 2>&5
9.2646 + ac_status=$?
9.2647 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2648 + (exit $ac_status); }; }; then
9.2649 + :
9.2650 +else
9.2651 + echo "$as_me: failed program was:" >&5
9.2652 +sed 's/^/| /' conftest.$ac_ext >&5
9.2653 +
9.2654 +continue
9.2655 +fi
9.2656 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.2657 + cat >conftest.$ac_ext <<_ACEOF
9.2658 +/* confdefs.h. */
9.2659 +_ACEOF
9.2660 +cat confdefs.h >>conftest.$ac_ext
9.2661 +cat >>conftest.$ac_ext <<_ACEOF
9.2662 +/* end confdefs.h. */
9.2663 +$ac_declaration
9.2664 +int
9.2665 +main ()
9.2666 +{
9.2667 +exit (42);
9.2668 + ;
9.2669 + return 0;
9.2670 +}
9.2671 +_ACEOF
9.2672 +rm -f conftest.$ac_objext
9.2673 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.2674 + (eval $ac_compile) 2>conftest.er1
9.2675 + ac_status=$?
9.2676 + grep -v '^ *+' conftest.er1 >conftest.err
9.2677 + rm -f conftest.er1
9.2678 + cat conftest.err >&5
9.2679 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2680 + (exit $ac_status); } &&
9.2681 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.2682 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2683 + (eval $ac_try) 2>&5
9.2684 + ac_status=$?
9.2685 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2686 + (exit $ac_status); }; } &&
9.2687 + { ac_try='test -s conftest.$ac_objext'
9.2688 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2689 + (eval $ac_try) 2>&5
9.2690 + ac_status=$?
9.2691 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2692 + (exit $ac_status); }; }; then
9.2693 + break
9.2694 +else
9.2695 + echo "$as_me: failed program was:" >&5
9.2696 +sed 's/^/| /' conftest.$ac_ext >&5
9.2697 +
9.2698 +fi
9.2699 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.2700 +done
9.2701 +rm -f conftest*
9.2702 +if test -n "$ac_declaration"; then
9.2703 + echo '#ifdef __cplusplus' >>confdefs.h
9.2704 + echo $ac_declaration >>confdefs.h
9.2705 + echo '#endif' >>confdefs.h
9.2706 +fi
9.2707 +
9.2708 +else
9.2709 + echo "$as_me: failed program was:" >&5
9.2710 +sed 's/^/| /' conftest.$ac_ext >&5
9.2711 +
9.2712 +fi
9.2713 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.2714 +ac_ext=c
9.2715 +ac_cpp='$CPP $CPPFLAGS'
9.2716 +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
9.2717 +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
9.2718 +ac_compiler_gnu=$ac_cv_c_compiler_gnu
9.2719 +
9.2720 +depcc="$CC" am_compiler_list=
9.2721 +
9.2722 +echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
9.2723 +echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
9.2724 +if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
9.2725 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2726 +else
9.2727 + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
9.2728 + # We make a subdir and do the tests there. Otherwise we can end up
9.2729 + # making bogus files that we don't know about and never remove. For
9.2730 + # instance it was reported that on HP-UX the gcc test will end up
9.2731 + # making a dummy file named `D' -- because `-MD' means `put the output
9.2732 + # in D'.
9.2733 + mkdir conftest.dir
9.2734 + # Copy depcomp to subdir because otherwise we won't find it if we're
9.2735 + # using a relative directory.
9.2736 + cp "$am_depcomp" conftest.dir
9.2737 + cd conftest.dir
9.2738 + # We will build objects and dependencies in a subdirectory because
9.2739 + # it helps to detect inapplicable dependency modes. For instance
9.2740 + # both Tru64's cc and ICC support -MD to output dependencies as a
9.2741 + # side effect of compilation, but ICC will put the dependencies in
9.2742 + # the current directory while Tru64 will put them in the object
9.2743 + # directory.
9.2744 + mkdir sub
9.2745 +
9.2746 + am_cv_CC_dependencies_compiler_type=none
9.2747 + if test "$am_compiler_list" = ""; then
9.2748 + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
9.2749 + fi
9.2750 + for depmode in $am_compiler_list; do
9.2751 + # Setup a source with many dependencies, because some compilers
9.2752 + # like to wrap large dependency lists on column 80 (with \), and
9.2753 + # we should not choose a depcomp mode which is confused by this.
9.2754 + #
9.2755 + # We need to recreate these files for each test, as the compiler may
9.2756 + # overwrite some of them when testing with obscure command lines.
9.2757 + # This happens at least with the AIX C compiler.
9.2758 + : > sub/conftest.c
9.2759 + for i in 1 2 3 4 5 6; do
9.2760 + echo '#include "conftst'$i'.h"' >> sub/conftest.c
9.2761 + : > sub/conftst$i.h
9.2762 + done
9.2763 + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
9.2764 +
9.2765 + case $depmode in
9.2766 + nosideeffect)
9.2767 + # after this tag, mechanisms are not by side-effect, so they'll
9.2768 + # only be used when explicitly requested
9.2769 + if test "x$enable_dependency_tracking" = xyes; then
9.2770 + continue
9.2771 + else
9.2772 + break
9.2773 + fi
9.2774 + ;;
9.2775 + none) break ;;
9.2776 + esac
9.2777 + # We check with `-c' and `-o' for the sake of the "dashmstdout"
9.2778 + # mode. It turns out that the SunPro C++ compiler does not properly
9.2779 + # handle `-M -o', and we need to detect this.
9.2780 + if depmode=$depmode \
9.2781 + source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
9.2782 + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
9.2783 + $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
9.2784 + >/dev/null 2>conftest.err &&
9.2785 + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
9.2786 + grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
9.2787 + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
9.2788 + # icc doesn't choke on unknown options, it will just issue warnings
9.2789 + # (even with -Werror). So we grep stderr for any message
9.2790 + # that says an option was ignored.
9.2791 + if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
9.2792 + am_cv_CC_dependencies_compiler_type=$depmode
9.2793 + break
9.2794 + fi
9.2795 + fi
9.2796 + done
9.2797 +
9.2798 + cd ..
9.2799 + rm -rf conftest.dir
9.2800 +else
9.2801 + am_cv_CC_dependencies_compiler_type=none
9.2802 +fi
9.2803 +
9.2804 +fi
9.2805 +echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
9.2806 +echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6
9.2807 +CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
9.2808 +
9.2809 +
9.2810 +
9.2811 +if
9.2812 + test "x$enable_dependency_tracking" != xno \
9.2813 + && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
9.2814 + am__fastdepCC_TRUE=
9.2815 + am__fastdepCC_FALSE='#'
9.2816 +else
9.2817 + am__fastdepCC_TRUE='#'
9.2818 + am__fastdepCC_FALSE=
9.2819 +fi
9.2820 +
9.2821 +
9.2822 +
9.2823 +
9.2824 + echo "$as_me:$LINENO: checking for strerror in -lcposix" >&5
9.2825 +echo $ECHO_N "checking for strerror in -lcposix... $ECHO_C" >&6
9.2826 +if test "${ac_cv_lib_cposix_strerror+set}" = set; then
9.2827 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2828 +else
9.2829 + ac_check_lib_save_LIBS=$LIBS
9.2830 +LIBS="-lcposix $LIBS"
9.2831 +cat >conftest.$ac_ext <<_ACEOF
9.2832 +/* confdefs.h. */
9.2833 +_ACEOF
9.2834 +cat confdefs.h >>conftest.$ac_ext
9.2835 +cat >>conftest.$ac_ext <<_ACEOF
9.2836 +/* end confdefs.h. */
9.2837 +
9.2838 +/* Override any gcc2 internal prototype to avoid an error. */
9.2839 +#ifdef __cplusplus
9.2840 +extern "C"
9.2841 +#endif
9.2842 +/* We use char because int might match the return type of a gcc2
9.2843 + builtin and then its argument prototype would still apply. */
9.2844 +char strerror ();
9.2845 +int
9.2846 +main ()
9.2847 +{
9.2848 +strerror ();
9.2849 + ;
9.2850 + return 0;
9.2851 +}
9.2852 +_ACEOF
9.2853 +rm -f conftest.$ac_objext conftest$ac_exeext
9.2854 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.2855 + (eval $ac_link) 2>conftest.er1
9.2856 + ac_status=$?
9.2857 + grep -v '^ *+' conftest.er1 >conftest.err
9.2858 + rm -f conftest.er1
9.2859 + cat conftest.err >&5
9.2860 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2861 + (exit $ac_status); } &&
9.2862 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.2863 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2864 + (eval $ac_try) 2>&5
9.2865 + ac_status=$?
9.2866 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2867 + (exit $ac_status); }; } &&
9.2868 + { ac_try='test -s conftest$ac_exeext'
9.2869 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.2870 + (eval $ac_try) 2>&5
9.2871 + ac_status=$?
9.2872 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.2873 + (exit $ac_status); }; }; then
9.2874 + ac_cv_lib_cposix_strerror=yes
9.2875 +else
9.2876 + echo "$as_me: failed program was:" >&5
9.2877 +sed 's/^/| /' conftest.$ac_ext >&5
9.2878 +
9.2879 +ac_cv_lib_cposix_strerror=no
9.2880 +fi
9.2881 +rm -f conftest.err conftest.$ac_objext \
9.2882 + conftest$ac_exeext conftest.$ac_ext
9.2883 +LIBS=$ac_check_lib_save_LIBS
9.2884 +fi
9.2885 +echo "$as_me:$LINENO: result: $ac_cv_lib_cposix_strerror" >&5
9.2886 +echo "${ECHO_T}$ac_cv_lib_cposix_strerror" >&6
9.2887 +if test $ac_cv_lib_cposix_strerror = yes; then
9.2888 + LIBS="$LIBS -lcposix"
9.2889 +fi
9.2890 +
9.2891 +
9.2892 +
9.2893 +ac_ext=c
9.2894 +ac_cpp='$CPP $CPPFLAGS'
9.2895 +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
9.2896 +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
9.2897 +ac_compiler_gnu=$ac_cv_c_compiler_gnu
9.2898 +if test -n "$ac_tool_prefix"; then
9.2899 + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
9.2900 +set dummy ${ac_tool_prefix}gcc; ac_word=$2
9.2901 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.2902 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.2903 +if test "${ac_cv_prog_CC+set}" = set; then
9.2904 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2905 +else
9.2906 + if test -n "$CC"; then
9.2907 + ac_cv_prog_CC="$CC" # Let the user override the test.
9.2908 +else
9.2909 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.2910 +for as_dir in $PATH
9.2911 +do
9.2912 + IFS=$as_save_IFS
9.2913 + test -z "$as_dir" && as_dir=.
9.2914 + for ac_exec_ext in '' $ac_executable_extensions; do
9.2915 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.2916 + ac_cv_prog_CC="${ac_tool_prefix}gcc"
9.2917 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.2918 + break 2
9.2919 + fi
9.2920 +done
9.2921 +done
9.2922 +
9.2923 +fi
9.2924 +fi
9.2925 +CC=$ac_cv_prog_CC
9.2926 +if test -n "$CC"; then
9.2927 + echo "$as_me:$LINENO: result: $CC" >&5
9.2928 +echo "${ECHO_T}$CC" >&6
9.2929 +else
9.2930 + echo "$as_me:$LINENO: result: no" >&5
9.2931 +echo "${ECHO_T}no" >&6
9.2932 +fi
9.2933 +
9.2934 +fi
9.2935 +if test -z "$ac_cv_prog_CC"; then
9.2936 + ac_ct_CC=$CC
9.2937 + # Extract the first word of "gcc", so it can be a program name with args.
9.2938 +set dummy gcc; ac_word=$2
9.2939 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.2940 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.2941 +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
9.2942 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2943 +else
9.2944 + if test -n "$ac_ct_CC"; then
9.2945 + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
9.2946 +else
9.2947 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.2948 +for as_dir in $PATH
9.2949 +do
9.2950 + IFS=$as_save_IFS
9.2951 + test -z "$as_dir" && as_dir=.
9.2952 + for ac_exec_ext in '' $ac_executable_extensions; do
9.2953 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.2954 + ac_cv_prog_ac_ct_CC="gcc"
9.2955 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.2956 + break 2
9.2957 + fi
9.2958 +done
9.2959 +done
9.2960 +
9.2961 +fi
9.2962 +fi
9.2963 +ac_ct_CC=$ac_cv_prog_ac_ct_CC
9.2964 +if test -n "$ac_ct_CC"; then
9.2965 + echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
9.2966 +echo "${ECHO_T}$ac_ct_CC" >&6
9.2967 +else
9.2968 + echo "$as_me:$LINENO: result: no" >&5
9.2969 +echo "${ECHO_T}no" >&6
9.2970 +fi
9.2971 +
9.2972 + CC=$ac_ct_CC
9.2973 +else
9.2974 + CC="$ac_cv_prog_CC"
9.2975 +fi
9.2976 +
9.2977 +if test -z "$CC"; then
9.2978 + if test -n "$ac_tool_prefix"; then
9.2979 + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
9.2980 +set dummy ${ac_tool_prefix}cc; ac_word=$2
9.2981 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.2982 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.2983 +if test "${ac_cv_prog_CC+set}" = set; then
9.2984 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.2985 +else
9.2986 + if test -n "$CC"; then
9.2987 + ac_cv_prog_CC="$CC" # Let the user override the test.
9.2988 +else
9.2989 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.2990 +for as_dir in $PATH
9.2991 +do
9.2992 + IFS=$as_save_IFS
9.2993 + test -z "$as_dir" && as_dir=.
9.2994 + for ac_exec_ext in '' $ac_executable_extensions; do
9.2995 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.2996 + ac_cv_prog_CC="${ac_tool_prefix}cc"
9.2997 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.2998 + break 2
9.2999 + fi
9.3000 +done
9.3001 +done
9.3002 +
9.3003 +fi
9.3004 +fi
9.3005 +CC=$ac_cv_prog_CC
9.3006 +if test -n "$CC"; then
9.3007 + echo "$as_me:$LINENO: result: $CC" >&5
9.3008 +echo "${ECHO_T}$CC" >&6
9.3009 +else
9.3010 + echo "$as_me:$LINENO: result: no" >&5
9.3011 +echo "${ECHO_T}no" >&6
9.3012 +fi
9.3013 +
9.3014 +fi
9.3015 +if test -z "$ac_cv_prog_CC"; then
9.3016 + ac_ct_CC=$CC
9.3017 + # Extract the first word of "cc", so it can be a program name with args.
9.3018 +set dummy cc; ac_word=$2
9.3019 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.3020 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.3021 +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
9.3022 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3023 +else
9.3024 + if test -n "$ac_ct_CC"; then
9.3025 + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
9.3026 +else
9.3027 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.3028 +for as_dir in $PATH
9.3029 +do
9.3030 + IFS=$as_save_IFS
9.3031 + test -z "$as_dir" && as_dir=.
9.3032 + for ac_exec_ext in '' $ac_executable_extensions; do
9.3033 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.3034 + ac_cv_prog_ac_ct_CC="cc"
9.3035 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.3036 + break 2
9.3037 + fi
9.3038 +done
9.3039 +done
9.3040 +
9.3041 +fi
9.3042 +fi
9.3043 +ac_ct_CC=$ac_cv_prog_ac_ct_CC
9.3044 +if test -n "$ac_ct_CC"; then
9.3045 + echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
9.3046 +echo "${ECHO_T}$ac_ct_CC" >&6
9.3047 +else
9.3048 + echo "$as_me:$LINENO: result: no" >&5
9.3049 +echo "${ECHO_T}no" >&6
9.3050 +fi
9.3051 +
9.3052 + CC=$ac_ct_CC
9.3053 +else
9.3054 + CC="$ac_cv_prog_CC"
9.3055 +fi
9.3056 +
9.3057 +fi
9.3058 +if test -z "$CC"; then
9.3059 + # Extract the first word of "cc", so it can be a program name with args.
9.3060 +set dummy cc; ac_word=$2
9.3061 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.3062 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.3063 +if test "${ac_cv_prog_CC+set}" = set; then
9.3064 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3065 +else
9.3066 + if test -n "$CC"; then
9.3067 + ac_cv_prog_CC="$CC" # Let the user override the test.
9.3068 +else
9.3069 + ac_prog_rejected=no
9.3070 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.3071 +for as_dir in $PATH
9.3072 +do
9.3073 + IFS=$as_save_IFS
9.3074 + test -z "$as_dir" && as_dir=.
9.3075 + for ac_exec_ext in '' $ac_executable_extensions; do
9.3076 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.3077 + if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
9.3078 + ac_prog_rejected=yes
9.3079 + continue
9.3080 + fi
9.3081 + ac_cv_prog_CC="cc"
9.3082 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.3083 + break 2
9.3084 + fi
9.3085 +done
9.3086 +done
9.3087 +
9.3088 +if test $ac_prog_rejected = yes; then
9.3089 + # We found a bogon in the path, so make sure we never use it.
9.3090 + set dummy $ac_cv_prog_CC
9.3091 + shift
9.3092 + if test $# != 0; then
9.3093 + # We chose a different compiler from the bogus one.
9.3094 + # However, it has the same basename, so the bogon will be chosen
9.3095 + # first if we set CC to just the basename; use the full file name.
9.3096 + shift
9.3097 + ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
9.3098 + fi
9.3099 +fi
9.3100 +fi
9.3101 +fi
9.3102 +CC=$ac_cv_prog_CC
9.3103 +if test -n "$CC"; then
9.3104 + echo "$as_me:$LINENO: result: $CC" >&5
9.3105 +echo "${ECHO_T}$CC" >&6
9.3106 +else
9.3107 + echo "$as_me:$LINENO: result: no" >&5
9.3108 +echo "${ECHO_T}no" >&6
9.3109 +fi
9.3110 +
9.3111 +fi
9.3112 +if test -z "$CC"; then
9.3113 + if test -n "$ac_tool_prefix"; then
9.3114 + for ac_prog in cl
9.3115 + do
9.3116 + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
9.3117 +set dummy $ac_tool_prefix$ac_prog; ac_word=$2
9.3118 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.3119 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.3120 +if test "${ac_cv_prog_CC+set}" = set; then
9.3121 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3122 +else
9.3123 + if test -n "$CC"; then
9.3124 + ac_cv_prog_CC="$CC" # Let the user override the test.
9.3125 +else
9.3126 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.3127 +for as_dir in $PATH
9.3128 +do
9.3129 + IFS=$as_save_IFS
9.3130 + test -z "$as_dir" && as_dir=.
9.3131 + for ac_exec_ext in '' $ac_executable_extensions; do
9.3132 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.3133 + ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
9.3134 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.3135 + break 2
9.3136 + fi
9.3137 +done
9.3138 +done
9.3139 +
9.3140 +fi
9.3141 +fi
9.3142 +CC=$ac_cv_prog_CC
9.3143 +if test -n "$CC"; then
9.3144 + echo "$as_me:$LINENO: result: $CC" >&5
9.3145 +echo "${ECHO_T}$CC" >&6
9.3146 +else
9.3147 + echo "$as_me:$LINENO: result: no" >&5
9.3148 +echo "${ECHO_T}no" >&6
9.3149 +fi
9.3150 +
9.3151 + test -n "$CC" && break
9.3152 + done
9.3153 +fi
9.3154 +if test -z "$CC"; then
9.3155 + ac_ct_CC=$CC
9.3156 + for ac_prog in cl
9.3157 +do
9.3158 + # Extract the first word of "$ac_prog", so it can be a program name with args.
9.3159 +set dummy $ac_prog; ac_word=$2
9.3160 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.3161 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.3162 +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
9.3163 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3164 +else
9.3165 + if test -n "$ac_ct_CC"; then
9.3166 + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
9.3167 +else
9.3168 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.3169 +for as_dir in $PATH
9.3170 +do
9.3171 + IFS=$as_save_IFS
9.3172 + test -z "$as_dir" && as_dir=.
9.3173 + for ac_exec_ext in '' $ac_executable_extensions; do
9.3174 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.3175 + ac_cv_prog_ac_ct_CC="$ac_prog"
9.3176 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.3177 + break 2
9.3178 + fi
9.3179 +done
9.3180 +done
9.3181 +
9.3182 +fi
9.3183 +fi
9.3184 +ac_ct_CC=$ac_cv_prog_ac_ct_CC
9.3185 +if test -n "$ac_ct_CC"; then
9.3186 + echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
9.3187 +echo "${ECHO_T}$ac_ct_CC" >&6
9.3188 +else
9.3189 + echo "$as_me:$LINENO: result: no" >&5
9.3190 +echo "${ECHO_T}no" >&6
9.3191 +fi
9.3192 +
9.3193 + test -n "$ac_ct_CC" && break
9.3194 +done
9.3195 +
9.3196 + CC=$ac_ct_CC
9.3197 +fi
9.3198 +
9.3199 +fi
9.3200 +
9.3201 +
9.3202 +test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
9.3203 +See \`config.log' for more details." >&5
9.3204 +echo "$as_me: error: no acceptable C compiler found in \$PATH
9.3205 +See \`config.log' for more details." >&2;}
9.3206 + { (exit 1); exit 1; }; }
9.3207 +
9.3208 +# Provide some information about the compiler.
9.3209 +echo "$as_me:$LINENO:" \
9.3210 + "checking for C compiler version" >&5
9.3211 +ac_compiler=`set X $ac_compile; echo $2`
9.3212 +{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
9.3213 + (eval $ac_compiler --version </dev/null >&5) 2>&5
9.3214 + ac_status=$?
9.3215 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3216 + (exit $ac_status); }
9.3217 +{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
9.3218 + (eval $ac_compiler -v </dev/null >&5) 2>&5
9.3219 + ac_status=$?
9.3220 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3221 + (exit $ac_status); }
9.3222 +{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
9.3223 + (eval $ac_compiler -V </dev/null >&5) 2>&5
9.3224 + ac_status=$?
9.3225 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3226 + (exit $ac_status); }
9.3227 +
9.3228 +echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
9.3229 +echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
9.3230 +if test "${ac_cv_c_compiler_gnu+set}" = set; then
9.3231 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3232 +else
9.3233 + cat >conftest.$ac_ext <<_ACEOF
9.3234 +/* confdefs.h. */
9.3235 +_ACEOF
9.3236 +cat confdefs.h >>conftest.$ac_ext
9.3237 +cat >>conftest.$ac_ext <<_ACEOF
9.3238 +/* end confdefs.h. */
9.3239 +
9.3240 +int
9.3241 +main ()
9.3242 +{
9.3243 +#ifndef __GNUC__
9.3244 + choke me
9.3245 +#endif
9.3246 +
9.3247 + ;
9.3248 + return 0;
9.3249 +}
9.3250 +_ACEOF
9.3251 +rm -f conftest.$ac_objext
9.3252 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.3253 + (eval $ac_compile) 2>conftest.er1
9.3254 + ac_status=$?
9.3255 + grep -v '^ *+' conftest.er1 >conftest.err
9.3256 + rm -f conftest.er1
9.3257 + cat conftest.err >&5
9.3258 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3259 + (exit $ac_status); } &&
9.3260 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.3261 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3262 + (eval $ac_try) 2>&5
9.3263 + ac_status=$?
9.3264 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3265 + (exit $ac_status); }; } &&
9.3266 + { ac_try='test -s conftest.$ac_objext'
9.3267 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3268 + (eval $ac_try) 2>&5
9.3269 + ac_status=$?
9.3270 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3271 + (exit $ac_status); }; }; then
9.3272 + ac_compiler_gnu=yes
9.3273 +else
9.3274 + echo "$as_me: failed program was:" >&5
9.3275 +sed 's/^/| /' conftest.$ac_ext >&5
9.3276 +
9.3277 +ac_compiler_gnu=no
9.3278 +fi
9.3279 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.3280 +ac_cv_c_compiler_gnu=$ac_compiler_gnu
9.3281 +
9.3282 +fi
9.3283 +echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
9.3284 +echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
9.3285 +GCC=`test $ac_compiler_gnu = yes && echo yes`
9.3286 +ac_test_CFLAGS=${CFLAGS+set}
9.3287 +ac_save_CFLAGS=$CFLAGS
9.3288 +CFLAGS="-g"
9.3289 +echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
9.3290 +echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
9.3291 +if test "${ac_cv_prog_cc_g+set}" = set; then
9.3292 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3293 +else
9.3294 + cat >conftest.$ac_ext <<_ACEOF
9.3295 +/* confdefs.h. */
9.3296 +_ACEOF
9.3297 +cat confdefs.h >>conftest.$ac_ext
9.3298 +cat >>conftest.$ac_ext <<_ACEOF
9.3299 +/* end confdefs.h. */
9.3300 +
9.3301 +int
9.3302 +main ()
9.3303 +{
9.3304 +
9.3305 + ;
9.3306 + return 0;
9.3307 +}
9.3308 +_ACEOF
9.3309 +rm -f conftest.$ac_objext
9.3310 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.3311 + (eval $ac_compile) 2>conftest.er1
9.3312 + ac_status=$?
9.3313 + grep -v '^ *+' conftest.er1 >conftest.err
9.3314 + rm -f conftest.er1
9.3315 + cat conftest.err >&5
9.3316 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3317 + (exit $ac_status); } &&
9.3318 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.3319 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3320 + (eval $ac_try) 2>&5
9.3321 + ac_status=$?
9.3322 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3323 + (exit $ac_status); }; } &&
9.3324 + { ac_try='test -s conftest.$ac_objext'
9.3325 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3326 + (eval $ac_try) 2>&5
9.3327 + ac_status=$?
9.3328 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3329 + (exit $ac_status); }; }; then
9.3330 + ac_cv_prog_cc_g=yes
9.3331 +else
9.3332 + echo "$as_me: failed program was:" >&5
9.3333 +sed 's/^/| /' conftest.$ac_ext >&5
9.3334 +
9.3335 +ac_cv_prog_cc_g=no
9.3336 +fi
9.3337 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.3338 +fi
9.3339 +echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
9.3340 +echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
9.3341 +if test "$ac_test_CFLAGS" = set; then
9.3342 + CFLAGS=$ac_save_CFLAGS
9.3343 +elif test $ac_cv_prog_cc_g = yes; then
9.3344 + if test "$GCC" = yes; then
9.3345 + CFLAGS="-g -O2"
9.3346 + else
9.3347 + CFLAGS="-g"
9.3348 + fi
9.3349 +else
9.3350 + if test "$GCC" = yes; then
9.3351 + CFLAGS="-O2"
9.3352 + else
9.3353 + CFLAGS=
9.3354 + fi
9.3355 +fi
9.3356 +echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
9.3357 +echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
9.3358 +if test "${ac_cv_prog_cc_stdc+set}" = set; then
9.3359 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3360 +else
9.3361 + ac_cv_prog_cc_stdc=no
9.3362 +ac_save_CC=$CC
9.3363 +cat >conftest.$ac_ext <<_ACEOF
9.3364 +/* confdefs.h. */
9.3365 +_ACEOF
9.3366 +cat confdefs.h >>conftest.$ac_ext
9.3367 +cat >>conftest.$ac_ext <<_ACEOF
9.3368 +/* end confdefs.h. */
9.3369 +#include <stdarg.h>
9.3370 +#include <stdio.h>
9.3371 +#include <sys/types.h>
9.3372 +#include <sys/stat.h>
9.3373 +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
9.3374 +struct buf { int x; };
9.3375 +FILE * (*rcsopen) (struct buf *, struct stat *, int);
9.3376 +static char *e (p, i)
9.3377 + char **p;
9.3378 + int i;
9.3379 +{
9.3380 + return p[i];
9.3381 +}
9.3382 +static char *f (char * (*g) (char **, int), char **p, ...)
9.3383 +{
9.3384 + char *s;
9.3385 + va_list v;
9.3386 + va_start (v,p);
9.3387 + s = g (p, va_arg (v,int));
9.3388 + va_end (v);
9.3389 + return s;
9.3390 +}
9.3391 +
9.3392 +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
9.3393 + function prototypes and stuff, but not '\xHH' hex character constants.
9.3394 + These don't provoke an error unfortunately, instead are silently treated
9.3395 + as 'x'. The following induces an error, until -std1 is added to get
9.3396 + proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
9.3397 + array size at least. It's necessary to write '\x00'==0 to get something
9.3398 + that's true only with -std1. */
9.3399 +int osf4_cc_array ['\x00' == 0 ? 1 : -1];
9.3400 +
9.3401 +int test (int i, double x);
9.3402 +struct s1 {int (*f) (int a);};
9.3403 +struct s2 {int (*f) (double a);};
9.3404 +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
9.3405 +int argc;
9.3406 +char **argv;
9.3407 +int
9.3408 +main ()
9.3409 +{
9.3410 +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
9.3411 + ;
9.3412 + return 0;
9.3413 +}
9.3414 +_ACEOF
9.3415 +# Don't try gcc -ansi; that turns off useful extensions and
9.3416 +# breaks some systems' header files.
9.3417 +# AIX -qlanglvl=ansi
9.3418 +# Ultrix and OSF/1 -std1
9.3419 +# HP-UX 10.20 and later -Ae
9.3420 +# HP-UX older versions -Aa -D_HPUX_SOURCE
9.3421 +# SVR4 -Xc -D__EXTENSIONS__
9.3422 +for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
9.3423 +do
9.3424 + CC="$ac_save_CC $ac_arg"
9.3425 + rm -f conftest.$ac_objext
9.3426 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.3427 + (eval $ac_compile) 2>conftest.er1
9.3428 + ac_status=$?
9.3429 + grep -v '^ *+' conftest.er1 >conftest.err
9.3430 + rm -f conftest.er1
9.3431 + cat conftest.err >&5
9.3432 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3433 + (exit $ac_status); } &&
9.3434 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.3435 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3436 + (eval $ac_try) 2>&5
9.3437 + ac_status=$?
9.3438 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3439 + (exit $ac_status); }; } &&
9.3440 + { ac_try='test -s conftest.$ac_objext'
9.3441 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3442 + (eval $ac_try) 2>&5
9.3443 + ac_status=$?
9.3444 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3445 + (exit $ac_status); }; }; then
9.3446 + ac_cv_prog_cc_stdc=$ac_arg
9.3447 +break
9.3448 +else
9.3449 + echo "$as_me: failed program was:" >&5
9.3450 +sed 's/^/| /' conftest.$ac_ext >&5
9.3451 +
9.3452 +fi
9.3453 +rm -f conftest.err conftest.$ac_objext
9.3454 +done
9.3455 +rm -f conftest.$ac_ext conftest.$ac_objext
9.3456 +CC=$ac_save_CC
9.3457 +
9.3458 +fi
9.3459 +
9.3460 +case "x$ac_cv_prog_cc_stdc" in
9.3461 + x|xno)
9.3462 + echo "$as_me:$LINENO: result: none needed" >&5
9.3463 +echo "${ECHO_T}none needed" >&6 ;;
9.3464 + *)
9.3465 + echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
9.3466 +echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
9.3467 + CC="$CC $ac_cv_prog_cc_stdc" ;;
9.3468 +esac
9.3469 +
9.3470 +# Some people use a C++ compiler to compile C. Since we use `exit',
9.3471 +# in C++ we need to declare it. In case someone uses the same compiler
9.3472 +# for both compiling C and C++ we need to have the C++ compiler decide
9.3473 +# the declaration of exit, since it's the most demanding environment.
9.3474 +cat >conftest.$ac_ext <<_ACEOF
9.3475 +#ifndef __cplusplus
9.3476 + choke me
9.3477 +#endif
9.3478 +_ACEOF
9.3479 +rm -f conftest.$ac_objext
9.3480 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.3481 + (eval $ac_compile) 2>conftest.er1
9.3482 + ac_status=$?
9.3483 + grep -v '^ *+' conftest.er1 >conftest.err
9.3484 + rm -f conftest.er1
9.3485 + cat conftest.err >&5
9.3486 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3487 + (exit $ac_status); } &&
9.3488 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.3489 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3490 + (eval $ac_try) 2>&5
9.3491 + ac_status=$?
9.3492 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3493 + (exit $ac_status); }; } &&
9.3494 + { ac_try='test -s conftest.$ac_objext'
9.3495 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3496 + (eval $ac_try) 2>&5
9.3497 + ac_status=$?
9.3498 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3499 + (exit $ac_status); }; }; then
9.3500 + for ac_declaration in \
9.3501 + '' \
9.3502 + 'extern "C" void std::exit (int) throw (); using std::exit;' \
9.3503 + 'extern "C" void std::exit (int); using std::exit;' \
9.3504 + 'extern "C" void exit (int) throw ();' \
9.3505 + 'extern "C" void exit (int);' \
9.3506 + 'void exit (int);'
9.3507 +do
9.3508 + cat >conftest.$ac_ext <<_ACEOF
9.3509 +/* confdefs.h. */
9.3510 +_ACEOF
9.3511 +cat confdefs.h >>conftest.$ac_ext
9.3512 +cat >>conftest.$ac_ext <<_ACEOF
9.3513 +/* end confdefs.h. */
9.3514 +$ac_declaration
9.3515 +#include <stdlib.h>
9.3516 +int
9.3517 +main ()
9.3518 +{
9.3519 +exit (42);
9.3520 + ;
9.3521 + return 0;
9.3522 +}
9.3523 +_ACEOF
9.3524 +rm -f conftest.$ac_objext
9.3525 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.3526 + (eval $ac_compile) 2>conftest.er1
9.3527 + ac_status=$?
9.3528 + grep -v '^ *+' conftest.er1 >conftest.err
9.3529 + rm -f conftest.er1
9.3530 + cat conftest.err >&5
9.3531 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3532 + (exit $ac_status); } &&
9.3533 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.3534 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3535 + (eval $ac_try) 2>&5
9.3536 + ac_status=$?
9.3537 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3538 + (exit $ac_status); }; } &&
9.3539 + { ac_try='test -s conftest.$ac_objext'
9.3540 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3541 + (eval $ac_try) 2>&5
9.3542 + ac_status=$?
9.3543 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3544 + (exit $ac_status); }; }; then
9.3545 + :
9.3546 +else
9.3547 + echo "$as_me: failed program was:" >&5
9.3548 +sed 's/^/| /' conftest.$ac_ext >&5
9.3549 +
9.3550 +continue
9.3551 +fi
9.3552 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.3553 + cat >conftest.$ac_ext <<_ACEOF
9.3554 +/* confdefs.h. */
9.3555 +_ACEOF
9.3556 +cat confdefs.h >>conftest.$ac_ext
9.3557 +cat >>conftest.$ac_ext <<_ACEOF
9.3558 +/* end confdefs.h. */
9.3559 +$ac_declaration
9.3560 +int
9.3561 +main ()
9.3562 +{
9.3563 +exit (42);
9.3564 + ;
9.3565 + return 0;
9.3566 +}
9.3567 +_ACEOF
9.3568 +rm -f conftest.$ac_objext
9.3569 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.3570 + (eval $ac_compile) 2>conftest.er1
9.3571 + ac_status=$?
9.3572 + grep -v '^ *+' conftest.er1 >conftest.err
9.3573 + rm -f conftest.er1
9.3574 + cat conftest.err >&5
9.3575 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3576 + (exit $ac_status); } &&
9.3577 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.3578 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3579 + (eval $ac_try) 2>&5
9.3580 + ac_status=$?
9.3581 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3582 + (exit $ac_status); }; } &&
9.3583 + { ac_try='test -s conftest.$ac_objext'
9.3584 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3585 + (eval $ac_try) 2>&5
9.3586 + ac_status=$?
9.3587 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3588 + (exit $ac_status); }; }; then
9.3589 + break
9.3590 +else
9.3591 + echo "$as_me: failed program was:" >&5
9.3592 +sed 's/^/| /' conftest.$ac_ext >&5
9.3593 +
9.3594 +fi
9.3595 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.3596 +done
9.3597 +rm -f conftest*
9.3598 +if test -n "$ac_declaration"; then
9.3599 + echo '#ifdef __cplusplus' >>confdefs.h
9.3600 + echo $ac_declaration >>confdefs.h
9.3601 + echo '#endif' >>confdefs.h
9.3602 +fi
9.3603 +
9.3604 +else
9.3605 + echo "$as_me: failed program was:" >&5
9.3606 +sed 's/^/| /' conftest.$ac_ext >&5
9.3607 +
9.3608 +fi
9.3609 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.3610 +ac_ext=c
9.3611 +ac_cpp='$CPP $CPPFLAGS'
9.3612 +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
9.3613 +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
9.3614 +ac_compiler_gnu=$ac_cv_c_compiler_gnu
9.3615 +
9.3616 +depcc="$CC" am_compiler_list=
9.3617 +
9.3618 +echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
9.3619 +echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
9.3620 +if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
9.3621 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3622 +else
9.3623 + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
9.3624 + # We make a subdir and do the tests there. Otherwise we can end up
9.3625 + # making bogus files that we don't know about and never remove. For
9.3626 + # instance it was reported that on HP-UX the gcc test will end up
9.3627 + # making a dummy file named `D' -- because `-MD' means `put the output
9.3628 + # in D'.
9.3629 + mkdir conftest.dir
9.3630 + # Copy depcomp to subdir because otherwise we won't find it if we're
9.3631 + # using a relative directory.
9.3632 + cp "$am_depcomp" conftest.dir
9.3633 + cd conftest.dir
9.3634 + # We will build objects and dependencies in a subdirectory because
9.3635 + # it helps to detect inapplicable dependency modes. For instance
9.3636 + # both Tru64's cc and ICC support -MD to output dependencies as a
9.3637 + # side effect of compilation, but ICC will put the dependencies in
9.3638 + # the current directory while Tru64 will put them in the object
9.3639 + # directory.
9.3640 + mkdir sub
9.3641 +
9.3642 + am_cv_CC_dependencies_compiler_type=none
9.3643 + if test "$am_compiler_list" = ""; then
9.3644 + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
9.3645 + fi
9.3646 + for depmode in $am_compiler_list; do
9.3647 + # Setup a source with many dependencies, because some compilers
9.3648 + # like to wrap large dependency lists on column 80 (with \), and
9.3649 + # we should not choose a depcomp mode which is confused by this.
9.3650 + #
9.3651 + # We need to recreate these files for each test, as the compiler may
9.3652 + # overwrite some of them when testing with obscure command lines.
9.3653 + # This happens at least with the AIX C compiler.
9.3654 + : > sub/conftest.c
9.3655 + for i in 1 2 3 4 5 6; do
9.3656 + echo '#include "conftst'$i'.h"' >> sub/conftest.c
9.3657 + : > sub/conftst$i.h
9.3658 + done
9.3659 + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
9.3660 +
9.3661 + case $depmode in
9.3662 + nosideeffect)
9.3663 + # after this tag, mechanisms are not by side-effect, so they'll
9.3664 + # only be used when explicitly requested
9.3665 + if test "x$enable_dependency_tracking" = xyes; then
9.3666 + continue
9.3667 + else
9.3668 + break
9.3669 + fi
9.3670 + ;;
9.3671 + none) break ;;
9.3672 + esac
9.3673 + # We check with `-c' and `-o' for the sake of the "dashmstdout"
9.3674 + # mode. It turns out that the SunPro C++ compiler does not properly
9.3675 + # handle `-M -o', and we need to detect this.
9.3676 + if depmode=$depmode \
9.3677 + source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
9.3678 + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
9.3679 + $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
9.3680 + >/dev/null 2>conftest.err &&
9.3681 + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
9.3682 + grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
9.3683 + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
9.3684 + # icc doesn't choke on unknown options, it will just issue warnings
9.3685 + # (even with -Werror). So we grep stderr for any message
9.3686 + # that says an option was ignored.
9.3687 + if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
9.3688 + am_cv_CC_dependencies_compiler_type=$depmode
9.3689 + break
9.3690 + fi
9.3691 + fi
9.3692 + done
9.3693 +
9.3694 + cd ..
9.3695 + rm -rf conftest.dir
9.3696 +else
9.3697 + am_cv_CC_dependencies_compiler_type=none
9.3698 +fi
9.3699 +
9.3700 +fi
9.3701 +echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
9.3702 +echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6
9.3703 +CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
9.3704 +
9.3705 +
9.3706 +
9.3707 +if
9.3708 + test "x$enable_dependency_tracking" != xno \
9.3709 + && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
9.3710 + am__fastdepCC_TRUE=
9.3711 + am__fastdepCC_FALSE='#'
9.3712 +else
9.3713 + am__fastdepCC_TRUE='#'
9.3714 + am__fastdepCC_FALSE=
9.3715 +fi
9.3716 +
9.3717 +
9.3718 +
9.3719 +
9.3720 +
9.3721 +echo "$as_me:$LINENO: checking for ${CC-cc} option to accept ANSI C" >&5
9.3722 +echo $ECHO_N "checking for ${CC-cc} option to accept ANSI C... $ECHO_C" >&6
9.3723 +if test "${am_cv_prog_cc_stdc+set}" = set; then
9.3724 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3725 +else
9.3726 + am_cv_prog_cc_stdc=no
9.3727 +ac_save_CC="$CC"
9.3728 +# Don't try gcc -ansi; that turns off useful extensions and
9.3729 +# breaks some systems' header files.
9.3730 +# AIX -qlanglvl=ansi
9.3731 +# Ultrix and OSF/1 -std1
9.3732 +# HP-UX 10.20 and later -Ae
9.3733 +# HP-UX older versions -Aa -D_HPUX_SOURCE
9.3734 +# SVR4 -Xc -D__EXTENSIONS__
9.3735 +for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
9.3736 +do
9.3737 + CC="$ac_save_CC $ac_arg"
9.3738 + cat >conftest.$ac_ext <<_ACEOF
9.3739 +/* confdefs.h. */
9.3740 +_ACEOF
9.3741 +cat confdefs.h >>conftest.$ac_ext
9.3742 +cat >>conftest.$ac_ext <<_ACEOF
9.3743 +/* end confdefs.h. */
9.3744 +#include <stdarg.h>
9.3745 +#include <stdio.h>
9.3746 +#include <sys/types.h>
9.3747 +#include <sys/stat.h>
9.3748 +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
9.3749 +struct buf { int x; };
9.3750 +FILE * (*rcsopen) (struct buf *, struct stat *, int);
9.3751 +static char *e (p, i)
9.3752 + char **p;
9.3753 + int i;
9.3754 +{
9.3755 + return p[i];
9.3756 +}
9.3757 +static char *f (char * (*g) (char **, int), char **p, ...)
9.3758 +{
9.3759 + char *s;
9.3760 + va_list v;
9.3761 + va_start (v,p);
9.3762 + s = g (p, va_arg (v,int));
9.3763 + va_end (v);
9.3764 + return s;
9.3765 +}
9.3766 +int test (int i, double x);
9.3767 +struct s1 {int (*f) (int a);};
9.3768 +struct s2 {int (*f) (double a);};
9.3769 +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
9.3770 +int argc;
9.3771 +char **argv;
9.3772 +
9.3773 +int
9.3774 +main ()
9.3775 +{
9.3776 +
9.3777 +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
9.3778 +
9.3779 + ;
9.3780 + return 0;
9.3781 +}
9.3782 +_ACEOF
9.3783 +rm -f conftest.$ac_objext
9.3784 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.3785 + (eval $ac_compile) 2>conftest.er1
9.3786 + ac_status=$?
9.3787 + grep -v '^ *+' conftest.er1 >conftest.err
9.3788 + rm -f conftest.er1
9.3789 + cat conftest.err >&5
9.3790 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3791 + (exit $ac_status); } &&
9.3792 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.3793 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3794 + (eval $ac_try) 2>&5
9.3795 + ac_status=$?
9.3796 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3797 + (exit $ac_status); }; } &&
9.3798 + { ac_try='test -s conftest.$ac_objext'
9.3799 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.3800 + (eval $ac_try) 2>&5
9.3801 + ac_status=$?
9.3802 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3803 + (exit $ac_status); }; }; then
9.3804 + am_cv_prog_cc_stdc="$ac_arg"; break
9.3805 +else
9.3806 + echo "$as_me: failed program was:" >&5
9.3807 +sed 's/^/| /' conftest.$ac_ext >&5
9.3808 +
9.3809 +fi
9.3810 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.3811 +done
9.3812 +CC="$ac_save_CC"
9.3813 +
9.3814 +fi
9.3815 +
9.3816 +if test -z "$am_cv_prog_cc_stdc"; then
9.3817 + echo "$as_me:$LINENO: result: none needed" >&5
9.3818 +echo "${ECHO_T}none needed" >&6
9.3819 +else
9.3820 + echo "$as_me:$LINENO: result: $am_cv_prog_cc_stdc" >&5
9.3821 +echo "${ECHO_T}$am_cv_prog_cc_stdc" >&6
9.3822 +fi
9.3823 +case "x$am_cv_prog_cc_stdc" in
9.3824 + x|xno) ;;
9.3825 + *) CC="$CC $am_cv_prog_cc_stdc" ;;
9.3826 +esac
9.3827 +
9.3828 +ac_ext=c
9.3829 +ac_cpp='$CPP $CPPFLAGS'
9.3830 +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
9.3831 +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
9.3832 +ac_compiler_gnu=$ac_cv_c_compiler_gnu
9.3833 +echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
9.3834 +echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
9.3835 +# On Suns, sometimes $CPP names a directory.
9.3836 +if test -n "$CPP" && test -d "$CPP"; then
9.3837 + CPP=
9.3838 +fi
9.3839 +if test -z "$CPP"; then
9.3840 + if test "${ac_cv_prog_CPP+set}" = set; then
9.3841 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.3842 +else
9.3843 + # Double quotes because CPP needs to be expanded
9.3844 + for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
9.3845 + do
9.3846 + ac_preproc_ok=false
9.3847 +for ac_c_preproc_warn_flag in '' yes
9.3848 +do
9.3849 + # Use a header file that comes with gcc, so configuring glibc
9.3850 + # with a fresh cross-compiler works.
9.3851 + # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
9.3852 + # <limits.h> exists even on freestanding compilers.
9.3853 + # On the NeXT, cc -E runs the code through the compiler's parser,
9.3854 + # not just through cpp. "Syntax error" is here to catch this case.
9.3855 + cat >conftest.$ac_ext <<_ACEOF
9.3856 +/* confdefs.h. */
9.3857 +_ACEOF
9.3858 +cat confdefs.h >>conftest.$ac_ext
9.3859 +cat >>conftest.$ac_ext <<_ACEOF
9.3860 +/* end confdefs.h. */
9.3861 +#ifdef __STDC__
9.3862 +# include <limits.h>
9.3863 +#else
9.3864 +# include <assert.h>
9.3865 +#endif
9.3866 + Syntax error
9.3867 +_ACEOF
9.3868 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
9.3869 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
9.3870 + ac_status=$?
9.3871 + grep -v '^ *+' conftest.er1 >conftest.err
9.3872 + rm -f conftest.er1
9.3873 + cat conftest.err >&5
9.3874 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3875 + (exit $ac_status); } >/dev/null; then
9.3876 + if test -s conftest.err; then
9.3877 + ac_cpp_err=$ac_c_preproc_warn_flag
9.3878 + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
9.3879 + else
9.3880 + ac_cpp_err=
9.3881 + fi
9.3882 +else
9.3883 + ac_cpp_err=yes
9.3884 +fi
9.3885 +if test -z "$ac_cpp_err"; then
9.3886 + :
9.3887 +else
9.3888 + echo "$as_me: failed program was:" >&5
9.3889 +sed 's/^/| /' conftest.$ac_ext >&5
9.3890 +
9.3891 + # Broken: fails on valid input.
9.3892 +continue
9.3893 +fi
9.3894 +rm -f conftest.err conftest.$ac_ext
9.3895 +
9.3896 + # OK, works on sane cases. Now check whether non-existent headers
9.3897 + # can be detected and how.
9.3898 + cat >conftest.$ac_ext <<_ACEOF
9.3899 +/* confdefs.h. */
9.3900 +_ACEOF
9.3901 +cat confdefs.h >>conftest.$ac_ext
9.3902 +cat >>conftest.$ac_ext <<_ACEOF
9.3903 +/* end confdefs.h. */
9.3904 +#include <ac_nonexistent.h>
9.3905 +_ACEOF
9.3906 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
9.3907 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
9.3908 + ac_status=$?
9.3909 + grep -v '^ *+' conftest.er1 >conftest.err
9.3910 + rm -f conftest.er1
9.3911 + cat conftest.err >&5
9.3912 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3913 + (exit $ac_status); } >/dev/null; then
9.3914 + if test -s conftest.err; then
9.3915 + ac_cpp_err=$ac_c_preproc_warn_flag
9.3916 + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
9.3917 + else
9.3918 + ac_cpp_err=
9.3919 + fi
9.3920 +else
9.3921 + ac_cpp_err=yes
9.3922 +fi
9.3923 +if test -z "$ac_cpp_err"; then
9.3924 + # Broken: success on invalid input.
9.3925 +continue
9.3926 +else
9.3927 + echo "$as_me: failed program was:" >&5
9.3928 +sed 's/^/| /' conftest.$ac_ext >&5
9.3929 +
9.3930 + # Passes both tests.
9.3931 +ac_preproc_ok=:
9.3932 +break
9.3933 +fi
9.3934 +rm -f conftest.err conftest.$ac_ext
9.3935 +
9.3936 +done
9.3937 +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
9.3938 +rm -f conftest.err conftest.$ac_ext
9.3939 +if $ac_preproc_ok; then
9.3940 + break
9.3941 +fi
9.3942 +
9.3943 + done
9.3944 + ac_cv_prog_CPP=$CPP
9.3945 +
9.3946 +fi
9.3947 + CPP=$ac_cv_prog_CPP
9.3948 +else
9.3949 + ac_cv_prog_CPP=$CPP
9.3950 +fi
9.3951 +echo "$as_me:$LINENO: result: $CPP" >&5
9.3952 +echo "${ECHO_T}$CPP" >&6
9.3953 +ac_preproc_ok=false
9.3954 +for ac_c_preproc_warn_flag in '' yes
9.3955 +do
9.3956 + # Use a header file that comes with gcc, so configuring glibc
9.3957 + # with a fresh cross-compiler works.
9.3958 + # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
9.3959 + # <limits.h> exists even on freestanding compilers.
9.3960 + # On the NeXT, cc -E runs the code through the compiler's parser,
9.3961 + # not just through cpp. "Syntax error" is here to catch this case.
9.3962 + cat >conftest.$ac_ext <<_ACEOF
9.3963 +/* confdefs.h. */
9.3964 +_ACEOF
9.3965 +cat confdefs.h >>conftest.$ac_ext
9.3966 +cat >>conftest.$ac_ext <<_ACEOF
9.3967 +/* end confdefs.h. */
9.3968 +#ifdef __STDC__
9.3969 +# include <limits.h>
9.3970 +#else
9.3971 +# include <assert.h>
9.3972 +#endif
9.3973 + Syntax error
9.3974 +_ACEOF
9.3975 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
9.3976 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
9.3977 + ac_status=$?
9.3978 + grep -v '^ *+' conftest.er1 >conftest.err
9.3979 + rm -f conftest.er1
9.3980 + cat conftest.err >&5
9.3981 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.3982 + (exit $ac_status); } >/dev/null; then
9.3983 + if test -s conftest.err; then
9.3984 + ac_cpp_err=$ac_c_preproc_warn_flag
9.3985 + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
9.3986 + else
9.3987 + ac_cpp_err=
9.3988 + fi
9.3989 +else
9.3990 + ac_cpp_err=yes
9.3991 +fi
9.3992 +if test -z "$ac_cpp_err"; then
9.3993 + :
9.3994 +else
9.3995 + echo "$as_me: failed program was:" >&5
9.3996 +sed 's/^/| /' conftest.$ac_ext >&5
9.3997 +
9.3998 + # Broken: fails on valid input.
9.3999 +continue
9.4000 +fi
9.4001 +rm -f conftest.err conftest.$ac_ext
9.4002 +
9.4003 + # OK, works on sane cases. Now check whether non-existent headers
9.4004 + # can be detected and how.
9.4005 + cat >conftest.$ac_ext <<_ACEOF
9.4006 +/* confdefs.h. */
9.4007 +_ACEOF
9.4008 +cat confdefs.h >>conftest.$ac_ext
9.4009 +cat >>conftest.$ac_ext <<_ACEOF
9.4010 +/* end confdefs.h. */
9.4011 +#include <ac_nonexistent.h>
9.4012 +_ACEOF
9.4013 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
9.4014 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
9.4015 + ac_status=$?
9.4016 + grep -v '^ *+' conftest.er1 >conftest.err
9.4017 + rm -f conftest.er1
9.4018 + cat conftest.err >&5
9.4019 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4020 + (exit $ac_status); } >/dev/null; then
9.4021 + if test -s conftest.err; then
9.4022 + ac_cpp_err=$ac_c_preproc_warn_flag
9.4023 + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
9.4024 + else
9.4025 + ac_cpp_err=
9.4026 + fi
9.4027 +else
9.4028 + ac_cpp_err=yes
9.4029 +fi
9.4030 +if test -z "$ac_cpp_err"; then
9.4031 + # Broken: success on invalid input.
9.4032 +continue
9.4033 +else
9.4034 + echo "$as_me: failed program was:" >&5
9.4035 +sed 's/^/| /' conftest.$ac_ext >&5
9.4036 +
9.4037 + # Passes both tests.
9.4038 +ac_preproc_ok=:
9.4039 +break
9.4040 +fi
9.4041 +rm -f conftest.err conftest.$ac_ext
9.4042 +
9.4043 +done
9.4044 +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
9.4045 +rm -f conftest.err conftest.$ac_ext
9.4046 +if $ac_preproc_ok; then
9.4047 + :
9.4048 +else
9.4049 + { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
9.4050 +See \`config.log' for more details." >&5
9.4051 +echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
9.4052 +See \`config.log' for more details." >&2;}
9.4053 + { (exit 1); exit 1; }; }
9.4054 +fi
9.4055 +
9.4056 +ac_ext=c
9.4057 +ac_cpp='$CPP $CPPFLAGS'
9.4058 +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
9.4059 +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
9.4060 +ac_compiler_gnu=$ac_cv_c_compiler_gnu
9.4061 +
9.4062 +
9.4063 +echo "$as_me:$LINENO: checking for egrep" >&5
9.4064 +echo $ECHO_N "checking for egrep... $ECHO_C" >&6
9.4065 +if test "${ac_cv_prog_egrep+set}" = set; then
9.4066 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4067 +else
9.4068 + if echo a | (grep -E '(a|b)') >/dev/null 2>&1
9.4069 + then ac_cv_prog_egrep='grep -E'
9.4070 + else ac_cv_prog_egrep='egrep'
9.4071 + fi
9.4072 +fi
9.4073 +echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5
9.4074 +echo "${ECHO_T}$ac_cv_prog_egrep" >&6
9.4075 + EGREP=$ac_cv_prog_egrep
9.4076 +
9.4077 +
9.4078 +echo "$as_me:$LINENO: checking for ANSI C header files" >&5
9.4079 +echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
9.4080 +if test "${ac_cv_header_stdc+set}" = set; then
9.4081 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4082 +else
9.4083 + cat >conftest.$ac_ext <<_ACEOF
9.4084 +/* confdefs.h. */
9.4085 +_ACEOF
9.4086 +cat confdefs.h >>conftest.$ac_ext
9.4087 +cat >>conftest.$ac_ext <<_ACEOF
9.4088 +/* end confdefs.h. */
9.4089 +#include <stdlib.h>
9.4090 +#include <stdarg.h>
9.4091 +#include <string.h>
9.4092 +#include <float.h>
9.4093 +
9.4094 +int
9.4095 +main ()
9.4096 +{
9.4097 +
9.4098 + ;
9.4099 + return 0;
9.4100 +}
9.4101 +_ACEOF
9.4102 +rm -f conftest.$ac_objext
9.4103 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.4104 + (eval $ac_compile) 2>conftest.er1
9.4105 + ac_status=$?
9.4106 + grep -v '^ *+' conftest.er1 >conftest.err
9.4107 + rm -f conftest.er1
9.4108 + cat conftest.err >&5
9.4109 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4110 + (exit $ac_status); } &&
9.4111 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.4112 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4113 + (eval $ac_try) 2>&5
9.4114 + ac_status=$?
9.4115 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4116 + (exit $ac_status); }; } &&
9.4117 + { ac_try='test -s conftest.$ac_objext'
9.4118 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4119 + (eval $ac_try) 2>&5
9.4120 + ac_status=$?
9.4121 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4122 + (exit $ac_status); }; }; then
9.4123 + ac_cv_header_stdc=yes
9.4124 +else
9.4125 + echo "$as_me: failed program was:" >&5
9.4126 +sed 's/^/| /' conftest.$ac_ext >&5
9.4127 +
9.4128 +ac_cv_header_stdc=no
9.4129 +fi
9.4130 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.4131 +
9.4132 +if test $ac_cv_header_stdc = yes; then
9.4133 + # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
9.4134 + cat >conftest.$ac_ext <<_ACEOF
9.4135 +/* confdefs.h. */
9.4136 +_ACEOF
9.4137 +cat confdefs.h >>conftest.$ac_ext
9.4138 +cat >>conftest.$ac_ext <<_ACEOF
9.4139 +/* end confdefs.h. */
9.4140 +#include <string.h>
9.4141 +
9.4142 +_ACEOF
9.4143 +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
9.4144 + $EGREP "memchr" >/dev/null 2>&1; then
9.4145 + :
9.4146 +else
9.4147 + ac_cv_header_stdc=no
9.4148 +fi
9.4149 +rm -f conftest*
9.4150 +
9.4151 +fi
9.4152 +
9.4153 +if test $ac_cv_header_stdc = yes; then
9.4154 + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
9.4155 + cat >conftest.$ac_ext <<_ACEOF
9.4156 +/* confdefs.h. */
9.4157 +_ACEOF
9.4158 +cat confdefs.h >>conftest.$ac_ext
9.4159 +cat >>conftest.$ac_ext <<_ACEOF
9.4160 +/* end confdefs.h. */
9.4161 +#include <stdlib.h>
9.4162 +
9.4163 +_ACEOF
9.4164 +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
9.4165 + $EGREP "free" >/dev/null 2>&1; then
9.4166 + :
9.4167 +else
9.4168 + ac_cv_header_stdc=no
9.4169 +fi
9.4170 +rm -f conftest*
9.4171 +
9.4172 +fi
9.4173 +
9.4174 +if test $ac_cv_header_stdc = yes; then
9.4175 + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
9.4176 + if test "$cross_compiling" = yes; then
9.4177 + :
9.4178 +else
9.4179 + cat >conftest.$ac_ext <<_ACEOF
9.4180 +/* confdefs.h. */
9.4181 +_ACEOF
9.4182 +cat confdefs.h >>conftest.$ac_ext
9.4183 +cat >>conftest.$ac_ext <<_ACEOF
9.4184 +/* end confdefs.h. */
9.4185 +#include <ctype.h>
9.4186 +#if ((' ' & 0x0FF) == 0x020)
9.4187 +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
9.4188 +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
9.4189 +#else
9.4190 +# define ISLOWER(c) \
9.4191 + (('a' <= (c) && (c) <= 'i') \
9.4192 + || ('j' <= (c) && (c) <= 'r') \
9.4193 + || ('s' <= (c) && (c) <= 'z'))
9.4194 +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
9.4195 +#endif
9.4196 +
9.4197 +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
9.4198 +int
9.4199 +main ()
9.4200 +{
9.4201 + int i;
9.4202 + for (i = 0; i < 256; i++)
9.4203 + if (XOR (islower (i), ISLOWER (i))
9.4204 + || toupper (i) != TOUPPER (i))
9.4205 + exit(2);
9.4206 + exit (0);
9.4207 +}
9.4208 +_ACEOF
9.4209 +rm -f conftest$ac_exeext
9.4210 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.4211 + (eval $ac_link) 2>&5
9.4212 + ac_status=$?
9.4213 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4214 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
9.4215 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4216 + (eval $ac_try) 2>&5
9.4217 + ac_status=$?
9.4218 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4219 + (exit $ac_status); }; }; then
9.4220 + :
9.4221 +else
9.4222 + echo "$as_me: program exited with status $ac_status" >&5
9.4223 +echo "$as_me: failed program was:" >&5
9.4224 +sed 's/^/| /' conftest.$ac_ext >&5
9.4225 +
9.4226 +( exit $ac_status )
9.4227 +ac_cv_header_stdc=no
9.4228 +fi
9.4229 +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
9.4230 +fi
9.4231 +fi
9.4232 +fi
9.4233 +echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
9.4234 +echo "${ECHO_T}$ac_cv_header_stdc" >&6
9.4235 +if test $ac_cv_header_stdc = yes; then
9.4236 +
9.4237 +cat >>confdefs.h <<\_ACEOF
9.4238 +#define STDC_HEADERS 1
9.4239 +_ACEOF
9.4240 +
9.4241 +fi
9.4242 +
9.4243 +
9.4244 +pkg_modules="libgnomeui-2.0"
9.4245 +
9.4246 + succeeded=no
9.4247 +
9.4248 + if test -z "$PKG_CONFIG"; then
9.4249 + # Extract the first word of "pkg-config", so it can be a program name with args.
9.4250 +set dummy pkg-config; ac_word=$2
9.4251 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.4252 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.4253 +if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
9.4254 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4255 +else
9.4256 + case $PKG_CONFIG in
9.4257 + [\\/]* | ?:[\\/]*)
9.4258 + ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
9.4259 + ;;
9.4260 + *)
9.4261 + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.4262 +for as_dir in $PATH
9.4263 +do
9.4264 + IFS=$as_save_IFS
9.4265 + test -z "$as_dir" && as_dir=.
9.4266 + for ac_exec_ext in '' $ac_executable_extensions; do
9.4267 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.4268 + ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
9.4269 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.4270 + break 2
9.4271 + fi
9.4272 +done
9.4273 +done
9.4274 +
9.4275 + test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no"
9.4276 + ;;
9.4277 +esac
9.4278 +fi
9.4279 +PKG_CONFIG=$ac_cv_path_PKG_CONFIG
9.4280 +
9.4281 +if test -n "$PKG_CONFIG"; then
9.4282 + echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5
9.4283 +echo "${ECHO_T}$PKG_CONFIG" >&6
9.4284 +else
9.4285 + echo "$as_me:$LINENO: result: no" >&5
9.4286 +echo "${ECHO_T}no" >&6
9.4287 +fi
9.4288 +
9.4289 + fi
9.4290 +
9.4291 + if test "$PKG_CONFIG" = "no" ; then
9.4292 + echo "*** The pkg-config script could not be found. Make sure it is"
9.4293 + echo "*** in your path, or set the PKG_CONFIG environment variable"
9.4294 + echo "*** to the full path to pkg-config."
9.4295 + echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
9.4296 + else
9.4297 + PKG_CONFIG_MIN_VERSION=0.9.0
9.4298 + if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
9.4299 + echo "$as_me:$LINENO: checking for $pkg_modules" >&5
9.4300 +echo $ECHO_N "checking for $pkg_modules... $ECHO_C" >&6
9.4301 +
9.4302 + if $PKG_CONFIG --exists "$pkg_modules" ; then
9.4303 + echo "$as_me:$LINENO: result: yes" >&5
9.4304 +echo "${ECHO_T}yes" >&6
9.4305 + succeeded=yes
9.4306 +
9.4307 + echo "$as_me:$LINENO: checking PACKAGE_CFLAGS" >&5
9.4308 +echo $ECHO_N "checking PACKAGE_CFLAGS... $ECHO_C" >&6
9.4309 + PACKAGE_CFLAGS=`$PKG_CONFIG --cflags "$pkg_modules"`
9.4310 + echo "$as_me:$LINENO: result: $PACKAGE_CFLAGS" >&5
9.4311 +echo "${ECHO_T}$PACKAGE_CFLAGS" >&6
9.4312 +
9.4313 + echo "$as_me:$LINENO: checking PACKAGE_LIBS" >&5
9.4314 +echo $ECHO_N "checking PACKAGE_LIBS... $ECHO_C" >&6
9.4315 + PACKAGE_LIBS=`$PKG_CONFIG --libs "$pkg_modules"`
9.4316 + echo "$as_me:$LINENO: result: $PACKAGE_LIBS" >&5
9.4317 +echo "${ECHO_T}$PACKAGE_LIBS" >&6
9.4318 + else
9.4319 + PACKAGE_CFLAGS=""
9.4320 + PACKAGE_LIBS=""
9.4321 + ## If we have a custom action on failure, don't print errors, but
9.4322 + ## do set a variable so people can do so.
9.4323 + PACKAGE_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$pkg_modules"`
9.4324 + echo $PACKAGE_PKG_ERRORS
9.4325 + fi
9.4326 +
9.4327 +
9.4328 +
9.4329 + else
9.4330 + echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
9.4331 + echo "*** See http://www.freedesktop.org/software/pkgconfig"
9.4332 + fi
9.4333 + fi
9.4334 +
9.4335 + if test $succeeded = yes; then
9.4336 + :
9.4337 + else
9.4338 + { { echo "$as_me:$LINENO: error: Library requirements ($pkg_modules) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." >&5
9.4339 +echo "$as_me: error: Library requirements ($pkg_modules) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." >&2;}
9.4340 + { (exit 1); exit 1; }; }
9.4341 + fi
9.4342 +
9.4343 +
9.4344 +
9.4345 +
9.4346 +GETTEXT_PACKAGE=dream
9.4347 +
9.4348 +cat >>confdefs.h <<_ACEOF
9.4349 +#define GETTEXT_PACKAGE "$GETTEXT_PACKAGE"
9.4350 +_ACEOF
9.4351 +
9.4352 +
9.4353 +ALL_LINGUAS=""
9.4354 +# On IRIX 5.3, sys/types and inttypes.h are conflicting.
9.4355 +
9.4356 +
9.4357 +
9.4358 +
9.4359 +
9.4360 +
9.4361 +
9.4362 +
9.4363 +
9.4364 +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
9.4365 + inttypes.h stdint.h unistd.h
9.4366 +do
9.4367 +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
9.4368 +echo "$as_me:$LINENO: checking for $ac_header" >&5
9.4369 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
9.4370 +if eval "test \"\${$as_ac_Header+set}\" = set"; then
9.4371 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4372 +else
9.4373 + cat >conftest.$ac_ext <<_ACEOF
9.4374 +/* confdefs.h. */
9.4375 +_ACEOF
9.4376 +cat confdefs.h >>conftest.$ac_ext
9.4377 +cat >>conftest.$ac_ext <<_ACEOF
9.4378 +/* end confdefs.h. */
9.4379 +$ac_includes_default
9.4380 +
9.4381 +#include <$ac_header>
9.4382 +_ACEOF
9.4383 +rm -f conftest.$ac_objext
9.4384 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.4385 + (eval $ac_compile) 2>conftest.er1
9.4386 + ac_status=$?
9.4387 + grep -v '^ *+' conftest.er1 >conftest.err
9.4388 + rm -f conftest.er1
9.4389 + cat conftest.err >&5
9.4390 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4391 + (exit $ac_status); } &&
9.4392 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.4393 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4394 + (eval $ac_try) 2>&5
9.4395 + ac_status=$?
9.4396 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4397 + (exit $ac_status); }; } &&
9.4398 + { ac_try='test -s conftest.$ac_objext'
9.4399 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4400 + (eval $ac_try) 2>&5
9.4401 + ac_status=$?
9.4402 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4403 + (exit $ac_status); }; }; then
9.4404 + eval "$as_ac_Header=yes"
9.4405 +else
9.4406 + echo "$as_me: failed program was:" >&5
9.4407 +sed 's/^/| /' conftest.$ac_ext >&5
9.4408 +
9.4409 +eval "$as_ac_Header=no"
9.4410 +fi
9.4411 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.4412 +fi
9.4413 +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
9.4414 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
9.4415 +if test `eval echo '${'$as_ac_Header'}'` = yes; then
9.4416 + cat >>confdefs.h <<_ACEOF
9.4417 +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
9.4418 +_ACEOF
9.4419 +
9.4420 +fi
9.4421 +
9.4422 +done
9.4423 +
9.4424 +
9.4425 +
9.4426 +
9.4427 +for ac_header in locale.h
9.4428 +do
9.4429 +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
9.4430 +if eval "test \"\${$as_ac_Header+set}\" = set"; then
9.4431 + echo "$as_me:$LINENO: checking for $ac_header" >&5
9.4432 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
9.4433 +if eval "test \"\${$as_ac_Header+set}\" = set"; then
9.4434 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4435 +fi
9.4436 +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
9.4437 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
9.4438 +else
9.4439 + # Is the header compilable?
9.4440 +echo "$as_me:$LINENO: checking $ac_header usability" >&5
9.4441 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
9.4442 +cat >conftest.$ac_ext <<_ACEOF
9.4443 +/* confdefs.h. */
9.4444 +_ACEOF
9.4445 +cat confdefs.h >>conftest.$ac_ext
9.4446 +cat >>conftest.$ac_ext <<_ACEOF
9.4447 +/* end confdefs.h. */
9.4448 +$ac_includes_default
9.4449 +#include <$ac_header>
9.4450 +_ACEOF
9.4451 +rm -f conftest.$ac_objext
9.4452 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.4453 + (eval $ac_compile) 2>conftest.er1
9.4454 + ac_status=$?
9.4455 + grep -v '^ *+' conftest.er1 >conftest.err
9.4456 + rm -f conftest.er1
9.4457 + cat conftest.err >&5
9.4458 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4459 + (exit $ac_status); } &&
9.4460 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.4461 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4462 + (eval $ac_try) 2>&5
9.4463 + ac_status=$?
9.4464 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4465 + (exit $ac_status); }; } &&
9.4466 + { ac_try='test -s conftest.$ac_objext'
9.4467 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4468 + (eval $ac_try) 2>&5
9.4469 + ac_status=$?
9.4470 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4471 + (exit $ac_status); }; }; then
9.4472 + ac_header_compiler=yes
9.4473 +else
9.4474 + echo "$as_me: failed program was:" >&5
9.4475 +sed 's/^/| /' conftest.$ac_ext >&5
9.4476 +
9.4477 +ac_header_compiler=no
9.4478 +fi
9.4479 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.4480 +echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
9.4481 +echo "${ECHO_T}$ac_header_compiler" >&6
9.4482 +
9.4483 +# Is the header present?
9.4484 +echo "$as_me:$LINENO: checking $ac_header presence" >&5
9.4485 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
9.4486 +cat >conftest.$ac_ext <<_ACEOF
9.4487 +/* confdefs.h. */
9.4488 +_ACEOF
9.4489 +cat confdefs.h >>conftest.$ac_ext
9.4490 +cat >>conftest.$ac_ext <<_ACEOF
9.4491 +/* end confdefs.h. */
9.4492 +#include <$ac_header>
9.4493 +_ACEOF
9.4494 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
9.4495 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
9.4496 + ac_status=$?
9.4497 + grep -v '^ *+' conftest.er1 >conftest.err
9.4498 + rm -f conftest.er1
9.4499 + cat conftest.err >&5
9.4500 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4501 + (exit $ac_status); } >/dev/null; then
9.4502 + if test -s conftest.err; then
9.4503 + ac_cpp_err=$ac_c_preproc_warn_flag
9.4504 + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
9.4505 + else
9.4506 + ac_cpp_err=
9.4507 + fi
9.4508 +else
9.4509 + ac_cpp_err=yes
9.4510 +fi
9.4511 +if test -z "$ac_cpp_err"; then
9.4512 + ac_header_preproc=yes
9.4513 +else
9.4514 + echo "$as_me: failed program was:" >&5
9.4515 +sed 's/^/| /' conftest.$ac_ext >&5
9.4516 +
9.4517 + ac_header_preproc=no
9.4518 +fi
9.4519 +rm -f conftest.err conftest.$ac_ext
9.4520 +echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
9.4521 +echo "${ECHO_T}$ac_header_preproc" >&6
9.4522 +
9.4523 +# So? What about this header?
9.4524 +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
9.4525 + yes:no: )
9.4526 + { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
9.4527 +echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
9.4528 + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
9.4529 +echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
9.4530 + ac_header_preproc=yes
9.4531 + ;;
9.4532 + no:yes:* )
9.4533 + { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
9.4534 +echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
9.4535 + { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
9.4536 +echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
9.4537 + { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
9.4538 +echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
9.4539 + { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
9.4540 +echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
9.4541 + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
9.4542 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
9.4543 + { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
9.4544 +echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
9.4545 + (
9.4546 + cat <<\_ASBOX
9.4547 +## ------------------------------------------ ##
9.4548 +## Report this to the AC_PACKAGE_NAME lists. ##
9.4549 +## ------------------------------------------ ##
9.4550 +_ASBOX
9.4551 + ) |
9.4552 + sed "s/^/$as_me: WARNING: /" >&2
9.4553 + ;;
9.4554 +esac
9.4555 +echo "$as_me:$LINENO: checking for $ac_header" >&5
9.4556 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
9.4557 +if eval "test \"\${$as_ac_Header+set}\" = set"; then
9.4558 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4559 +else
9.4560 + eval "$as_ac_Header=\$ac_header_preproc"
9.4561 +fi
9.4562 +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
9.4563 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
9.4564 +
9.4565 +fi
9.4566 +if test `eval echo '${'$as_ac_Header'}'` = yes; then
9.4567 + cat >>confdefs.h <<_ACEOF
9.4568 +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
9.4569 +_ACEOF
9.4570 +
9.4571 +fi
9.4572 +
9.4573 +done
9.4574 +
9.4575 + if test $ac_cv_header_locale_h = yes; then
9.4576 + echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5
9.4577 +echo $ECHO_N "checking for LC_MESSAGES... $ECHO_C" >&6
9.4578 +if test "${am_cv_val_LC_MESSAGES+set}" = set; then
9.4579 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4580 +else
9.4581 + cat >conftest.$ac_ext <<_ACEOF
9.4582 +/* confdefs.h. */
9.4583 +_ACEOF
9.4584 +cat confdefs.h >>conftest.$ac_ext
9.4585 +cat >>conftest.$ac_ext <<_ACEOF
9.4586 +/* end confdefs.h. */
9.4587 +#include <locale.h>
9.4588 +int
9.4589 +main ()
9.4590 +{
9.4591 +return LC_MESSAGES
9.4592 + ;
9.4593 + return 0;
9.4594 +}
9.4595 +_ACEOF
9.4596 +rm -f conftest.$ac_objext conftest$ac_exeext
9.4597 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.4598 + (eval $ac_link) 2>conftest.er1
9.4599 + ac_status=$?
9.4600 + grep -v '^ *+' conftest.er1 >conftest.err
9.4601 + rm -f conftest.er1
9.4602 + cat conftest.err >&5
9.4603 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4604 + (exit $ac_status); } &&
9.4605 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.4606 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4607 + (eval $ac_try) 2>&5
9.4608 + ac_status=$?
9.4609 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4610 + (exit $ac_status); }; } &&
9.4611 + { ac_try='test -s conftest$ac_exeext'
9.4612 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4613 + (eval $ac_try) 2>&5
9.4614 + ac_status=$?
9.4615 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4616 + (exit $ac_status); }; }; then
9.4617 + am_cv_val_LC_MESSAGES=yes
9.4618 +else
9.4619 + echo "$as_me: failed program was:" >&5
9.4620 +sed 's/^/| /' conftest.$ac_ext >&5
9.4621 +
9.4622 +am_cv_val_LC_MESSAGES=no
9.4623 +fi
9.4624 +rm -f conftest.err conftest.$ac_objext \
9.4625 + conftest$ac_exeext conftest.$ac_ext
9.4626 +fi
9.4627 +echo "$as_me:$LINENO: result: $am_cv_val_LC_MESSAGES" >&5
9.4628 +echo "${ECHO_T}$am_cv_val_LC_MESSAGES" >&6
9.4629 + if test $am_cv_val_LC_MESSAGES = yes; then
9.4630 +
9.4631 +cat >>confdefs.h <<\_ACEOF
9.4632 +#define HAVE_LC_MESSAGES 1
9.4633 +_ACEOF
9.4634 +
9.4635 + fi
9.4636 + fi
9.4637 + USE_NLS=yes
9.4638 +
9.4639 +
9.4640 + gt_cv_have_gettext=no
9.4641 +
9.4642 + CATOBJEXT=NONE
9.4643 + XGETTEXT=:
9.4644 + INTLLIBS=
9.4645 +
9.4646 + if test "${ac_cv_header_libintl_h+set}" = set; then
9.4647 + echo "$as_me:$LINENO: checking for libintl.h" >&5
9.4648 +echo $ECHO_N "checking for libintl.h... $ECHO_C" >&6
9.4649 +if test "${ac_cv_header_libintl_h+set}" = set; then
9.4650 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4651 +fi
9.4652 +echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5
9.4653 +echo "${ECHO_T}$ac_cv_header_libintl_h" >&6
9.4654 +else
9.4655 + # Is the header compilable?
9.4656 +echo "$as_me:$LINENO: checking libintl.h usability" >&5
9.4657 +echo $ECHO_N "checking libintl.h usability... $ECHO_C" >&6
9.4658 +cat >conftest.$ac_ext <<_ACEOF
9.4659 +/* confdefs.h. */
9.4660 +_ACEOF
9.4661 +cat confdefs.h >>conftest.$ac_ext
9.4662 +cat >>conftest.$ac_ext <<_ACEOF
9.4663 +/* end confdefs.h. */
9.4664 +$ac_includes_default
9.4665 +#include <libintl.h>
9.4666 +_ACEOF
9.4667 +rm -f conftest.$ac_objext
9.4668 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
9.4669 + (eval $ac_compile) 2>conftest.er1
9.4670 + ac_status=$?
9.4671 + grep -v '^ *+' conftest.er1 >conftest.err
9.4672 + rm -f conftest.er1
9.4673 + cat conftest.err >&5
9.4674 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4675 + (exit $ac_status); } &&
9.4676 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.4677 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4678 + (eval $ac_try) 2>&5
9.4679 + ac_status=$?
9.4680 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4681 + (exit $ac_status); }; } &&
9.4682 + { ac_try='test -s conftest.$ac_objext'
9.4683 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4684 + (eval $ac_try) 2>&5
9.4685 + ac_status=$?
9.4686 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4687 + (exit $ac_status); }; }; then
9.4688 + ac_header_compiler=yes
9.4689 +else
9.4690 + echo "$as_me: failed program was:" >&5
9.4691 +sed 's/^/| /' conftest.$ac_ext >&5
9.4692 +
9.4693 +ac_header_compiler=no
9.4694 +fi
9.4695 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
9.4696 +echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
9.4697 +echo "${ECHO_T}$ac_header_compiler" >&6
9.4698 +
9.4699 +# Is the header present?
9.4700 +echo "$as_me:$LINENO: checking libintl.h presence" >&5
9.4701 +echo $ECHO_N "checking libintl.h presence... $ECHO_C" >&6
9.4702 +cat >conftest.$ac_ext <<_ACEOF
9.4703 +/* confdefs.h. */
9.4704 +_ACEOF
9.4705 +cat confdefs.h >>conftest.$ac_ext
9.4706 +cat >>conftest.$ac_ext <<_ACEOF
9.4707 +/* end confdefs.h. */
9.4708 +#include <libintl.h>
9.4709 +_ACEOF
9.4710 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
9.4711 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
9.4712 + ac_status=$?
9.4713 + grep -v '^ *+' conftest.er1 >conftest.err
9.4714 + rm -f conftest.er1
9.4715 + cat conftest.err >&5
9.4716 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4717 + (exit $ac_status); } >/dev/null; then
9.4718 + if test -s conftest.err; then
9.4719 + ac_cpp_err=$ac_c_preproc_warn_flag
9.4720 + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
9.4721 + else
9.4722 + ac_cpp_err=
9.4723 + fi
9.4724 +else
9.4725 + ac_cpp_err=yes
9.4726 +fi
9.4727 +if test -z "$ac_cpp_err"; then
9.4728 + ac_header_preproc=yes
9.4729 +else
9.4730 + echo "$as_me: failed program was:" >&5
9.4731 +sed 's/^/| /' conftest.$ac_ext >&5
9.4732 +
9.4733 + ac_header_preproc=no
9.4734 +fi
9.4735 +rm -f conftest.err conftest.$ac_ext
9.4736 +echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
9.4737 +echo "${ECHO_T}$ac_header_preproc" >&6
9.4738 +
9.4739 +# So? What about this header?
9.4740 +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
9.4741 + yes:no: )
9.4742 + { echo "$as_me:$LINENO: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&5
9.4743 +echo "$as_me: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
9.4744 + { echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the compiler's result" >&5
9.4745 +echo "$as_me: WARNING: libintl.h: proceeding with the compiler's result" >&2;}
9.4746 + ac_header_preproc=yes
9.4747 + ;;
9.4748 + no:yes:* )
9.4749 + { echo "$as_me:$LINENO: WARNING: libintl.h: present but cannot be compiled" >&5
9.4750 +echo "$as_me: WARNING: libintl.h: present but cannot be compiled" >&2;}
9.4751 + { echo "$as_me:$LINENO: WARNING: libintl.h: check for missing prerequisite headers?" >&5
9.4752 +echo "$as_me: WARNING: libintl.h: check for missing prerequisite headers?" >&2;}
9.4753 + { echo "$as_me:$LINENO: WARNING: libintl.h: see the Autoconf documentation" >&5
9.4754 +echo "$as_me: WARNING: libintl.h: see the Autoconf documentation" >&2;}
9.4755 + { echo "$as_me:$LINENO: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&5
9.4756 +echo "$as_me: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&2;}
9.4757 + { echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the preprocessor's result" >&5
9.4758 +echo "$as_me: WARNING: libintl.h: proceeding with the preprocessor's result" >&2;}
9.4759 + { echo "$as_me:$LINENO: WARNING: libintl.h: in the future, the compiler will take precedence" >&5
9.4760 +echo "$as_me: WARNING: libintl.h: in the future, the compiler will take precedence" >&2;}
9.4761 + (
9.4762 + cat <<\_ASBOX
9.4763 +## ------------------------------------------ ##
9.4764 +## Report this to the AC_PACKAGE_NAME lists. ##
9.4765 +## ------------------------------------------ ##
9.4766 +_ASBOX
9.4767 + ) |
9.4768 + sed "s/^/$as_me: WARNING: /" >&2
9.4769 + ;;
9.4770 +esac
9.4771 +echo "$as_me:$LINENO: checking for libintl.h" >&5
9.4772 +echo $ECHO_N "checking for libintl.h... $ECHO_C" >&6
9.4773 +if test "${ac_cv_header_libintl_h+set}" = set; then
9.4774 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4775 +else
9.4776 + ac_cv_header_libintl_h=$ac_header_preproc
9.4777 +fi
9.4778 +echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5
9.4779 +echo "${ECHO_T}$ac_cv_header_libintl_h" >&6
9.4780 +
9.4781 +fi
9.4782 +if test $ac_cv_header_libintl_h = yes; then
9.4783 + gt_cv_func_dgettext_libintl="no"
9.4784 + libintl_extra_libs=""
9.4785 +
9.4786 + #
9.4787 + # First check in libc
9.4788 + #
9.4789 + echo "$as_me:$LINENO: checking for dgettext in libc" >&5
9.4790 +echo $ECHO_N "checking for dgettext in libc... $ECHO_C" >&6
9.4791 +if test "${gt_cv_func_dgettext_libc+set}" = set; then
9.4792 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4793 +else
9.4794 + cat >conftest.$ac_ext <<_ACEOF
9.4795 +/* confdefs.h. */
9.4796 +_ACEOF
9.4797 +cat confdefs.h >>conftest.$ac_ext
9.4798 +cat >>conftest.$ac_ext <<_ACEOF
9.4799 +/* end confdefs.h. */
9.4800 +
9.4801 +#include <libintl.h>
9.4802 +
9.4803 +int
9.4804 +main ()
9.4805 +{
9.4806 +return (int) dgettext ("","")
9.4807 + ;
9.4808 + return 0;
9.4809 +}
9.4810 +_ACEOF
9.4811 +rm -f conftest.$ac_objext conftest$ac_exeext
9.4812 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.4813 + (eval $ac_link) 2>conftest.er1
9.4814 + ac_status=$?
9.4815 + grep -v '^ *+' conftest.er1 >conftest.err
9.4816 + rm -f conftest.er1
9.4817 + cat conftest.err >&5
9.4818 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4819 + (exit $ac_status); } &&
9.4820 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.4821 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4822 + (eval $ac_try) 2>&5
9.4823 + ac_status=$?
9.4824 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4825 + (exit $ac_status); }; } &&
9.4826 + { ac_try='test -s conftest$ac_exeext'
9.4827 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4828 + (eval $ac_try) 2>&5
9.4829 + ac_status=$?
9.4830 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4831 + (exit $ac_status); }; }; then
9.4832 + gt_cv_func_dgettext_libc=yes
9.4833 +else
9.4834 + echo "$as_me: failed program was:" >&5
9.4835 +sed 's/^/| /' conftest.$ac_ext >&5
9.4836 +
9.4837 +gt_cv_func_dgettext_libc=no
9.4838 +fi
9.4839 +rm -f conftest.err conftest.$ac_objext \
9.4840 + conftest$ac_exeext conftest.$ac_ext
9.4841 +
9.4842 +fi
9.4843 +echo "$as_me:$LINENO: result: $gt_cv_func_dgettext_libc" >&5
9.4844 +echo "${ECHO_T}$gt_cv_func_dgettext_libc" >&6
9.4845 +
9.4846 + if test "$gt_cv_func_dgettext_libc" = "yes" ; then
9.4847 +
9.4848 +for ac_func in bind_textdomain_codeset
9.4849 +do
9.4850 +as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
9.4851 +echo "$as_me:$LINENO: checking for $ac_func" >&5
9.4852 +echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
9.4853 +if eval "test \"\${$as_ac_var+set}\" = set"; then
9.4854 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4855 +else
9.4856 + cat >conftest.$ac_ext <<_ACEOF
9.4857 +/* confdefs.h. */
9.4858 +_ACEOF
9.4859 +cat confdefs.h >>conftest.$ac_ext
9.4860 +cat >>conftest.$ac_ext <<_ACEOF
9.4861 +/* end confdefs.h. */
9.4862 +/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
9.4863 + For example, HP-UX 11i <limits.h> declares gettimeofday. */
9.4864 +#define $ac_func innocuous_$ac_func
9.4865 +
9.4866 +/* System header to define __stub macros and hopefully few prototypes,
9.4867 + which can conflict with char $ac_func (); below.
9.4868 + Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
9.4869 + <limits.h> exists even on freestanding compilers. */
9.4870 +
9.4871 +#ifdef __STDC__
9.4872 +# include <limits.h>
9.4873 +#else
9.4874 +# include <assert.h>
9.4875 +#endif
9.4876 +
9.4877 +#undef $ac_func
9.4878 +
9.4879 +/* Override any gcc2 internal prototype to avoid an error. */
9.4880 +#ifdef __cplusplus
9.4881 +extern "C"
9.4882 +{
9.4883 +#endif
9.4884 +/* We use char because int might match the return type of a gcc2
9.4885 + builtin and then its argument prototype would still apply. */
9.4886 +char $ac_func ();
9.4887 +/* The GNU C library defines this for functions which it implements
9.4888 + to always fail with ENOSYS. Some functions are actually named
9.4889 + something starting with __ and the normal name is an alias. */
9.4890 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
9.4891 +choke me
9.4892 +#else
9.4893 +char (*f) () = $ac_func;
9.4894 +#endif
9.4895 +#ifdef __cplusplus
9.4896 +}
9.4897 +#endif
9.4898 +
9.4899 +int
9.4900 +main ()
9.4901 +{
9.4902 +return f != $ac_func;
9.4903 + ;
9.4904 + return 0;
9.4905 +}
9.4906 +_ACEOF
9.4907 +rm -f conftest.$ac_objext conftest$ac_exeext
9.4908 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.4909 + (eval $ac_link) 2>conftest.er1
9.4910 + ac_status=$?
9.4911 + grep -v '^ *+' conftest.er1 >conftest.err
9.4912 + rm -f conftest.er1
9.4913 + cat conftest.err >&5
9.4914 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4915 + (exit $ac_status); } &&
9.4916 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.4917 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4918 + (eval $ac_try) 2>&5
9.4919 + ac_status=$?
9.4920 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4921 + (exit $ac_status); }; } &&
9.4922 + { ac_try='test -s conftest$ac_exeext'
9.4923 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4924 + (eval $ac_try) 2>&5
9.4925 + ac_status=$?
9.4926 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4927 + (exit $ac_status); }; }; then
9.4928 + eval "$as_ac_var=yes"
9.4929 +else
9.4930 + echo "$as_me: failed program was:" >&5
9.4931 +sed 's/^/| /' conftest.$ac_ext >&5
9.4932 +
9.4933 +eval "$as_ac_var=no"
9.4934 +fi
9.4935 +rm -f conftest.err conftest.$ac_objext \
9.4936 + conftest$ac_exeext conftest.$ac_ext
9.4937 +fi
9.4938 +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
9.4939 +echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
9.4940 +if test `eval echo '${'$as_ac_var'}'` = yes; then
9.4941 + cat >>confdefs.h <<_ACEOF
9.4942 +#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
9.4943 +_ACEOF
9.4944 +
9.4945 +fi
9.4946 +done
9.4947 +
9.4948 + fi
9.4949 +
9.4950 + #
9.4951 + # If we don't have everything we want, check in libintl
9.4952 + #
9.4953 + if test "$gt_cv_func_dgettext_libc" != "yes" \
9.4954 + || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
9.4955 +
9.4956 + echo "$as_me:$LINENO: checking for bindtextdomain in -lintl" >&5
9.4957 +echo $ECHO_N "checking for bindtextdomain in -lintl... $ECHO_C" >&6
9.4958 +if test "${ac_cv_lib_intl_bindtextdomain+set}" = set; then
9.4959 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.4960 +else
9.4961 + ac_check_lib_save_LIBS=$LIBS
9.4962 +LIBS="-lintl $LIBS"
9.4963 +cat >conftest.$ac_ext <<_ACEOF
9.4964 +/* confdefs.h. */
9.4965 +_ACEOF
9.4966 +cat confdefs.h >>conftest.$ac_ext
9.4967 +cat >>conftest.$ac_ext <<_ACEOF
9.4968 +/* end confdefs.h. */
9.4969 +
9.4970 +/* Override any gcc2 internal prototype to avoid an error. */
9.4971 +#ifdef __cplusplus
9.4972 +extern "C"
9.4973 +#endif
9.4974 +/* We use char because int might match the return type of a gcc2
9.4975 + builtin and then its argument prototype would still apply. */
9.4976 +char bindtextdomain ();
9.4977 +int
9.4978 +main ()
9.4979 +{
9.4980 +bindtextdomain ();
9.4981 + ;
9.4982 + return 0;
9.4983 +}
9.4984 +_ACEOF
9.4985 +rm -f conftest.$ac_objext conftest$ac_exeext
9.4986 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.4987 + (eval $ac_link) 2>conftest.er1
9.4988 + ac_status=$?
9.4989 + grep -v '^ *+' conftest.er1 >conftest.err
9.4990 + rm -f conftest.er1
9.4991 + cat conftest.err >&5
9.4992 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4993 + (exit $ac_status); } &&
9.4994 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.4995 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.4996 + (eval $ac_try) 2>&5
9.4997 + ac_status=$?
9.4998 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.4999 + (exit $ac_status); }; } &&
9.5000 + { ac_try='test -s conftest$ac_exeext'
9.5001 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5002 + (eval $ac_try) 2>&5
9.5003 + ac_status=$?
9.5004 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5005 + (exit $ac_status); }; }; then
9.5006 + ac_cv_lib_intl_bindtextdomain=yes
9.5007 +else
9.5008 + echo "$as_me: failed program was:" >&5
9.5009 +sed 's/^/| /' conftest.$ac_ext >&5
9.5010 +
9.5011 +ac_cv_lib_intl_bindtextdomain=no
9.5012 +fi
9.5013 +rm -f conftest.err conftest.$ac_objext \
9.5014 + conftest$ac_exeext conftest.$ac_ext
9.5015 +LIBS=$ac_check_lib_save_LIBS
9.5016 +fi
9.5017 +echo "$as_me:$LINENO: result: $ac_cv_lib_intl_bindtextdomain" >&5
9.5018 +echo "${ECHO_T}$ac_cv_lib_intl_bindtextdomain" >&6
9.5019 +if test $ac_cv_lib_intl_bindtextdomain = yes; then
9.5020 + echo "$as_me:$LINENO: checking for dgettext in -lintl" >&5
9.5021 +echo $ECHO_N "checking for dgettext in -lintl... $ECHO_C" >&6
9.5022 +if test "${ac_cv_lib_intl_dgettext+set}" = set; then
9.5023 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.5024 +else
9.5025 + ac_check_lib_save_LIBS=$LIBS
9.5026 +LIBS="-lintl $LIBS"
9.5027 +cat >conftest.$ac_ext <<_ACEOF
9.5028 +/* confdefs.h. */
9.5029 +_ACEOF
9.5030 +cat confdefs.h >>conftest.$ac_ext
9.5031 +cat >>conftest.$ac_ext <<_ACEOF
9.5032 +/* end confdefs.h. */
9.5033 +
9.5034 +/* Override any gcc2 internal prototype to avoid an error. */
9.5035 +#ifdef __cplusplus
9.5036 +extern "C"
9.5037 +#endif
9.5038 +/* We use char because int might match the return type of a gcc2
9.5039 + builtin and then its argument prototype would still apply. */
9.5040 +char dgettext ();
9.5041 +int
9.5042 +main ()
9.5043 +{
9.5044 +dgettext ();
9.5045 + ;
9.5046 + return 0;
9.5047 +}
9.5048 +_ACEOF
9.5049 +rm -f conftest.$ac_objext conftest$ac_exeext
9.5050 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.5051 + (eval $ac_link) 2>conftest.er1
9.5052 + ac_status=$?
9.5053 + grep -v '^ *+' conftest.er1 >conftest.err
9.5054 + rm -f conftest.er1
9.5055 + cat conftest.err >&5
9.5056 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5057 + (exit $ac_status); } &&
9.5058 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.5059 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5060 + (eval $ac_try) 2>&5
9.5061 + ac_status=$?
9.5062 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5063 + (exit $ac_status); }; } &&
9.5064 + { ac_try='test -s conftest$ac_exeext'
9.5065 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5066 + (eval $ac_try) 2>&5
9.5067 + ac_status=$?
9.5068 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5069 + (exit $ac_status); }; }; then
9.5070 + ac_cv_lib_intl_dgettext=yes
9.5071 +else
9.5072 + echo "$as_me: failed program was:" >&5
9.5073 +sed 's/^/| /' conftest.$ac_ext >&5
9.5074 +
9.5075 +ac_cv_lib_intl_dgettext=no
9.5076 +fi
9.5077 +rm -f conftest.err conftest.$ac_objext \
9.5078 + conftest$ac_exeext conftest.$ac_ext
9.5079 +LIBS=$ac_check_lib_save_LIBS
9.5080 +fi
9.5081 +echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dgettext" >&5
9.5082 +echo "${ECHO_T}$ac_cv_lib_intl_dgettext" >&6
9.5083 +if test $ac_cv_lib_intl_dgettext = yes; then
9.5084 + gt_cv_func_dgettext_libintl=yes
9.5085 +fi
9.5086 +
9.5087 +fi
9.5088 +
9.5089 +
9.5090 + if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
9.5091 + echo "$as_me:$LINENO: checking if -liconv is needed to use gettext" >&5
9.5092 +echo $ECHO_N "checking if -liconv is needed to use gettext... $ECHO_C" >&6
9.5093 + echo "$as_me:$LINENO: result: " >&5
9.5094 +echo "${ECHO_T}" >&6
9.5095 + echo "$as_me:$LINENO: checking for dcgettext in -lintl" >&5
9.5096 +echo $ECHO_N "checking for dcgettext in -lintl... $ECHO_C" >&6
9.5097 +if test "${ac_cv_lib_intl_dcgettext+set}" = set; then
9.5098 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.5099 +else
9.5100 + ac_check_lib_save_LIBS=$LIBS
9.5101 +LIBS="-lintl -liconv $LIBS"
9.5102 +cat >conftest.$ac_ext <<_ACEOF
9.5103 +/* confdefs.h. */
9.5104 +_ACEOF
9.5105 +cat confdefs.h >>conftest.$ac_ext
9.5106 +cat >>conftest.$ac_ext <<_ACEOF
9.5107 +/* end confdefs.h. */
9.5108 +
9.5109 +/* Override any gcc2 internal prototype to avoid an error. */
9.5110 +#ifdef __cplusplus
9.5111 +extern "C"
9.5112 +#endif
9.5113 +/* We use char because int might match the return type of a gcc2
9.5114 + builtin and then its argument prototype would still apply. */
9.5115 +char dcgettext ();
9.5116 +int
9.5117 +main ()
9.5118 +{
9.5119 +dcgettext ();
9.5120 + ;
9.5121 + return 0;
9.5122 +}
9.5123 +_ACEOF
9.5124 +rm -f conftest.$ac_objext conftest$ac_exeext
9.5125 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.5126 + (eval $ac_link) 2>conftest.er1
9.5127 + ac_status=$?
9.5128 + grep -v '^ *+' conftest.er1 >conftest.err
9.5129 + rm -f conftest.er1
9.5130 + cat conftest.err >&5
9.5131 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5132 + (exit $ac_status); } &&
9.5133 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.5134 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5135 + (eval $ac_try) 2>&5
9.5136 + ac_status=$?
9.5137 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5138 + (exit $ac_status); }; } &&
9.5139 + { ac_try='test -s conftest$ac_exeext'
9.5140 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5141 + (eval $ac_try) 2>&5
9.5142 + ac_status=$?
9.5143 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5144 + (exit $ac_status); }; }; then
9.5145 + ac_cv_lib_intl_dcgettext=yes
9.5146 +else
9.5147 + echo "$as_me: failed program was:" >&5
9.5148 +sed 's/^/| /' conftest.$ac_ext >&5
9.5149 +
9.5150 +ac_cv_lib_intl_dcgettext=no
9.5151 +fi
9.5152 +rm -f conftest.err conftest.$ac_objext \
9.5153 + conftest$ac_exeext conftest.$ac_ext
9.5154 +LIBS=$ac_check_lib_save_LIBS
9.5155 +fi
9.5156 +echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dcgettext" >&5
9.5157 +echo "${ECHO_T}$ac_cv_lib_intl_dcgettext" >&6
9.5158 +if test $ac_cv_lib_intl_dcgettext = yes; then
9.5159 + gt_cv_func_dgettext_libintl=yes
9.5160 + libintl_extra_libs=-liconv
9.5161 +else
9.5162 + :
9.5163 +fi
9.5164 +
9.5165 + fi
9.5166 +
9.5167 + #
9.5168 + # If we found libintl, then check in it for bind_textdomain_codeset();
9.5169 + # we'll prefer libc if neither have bind_textdomain_codeset(),
9.5170 + # and both have dgettext
9.5171 + #
9.5172 + if test "$gt_cv_func_dgettext_libintl" = "yes" ; then
9.5173 + glib_save_LIBS="$LIBS"
9.5174 + LIBS="$LIBS -lintl $libintl_extra_libs"
9.5175 + unset ac_cv_func_bind_textdomain_codeset
9.5176 +
9.5177 +for ac_func in bind_textdomain_codeset
9.5178 +do
9.5179 +as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
9.5180 +echo "$as_me:$LINENO: checking for $ac_func" >&5
9.5181 +echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
9.5182 +if eval "test \"\${$as_ac_var+set}\" = set"; then
9.5183 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.5184 +else
9.5185 + cat >conftest.$ac_ext <<_ACEOF
9.5186 +/* confdefs.h. */
9.5187 +_ACEOF
9.5188 +cat confdefs.h >>conftest.$ac_ext
9.5189 +cat >>conftest.$ac_ext <<_ACEOF
9.5190 +/* end confdefs.h. */
9.5191 +/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
9.5192 + For example, HP-UX 11i <limits.h> declares gettimeofday. */
9.5193 +#define $ac_func innocuous_$ac_func
9.5194 +
9.5195 +/* System header to define __stub macros and hopefully few prototypes,
9.5196 + which can conflict with char $ac_func (); below.
9.5197 + Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
9.5198 + <limits.h> exists even on freestanding compilers. */
9.5199 +
9.5200 +#ifdef __STDC__
9.5201 +# include <limits.h>
9.5202 +#else
9.5203 +# include <assert.h>
9.5204 +#endif
9.5205 +
9.5206 +#undef $ac_func
9.5207 +
9.5208 +/* Override any gcc2 internal prototype to avoid an error. */
9.5209 +#ifdef __cplusplus
9.5210 +extern "C"
9.5211 +{
9.5212 +#endif
9.5213 +/* We use char because int might match the return type of a gcc2
9.5214 + builtin and then its argument prototype would still apply. */
9.5215 +char $ac_func ();
9.5216 +/* The GNU C library defines this for functions which it implements
9.5217 + to always fail with ENOSYS. Some functions are actually named
9.5218 + something starting with __ and the normal name is an alias. */
9.5219 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
9.5220 +choke me
9.5221 +#else
9.5222 +char (*f) () = $ac_func;
9.5223 +#endif
9.5224 +#ifdef __cplusplus
9.5225 +}
9.5226 +#endif
9.5227 +
9.5228 +int
9.5229 +main ()
9.5230 +{
9.5231 +return f != $ac_func;
9.5232 + ;
9.5233 + return 0;
9.5234 +}
9.5235 +_ACEOF
9.5236 +rm -f conftest.$ac_objext conftest$ac_exeext
9.5237 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.5238 + (eval $ac_link) 2>conftest.er1
9.5239 + ac_status=$?
9.5240 + grep -v '^ *+' conftest.er1 >conftest.err
9.5241 + rm -f conftest.er1
9.5242 + cat conftest.err >&5
9.5243 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5244 + (exit $ac_status); } &&
9.5245 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.5246 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5247 + (eval $ac_try) 2>&5
9.5248 + ac_status=$?
9.5249 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5250 + (exit $ac_status); }; } &&
9.5251 + { ac_try='test -s conftest$ac_exeext'
9.5252 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5253 + (eval $ac_try) 2>&5
9.5254 + ac_status=$?
9.5255 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5256 + (exit $ac_status); }; }; then
9.5257 + eval "$as_ac_var=yes"
9.5258 +else
9.5259 + echo "$as_me: failed program was:" >&5
9.5260 +sed 's/^/| /' conftest.$ac_ext >&5
9.5261 +
9.5262 +eval "$as_ac_var=no"
9.5263 +fi
9.5264 +rm -f conftest.err conftest.$ac_objext \
9.5265 + conftest$ac_exeext conftest.$ac_ext
9.5266 +fi
9.5267 +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
9.5268 +echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
9.5269 +if test `eval echo '${'$as_ac_var'}'` = yes; then
9.5270 + cat >>confdefs.h <<_ACEOF
9.5271 +#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
9.5272 +_ACEOF
9.5273 +
9.5274 +fi
9.5275 +done
9.5276 +
9.5277 + LIBS="$glib_save_LIBS"
9.5278 +
9.5279 + if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then
9.5280 + gt_cv_func_dgettext_libc=no
9.5281 + else
9.5282 + if test "$gt_cv_func_dgettext_libc" = "yes"; then
9.5283 + gt_cv_func_dgettext_libintl=no
9.5284 + fi
9.5285 + fi
9.5286 + fi
9.5287 + fi
9.5288 +
9.5289 + if test "$gt_cv_func_dgettext_libc" = "yes" \
9.5290 + || test "$gt_cv_func_dgettext_libintl" = "yes"; then
9.5291 + gt_cv_have_gettext=yes
9.5292 + fi
9.5293 +
9.5294 + if test "$gt_cv_func_dgettext_libintl" = "yes"; then
9.5295 + INTLLIBS="-lintl $libintl_extra_libs"
9.5296 + fi
9.5297 +
9.5298 + if test "$gt_cv_have_gettext" = "yes"; then
9.5299 +
9.5300 +cat >>confdefs.h <<\_ACEOF
9.5301 +#define HAVE_GETTEXT 1
9.5302 +_ACEOF
9.5303 +
9.5304 + # Extract the first word of "msgfmt", so it can be a program name with args.
9.5305 +set dummy msgfmt; ac_word=$2
9.5306 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.5307 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.5308 +if test "${ac_cv_path_MSGFMT+set}" = set; then
9.5309 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.5310 +else
9.5311 + case "$MSGFMT" in
9.5312 + /*)
9.5313 + ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
9.5314 + ;;
9.5315 + *)
9.5316 + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
9.5317 + for ac_dir in $PATH; do
9.5318 + test -z "$ac_dir" && ac_dir=.
9.5319 + if test -f $ac_dir/$ac_word; then
9.5320 + if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then
9.5321 + ac_cv_path_MSGFMT="$ac_dir/$ac_word"
9.5322 + break
9.5323 + fi
9.5324 + fi
9.5325 + done
9.5326 + IFS="$ac_save_ifs"
9.5327 + test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no"
9.5328 + ;;
9.5329 +esac
9.5330 +fi
9.5331 +MSGFMT="$ac_cv_path_MSGFMT"
9.5332 +if test "$MSGFMT" != "no"; then
9.5333 + echo "$as_me:$LINENO: result: $MSGFMT" >&5
9.5334 +echo "${ECHO_T}$MSGFMT" >&6
9.5335 +else
9.5336 + echo "$as_me:$LINENO: result: no" >&5
9.5337 +echo "${ECHO_T}no" >&6
9.5338 +fi
9.5339 + if test "$MSGFMT" != "no"; then
9.5340 + glib_save_LIBS="$LIBS"
9.5341 + LIBS="$LIBS $INTLLIBS"
9.5342 +
9.5343 +for ac_func in dcgettext
9.5344 +do
9.5345 +as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
9.5346 +echo "$as_me:$LINENO: checking for $ac_func" >&5
9.5347 +echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
9.5348 +if eval "test \"\${$as_ac_var+set}\" = set"; then
9.5349 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.5350 +else
9.5351 + cat >conftest.$ac_ext <<_ACEOF
9.5352 +/* confdefs.h. */
9.5353 +_ACEOF
9.5354 +cat confdefs.h >>conftest.$ac_ext
9.5355 +cat >>conftest.$ac_ext <<_ACEOF
9.5356 +/* end confdefs.h. */
9.5357 +/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
9.5358 + For example, HP-UX 11i <limits.h> declares gettimeofday. */
9.5359 +#define $ac_func innocuous_$ac_func
9.5360 +
9.5361 +/* System header to define __stub macros and hopefully few prototypes,
9.5362 + which can conflict with char $ac_func (); below.
9.5363 + Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
9.5364 + <limits.h> exists even on freestanding compilers. */
9.5365 +
9.5366 +#ifdef __STDC__
9.5367 +# include <limits.h>
9.5368 +#else
9.5369 +# include <assert.h>
9.5370 +#endif
9.5371 +
9.5372 +#undef $ac_func
9.5373 +
9.5374 +/* Override any gcc2 internal prototype to avoid an error. */
9.5375 +#ifdef __cplusplus
9.5376 +extern "C"
9.5377 +{
9.5378 +#endif
9.5379 +/* We use char because int might match the return type of a gcc2
9.5380 + builtin and then its argument prototype would still apply. */
9.5381 +char $ac_func ();
9.5382 +/* The GNU C library defines this for functions which it implements
9.5383 + to always fail with ENOSYS. Some functions are actually named
9.5384 + something starting with __ and the normal name is an alias. */
9.5385 +#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
9.5386 +choke me
9.5387 +#else
9.5388 +char (*f) () = $ac_func;
9.5389 +#endif
9.5390 +#ifdef __cplusplus
9.5391 +}
9.5392 +#endif
9.5393 +
9.5394 +int
9.5395 +main ()
9.5396 +{
9.5397 +return f != $ac_func;
9.5398 + ;
9.5399 + return 0;
9.5400 +}
9.5401 +_ACEOF
9.5402 +rm -f conftest.$ac_objext conftest$ac_exeext
9.5403 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.5404 + (eval $ac_link) 2>conftest.er1
9.5405 + ac_status=$?
9.5406 + grep -v '^ *+' conftest.er1 >conftest.err
9.5407 + rm -f conftest.er1
9.5408 + cat conftest.err >&5
9.5409 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5410 + (exit $ac_status); } &&
9.5411 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.5412 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5413 + (eval $ac_try) 2>&5
9.5414 + ac_status=$?
9.5415 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5416 + (exit $ac_status); }; } &&
9.5417 + { ac_try='test -s conftest$ac_exeext'
9.5418 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5419 + (eval $ac_try) 2>&5
9.5420 + ac_status=$?
9.5421 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5422 + (exit $ac_status); }; }; then
9.5423 + eval "$as_ac_var=yes"
9.5424 +else
9.5425 + echo "$as_me: failed program was:" >&5
9.5426 +sed 's/^/| /' conftest.$ac_ext >&5
9.5427 +
9.5428 +eval "$as_ac_var=no"
9.5429 +fi
9.5430 +rm -f conftest.err conftest.$ac_objext \
9.5431 + conftest$ac_exeext conftest.$ac_ext
9.5432 +fi
9.5433 +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
9.5434 +echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
9.5435 +if test `eval echo '${'$as_ac_var'}'` = yes; then
9.5436 + cat >>confdefs.h <<_ACEOF
9.5437 +#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
9.5438 +_ACEOF
9.5439 +
9.5440 +fi
9.5441 +done
9.5442 +
9.5443 + # Extract the first word of "gmsgfmt", so it can be a program name with args.
9.5444 +set dummy gmsgfmt; ac_word=$2
9.5445 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.5446 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.5447 +if test "${ac_cv_path_GMSGFMT+set}" = set; then
9.5448 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.5449 +else
9.5450 + case $GMSGFMT in
9.5451 + [\\/]* | ?:[\\/]*)
9.5452 + ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
9.5453 + ;;
9.5454 + *)
9.5455 + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.5456 +for as_dir in $PATH
9.5457 +do
9.5458 + IFS=$as_save_IFS
9.5459 + test -z "$as_dir" && as_dir=.
9.5460 + for ac_exec_ext in '' $ac_executable_extensions; do
9.5461 + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
9.5462 + ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
9.5463 + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
9.5464 + break 2
9.5465 + fi
9.5466 +done
9.5467 +done
9.5468 +
9.5469 + test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
9.5470 + ;;
9.5471 +esac
9.5472 +fi
9.5473 +GMSGFMT=$ac_cv_path_GMSGFMT
9.5474 +
9.5475 +if test -n "$GMSGFMT"; then
9.5476 + echo "$as_me:$LINENO: result: $GMSGFMT" >&5
9.5477 +echo "${ECHO_T}$GMSGFMT" >&6
9.5478 +else
9.5479 + echo "$as_me:$LINENO: result: no" >&5
9.5480 +echo "${ECHO_T}no" >&6
9.5481 +fi
9.5482 +
9.5483 + # Extract the first word of "xgettext", so it can be a program name with args.
9.5484 +set dummy xgettext; ac_word=$2
9.5485 +echo "$as_me:$LINENO: checking for $ac_word" >&5
9.5486 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
9.5487 +if test "${ac_cv_path_XGETTEXT+set}" = set; then
9.5488 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.5489 +else
9.5490 + case "$XGETTEXT" in
9.5491 + /*)
9.5492 + ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
9.5493 + ;;
9.5494 + *)
9.5495 + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
9.5496 + for ac_dir in $PATH; do
9.5497 + test -z "$ac_dir" && ac_dir=.
9.5498 + if test -f $ac_dir/$ac_word; then
9.5499 + if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then
9.5500 + ac_cv_path_XGETTEXT="$ac_dir/$ac_word"
9.5501 + break
9.5502 + fi
9.5503 + fi
9.5504 + done
9.5505 + IFS="$ac_save_ifs"
9.5506 + test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":"
9.5507 + ;;
9.5508 +esac
9.5509 +fi
9.5510 +XGETTEXT="$ac_cv_path_XGETTEXT"
9.5511 +if test "$XGETTEXT" != ":"; then
9.5512 + echo "$as_me:$LINENO: result: $XGETTEXT" >&5
9.5513 +echo "${ECHO_T}$XGETTEXT" >&6
9.5514 +else
9.5515 + echo "$as_me:$LINENO: result: no" >&5
9.5516 +echo "${ECHO_T}no" >&6
9.5517 +fi
9.5518 +
9.5519 + cat >conftest.$ac_ext <<_ACEOF
9.5520 +/* confdefs.h. */
9.5521 +_ACEOF
9.5522 +cat confdefs.h >>conftest.$ac_ext
9.5523 +cat >>conftest.$ac_ext <<_ACEOF
9.5524 +/* end confdefs.h. */
9.5525 +
9.5526 +int
9.5527 +main ()
9.5528 +{
9.5529 +extern int _nl_msg_cat_cntr;
9.5530 + return _nl_msg_cat_cntr
9.5531 + ;
9.5532 + return 0;
9.5533 +}
9.5534 +_ACEOF
9.5535 +rm -f conftest.$ac_objext conftest$ac_exeext
9.5536 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.5537 + (eval $ac_link) 2>conftest.er1
9.5538 + ac_status=$?
9.5539 + grep -v '^ *+' conftest.er1 >conftest.err
9.5540 + rm -f conftest.er1
9.5541 + cat conftest.err >&5
9.5542 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5543 + (exit $ac_status); } &&
9.5544 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.5545 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5546 + (eval $ac_try) 2>&5
9.5547 + ac_status=$?
9.5548 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5549 + (exit $ac_status); }; } &&
9.5550 + { ac_try='test -s conftest$ac_exeext'
9.5551 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5552 + (eval $ac_try) 2>&5
9.5553 + ac_status=$?
9.5554 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5555 + (exit $ac_status); }; }; then
9.5556 + CATOBJEXT=.gmo
9.5557 + DATADIRNAME=share
9.5558 +else
9.5559 + echo "$as_me: failed program was:" >&5
9.5560 +sed 's/^/| /' conftest.$ac_ext >&5
9.5561 +
9.5562 +case $host in
9.5563 + *-*-solaris*)
9.5564 + echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5
9.5565 +echo $ECHO_N "checking for bind_textdomain_codeset... $ECHO_C" >&6
9.5566 +if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then
9.5567 + echo $ECHO_N "(cached) $ECHO_C" >&6
9.5568 +else
9.5569 + cat >conftest.$ac_ext <<_ACEOF
9.5570 +/* confdefs.h. */
9.5571 +_ACEOF
9.5572 +cat confdefs.h >>conftest.$ac_ext
9.5573 +cat >>conftest.$ac_ext <<_ACEOF
9.5574 +/* end confdefs.h. */
9.5575 +/* Define bind_textdomain_codeset to an innocuous variant, in case <limits.h> declares bind_textdomain_codeset.
9.5576 + For example, HP-UX 11i <limits.h> declares gettimeofday. */
9.5577 +#define bind_textdomain_codeset innocuous_bind_textdomain_codeset
9.5578 +
9.5579 +/* System header to define __stub macros and hopefully few prototypes,
9.5580 + which can conflict with char bind_textdomain_codeset (); below.
9.5581 + Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
9.5582 + <limits.h> exists even on freestanding compilers. */
9.5583 +
9.5584 +#ifdef __STDC__
9.5585 +# include <limits.h>
9.5586 +#else
9.5587 +# include <assert.h>
9.5588 +#endif
9.5589 +
9.5590 +#undef bind_textdomain_codeset
9.5591 +
9.5592 +/* Override any gcc2 internal prototype to avoid an error. */
9.5593 +#ifdef __cplusplus
9.5594 +extern "C"
9.5595 +{
9.5596 +#endif
9.5597 +/* We use char because int might match the return type of a gcc2
9.5598 + builtin and then its argument prototype would still apply. */
9.5599 +char bind_textdomain_codeset ();
9.5600 +/* The GNU C library defines this for functions which it implements
9.5601 + to always fail with ENOSYS. Some functions are actually named
9.5602 + something starting with __ and the normal name is an alias. */
9.5603 +#if defined (__stub_bind_textdomain_codeset) || defined (__stub___bind_textdomain_codeset)
9.5604 +choke me
9.5605 +#else
9.5606 +char (*f) () = bind_textdomain_codeset;
9.5607 +#endif
9.5608 +#ifdef __cplusplus
9.5609 +}
9.5610 +#endif
9.5611 +
9.5612 +int
9.5613 +main ()
9.5614 +{
9.5615 +return f != bind_textdomain_codeset;
9.5616 + ;
9.5617 + return 0;
9.5618 +}
9.5619 +_ACEOF
9.5620 +rm -f conftest.$ac_objext conftest$ac_exeext
9.5621 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
9.5622 + (eval $ac_link) 2>conftest.er1
9.5623 + ac_status=$?
9.5624 + grep -v '^ *+' conftest.er1 >conftest.err
9.5625 + rm -f conftest.er1
9.5626 + cat conftest.err >&5
9.5627 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5628 + (exit $ac_status); } &&
9.5629 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
9.5630 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5631 + (eval $ac_try) 2>&5
9.5632 + ac_status=$?
9.5633 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5634 + (exit $ac_status); }; } &&
9.5635 + { ac_try='test -s conftest$ac_exeext'
9.5636 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
9.5637 + (eval $ac_try) 2>&5
9.5638 + ac_status=$?
9.5639 + echo "$as_me:$LINENO: \$? = $ac_status" >&5
9.5640 + (exit $ac_status); }; }; then
9.5641 + ac_cv_func_bind_textdomain_codeset=yes
9.5642 +else
9.5643 + echo "$as_me: failed program was:" >&5
9.5644 +sed 's/^/| /' conftest.$ac_ext >&5
9.5645 +
9.5646 +ac_cv_func_bind_textdomain_codeset=no
9.5647 +fi
9.5648 +rm -f conftest.err conftest.$ac_objext \
9.5649 + conftest$ac_exeext conftest.$ac_ext
9.5650 +fi
9.5651 +echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5
9.5652 +echo "${ECHO_T}$ac_cv_func_bind_textdomain_codeset" >&6
9.5653 +if test $ac_cv_func_bind_textdomain_codeset = yes; then
9.5654 + CATOBJEXT=.gmo
9.5655 + DATADIRNAME=share
9.5656 +else
9.5657 + CATOBJEXT=.mo
9.5658 + DATADIRNAME=lib
9.5659 +fi
9.5660 +
9.5661 + ;;
9.5662 + *)
9.5663 + CATOBJEXT=.mo
9.5664 + DATADIRNAME=lib
9.5665 + ;;
9.5666 + esac
9.5667 +fi
9.5668 +rm -f conftest.err conftest.$ac_objext \
9.5669 + conftest$ac_exeext conftest.$ac_ext
9.5670 + LIBS="$glib_save_LIBS"
9.5671 + INSTOBJEXT=.mo
9.5672 + else
9.5673 + gt_cv_have_gettext=no
9.5674 + fi
9.5675 + fi
9.5676 +
9.5677 +fi
9.5678 +
9.5679 +
9.5680 +
9.5681 + if test "$gt_cv_have_gettext" = "yes" ; then
9.5682 +
9.5683 +cat >>confdefs.h <<\_ACEOF
9.5684 +#define ENABLE_NLS 1
9.5685 +_ACEOF
9.5686 +
9.5687 + fi
9.5688 +
9.5689 + if test "$XGETTEXT" != ":"; then
9.5690 + if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
9.5691 + : ;
9.5692 + else
9.5693 + echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5
9.5694 +echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6
9.5695 + XGETTEXT=":"
9.5696 + fi
9.5697 + fi
9.5698 +
9.5699 + # We need to process the po/ directory.
9.5700 + POSUB=po
9.5701 +
9.5702 + ac_config_commands="$ac_config_commands default-1"
9.5703 +
9.5704 +
9.5705 + for lang in $ALL_LINGUAS; do
9.5706 + GMOFILES="$GMOFILES $lang.gmo"
9.5707 + POFILES="$POFILES $lang.po"
9.5708 + done
9.5709 +
9.5710 +
9.5711 +
9.5712 +
9.5713 +
9.5714 +
9.5715 +
9.5716 +
9.5717 +
9.5718 +
9.5719 +
9.5720 +
9.5721 +
9.5722 + if test "$gt_cv_have_gettext" = "yes"; then
9.5723 + if test "x$ALL_LINGUAS" = "x"; then
9.5724 + LINGUAS=
9.5725 + else
9.5726 + echo "$as_me:$LINENO: checking for catalogs to be installed" >&5
9.5727 +echo $ECHO_N "checking for catalogs to be installed... $ECHO_C" >&6
9.5728 + NEW_LINGUAS=
9.5729 + for presentlang in $ALL_LINGUAS; do
9.5730 + useit=no
9.5731 + if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then
9.5732 + desiredlanguages="$LINGUAS"
9.5733 + else
9.5734 + desiredlanguages="$ALL_LINGUAS"
9.5735 + fi
9.5736 + for desiredlang in $desiredlanguages; do
9.5737 + # Use the presentlang catalog if desiredlang is
9.5738 + # a. equal to presentlang, or
9.5739 + # b. a variant of presentlang (because in this case,
9.5740 + # presentlang can be used as a fallback for messages
9.5741 + # which are not translated in the desiredlang catalog).
9.5742 + case "$desiredlang" in
9.5743 + "$presentlang"*) useit=yes;;
9.5744 + esac
9.5745 + done
9.5746 + if test $useit = yes; then
9.5747 + NEW_LINGUAS="$NEW_LINGUAS $presentlang"
9.5748 + fi
9.5749 + done
9.5750 + LINGUAS=$NEW_LINGUAS
9.5751 + echo "$as_me:$LINENO: result: $LINGUAS" >&5
9.5752 +echo "${ECHO_T}$LINGUAS" >&6
9.5753 + fi
9.5754 +
9.5755 + if test -n "$LINGUAS"; then
9.5756 + for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
9.5757 + fi
9.5758 + fi
9.5759 +
9.5760 + MKINSTALLDIRS=
9.5761 + if test -n "$ac_aux_dir"; then
9.5762 + MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
9.5763 + fi
9.5764 + if test -z "$MKINSTALLDIRS"; then
9.5765 + MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
9.5766 + fi
9.5767 +
9.5768 +
9.5769 + test -d po || mkdir po
9.5770 + if test "x$srcdir" != "x."; then
9.5771 + if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
9.5772 + posrcprefix="$srcdir/"
9.5773 + else
9.5774 + posrcprefix="../$srcdir/"
9.5775 + fi
9.5776 + else
9.5777 + posrcprefix="../"
9.5778 + fi
9.5779 + rm -f po/POTFILES
9.5780 + sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
9.5781 + < $srcdir/po/POTFILES.in > po/POTFILES
9.5782 +
9.5783 +
9.5784 + ac_config_files="$ac_config_files Makefile src/Makefile po/Makefile.in"
9.5785 +cat >confcache <<\_ACEOF
9.5786 +# This file is a shell script that caches the results of configure
9.5787 +# tests run on this system so they can be shared between configure
9.5788 +# scripts and configure runs, see configure's option --config-cache.
9.5789 +# It is not useful on other systems. If it contains results you don't
9.5790 +# want to keep, you may remove or edit it.
9.5791 +#
9.5792 +# config.status only pays attention to the cache file if you give it
9.5793 +# the --recheck option to rerun configure.
9.5794 +#
9.5795 +# `ac_cv_env_foo' variables (set or unset) will be overridden when
9.5796 +# loading this file, other *unset* `ac_cv_foo' will be assigned the
9.5797 +# following values.
9.5798 +
9.5799 +_ACEOF
9.5800 +
9.5801 +# The following way of writing the cache mishandles newlines in values,
9.5802 +# but we know of no workaround that is simple, portable, and efficient.
9.5803 +# So, don't put newlines in cache variables' values.
9.5804 +# Ultrix sh set writes to stderr and can't be redirected directly,
9.5805 +# and sets the high bit in the cache file unless we assign to the vars.
9.5806 +{
9.5807 + (set) 2>&1 |
9.5808 + case `(ac_space=' '; set | grep ac_space) 2>&1` in
9.5809 + *ac_space=\ *)
9.5810 + # `set' does not quote correctly, so add quotes (double-quote
9.5811 + # substitution turns \\\\ into \\, and sed turns \\ into \).
9.5812 + sed -n \
9.5813 + "s/'/'\\\\''/g;
9.5814 + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
9.5815 + ;;
9.5816 + *)
9.5817 + # `set' quotes correctly as required by POSIX, so do not add quotes.
9.5818 + sed -n \
9.5819 + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
9.5820 + ;;
9.5821 + esac;
9.5822 +} |
9.5823 + sed '
9.5824 + t clear
9.5825 + : clear
9.5826 + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
9.5827 + t end
9.5828 + /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
9.5829 + : end' >>confcache
9.5830 +if diff $cache_file confcache >/dev/null 2>&1; then :; else
9.5831 + if test -w $cache_file; then
9.5832 + test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
9.5833 + cat confcache >$cache_file
9.5834 + else
9.5835 + echo "not updating unwritable cache $cache_file"
9.5836 + fi
9.5837 +fi
9.5838 +rm -f confcache
9.5839 +
9.5840 +test "x$prefix" = xNONE && prefix=$ac_default_prefix
9.5841 +# Let make expand exec_prefix.
9.5842 +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
9.5843 +
9.5844 +# VPATH may cause trouble with some makes, so we remove $(srcdir),
9.5845 +# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
9.5846 +# trailing colons and then remove the whole line if VPATH becomes empty
9.5847 +# (actually we leave an empty line to preserve line numbers).
9.5848 +if test "x$srcdir" = x.; then
9.5849 + ac_vpsub='/^[ ]*VPATH[ ]*=/{
9.5850 +s/:*\$(srcdir):*/:/;
9.5851 +s/:*\${srcdir}:*/:/;
9.5852 +s/:*@srcdir@:*/:/;
9.5853 +s/^\([^=]*=[ ]*\):*/\1/;
9.5854 +s/:*$//;
9.5855 +s/^[^=]*=[ ]*$//;
9.5856 +}'
9.5857 +fi
9.5858 +
9.5859 +DEFS=-DHAVE_CONFIG_H
9.5860 +
9.5861 +ac_libobjs=
9.5862 +ac_ltlibobjs=
9.5863 +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
9.5864 + # 1. Remove the extension, and $U if already installed.
9.5865 + ac_i=`echo "$ac_i" |
9.5866 + sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
9.5867 + # 2. Add them.
9.5868 + ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
9.5869 + ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
9.5870 +done
9.5871 +LIBOBJS=$ac_libobjs
9.5872 +
9.5873 +LTLIBOBJS=$ac_ltlibobjs
9.5874 +
9.5875 +
9.5876 +if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
9.5877 + { { echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never defined.
9.5878 +Usually this means the macro was only invoked conditionally." >&5
9.5879 +echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined.
9.5880 +Usually this means the macro was only invoked conditionally." >&2;}
9.5881 + { (exit 1); exit 1; }; }
9.5882 +fi
9.5883 +if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
9.5884 + { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
9.5885 +Usually this means the macro was only invoked conditionally." >&5
9.5886 +echo "$as_me: error: conditional \"AMDEP\" was never defined.
9.5887 +Usually this means the macro was only invoked conditionally." >&2;}
9.5888 + { (exit 1); exit 1; }; }
9.5889 +fi
9.5890 +if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
9.5891 + { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
9.5892 +Usually this means the macro was only invoked conditionally." >&5
9.5893 +echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
9.5894 +Usually this means the macro was only invoked conditionally." >&2;}
9.5895 + { (exit 1); exit 1; }; }
9.5896 +fi
9.5897 +if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
9.5898 + { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
9.5899 +Usually this means the macro was only invoked conditionally." >&5
9.5900 +echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
9.5901 +Usually this means the macro was only invoked conditionally." >&2;}
9.5902 + { (exit 1); exit 1; }; }
9.5903 +fi
9.5904 +
9.5905 +: ${CONFIG_STATUS=./config.status}
9.5906 +ac_clean_files_save=$ac_clean_files
9.5907 +ac_clean_files="$ac_clean_files $CONFIG_STATUS"
9.5908 +{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
9.5909 +echo "$as_me: creating $CONFIG_STATUS" >&6;}
9.5910 +cat >$CONFIG_STATUS <<_ACEOF
9.5911 +#! $SHELL
9.5912 +# Generated by $as_me.
9.5913 +# Run this file to recreate the current configuration.
9.5914 +# Compiler output produced by configure, useful for debugging
9.5915 +# configure, is in config.log if it exists.
9.5916 +
9.5917 +debug=false
9.5918 +ac_cs_recheck=false
9.5919 +ac_cs_silent=false
9.5920 +SHELL=\${CONFIG_SHELL-$SHELL}
9.5921 +_ACEOF
9.5922 +
9.5923 +cat >>$CONFIG_STATUS <<\_ACEOF
9.5924 +## --------------------- ##
9.5925 +## M4sh Initialization. ##
9.5926 +## --------------------- ##
9.5927 +
9.5928 +# Be Bourne compatible
9.5929 +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
9.5930 + emulate sh
9.5931 + NULLCMD=:
9.5932 + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
9.5933 + # is contrary to our usage. Disable this feature.
9.5934 + alias -g '${1+"$@"}'='"$@"'
9.5935 +elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
9.5936 + set -o posix
9.5937 +fi
9.5938 +DUALCASE=1; export DUALCASE # for MKS sh
9.5939 +
9.5940 +# Support unset when possible.
9.5941 +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
9.5942 + as_unset=unset
9.5943 +else
9.5944 + as_unset=false
9.5945 +fi
9.5946 +
9.5947 +
9.5948 +# Work around bugs in pre-3.0 UWIN ksh.
9.5949 +$as_unset ENV MAIL MAILPATH
9.5950 +PS1='$ '
9.5951 +PS2='> '
9.5952 +PS4='+ '
9.5953 +
9.5954 +# NLS nuisances.
9.5955 +for as_var in \
9.5956 + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
9.5957 + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
9.5958 + LC_TELEPHONE LC_TIME
9.5959 +do
9.5960 + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
9.5961 + eval $as_var=C; export $as_var
9.5962 + else
9.5963 + $as_unset $as_var
9.5964 + fi
9.5965 +done
9.5966 +
9.5967 +# Required to use basename.
9.5968 +if expr a : '\(a\)' >/dev/null 2>&1; then
9.5969 + as_expr=expr
9.5970 +else
9.5971 + as_expr=false
9.5972 +fi
9.5973 +
9.5974 +if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
9.5975 + as_basename=basename
9.5976 +else
9.5977 + as_basename=false
9.5978 +fi
9.5979 +
9.5980 +
9.5981 +# Name of the executable.
9.5982 +as_me=`$as_basename "$0" ||
9.5983 +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
9.5984 + X"$0" : 'X\(//\)$' \| \
9.5985 + X"$0" : 'X\(/\)$' \| \
9.5986 + . : '\(.\)' 2>/dev/null ||
9.5987 +echo X/"$0" |
9.5988 + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
9.5989 + /^X\/\(\/\/\)$/{ s//\1/; q; }
9.5990 + /^X\/\(\/\).*/{ s//\1/; q; }
9.5991 + s/.*/./; q'`
9.5992 +
9.5993 +
9.5994 +# PATH needs CR, and LINENO needs CR and PATH.
9.5995 +# Avoid depending upon Character Ranges.
9.5996 +as_cr_letters='abcdefghijklmnopqrstuvwxyz'
9.5997 +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
9.5998 +as_cr_Letters=$as_cr_letters$as_cr_LETTERS
9.5999 +as_cr_digits='0123456789'
9.6000 +as_cr_alnum=$as_cr_Letters$as_cr_digits
9.6001 +
9.6002 +# The user is always right.
9.6003 +if test "${PATH_SEPARATOR+set}" != set; then
9.6004 + echo "#! /bin/sh" >conf$$.sh
9.6005 + echo "exit 0" >>conf$$.sh
9.6006 + chmod +x conf$$.sh
9.6007 + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
9.6008 + PATH_SEPARATOR=';'
9.6009 + else
9.6010 + PATH_SEPARATOR=:
9.6011 + fi
9.6012 + rm -f conf$$.sh
9.6013 +fi
9.6014 +
9.6015 +
9.6016 + as_lineno_1=$LINENO
9.6017 + as_lineno_2=$LINENO
9.6018 + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
9.6019 + test "x$as_lineno_1" != "x$as_lineno_2" &&
9.6020 + test "x$as_lineno_3" = "x$as_lineno_2" || {
9.6021 + # Find who we are. Look in the path if we contain no path at all
9.6022 + # relative or not.
9.6023 + case $0 in
9.6024 + *[\\/]* ) as_myself=$0 ;;
9.6025 + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.6026 +for as_dir in $PATH
9.6027 +do
9.6028 + IFS=$as_save_IFS
9.6029 + test -z "$as_dir" && as_dir=.
9.6030 + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
9.6031 +done
9.6032 +
9.6033 + ;;
9.6034 + esac
9.6035 + # We did not find ourselves, most probably we were run as `sh COMMAND'
9.6036 + # in which case we are not to be found in the path.
9.6037 + if test "x$as_myself" = x; then
9.6038 + as_myself=$0
9.6039 + fi
9.6040 + if test ! -f "$as_myself"; then
9.6041 + { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
9.6042 +echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
9.6043 + { (exit 1); exit 1; }; }
9.6044 + fi
9.6045 + case $CONFIG_SHELL in
9.6046 + '')
9.6047 + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
9.6048 +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
9.6049 +do
9.6050 + IFS=$as_save_IFS
9.6051 + test -z "$as_dir" && as_dir=.
9.6052 + for as_base in sh bash ksh sh5; do
9.6053 + case $as_dir in
9.6054 + /*)
9.6055 + if ("$as_dir/$as_base" -c '
9.6056 + as_lineno_1=$LINENO
9.6057 + as_lineno_2=$LINENO
9.6058 + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
9.6059 + test "x$as_lineno_1" != "x$as_lineno_2" &&
9.6060 + test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
9.6061 + $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
9.6062 + $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
9.6063 + CONFIG_SHELL=$as_dir/$as_base
9.6064 + export CONFIG_SHELL
9.6065 + exec "$CONFIG_SHELL" "$0" ${1+"$@"}
9.6066 + fi;;
9.6067 + esac
9.6068 + done
9.6069 +done
9.6070 +;;
9.6071 + esac
9.6072 +
9.6073 + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
9.6074 + # uniformly replaced by the line number. The first 'sed' inserts a
9.6075 + # line-number line before each line; the second 'sed' does the real
9.6076 + # work. The second script uses 'N' to pair each line-number line
9.6077 + # with the numbered line, and appends trailing '-' during
9.6078 + # substitution so that $LINENO is not a special case at line end.
9.6079 + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
9.6080 + # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
9.6081 + sed '=' <$as_myself |
9.6082 + sed '
9.6083 + N
9.6084 + s,$,-,
9.6085 + : loop
9.6086 + s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
9.6087 + t loop
9.6088 + s,-$,,
9.6089 + s,^['$as_cr_digits']*\n,,
9.6090 + ' >$as_me.lineno &&
9.6091 + chmod +x $as_me.lineno ||
9.6092 + { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
9.6093 +echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
9.6094 + { (exit 1); exit 1; }; }
9.6095 +
9.6096 + # Don't try to exec as it changes $[0], causing all sort of problems
9.6097 + # (the dirname of $[0] is not the place where we might find the
9.6098 + # original and so on. Autoconf is especially sensible to this).
9.6099 + . ./$as_me.lineno
9.6100 + # Exit status is that of the last command.
9.6101 + exit
9.6102 +}
9.6103 +
9.6104 +
9.6105 +case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
9.6106 + *c*,-n*) ECHO_N= ECHO_C='
9.6107 +' ECHO_T=' ' ;;
9.6108 + *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
9.6109 + *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
9.6110 +esac
9.6111 +
9.6112 +if expr a : '\(a\)' >/dev/null 2>&1; then
9.6113 + as_expr=expr
9.6114 +else
9.6115 + as_expr=false
9.6116 +fi
9.6117 +
9.6118 +rm -f conf$$ conf$$.exe conf$$.file
9.6119 +echo >conf$$.file
9.6120 +if ln -s conf$$.file conf$$ 2>/dev/null; then
9.6121 + # We could just check for DJGPP; but this test a) works b) is more generic
9.6122 + # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
9.6123 + if test -f conf$$.exe; then
9.6124 + # Don't use ln at all; we don't have any links
9.6125 + as_ln_s='cp -p'
9.6126 + else
9.6127 + as_ln_s='ln -s'
9.6128 + fi
9.6129 +elif ln conf$$.file conf$$ 2>/dev/null; then
9.6130 + as_ln_s=ln
9.6131 +else
9.6132 + as_ln_s='cp -p'
9.6133 +fi
9.6134 +rm -f conf$$ conf$$.exe conf$$.file
9.6135 +
9.6136 +if mkdir -p . 2>/dev/null; then
9.6137 + as_mkdir_p=:
9.6138 +else
9.6139 + test -d ./-p && rmdir ./-p
9.6140 + as_mkdir_p=false
9.6141 +fi
9.6142 +
9.6143 +as_executable_p="test -f"
9.6144 +
9.6145 +# Sed expression to map a string onto a valid CPP name.
9.6146 +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
9.6147 +
9.6148 +# Sed expression to map a string onto a valid variable name.
9.6149 +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
9.6150 +
9.6151 +
9.6152 +# IFS
9.6153 +# We need space, tab and new line, in precisely that order.
9.6154 +as_nl='
9.6155 +'
9.6156 +IFS=" $as_nl"
9.6157 +
9.6158 +# CDPATH.
9.6159 +$as_unset CDPATH
9.6160 +
9.6161 +exec 6>&1
9.6162 +
9.6163 +# Open the log real soon, to keep \$[0] and so on meaningful, and to
9.6164 +# report actual input values of CONFIG_FILES etc. instead of their
9.6165 +# values after options handling. Logging --version etc. is OK.
9.6166 +exec 5>>config.log
9.6167 +{
9.6168 + echo
9.6169 + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
9.6170 +## Running $as_me. ##
9.6171 +_ASBOX
9.6172 +} >&5
9.6173 +cat >&5 <<_CSEOF
9.6174 +
9.6175 +This file was extended by $as_me, which was
9.6176 +generated by GNU Autoconf 2.59. Invocation command line was
9.6177 +
9.6178 + CONFIG_FILES = $CONFIG_FILES
9.6179 + CONFIG_HEADERS = $CONFIG_HEADERS
9.6180 + CONFIG_LINKS = $CONFIG_LINKS
9.6181 + CONFIG_COMMANDS = $CONFIG_COMMANDS
9.6182 + $ $0 $@
9.6183 +
9.6184 +_CSEOF
9.6185 +echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
9.6186 +echo >&5
9.6187 +_ACEOF
9.6188 +
9.6189 +# Files that config.status was made for.
9.6190 +if test -n "$ac_config_files"; then
9.6191 + echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
9.6192 +fi
9.6193 +
9.6194 +if test -n "$ac_config_headers"; then
9.6195 + echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
9.6196 +fi
9.6197 +
9.6198 +if test -n "$ac_config_links"; then
9.6199 + echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
9.6200 +fi
9.6201 +
9.6202 +if test -n "$ac_config_commands"; then
9.6203 + echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
9.6204 +fi
9.6205 +
9.6206 +cat >>$CONFIG_STATUS <<\_ACEOF
9.6207 +
9.6208 +ac_cs_usage="\
9.6209 +\`$as_me' instantiates files from templates according to the
9.6210 +current configuration.
9.6211 +
9.6212 +Usage: $0 [OPTIONS] [FILE]...
9.6213 +
9.6214 + -h, --help print this help, then exit
9.6215 + -V, --version print version number, then exit
9.6216 + -q, --quiet do not print progress messages
9.6217 + -d, --debug don't remove temporary files
9.6218 + --recheck update $as_me by reconfiguring in the same conditions
9.6219 + --file=FILE[:TEMPLATE]
9.6220 + instantiate the configuration file FILE
9.6221 + --header=FILE[:TEMPLATE]
9.6222 + instantiate the configuration header FILE
9.6223 +
9.6224 +Configuration files:
9.6225 +$config_files
9.6226 +
9.6227 +Configuration headers:
9.6228 +$config_headers
9.6229 +
9.6230 +Configuration commands:
9.6231 +$config_commands
9.6232 +
9.6233 +Report bugs to <bug-autoconf@gnu.org>."
9.6234 +_ACEOF
9.6235 +
9.6236 +cat >>$CONFIG_STATUS <<_ACEOF
9.6237 +ac_cs_version="\\
9.6238 +config.status
9.6239 +configured by $0, generated by GNU Autoconf 2.59,
9.6240 + with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
9.6241 +
9.6242 +Copyright (C) 2003 Free Software Foundation, Inc.
9.6243 +This config.status script is free software; the Free Software Foundation
9.6244 +gives unlimited permission to copy, distribute and modify it."
9.6245 +srcdir=$srcdir
9.6246 +INSTALL="$INSTALL"
9.6247 +_ACEOF
9.6248 +
9.6249 +cat >>$CONFIG_STATUS <<\_ACEOF
9.6250 +# If no file are specified by the user, then we need to provide default
9.6251 +# value. By we need to know if files were specified by the user.
9.6252 +ac_need_defaults=:
9.6253 +while test $# != 0
9.6254 +do
9.6255 + case $1 in
9.6256 + --*=*)
9.6257 + ac_option=`expr "x$1" : 'x\([^=]*\)='`
9.6258 + ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
9.6259 + ac_shift=:
9.6260 + ;;
9.6261 + -*)
9.6262 + ac_option=$1
9.6263 + ac_optarg=$2
9.6264 + ac_shift=shift
9.6265 + ;;
9.6266 + *) # This is not an option, so the user has probably given explicit
9.6267 + # arguments.
9.6268 + ac_option=$1
9.6269 + ac_need_defaults=false;;
9.6270 + esac
9.6271 +
9.6272 + case $ac_option in
9.6273 + # Handling of the options.
9.6274 +_ACEOF
9.6275 +cat >>$CONFIG_STATUS <<\_ACEOF
9.6276 + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
9.6277 + ac_cs_recheck=: ;;
9.6278 + --version | --vers* | -V )
9.6279 + echo "$ac_cs_version"; exit 0 ;;
9.6280 + --he | --h)
9.6281 + # Conflict between --help and --header
9.6282 + { { echo "$as_me:$LINENO: error: ambiguous option: $1
9.6283 +Try \`$0 --help' for more information." >&5
9.6284 +echo "$as_me: error: ambiguous option: $1
9.6285 +Try \`$0 --help' for more information." >&2;}
9.6286 + { (exit 1); exit 1; }; };;
9.6287 + --help | --hel | -h )
9.6288 + echo "$ac_cs_usage"; exit 0 ;;
9.6289 + --debug | --d* | -d )
9.6290 + debug=: ;;
9.6291 + --file | --fil | --fi | --f )
9.6292 + $ac_shift
9.6293 + CONFIG_FILES="$CONFIG_FILES $ac_optarg"
9.6294 + ac_need_defaults=false;;
9.6295 + --header | --heade | --head | --hea )
9.6296 + $ac_shift
9.6297 + CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
9.6298 + ac_need_defaults=false;;
9.6299 + -q | -quiet | --quiet | --quie | --qui | --qu | --q \
9.6300 + | -silent | --silent | --silen | --sile | --sil | --si | --s)
9.6301 + ac_cs_silent=: ;;
9.6302 +
9.6303 + # This is an error.
9.6304 + -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
9.6305 +Try \`$0 --help' for more information." >&5
9.6306 +echo "$as_me: error: unrecognized option: $1
9.6307 +Try \`$0 --help' for more information." >&2;}
9.6308 + { (exit 1); exit 1; }; } ;;
9.6309 +
9.6310 + *) ac_config_targets="$ac_config_targets $1" ;;
9.6311 +
9.6312 + esac
9.6313 + shift
9.6314 +done
9.6315 +
9.6316 +ac_configure_extra_args=
9.6317 +
9.6318 +if $ac_cs_silent; then
9.6319 + exec 6>/dev/null
9.6320 + ac_configure_extra_args="$ac_configure_extra_args --silent"
9.6321 +fi
9.6322 +
9.6323 +_ACEOF
9.6324 +cat >>$CONFIG_STATUS <<_ACEOF
9.6325 +if \$ac_cs_recheck; then
9.6326 + echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
9.6327 + exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
9.6328 +fi
9.6329 +
9.6330 +_ACEOF
9.6331 +
9.6332 +cat >>$CONFIG_STATUS <<_ACEOF
9.6333 +#
9.6334 +# INIT-COMMANDS section.
9.6335 +#
9.6336 +
9.6337 +AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
9.6338 +
9.6339 +
9.6340 +_ACEOF
9.6341 +
9.6342 +
9.6343 +
9.6344 +cat >>$CONFIG_STATUS <<\_ACEOF
9.6345 +for ac_config_target in $ac_config_targets
9.6346 +do
9.6347 + case "$ac_config_target" in
9.6348 + # Handling of arguments.
9.6349 + "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
9.6350 + "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
9.6351 + "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
9.6352 + "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
9.6353 + "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
9.6354 + "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
9.6355 + *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
9.6356 +echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
9.6357 + { (exit 1); exit 1; }; };;
9.6358 + esac
9.6359 +done
9.6360 +
9.6361 +# If the user did not use the arguments to specify the items to instantiate,
9.6362 +# then the envvar interface is used. Set only those that are not.
9.6363 +# We use the long form for the default assignment because of an extremely
9.6364 +# bizarre bug on SunOS 4.1.3.
9.6365 +if $ac_need_defaults; then
9.6366 + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
9.6367 + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
9.6368 + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
9.6369 +fi
9.6370 +
9.6371 +# Have a temporary directory for convenience. Make it in the build tree
9.6372 +# simply because there is no reason to put it here, and in addition,
9.6373 +# creating and moving files from /tmp can sometimes cause problems.
9.6374 +# Create a temporary directory, and hook for its removal unless debugging.
9.6375 +$debug ||
9.6376 +{
9.6377 + trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
9.6378 + trap '{ (exit 1); exit 1; }' 1 2 13 15
9.6379 +}
9.6380 +
9.6381 +# Create a (secure) tmp directory for tmp files.
9.6382 +
9.6383 +{
9.6384 + tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
9.6385 + test -n "$tmp" && test -d "$tmp"
9.6386 +} ||
9.6387 +{
9.6388 + tmp=./confstat$$-$RANDOM
9.6389 + (umask 077 && mkdir $tmp)
9.6390 +} ||
9.6391 +{
9.6392 + echo "$me: cannot create a temporary directory in ." >&2
9.6393 + { (exit 1); exit 1; }
9.6394 +}
9.6395 +
9.6396 +_ACEOF
9.6397 +
9.6398 +cat >>$CONFIG_STATUS <<_ACEOF
9.6399 +
9.6400 +#
9.6401 +# CONFIG_FILES section.
9.6402 +#
9.6403 +
9.6404 +# No need to generate the scripts if there are no CONFIG_FILES.
9.6405 +# This happens for instance when ./config.status config.h
9.6406 +if test -n "\$CONFIG_FILES"; then
9.6407 + # Protect against being on the right side of a sed subst in config.status.
9.6408 + sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
9.6409 + s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
9.6410 +s,@SHELL@,$SHELL,;t t
9.6411 +s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
9.6412 +s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
9.6413 +s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
9.6414 +s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
9.6415 +s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
9.6416 +s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
9.6417 +s,@exec_prefix@,$exec_prefix,;t t
9.6418 +s,@prefix@,$prefix,;t t
9.6419 +s,@program_transform_name@,$program_transform_name,;t t
9.6420 +s,@bindir@,$bindir,;t t
9.6421 +s,@sbindir@,$sbindir,;t t
9.6422 +s,@libexecdir@,$libexecdir,;t t
9.6423 +s,@datadir@,$datadir,;t t
9.6424 +s,@sysconfdir@,$sysconfdir,;t t
9.6425 +s,@sharedstatedir@,$sharedstatedir,;t t
9.6426 +s,@localstatedir@,$localstatedir,;t t
9.6427 +s,@libdir@,$libdir,;t t
9.6428 +s,@includedir@,$includedir,;t t
9.6429 +s,@oldincludedir@,$oldincludedir,;t t
9.6430 +s,@infodir@,$infodir,;t t
9.6431 +s,@mandir@,$mandir,;t t
9.6432 +s,@build_alias@,$build_alias,;t t
9.6433 +s,@host_alias@,$host_alias,;t t
9.6434 +s,@target_alias@,$target_alias,;t t
9.6435 +s,@DEFS@,$DEFS,;t t
9.6436 +s,@ECHO_C@,$ECHO_C,;t t
9.6437 +s,@ECHO_N@,$ECHO_N,;t t
9.6438 +s,@ECHO_T@,$ECHO_T,;t t
9.6439 +s,@LIBS@,$LIBS,;t t
9.6440 +s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
9.6441 +s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
9.6442 +s,@INSTALL_DATA@,$INSTALL_DATA,;t t
9.6443 +s,@CYGPATH_W@,$CYGPATH_W,;t t
9.6444 +s,@PACKAGE@,$PACKAGE,;t t
9.6445 +s,@VERSION@,$VERSION,;t t
9.6446 +s,@ACLOCAL@,$ACLOCAL,;t t
9.6447 +s,@AUTOCONF@,$AUTOCONF,;t t
9.6448 +s,@AUTOMAKE@,$AUTOMAKE,;t t
9.6449 +s,@AUTOHEADER@,$AUTOHEADER,;t t
9.6450 +s,@MAKEINFO@,$MAKEINFO,;t t
9.6451 +s,@AMTAR@,$AMTAR,;t t
9.6452 +s,@install_sh@,$install_sh,;t t
9.6453 +s,@STRIP@,$STRIP,;t t
9.6454 +s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
9.6455 +s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
9.6456 +s,@AWK@,$AWK,;t t
9.6457 +s,@SET_MAKE@,$SET_MAKE,;t t
9.6458 +s,@am__leading_dot@,$am__leading_dot,;t t
9.6459 +s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
9.6460 +s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t
9.6461 +s,@MAINT@,$MAINT,;t t
9.6462 +s,@CC@,$CC,;t t
9.6463 +s,@CFLAGS@,$CFLAGS,;t t
9.6464 +s,@LDFLAGS@,$LDFLAGS,;t t
9.6465 +s,@CPPFLAGS@,$CPPFLAGS,;t t
9.6466 +s,@ac_ct_CC@,$ac_ct_CC,;t t
9.6467 +s,@EXEEXT@,$EXEEXT,;t t
9.6468 +s,@OBJEXT@,$OBJEXT,;t t
9.6469 +s,@DEPDIR@,$DEPDIR,;t t
9.6470 +s,@am__include@,$am__include,;t t
9.6471 +s,@am__quote@,$am__quote,;t t
9.6472 +s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t
9.6473 +s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t
9.6474 +s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t
9.6475 +s,@CCDEPMODE@,$CCDEPMODE,;t t
9.6476 +s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
9.6477 +s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
9.6478 +s,@CPP@,$CPP,;t t
9.6479 +s,@EGREP@,$EGREP,;t t
9.6480 +s,@PKG_CONFIG@,$PKG_CONFIG,;t t
9.6481 +s,@PACKAGE_CFLAGS@,$PACKAGE_CFLAGS,;t t
9.6482 +s,@PACKAGE_LIBS@,$PACKAGE_LIBS,;t t
9.6483 +s,@GETTEXT_PACKAGE@,$GETTEXT_PACKAGE,;t t
9.6484 +s,@USE_NLS@,$USE_NLS,;t t
9.6485 +s,@MSGFMT@,$MSGFMT,;t t
9.6486 +s,@GMSGFMT@,$GMSGFMT,;t t
9.6487 +s,@XGETTEXT@,$XGETTEXT,;t t
9.6488 +s,@CATALOGS@,$CATALOGS,;t t
9.6489 +s,@CATOBJEXT@,$CATOBJEXT,;t t
9.6490 +s,@DATADIRNAME@,$DATADIRNAME,;t t
9.6491 +s,@GMOFILES@,$GMOFILES,;t t
9.6492 +s,@INSTOBJEXT@,$INSTOBJEXT,;t t
9.6493 +s,@INTLLIBS@,$INTLLIBS,;t t
9.6494 +s,@PO_IN_DATADIR_TRUE@,$PO_IN_DATADIR_TRUE,;t t
9.6495 +s,@PO_IN_DATADIR_FALSE@,$PO_IN_DATADIR_FALSE,;t t
9.6496 +s,@POFILES@,$POFILES,;t t
9.6497 +s,@POSUB@,$POSUB,;t t
9.6498 +s,@MKINSTALLDIRS@,$MKINSTALLDIRS,;t t
9.6499 +s,@LIBOBJS@,$LIBOBJS,;t t
9.6500 +s,@LTLIBOBJS@,$LTLIBOBJS,;t t
9.6501 +CEOF
9.6502 +
9.6503 +_ACEOF
9.6504 +
9.6505 + cat >>$CONFIG_STATUS <<\_ACEOF
9.6506 + # Split the substitutions into bite-sized pieces for seds with
9.6507 + # small command number limits, like on Digital OSF/1 and HP-UX.
9.6508 + ac_max_sed_lines=48
9.6509 + ac_sed_frag=1 # Number of current file.
9.6510 + ac_beg=1 # First line for current file.
9.6511 + ac_end=$ac_max_sed_lines # Line after last line for current file.
9.6512 + ac_more_lines=:
9.6513 + ac_sed_cmds=
9.6514 + while $ac_more_lines; do
9.6515 + if test $ac_beg -gt 1; then
9.6516 + sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
9.6517 + else
9.6518 + sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
9.6519 + fi
9.6520 + if test ! -s $tmp/subs.frag; then
9.6521 + ac_more_lines=false
9.6522 + else
9.6523 + # The purpose of the label and of the branching condition is to
9.6524 + # speed up the sed processing (if there are no `@' at all, there
9.6525 + # is no need to browse any of the substitutions).
9.6526 + # These are the two extra sed commands mentioned above.
9.6527 + (echo ':t
9.6528 + /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
9.6529 + if test -z "$ac_sed_cmds"; then
9.6530 + ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
9.6531 + else
9.6532 + ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
9.6533 + fi
9.6534 + ac_sed_frag=`expr $ac_sed_frag + 1`
9.6535 + ac_beg=$ac_end
9.6536 + ac_end=`expr $ac_end + $ac_max_sed_lines`
9.6537 + fi
9.6538 + done
9.6539 + if test -z "$ac_sed_cmds"; then
9.6540 + ac_sed_cmds=cat
9.6541 + fi
9.6542 +fi # test -n "$CONFIG_FILES"
9.6543 +
9.6544 +_ACEOF
9.6545 +cat >>$CONFIG_STATUS <<\_ACEOF
9.6546 +for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
9.6547 + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
9.6548 + case $ac_file in
9.6549 + - | *:- | *:-:* ) # input from stdin
9.6550 + cat >$tmp/stdin
9.6551 + ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
9.6552 + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
9.6553 + *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
9.6554 + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
9.6555 + * ) ac_file_in=$ac_file.in ;;
9.6556 + esac
9.6557 +
9.6558 + # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
9.6559 + ac_dir=`(dirname "$ac_file") 2>/dev/null ||
9.6560 +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.6561 + X"$ac_file" : 'X\(//\)[^/]' \| \
9.6562 + X"$ac_file" : 'X\(//\)$' \| \
9.6563 + X"$ac_file" : 'X\(/\)' \| \
9.6564 + . : '\(.\)' 2>/dev/null ||
9.6565 +echo X"$ac_file" |
9.6566 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.6567 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.6568 + /^X\(\/\/\)$/{ s//\1/; q; }
9.6569 + /^X\(\/\).*/{ s//\1/; q; }
9.6570 + s/.*/./; q'`
9.6571 + { if $as_mkdir_p; then
9.6572 + mkdir -p "$ac_dir"
9.6573 + else
9.6574 + as_dir="$ac_dir"
9.6575 + as_dirs=
9.6576 + while test ! -d "$as_dir"; do
9.6577 + as_dirs="$as_dir $as_dirs"
9.6578 + as_dir=`(dirname "$as_dir") 2>/dev/null ||
9.6579 +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.6580 + X"$as_dir" : 'X\(//\)[^/]' \| \
9.6581 + X"$as_dir" : 'X\(//\)$' \| \
9.6582 + X"$as_dir" : 'X\(/\)' \| \
9.6583 + . : '\(.\)' 2>/dev/null ||
9.6584 +echo X"$as_dir" |
9.6585 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.6586 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.6587 + /^X\(\/\/\)$/{ s//\1/; q; }
9.6588 + /^X\(\/\).*/{ s//\1/; q; }
9.6589 + s/.*/./; q'`
9.6590 + done
9.6591 + test ! -n "$as_dirs" || mkdir $as_dirs
9.6592 + fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
9.6593 +echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
9.6594 + { (exit 1); exit 1; }; }; }
9.6595 +
9.6596 + ac_builddir=.
9.6597 +
9.6598 +if test "$ac_dir" != .; then
9.6599 + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
9.6600 + # A "../" for each directory in $ac_dir_suffix.
9.6601 + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
9.6602 +else
9.6603 + ac_dir_suffix= ac_top_builddir=
9.6604 +fi
9.6605 +
9.6606 +case $srcdir in
9.6607 + .) # No --srcdir option. We are building in place.
9.6608 + ac_srcdir=.
9.6609 + if test -z "$ac_top_builddir"; then
9.6610 + ac_top_srcdir=.
9.6611 + else
9.6612 + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
9.6613 + fi ;;
9.6614 + [\\/]* | ?:[\\/]* ) # Absolute path.
9.6615 + ac_srcdir=$srcdir$ac_dir_suffix;
9.6616 + ac_top_srcdir=$srcdir ;;
9.6617 + *) # Relative path.
9.6618 + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
9.6619 + ac_top_srcdir=$ac_top_builddir$srcdir ;;
9.6620 +esac
9.6621 +
9.6622 +# Do not use `cd foo && pwd` to compute absolute paths, because
9.6623 +# the directories may not exist.
9.6624 +case `pwd` in
9.6625 +.) ac_abs_builddir="$ac_dir";;
9.6626 +*)
9.6627 + case "$ac_dir" in
9.6628 + .) ac_abs_builddir=`pwd`;;
9.6629 + [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
9.6630 + *) ac_abs_builddir=`pwd`/"$ac_dir";;
9.6631 + esac;;
9.6632 +esac
9.6633 +case $ac_abs_builddir in
9.6634 +.) ac_abs_top_builddir=${ac_top_builddir}.;;
9.6635 +*)
9.6636 + case ${ac_top_builddir}. in
9.6637 + .) ac_abs_top_builddir=$ac_abs_builddir;;
9.6638 + [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
9.6639 + *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
9.6640 + esac;;
9.6641 +esac
9.6642 +case $ac_abs_builddir in
9.6643 +.) ac_abs_srcdir=$ac_srcdir;;
9.6644 +*)
9.6645 + case $ac_srcdir in
9.6646 + .) ac_abs_srcdir=$ac_abs_builddir;;
9.6647 + [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
9.6648 + *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
9.6649 + esac;;
9.6650 +esac
9.6651 +case $ac_abs_builddir in
9.6652 +.) ac_abs_top_srcdir=$ac_top_srcdir;;
9.6653 +*)
9.6654 + case $ac_top_srcdir in
9.6655 + .) ac_abs_top_srcdir=$ac_abs_builddir;;
9.6656 + [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
9.6657 + *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
9.6658 + esac;;
9.6659 +esac
9.6660 +
9.6661 +
9.6662 + case $INSTALL in
9.6663 + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
9.6664 + *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
9.6665 + esac
9.6666 +
9.6667 + # Let's still pretend it is `configure' which instantiates (i.e., don't
9.6668 + # use $as_me), people would be surprised to read:
9.6669 + # /* config.h. Generated by config.status. */
9.6670 + if test x"$ac_file" = x-; then
9.6671 + configure_input=
9.6672 + else
9.6673 + configure_input="$ac_file. "
9.6674 + fi
9.6675 + configure_input=$configure_input"Generated from `echo $ac_file_in |
9.6676 + sed 's,.*/,,'` by configure."
9.6677 +
9.6678 + # First look for the input files in the build tree, otherwise in the
9.6679 + # src tree.
9.6680 + ac_file_inputs=`IFS=:
9.6681 + for f in $ac_file_in; do
9.6682 + case $f in
9.6683 + -) echo $tmp/stdin ;;
9.6684 + [\\/$]*)
9.6685 + # Absolute (can't be DOS-style, as IFS=:)
9.6686 + test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
9.6687 +echo "$as_me: error: cannot find input file: $f" >&2;}
9.6688 + { (exit 1); exit 1; }; }
9.6689 + echo "$f";;
9.6690 + *) # Relative
9.6691 + if test -f "$f"; then
9.6692 + # Build tree
9.6693 + echo "$f"
9.6694 + elif test -f "$srcdir/$f"; then
9.6695 + # Source tree
9.6696 + echo "$srcdir/$f"
9.6697 + else
9.6698 + # /dev/null tree
9.6699 + { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
9.6700 +echo "$as_me: error: cannot find input file: $f" >&2;}
9.6701 + { (exit 1); exit 1; }; }
9.6702 + fi;;
9.6703 + esac
9.6704 + done` || { (exit 1); exit 1; }
9.6705 +
9.6706 + if test x"$ac_file" != x-; then
9.6707 + { echo "$as_me:$LINENO: creating $ac_file" >&5
9.6708 +echo "$as_me: creating $ac_file" >&6;}
9.6709 + rm -f "$ac_file"
9.6710 + fi
9.6711 +_ACEOF
9.6712 +cat >>$CONFIG_STATUS <<_ACEOF
9.6713 + sed "$ac_vpsub
9.6714 +$extrasub
9.6715 +_ACEOF
9.6716 +cat >>$CONFIG_STATUS <<\_ACEOF
9.6717 +:t
9.6718 +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
9.6719 +s,@configure_input@,$configure_input,;t t
9.6720 +s,@srcdir@,$ac_srcdir,;t t
9.6721 +s,@abs_srcdir@,$ac_abs_srcdir,;t t
9.6722 +s,@top_srcdir@,$ac_top_srcdir,;t t
9.6723 +s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
9.6724 +s,@builddir@,$ac_builddir,;t t
9.6725 +s,@abs_builddir@,$ac_abs_builddir,;t t
9.6726 +s,@top_builddir@,$ac_top_builddir,;t t
9.6727 +s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
9.6728 +s,@INSTALL@,$ac_INSTALL,;t t
9.6729 +" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
9.6730 + rm -f $tmp/stdin
9.6731 + if test x"$ac_file" != x-; then
9.6732 + mv $tmp/out $ac_file
9.6733 + else
9.6734 + cat $tmp/out
9.6735 + rm -f $tmp/out
9.6736 + fi
9.6737 +
9.6738 +done
9.6739 +_ACEOF
9.6740 +cat >>$CONFIG_STATUS <<\_ACEOF
9.6741 +
9.6742 +#
9.6743 +# CONFIG_HEADER section.
9.6744 +#
9.6745 +
9.6746 +# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
9.6747 +# NAME is the cpp macro being defined and VALUE is the value it is being given.
9.6748 +#
9.6749 +# ac_d sets the value in "#define NAME VALUE" lines.
9.6750 +ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)'
9.6751 +ac_dB='[ ].*$,\1#\2'
9.6752 +ac_dC=' '
9.6753 +ac_dD=',;t'
9.6754 +# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
9.6755 +ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
9.6756 +ac_uB='$,\1#\2define\3'
9.6757 +ac_uC=' '
9.6758 +ac_uD=',;t'
9.6759 +
9.6760 +for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
9.6761 + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
9.6762 + case $ac_file in
9.6763 + - | *:- | *:-:* ) # input from stdin
9.6764 + cat >$tmp/stdin
9.6765 + ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
9.6766 + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
9.6767 + *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
9.6768 + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
9.6769 + * ) ac_file_in=$ac_file.in ;;
9.6770 + esac
9.6771 +
9.6772 + test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
9.6773 +echo "$as_me: creating $ac_file" >&6;}
9.6774 +
9.6775 + # First look for the input files in the build tree, otherwise in the
9.6776 + # src tree.
9.6777 + ac_file_inputs=`IFS=:
9.6778 + for f in $ac_file_in; do
9.6779 + case $f in
9.6780 + -) echo $tmp/stdin ;;
9.6781 + [\\/$]*)
9.6782 + # Absolute (can't be DOS-style, as IFS=:)
9.6783 + test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
9.6784 +echo "$as_me: error: cannot find input file: $f" >&2;}
9.6785 + { (exit 1); exit 1; }; }
9.6786 + # Do quote $f, to prevent DOS paths from being IFS'd.
9.6787 + echo "$f";;
9.6788 + *) # Relative
9.6789 + if test -f "$f"; then
9.6790 + # Build tree
9.6791 + echo "$f"
9.6792 + elif test -f "$srcdir/$f"; then
9.6793 + # Source tree
9.6794 + echo "$srcdir/$f"
9.6795 + else
9.6796 + # /dev/null tree
9.6797 + { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
9.6798 +echo "$as_me: error: cannot find input file: $f" >&2;}
9.6799 + { (exit 1); exit 1; }; }
9.6800 + fi;;
9.6801 + esac
9.6802 + done` || { (exit 1); exit 1; }
9.6803 + # Remove the trailing spaces.
9.6804 + sed 's/[ ]*$//' $ac_file_inputs >$tmp/in
9.6805 +
9.6806 +_ACEOF
9.6807 +
9.6808 +# Transform confdefs.h into two sed scripts, `conftest.defines' and
9.6809 +# `conftest.undefs', that substitutes the proper values into
9.6810 +# config.h.in to produce config.h. The first handles `#define'
9.6811 +# templates, and the second `#undef' templates.
9.6812 +# And first: Protect against being on the right side of a sed subst in
9.6813 +# config.status. Protect against being in an unquoted here document
9.6814 +# in config.status.
9.6815 +rm -f conftest.defines conftest.undefs
9.6816 +# Using a here document instead of a string reduces the quoting nightmare.
9.6817 +# Putting comments in sed scripts is not portable.
9.6818 +#
9.6819 +# `end' is used to avoid that the second main sed command (meant for
9.6820 +# 0-ary CPP macros) applies to n-ary macro definitions.
9.6821 +# See the Autoconf documentation for `clear'.
9.6822 +cat >confdef2sed.sed <<\_ACEOF
9.6823 +s/[\\&,]/\\&/g
9.6824 +s,[\\$`],\\&,g
9.6825 +t clear
9.6826 +: clear
9.6827 +s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
9.6828 +t end
9.6829 +s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
9.6830 +: end
9.6831 +_ACEOF
9.6832 +# If some macros were called several times there might be several times
9.6833 +# the same #defines, which is useless. Nevertheless, we may not want to
9.6834 +# sort them, since we want the *last* AC-DEFINE to be honored.
9.6835 +uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
9.6836 +sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
9.6837 +rm -f confdef2sed.sed
9.6838 +
9.6839 +# This sed command replaces #undef with comments. This is necessary, for
9.6840 +# example, in the case of _POSIX_SOURCE, which is predefined and required
9.6841 +# on some systems where configure will not decide to define it.
9.6842 +cat >>conftest.undefs <<\_ACEOF
9.6843 +s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
9.6844 +_ACEOF
9.6845 +
9.6846 +# Break up conftest.defines because some shells have a limit on the size
9.6847 +# of here documents, and old seds have small limits too (100 cmds).
9.6848 +echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
9.6849 +echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
9.6850 +echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
9.6851 +echo ' :' >>$CONFIG_STATUS
9.6852 +rm -f conftest.tail
9.6853 +while grep . conftest.defines >/dev/null
9.6854 +do
9.6855 + # Write a limited-size here document to $tmp/defines.sed.
9.6856 + echo ' cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
9.6857 + # Speed up: don't consider the non `#define' lines.
9.6858 + echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS
9.6859 + # Work around the forget-to-reset-the-flag bug.
9.6860 + echo 't clr' >>$CONFIG_STATUS
9.6861 + echo ': clr' >>$CONFIG_STATUS
9.6862 + sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
9.6863 + echo 'CEOF
9.6864 + sed -f $tmp/defines.sed $tmp/in >$tmp/out
9.6865 + rm -f $tmp/in
9.6866 + mv $tmp/out $tmp/in
9.6867 +' >>$CONFIG_STATUS
9.6868 + sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
9.6869 + rm -f conftest.defines
9.6870 + mv conftest.tail conftest.defines
9.6871 +done
9.6872 +rm -f conftest.defines
9.6873 +echo ' fi # grep' >>$CONFIG_STATUS
9.6874 +echo >>$CONFIG_STATUS
9.6875 +
9.6876 +# Break up conftest.undefs because some shells have a limit on the size
9.6877 +# of here documents, and old seds have small limits too (100 cmds).
9.6878 +echo ' # Handle all the #undef templates' >>$CONFIG_STATUS
9.6879 +rm -f conftest.tail
9.6880 +while grep . conftest.undefs >/dev/null
9.6881 +do
9.6882 + # Write a limited-size here document to $tmp/undefs.sed.
9.6883 + echo ' cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
9.6884 + # Speed up: don't consider the non `#undef'
9.6885 + echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS
9.6886 + # Work around the forget-to-reset-the-flag bug.
9.6887 + echo 't clr' >>$CONFIG_STATUS
9.6888 + echo ': clr' >>$CONFIG_STATUS
9.6889 + sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
9.6890 + echo 'CEOF
9.6891 + sed -f $tmp/undefs.sed $tmp/in >$tmp/out
9.6892 + rm -f $tmp/in
9.6893 + mv $tmp/out $tmp/in
9.6894 +' >>$CONFIG_STATUS
9.6895 + sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
9.6896 + rm -f conftest.undefs
9.6897 + mv conftest.tail conftest.undefs
9.6898 +done
9.6899 +rm -f conftest.undefs
9.6900 +
9.6901 +cat >>$CONFIG_STATUS <<\_ACEOF
9.6902 + # Let's still pretend it is `configure' which instantiates (i.e., don't
9.6903 + # use $as_me), people would be surprised to read:
9.6904 + # /* config.h. Generated by config.status. */
9.6905 + if test x"$ac_file" = x-; then
9.6906 + echo "/* Generated by configure. */" >$tmp/config.h
9.6907 + else
9.6908 + echo "/* $ac_file. Generated by configure. */" >$tmp/config.h
9.6909 + fi
9.6910 + cat $tmp/in >>$tmp/config.h
9.6911 + rm -f $tmp/in
9.6912 + if test x"$ac_file" != x-; then
9.6913 + if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
9.6914 + { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
9.6915 +echo "$as_me: $ac_file is unchanged" >&6;}
9.6916 + else
9.6917 + ac_dir=`(dirname "$ac_file") 2>/dev/null ||
9.6918 +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.6919 + X"$ac_file" : 'X\(//\)[^/]' \| \
9.6920 + X"$ac_file" : 'X\(//\)$' \| \
9.6921 + X"$ac_file" : 'X\(/\)' \| \
9.6922 + . : '\(.\)' 2>/dev/null ||
9.6923 +echo X"$ac_file" |
9.6924 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.6925 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.6926 + /^X\(\/\/\)$/{ s//\1/; q; }
9.6927 + /^X\(\/\).*/{ s//\1/; q; }
9.6928 + s/.*/./; q'`
9.6929 + { if $as_mkdir_p; then
9.6930 + mkdir -p "$ac_dir"
9.6931 + else
9.6932 + as_dir="$ac_dir"
9.6933 + as_dirs=
9.6934 + while test ! -d "$as_dir"; do
9.6935 + as_dirs="$as_dir $as_dirs"
9.6936 + as_dir=`(dirname "$as_dir") 2>/dev/null ||
9.6937 +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.6938 + X"$as_dir" : 'X\(//\)[^/]' \| \
9.6939 + X"$as_dir" : 'X\(//\)$' \| \
9.6940 + X"$as_dir" : 'X\(/\)' \| \
9.6941 + . : '\(.\)' 2>/dev/null ||
9.6942 +echo X"$as_dir" |
9.6943 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.6944 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.6945 + /^X\(\/\/\)$/{ s//\1/; q; }
9.6946 + /^X\(\/\).*/{ s//\1/; q; }
9.6947 + s/.*/./; q'`
9.6948 + done
9.6949 + test ! -n "$as_dirs" || mkdir $as_dirs
9.6950 + fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
9.6951 +echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
9.6952 + { (exit 1); exit 1; }; }; }
9.6953 +
9.6954 + rm -f $ac_file
9.6955 + mv $tmp/config.h $ac_file
9.6956 + fi
9.6957 + else
9.6958 + cat $tmp/config.h
9.6959 + rm -f $tmp/config.h
9.6960 + fi
9.6961 +# Compute $ac_file's index in $config_headers.
9.6962 +_am_stamp_count=1
9.6963 +for _am_header in $config_headers :; do
9.6964 + case $_am_header in
9.6965 + $ac_file | $ac_file:* )
9.6966 + break ;;
9.6967 + * )
9.6968 + _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9.6969 + esac
9.6970 +done
9.6971 +echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null ||
9.6972 +$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.6973 + X$ac_file : 'X\(//\)[^/]' \| \
9.6974 + X$ac_file : 'X\(//\)$' \| \
9.6975 + X$ac_file : 'X\(/\)' \| \
9.6976 + . : '\(.\)' 2>/dev/null ||
9.6977 +echo X$ac_file |
9.6978 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.6979 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.6980 + /^X\(\/\/\)$/{ s//\1/; q; }
9.6981 + /^X\(\/\).*/{ s//\1/; q; }
9.6982 + s/.*/./; q'`/stamp-h$_am_stamp_count
9.6983 +done
9.6984 +_ACEOF
9.6985 +cat >>$CONFIG_STATUS <<\_ACEOF
9.6986 +
9.6987 +#
9.6988 +# CONFIG_COMMANDS section.
9.6989 +#
9.6990 +for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
9.6991 + ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
9.6992 + ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
9.6993 + ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
9.6994 +$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.6995 + X"$ac_dest" : 'X\(//\)[^/]' \| \
9.6996 + X"$ac_dest" : 'X\(//\)$' \| \
9.6997 + X"$ac_dest" : 'X\(/\)' \| \
9.6998 + . : '\(.\)' 2>/dev/null ||
9.6999 +echo X"$ac_dest" |
9.7000 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.7001 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.7002 + /^X\(\/\/\)$/{ s//\1/; q; }
9.7003 + /^X\(\/\).*/{ s//\1/; q; }
9.7004 + s/.*/./; q'`
9.7005 + { if $as_mkdir_p; then
9.7006 + mkdir -p "$ac_dir"
9.7007 + else
9.7008 + as_dir="$ac_dir"
9.7009 + as_dirs=
9.7010 + while test ! -d "$as_dir"; do
9.7011 + as_dirs="$as_dir $as_dirs"
9.7012 + as_dir=`(dirname "$as_dir") 2>/dev/null ||
9.7013 +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.7014 + X"$as_dir" : 'X\(//\)[^/]' \| \
9.7015 + X"$as_dir" : 'X\(//\)$' \| \
9.7016 + X"$as_dir" : 'X\(/\)' \| \
9.7017 + . : '\(.\)' 2>/dev/null ||
9.7018 +echo X"$as_dir" |
9.7019 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.7020 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.7021 + /^X\(\/\/\)$/{ s//\1/; q; }
9.7022 + /^X\(\/\).*/{ s//\1/; q; }
9.7023 + s/.*/./; q'`
9.7024 + done
9.7025 + test ! -n "$as_dirs" || mkdir $as_dirs
9.7026 + fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
9.7027 +echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
9.7028 + { (exit 1); exit 1; }; }; }
9.7029 +
9.7030 + ac_builddir=.
9.7031 +
9.7032 +if test "$ac_dir" != .; then
9.7033 + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
9.7034 + # A "../" for each directory in $ac_dir_suffix.
9.7035 + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
9.7036 +else
9.7037 + ac_dir_suffix= ac_top_builddir=
9.7038 +fi
9.7039 +
9.7040 +case $srcdir in
9.7041 + .) # No --srcdir option. We are building in place.
9.7042 + ac_srcdir=.
9.7043 + if test -z "$ac_top_builddir"; then
9.7044 + ac_top_srcdir=.
9.7045 + else
9.7046 + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
9.7047 + fi ;;
9.7048 + [\\/]* | ?:[\\/]* ) # Absolute path.
9.7049 + ac_srcdir=$srcdir$ac_dir_suffix;
9.7050 + ac_top_srcdir=$srcdir ;;
9.7051 + *) # Relative path.
9.7052 + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
9.7053 + ac_top_srcdir=$ac_top_builddir$srcdir ;;
9.7054 +esac
9.7055 +
9.7056 +# Do not use `cd foo && pwd` to compute absolute paths, because
9.7057 +# the directories may not exist.
9.7058 +case `pwd` in
9.7059 +.) ac_abs_builddir="$ac_dir";;
9.7060 +*)
9.7061 + case "$ac_dir" in
9.7062 + .) ac_abs_builddir=`pwd`;;
9.7063 + [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
9.7064 + *) ac_abs_builddir=`pwd`/"$ac_dir";;
9.7065 + esac;;
9.7066 +esac
9.7067 +case $ac_abs_builddir in
9.7068 +.) ac_abs_top_builddir=${ac_top_builddir}.;;
9.7069 +*)
9.7070 + case ${ac_top_builddir}. in
9.7071 + .) ac_abs_top_builddir=$ac_abs_builddir;;
9.7072 + [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
9.7073 + *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
9.7074 + esac;;
9.7075 +esac
9.7076 +case $ac_abs_builddir in
9.7077 +.) ac_abs_srcdir=$ac_srcdir;;
9.7078 +*)
9.7079 + case $ac_srcdir in
9.7080 + .) ac_abs_srcdir=$ac_abs_builddir;;
9.7081 + [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
9.7082 + *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
9.7083 + esac;;
9.7084 +esac
9.7085 +case $ac_abs_builddir in
9.7086 +.) ac_abs_top_srcdir=$ac_top_srcdir;;
9.7087 +*)
9.7088 + case $ac_top_srcdir in
9.7089 + .) ac_abs_top_srcdir=$ac_abs_builddir;;
9.7090 + [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
9.7091 + *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
9.7092 + esac;;
9.7093 +esac
9.7094 +
9.7095 +
9.7096 + { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
9.7097 +echo "$as_me: executing $ac_dest commands" >&6;}
9.7098 + case $ac_dest in
9.7099 + depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
9.7100 + # Strip MF so we end up with the name of the file.
9.7101 + mf=`echo "$mf" | sed -e 's/:.*$//'`
9.7102 + # Check whether this is an Automake generated Makefile or not.
9.7103 + # We used to match only the files named `Makefile.in', but
9.7104 + # some people rename them; so instead we look at the file content.
9.7105 + # Grep'ing the first line is not enough: some people post-process
9.7106 + # each Makefile.in and add a new line on top of each file to say so.
9.7107 + # So let's grep whole file.
9.7108 + if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
9.7109 + dirpart=`(dirname "$mf") 2>/dev/null ||
9.7110 +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.7111 + X"$mf" : 'X\(//\)[^/]' \| \
9.7112 + X"$mf" : 'X\(//\)$' \| \
9.7113 + X"$mf" : 'X\(/\)' \| \
9.7114 + . : '\(.\)' 2>/dev/null ||
9.7115 +echo X"$mf" |
9.7116 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.7117 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.7118 + /^X\(\/\/\)$/{ s//\1/; q; }
9.7119 + /^X\(\/\).*/{ s//\1/; q; }
9.7120 + s/.*/./; q'`
9.7121 + else
9.7122 + continue
9.7123 + fi
9.7124 + grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue
9.7125 + # Extract the definition of DEP_FILES from the Makefile without
9.7126 + # running `make'.
9.7127 + DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
9.7128 + test -z "$DEPDIR" && continue
9.7129 + # When using ansi2knr, U may be empty or an underscore; expand it
9.7130 + U=`sed -n -e '/^U = / s///p' < "$mf"`
9.7131 + test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
9.7132 + # We invoke sed twice because it is the simplest approach to
9.7133 + # changing $(DEPDIR) to its actual value in the expansion.
9.7134 + for file in `sed -n -e '
9.7135 + /^DEP_FILES = .*\\\\$/ {
9.7136 + s/^DEP_FILES = //
9.7137 + :loop
9.7138 + s/\\\\$//
9.7139 + p
9.7140 + n
9.7141 + /\\\\$/ b loop
9.7142 + p
9.7143 + }
9.7144 + /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
9.7145 + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
9.7146 + # Make sure the directory exists.
9.7147 + test -f "$dirpart/$file" && continue
9.7148 + fdir=`(dirname "$file") 2>/dev/null ||
9.7149 +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.7150 + X"$file" : 'X\(//\)[^/]' \| \
9.7151 + X"$file" : 'X\(//\)$' \| \
9.7152 + X"$file" : 'X\(/\)' \| \
9.7153 + . : '\(.\)' 2>/dev/null ||
9.7154 +echo X"$file" |
9.7155 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.7156 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.7157 + /^X\(\/\/\)$/{ s//\1/; q; }
9.7158 + /^X\(\/\).*/{ s//\1/; q; }
9.7159 + s/.*/./; q'`
9.7160 + { if $as_mkdir_p; then
9.7161 + mkdir -p $dirpart/$fdir
9.7162 + else
9.7163 + as_dir=$dirpart/$fdir
9.7164 + as_dirs=
9.7165 + while test ! -d "$as_dir"; do
9.7166 + as_dirs="$as_dir $as_dirs"
9.7167 + as_dir=`(dirname "$as_dir") 2>/dev/null ||
9.7168 +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9.7169 + X"$as_dir" : 'X\(//\)[^/]' \| \
9.7170 + X"$as_dir" : 'X\(//\)$' \| \
9.7171 + X"$as_dir" : 'X\(/\)' \| \
9.7172 + . : '\(.\)' 2>/dev/null ||
9.7173 +echo X"$as_dir" |
9.7174 + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
9.7175 + /^X\(\/\/\)[^/].*/{ s//\1/; q; }
9.7176 + /^X\(\/\/\)$/{ s//\1/; q; }
9.7177 + /^X\(\/\).*/{ s//\1/; q; }
9.7178 + s/.*/./; q'`
9.7179 + done
9.7180 + test ! -n "$as_dirs" || mkdir $as_dirs
9.7181 + fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5
9.7182 +echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;}
9.7183 + { (exit 1); exit 1; }; }; }
9.7184 +
9.7185 + # echo "creating $dirpart/$file"
9.7186 + echo '# dummy' > "$dirpart/$file"
9.7187 + done
9.7188 +done
9.7189 + ;;
9.7190 + default-1 ) case "$CONFIG_FILES" in *po/Makefile.in*)
9.7191 + sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
9.7192 + esac ;;
9.7193 + esac
9.7194 +done
9.7195 +_ACEOF
9.7196 +
9.7197 +cat >>$CONFIG_STATUS <<\_ACEOF
9.7198 +
9.7199 +{ (exit 0); exit 0; }
9.7200 +_ACEOF
9.7201 +chmod +x $CONFIG_STATUS
9.7202 +ac_clean_files=$ac_clean_files_save
9.7203 +
9.7204 +
9.7205 +# configure is writing to config.log, and then calls config.status.
9.7206 +# config.status does its own redirection, appending to config.log.
9.7207 +# Unfortunately, on DOS this fails, as config.log is still kept open
9.7208 +# by configure, so config.status won't be able to write to it; its
9.7209 +# output is simply discarded. So we exec the FD to /dev/null,
9.7210 +# effectively closing config.log, so it can be properly (re)opened and
9.7211 +# appended to by config.status. When coming back to configure, we
9.7212 +# need to make the FD available again.
9.7213 +if test "$no_create" != yes; then
9.7214 + ac_cs_success=:
9.7215 + ac_config_status_args=
9.7216 + test "$silent" = yes &&
9.7217 + ac_config_status_args="$ac_config_status_args --quiet"
9.7218 + exec 5>/dev/null
9.7219 + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
9.7220 + exec 5>>config.log
9.7221 + # Use ||, not &&, to avoid exiting from the if with $? = 1, which
9.7222 + # would make configure fail if this is the last instruction.
9.7223 + $ac_cs_success || { (exit 1); exit 1; }
9.7224 +fi
9.7225 +
9.7226 +
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/configure.in Sat Mar 13 00:03:32 2004 +0000
10.3 @@ -0,0 +1,31 @@
10.4 +dnl Process this file with autoconf to produce a configure script.
10.5 +
10.6 +AC_INIT(configure.in)
10.7 +AM_INIT_AUTOMAKE(dream, 0.1)
10.8 +AM_MAINTAINER_MODE
10.9 +AM_CONFIG_HEADER(config.h)
10.10 +
10.11 +AC_ISC_POSIX
10.12 +AC_PROG_CC
10.13 +AM_PROG_CC_STDC
10.14 +AC_HEADER_STDC
10.15 +
10.16 +pkg_modules="libgnomeui-2.0"
10.17 +PKG_CHECK_MODULES(PACKAGE, [$pkg_modules])
10.18 +AC_SUBST(PACKAGE_CFLAGS)
10.19 +AC_SUBST(PACKAGE_LIBS)
10.20 +
10.21 +GETTEXT_PACKAGE=dream
10.22 +AC_SUBST(GETTEXT_PACKAGE)
10.23 +AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE")
10.24 +
10.25 +dnl Add the languages which your application supports here.
10.26 +ALL_LINGUAS=""
10.27 +AM_GLIB_GNU_GETTEXT
10.28 +
10.29 +AC_OUTPUT([
10.30 +Makefile
10.31 +src/Makefile
10.32 +po/Makefile.in
10.33 +])
10.34 +
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
11.2 +++ b/dream.glade Sat Mar 13 00:03:32 2004 +0000
11.3 @@ -0,0 +1,847 @@
11.4 +<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
11.5 +<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
11.6 +
11.7 +<glade-interface>
11.8 +<requires lib="gnome"/>
11.9 +<requires lib="bonobo"/>
11.10 +
11.11 +<widget class="GnomeApp" id="debug_win">
11.12 + <property name="visible">True</property>
11.13 + <property name="title" translatable="yes">DreamOn! Debugger</property>
11.14 + <property name="type">GTK_WINDOW_TOPLEVEL</property>
11.15 + <property name="window_position">GTK_WIN_POS_NONE</property>
11.16 + <property name="modal">False</property>
11.17 + <property name="default_width">1000</property>
11.18 + <property name="default_height">700</property>
11.19 + <property name="resizable">True</property>
11.20 + <property name="destroy_with_parent">False</property>
11.21 + <property name="enable_layout_config">True</property>
11.22 + <signal name="delete_event" handler="on_debug_win_delete_event"/>
11.23 +
11.24 + <child internal-child="dock">
11.25 + <widget class="BonoboDock" id="dock1">
11.26 + <property name="visible">True</property>
11.27 + <property name="allow_floating">True</property>
11.28 +
11.29 + <child>
11.30 + <widget class="BonoboDockItem" id="dockitem1">
11.31 + <property name="border_width">2</property>
11.32 + <property name="visible">True</property>
11.33 + <property name="shadow_type">GTK_SHADOW_OUT</property>
11.34 +
11.35 + <child>
11.36 + <widget class="GtkMenuBar" id="menubar1">
11.37 + <property name="visible">True</property>
11.38 +
11.39 + <child>
11.40 + <widget class="GtkMenuItem" id="file1">
11.41 + <property name="visible">True</property>
11.42 + <property name="label" translatable="yes">_File</property>
11.43 + <property name="use_underline">True</property>
11.44 +
11.45 + <child>
11.46 + <widget class="GtkMenu" id="file1_menu">
11.47 + <property name="visible">True</property>
11.48 +
11.49 + <child>
11.50 + <widget class="GtkImageMenuItem" id="new_file1">
11.51 + <property name="visible">True</property>
11.52 + <property name="label" translatable="yes">gtk-new</property>
11.53 + <property name="use_underline">True</property>
11.54 + <signal name="activate" handler="on_new_file1_activate"/>
11.55 + </widget>
11.56 + </child>
11.57 +
11.58 + <child>
11.59 + <widget class="GtkImageMenuItem" id="open1">
11.60 + <property name="visible">True</property>
11.61 + <property name="label" translatable="yes">gtk-open</property>
11.62 + <property name="use_underline">True</property>
11.63 + <signal name="activate" handler="on_open1_activate"/>
11.64 + </widget>
11.65 + </child>
11.66 +
11.67 + <child>
11.68 + <widget class="GtkImageMenuItem" id="save1">
11.69 + <property name="visible">True</property>
11.70 + <property name="label" translatable="yes">gtk-save</property>
11.71 + <property name="use_underline">True</property>
11.72 + <signal name="activate" handler="on_save1_activate"/>
11.73 + </widget>
11.74 + </child>
11.75 +
11.76 + <child>
11.77 + <widget class="GtkImageMenuItem" id="save_as1">
11.78 + <property name="visible">True</property>
11.79 + <property name="label" translatable="yes">gtk-save-as</property>
11.80 + <property name="use_underline">True</property>
11.81 + <signal name="activate" handler="on_save_as1_activate"/>
11.82 + </widget>
11.83 + </child>
11.84 +
11.85 + <child>
11.86 + <widget class="GtkMenuItem" id="separator1">
11.87 + <property name="visible">True</property>
11.88 + </widget>
11.89 + </child>
11.90 +
11.91 + <child>
11.92 + <widget class="GtkImageMenuItem" id="exit1">
11.93 + <property name="visible">True</property>
11.94 + <property name="label" translatable="yes">gtk-quit</property>
11.95 + <property name="use_underline">True</property>
11.96 + <signal name="activate" handler="on_exit1_activate"/>
11.97 + </widget>
11.98 + </child>
11.99 + </widget>
11.100 + </child>
11.101 + </widget>
11.102 + </child>
11.103 +
11.104 + <child>
11.105 + <widget class="GtkMenuItem" id="view1">
11.106 + <property name="visible">True</property>
11.107 + <property name="label" translatable="yes">_View</property>
11.108 + <property name="use_underline">True</property>
11.109 +
11.110 + <child>
11.111 + <widget class="GtkMenu" id="view1_menu">
11.112 + <property name="visible">True</property>
11.113 +
11.114 + <child>
11.115 + <widget class="GtkMenuItem" id="mem_mapped_regs1">
11.116 + <property name="visible">True</property>
11.117 + <property name="label" translatable="yes">Mem mapped Regs</property>
11.118 + <property name="use_underline">True</property>
11.119 + <signal name="activate" handler="on_mem_mapped_regs1_activate"/>
11.120 + </widget>
11.121 + </child>
11.122 + </widget>
11.123 + </child>
11.124 + </widget>
11.125 + </child>
11.126 +
11.127 + <child>
11.128 + <widget class="GtkMenuItem" id="settings1">
11.129 + <property name="visible">True</property>
11.130 + <property name="label" translatable="yes">_Settings</property>
11.131 + <property name="use_underline">True</property>
11.132 +
11.133 + <child>
11.134 + <widget class="GtkMenu" id="settings1_menu">
11.135 + <property name="visible">True</property>
11.136 +
11.137 + <child>
11.138 + <widget class="GtkImageMenuItem" id="preferences1">
11.139 + <property name="visible">True</property>
11.140 + <property name="label" translatable="yes">gtk-preferences</property>
11.141 + <property name="use_underline">True</property>
11.142 + <signal name="activate" handler="on_preferences1_activate"/>
11.143 + </widget>
11.144 + </child>
11.145 + </widget>
11.146 + </child>
11.147 + </widget>
11.148 + </child>
11.149 +
11.150 + <child>
11.151 + <widget class="GtkMenuItem" id="help1">
11.152 + <property name="visible">True</property>
11.153 + <property name="label" translatable="yes">_Help</property>
11.154 + <property name="use_underline">True</property>
11.155 +
11.156 + <child>
11.157 + <widget class="GtkMenu" id="help1_menu">
11.158 + <property name="visible">True</property>
11.159 +
11.160 + <child>
11.161 + <widget class="GtkImageMenuItem" id="about1">
11.162 + <property name="visible">True</property>
11.163 + <property name="label" translatable="yes">gnome-stock-about</property>
11.164 + <property name="use_underline">True</property>
11.165 + <signal name="activate" handler="on_about1_activate"/>
11.166 + </widget>
11.167 + </child>
11.168 + </widget>
11.169 + </child>
11.170 + </widget>
11.171 + </child>
11.172 + </widget>
11.173 + </child>
11.174 + </widget>
11.175 + <packing>
11.176 + <property name="placement">BONOBO_DOCK_TOP</property>
11.177 + <property name="band">0</property>
11.178 + <property name="position">0</property>
11.179 + <property name="offset">0</property>
11.180 + <property name="behavior">BONOBO_DOCK_ITEM_BEH_EXCLUSIVE|BONOBO_DOCK_ITEM_BEH_NEVER_VERTICAL</property>
11.181 + </packing>
11.182 + </child>
11.183 +
11.184 + <child>
11.185 + <widget class="BonoboDockItem" id="dockitem2">
11.186 + <property name="border_width">1</property>
11.187 + <property name="visible">True</property>
11.188 + <property name="shadow_type">GTK_SHADOW_OUT</property>
11.189 +
11.190 + <child>
11.191 + <widget class="GtkToolbar" id="toolbar1">
11.192 + <property name="border_width">1</property>
11.193 + <property name="visible">True</property>
11.194 + <property name="orientation">GTK_ORIENTATION_HORIZONTAL</property>
11.195 + <property name="toolbar_style">GTK_TOOLBAR_BOTH</property>
11.196 + <property name="tooltips">True</property>
11.197 +
11.198 + <child>
11.199 + <widget class="button" id="load_btn">
11.200 + <property name="visible">True</property>
11.201 + <property name="tooltip" translatable="yes">New File</property>
11.202 + <property name="label" translatable="yes">Load</property>
11.203 + <property name="use_underline">True</property>
11.204 + <property name="stock_pixmap">gtk-open</property>
11.205 + <signal name="clicked" handler="on_load_btn_clicked"/>
11.206 + </widget>
11.207 + </child>
11.208 +
11.209 + <child>
11.210 + <widget class="button" id="reset_btn">
11.211 + <property name="visible">True</property>
11.212 + <property name="tooltip" translatable="yes">Open File</property>
11.213 + <property name="label" translatable="yes">Reset</property>
11.214 + <property name="use_underline">True</property>
11.215 + <property name="stock_pixmap">gtk-refresh</property>
11.216 + <signal name="clicked" handler="on_reset_btn_clicked"/>
11.217 + </widget>
11.218 + </child>
11.219 +
11.220 + <child>
11.221 + <widget class="button" id="stop_btn">
11.222 + <property name="visible">True</property>
11.223 + <property name="tooltip" translatable="yes">Save File</property>
11.224 + <property name="label" translatable="yes">Stop</property>
11.225 + <property name="use_underline">True</property>
11.226 + <property name="stock_pixmap">gtk-stop</property>
11.227 + <signal name="clicked" handler="on_stop_btn_clicked"/>
11.228 + </widget>
11.229 + </child>
11.230 +
11.231 + <child>
11.232 + <widget class="button" id="step_btn">
11.233 + <property name="visible">True</property>
11.234 + <property name="label" translatable="yes">Step</property>
11.235 + <property name="use_underline">True</property>
11.236 + <property name="stock_pixmap">gtk-redo</property>
11.237 + <signal name="clicked" handler="on_step_btn_clicked"/>
11.238 + </widget>
11.239 + </child>
11.240 +
11.241 + <child>
11.242 + <widget class="button" id="run_btn">
11.243 + <property name="visible">True</property>
11.244 + <property name="label" translatable="yes">Run</property>
11.245 + <property name="use_underline">True</property>
11.246 + <property name="stock_pixmap">gtk-go-forward</property>
11.247 + <signal name="clicked" handler="on_run_btn_clicked"/>
11.248 + </widget>
11.249 + </child>
11.250 +
11.251 + <child>
11.252 + <widget class="button" id="runto_btn">
11.253 + <property name="visible">True</property>
11.254 + <property name="label" translatable="yes">Run to</property>
11.255 + <property name="use_underline">True</property>
11.256 + <property name="stock_pixmap">gtk-goto-last</property>
11.257 + <signal name="clicked" handler="on_runto_btn_clicked"/>
11.258 + </widget>
11.259 + </child>
11.260 +
11.261 + <child>
11.262 + <widget class="button" id="break_btn">
11.263 + <property name="visible">True</property>
11.264 + <property name="label" translatable="yes">Break</property>
11.265 + <property name="use_underline">True</property>
11.266 + <property name="stock_pixmap">gtk-close</property>
11.267 + <signal name="clicked" handler="on_break_btn_clicked"/>
11.268 + </widget>
11.269 + </child>
11.270 + </widget>
11.271 + </child>
11.272 + </widget>
11.273 + <packing>
11.274 + <property name="placement">BONOBO_DOCK_TOP</property>
11.275 + <property name="band">1</property>
11.276 + <property name="position">0</property>
11.277 + <property name="offset">0</property>
11.278 + <property name="behavior">BONOBO_DOCK_ITEM_BEH_EXCLUSIVE</property>
11.279 + </packing>
11.280 + </child>
11.281 +
11.282 + <child>
11.283 + <widget class="GtkVPaned" id="vpaned1">
11.284 + <property name="visible">True</property>
11.285 + <property name="can_focus">True</property>
11.286 + <property name="position">430</property>
11.287 +
11.288 + <child>
11.289 + <widget class="GtkHPaned" id="hpaned1">
11.290 + <property name="visible">True</property>
11.291 + <property name="can_focus">True</property>
11.292 + <property name="position">800</property>
11.293 +
11.294 + <child>
11.295 + <widget class="GtkVBox" id="vbox2">
11.296 + <property name="visible">True</property>
11.297 + <property name="homogeneous">False</property>
11.298 + <property name="spacing">0</property>
11.299 +
11.300 + <child>
11.301 + <widget class="GtkHBox" id="hbox1">
11.302 + <property name="visible">True</property>
11.303 + <property name="homogeneous">False</property>
11.304 + <property name="spacing">0</property>
11.305 +
11.306 + <child>
11.307 + <widget class="GtkLabel" id="label21">
11.308 + <property name="visible">True</property>
11.309 + <property name="label" translatable="yes">Page</property>
11.310 + <property name="use_underline">False</property>
11.311 + <property name="use_markup">False</property>
11.312 + <property name="justify">GTK_JUSTIFY_CENTER</property>
11.313 + <property name="wrap">False</property>
11.314 + <property name="selectable">False</property>
11.315 + <property name="xalign">0.5</property>
11.316 + <property name="yalign">0.5</property>
11.317 + <property name="xpad">0</property>
11.318 + <property name="ypad">0</property>
11.319 + </widget>
11.320 + <packing>
11.321 + <property name="padding">4</property>
11.322 + <property name="expand">False</property>
11.323 + <property name="fill">False</property>
11.324 + </packing>
11.325 + </child>
11.326 +
11.327 + <child>
11.328 + <widget class="GtkEntry" id="page_field">
11.329 + <property name="visible">True</property>
11.330 + <property name="can_focus">True</property>
11.331 + <property name="editable">True</property>
11.332 + <property name="visibility">True</property>
11.333 + <property name="max_length">0</property>
11.334 + <property name="text" translatable="yes"></property>
11.335 + <property name="has_frame">True</property>
11.336 + <property name="invisible_char" translatable="yes">*</property>
11.337 + <property name="activates_default">False</property>
11.338 + <signal name="key_press_event" handler="on_page_field_key_press_event"/>
11.339 + </widget>
11.340 + <packing>
11.341 + <property name="padding">0</property>
11.342 + <property name="expand">False</property>
11.343 + <property name="fill">True</property>
11.344 + </packing>
11.345 + </child>
11.346 +
11.347 + <child>
11.348 + <widget class="GtkCheckButton" id="page_locked_btn">
11.349 + <property name="visible">True</property>
11.350 + <property name="can_focus">True</property>
11.351 + <property name="label" translatable="yes">Locked</property>
11.352 + <property name="use_underline">True</property>
11.353 + <property name="relief">GTK_RELIEF_NORMAL</property>
11.354 + <property name="active">False</property>
11.355 + <property name="inconsistent">False</property>
11.356 + <property name="draw_indicator">True</property>
11.357 + <signal name="toggled" handler="on_page_locked_btn_toggled"/>
11.358 + </widget>
11.359 + <packing>
11.360 + <property name="padding">5</property>
11.361 + <property name="expand">False</property>
11.362 + <property name="fill">False</property>
11.363 + </packing>
11.364 + </child>
11.365 +
11.366 + <child>
11.367 + <widget class="GtkButton" id="jump_pc_btn">
11.368 + <property name="visible">True</property>
11.369 + <property name="can_focus">True</property>
11.370 + <property name="label" translatable="yes"> Jump to PC </property>
11.371 + <property name="use_underline">True</property>
11.372 + <property name="relief">GTK_RELIEF_NORMAL</property>
11.373 + <signal name="clicked" handler="on_jump_pc_btn_clicked"/>
11.374 + </widget>
11.375 + <packing>
11.376 + <property name="padding">4</property>
11.377 + <property name="expand">False</property>
11.378 + <property name="fill">False</property>
11.379 + </packing>
11.380 + </child>
11.381 +
11.382 + <child>
11.383 + <widget class="GtkLabel" id="label22">
11.384 + <property name="visible">True</property>
11.385 + <property name="label" translatable="yes">Mode</property>
11.386 + <property name="use_underline">False</property>
11.387 + <property name="use_markup">False</property>
11.388 + <property name="justify">GTK_JUSTIFY_RIGHT</property>
11.389 + <property name="wrap">False</property>
11.390 + <property name="selectable">False</property>
11.391 + <property name="xalign">1</property>
11.392 + <property name="yalign">0.5</property>
11.393 + <property name="xpad">0</property>
11.394 + <property name="ypad">0</property>
11.395 + </widget>
11.396 + <packing>
11.397 + <property name="padding">5</property>
11.398 + <property name="expand">False</property>
11.399 + <property name="fill">False</property>
11.400 + </packing>
11.401 + </child>
11.402 +
11.403 + <child>
11.404 + <widget class="GtkCombo" id="mode_box">
11.405 + <property name="visible">True</property>
11.406 + <property name="value_in_list">False</property>
11.407 + <property name="allow_empty">True</property>
11.408 + <property name="case_sensitive">False</property>
11.409 + <property name="enable_arrow_keys">True</property>
11.410 + <property name="enable_arrows_always">False</property>
11.411 +
11.412 + <child internal-child="entry">
11.413 + <widget class="GtkEntry" id="mode_field">
11.414 + <property name="visible">True</property>
11.415 + <property name="can_focus">True</property>
11.416 + <property name="editable">True</property>
11.417 + <property name="visibility">True</property>
11.418 + <property name="max_length">0</property>
11.419 + <property name="text" translatable="yes"></property>
11.420 + <property name="has_frame">True</property>
11.421 + <property name="invisible_char" translatable="yes">*</property>
11.422 + <property name="activates_default">False</property>
11.423 + <signal name="changed" handler="on_mode_field_changed"/>
11.424 + </widget>
11.425 + </child>
11.426 +
11.427 + <child internal-child="list">
11.428 + <widget class="GtkList" id="convertwidget1">
11.429 + <property name="visible">True</property>
11.430 + <property name="selection_mode">GTK_SELECTION_BROWSE</property>
11.431 +
11.432 + <child>
11.433 + <widget class="GtkListItem" id="convertwidget2">
11.434 + <property name="visible">True</property>
11.435 +
11.436 + <child>
11.437 + <widget class="GtkLabel" id="convertwidget3">
11.438 + <property name="visible">True</property>
11.439 + <property name="label" translatable="yes"></property>
11.440 + <property name="use_underline">False</property>
11.441 + <property name="use_markup">False</property>
11.442 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.443 + <property name="wrap">False</property>
11.444 + <property name="selectable">False</property>
11.445 + <property name="xalign">0</property>
11.446 + <property name="yalign">0.5</property>
11.447 + <property name="xpad">0</property>
11.448 + <property name="ypad">0</property>
11.449 + </widget>
11.450 + </child>
11.451 + </widget>
11.452 + </child>
11.453 + </widget>
11.454 + </child>
11.455 + </widget>
11.456 + <packing>
11.457 + <property name="padding">0</property>
11.458 + <property name="expand">False</property>
11.459 + <property name="fill">False</property>
11.460 + </packing>
11.461 + </child>
11.462 +
11.463 + <child>
11.464 + <widget class="GtkLabel" id="label23">
11.465 + <property name="visible">True</property>
11.466 + <property name="label" translatable="yes"></property>
11.467 + <property name="use_underline">False</property>
11.468 + <property name="use_markup">False</property>
11.469 + <property name="justify">GTK_JUSTIFY_CENTER</property>
11.470 + <property name="wrap">False</property>
11.471 + <property name="selectable">False</property>
11.472 + <property name="xalign">0.5</property>
11.473 + <property name="yalign">0.5</property>
11.474 + <property name="xpad">0</property>
11.475 + <property name="ypad">0</property>
11.476 + </widget>
11.477 + <packing>
11.478 + <property name="padding">4</property>
11.479 + <property name="expand">True</property>
11.480 + <property name="fill">True</property>
11.481 + </packing>
11.482 + </child>
11.483 + </widget>
11.484 + <packing>
11.485 + <property name="padding">3</property>
11.486 + <property name="expand">False</property>
11.487 + <property name="fill">False</property>
11.488 + </packing>
11.489 + </child>
11.490 +
11.491 + <child>
11.492 + <widget class="GtkScrolledWindow" id="scrolledwindow7">
11.493 + <property name="visible">True</property>
11.494 + <property name="hscrollbar_policy">GTK_POLICY_ALWAYS</property>
11.495 + <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
11.496 + <property name="shadow_type">GTK_SHADOW_IN</property>
11.497 + <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
11.498 +
11.499 + <child>
11.500 + <widget class="GtkCList" id="disasm_list">
11.501 + <property name="visible">True</property>
11.502 + <property name="can_focus">True</property>
11.503 + <property name="n_columns">4</property>
11.504 + <property name="column_widths">80,80,80,80</property>
11.505 + <property name="selection_mode">GTK_SELECTION_SINGLE</property>
11.506 + <property name="show_titles">False</property>
11.507 + <property name="shadow_type">GTK_SHADOW_IN</property>
11.508 + <signal name="select_row" handler="on_disasm_list_select_row"/>
11.509 + <signal name="unselect_row" handler="on_disasm_list_unselect_row"/>
11.510 +
11.511 + <child>
11.512 + <widget class="GtkLabel" id="label24">
11.513 + <property name="visible">True</property>
11.514 + <property name="label" translatable="yes"></property>
11.515 + <property name="use_underline">False</property>
11.516 + <property name="use_markup">False</property>
11.517 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.518 + <property name="wrap">False</property>
11.519 + <property name="selectable">False</property>
11.520 + <property name="xalign">0.5</property>
11.521 + <property name="yalign">0.5</property>
11.522 + <property name="xpad">0</property>
11.523 + <property name="ypad">0</property>
11.524 + </widget>
11.525 + </child>
11.526 +
11.527 + <child>
11.528 + <widget class="GtkLabel" id="label27">
11.529 + <property name="visible">True</property>
11.530 + <property name="label" translatable="yes"></property>
11.531 + <property name="use_underline">False</property>
11.532 + <property name="use_markup">False</property>
11.533 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.534 + <property name="wrap">False</property>
11.535 + <property name="selectable">False</property>
11.536 + <property name="xalign">0.5</property>
11.537 + <property name="yalign">0.5</property>
11.538 + <property name="xpad">0</property>
11.539 + <property name="ypad">0</property>
11.540 + </widget>
11.541 + </child>
11.542 +
11.543 + <child>
11.544 + <widget class="GtkLabel" id="label28">
11.545 + <property name="visible">True</property>
11.546 + <property name="label" translatable="yes"></property>
11.547 + <property name="use_underline">False</property>
11.548 + <property name="use_markup">False</property>
11.549 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.550 + <property name="wrap">False</property>
11.551 + <property name="selectable">False</property>
11.552 + <property name="xalign">0.5</property>
11.553 + <property name="yalign">0.5</property>
11.554 + <property name="xpad">0</property>
11.555 + <property name="ypad">0</property>
11.556 + </widget>
11.557 + </child>
11.558 +
11.559 + <child>
11.560 + <widget class="GtkLabel" id="label29">
11.561 + <property name="visible">True</property>
11.562 + <property name="label" translatable="yes"></property>
11.563 + <property name="use_underline">False</property>
11.564 + <property name="use_markup">False</property>
11.565 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.566 + <property name="wrap">False</property>
11.567 + <property name="selectable">False</property>
11.568 + <property name="xalign">0.5</property>
11.569 + <property name="yalign">0.5</property>
11.570 + <property name="xpad">0</property>
11.571 + <property name="ypad">0</property>
11.572 + </widget>
11.573 + </child>
11.574 + </widget>
11.575 + </child>
11.576 + </widget>
11.577 + <packing>
11.578 + <property name="padding">0</property>
11.579 + <property name="expand">True</property>
11.580 + <property name="fill">True</property>
11.581 + </packing>
11.582 + </child>
11.583 + </widget>
11.584 + <packing>
11.585 + <property name="shrink">True</property>
11.586 + <property name="resize">False</property>
11.587 + </packing>
11.588 + </child>
11.589 +
11.590 + <child>
11.591 + <widget class="GtkScrolledWindow" id="scrolledwindow4">
11.592 + <property name="visible">True</property>
11.593 + <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
11.594 + <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
11.595 + <property name="shadow_type">GTK_SHADOW_IN</property>
11.596 + <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
11.597 +
11.598 + <child>
11.599 + <widget class="GtkCList" id="reg_list">
11.600 + <property name="visible">True</property>
11.601 + <property name="can_focus">True</property>
11.602 + <property name="n_columns">2</property>
11.603 + <property name="column_widths">80,80</property>
11.604 + <property name="selection_mode">GTK_SELECTION_SINGLE</property>
11.605 + <property name="show_titles">False</property>
11.606 + <property name="shadow_type">GTK_SHADOW_IN</property>
11.607 +
11.608 + <child>
11.609 + <widget class="GtkLabel" id="label25">
11.610 + <property name="visible">True</property>
11.611 + <property name="label" translatable="yes"></property>
11.612 + <property name="use_underline">False</property>
11.613 + <property name="use_markup">False</property>
11.614 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.615 + <property name="wrap">False</property>
11.616 + <property name="selectable">False</property>
11.617 + <property name="xalign">0.5</property>
11.618 + <property name="yalign">0.5</property>
11.619 + <property name="xpad">0</property>
11.620 + <property name="ypad">0</property>
11.621 + </widget>
11.622 + </child>
11.623 +
11.624 + <child>
11.625 + <widget class="GtkLabel" id="label30">
11.626 + <property name="visible">True</property>
11.627 + <property name="label" translatable="yes"></property>
11.628 + <property name="use_underline">False</property>
11.629 + <property name="use_markup">False</property>
11.630 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.631 + <property name="wrap">False</property>
11.632 + <property name="selectable">False</property>
11.633 + <property name="xalign">0.5</property>
11.634 + <property name="yalign">0.5</property>
11.635 + <property name="xpad">0</property>
11.636 + <property name="ypad">0</property>
11.637 + </widget>
11.638 + </child>
11.639 + </widget>
11.640 + </child>
11.641 + </widget>
11.642 + <packing>
11.643 + <property name="shrink">True</property>
11.644 + <property name="resize">False</property>
11.645 + </packing>
11.646 + </child>
11.647 + </widget>
11.648 + <packing>
11.649 + <property name="shrink">True</property>
11.650 + <property name="resize">True</property>
11.651 + </packing>
11.652 + </child>
11.653 +
11.654 + <child>
11.655 + <widget class="GtkScrolledWindow" id="scrolledwindow8">
11.656 + <property name="visible">True</property>
11.657 + <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
11.658 + <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
11.659 + <property name="shadow_type">GTK_SHADOW_IN</property>
11.660 + <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
11.661 +
11.662 + <child>
11.663 + <widget class="GtkCList" id="output_list">
11.664 + <property name="visible">True</property>
11.665 + <property name="can_focus">True</property>
11.666 + <property name="n_columns">3</property>
11.667 + <property name="column_widths">80,80,80</property>
11.668 + <property name="selection_mode">GTK_SELECTION_SINGLE</property>
11.669 + <property name="show_titles">False</property>
11.670 + <property name="shadow_type">GTK_SHADOW_IN</property>
11.671 + <signal name="select_row" handler="on_output_list_select_row"/>
11.672 +
11.673 + <child>
11.674 + <widget class="GtkLabel" id="label26">
11.675 + <property name="visible">True</property>
11.676 + <property name="label" translatable="yes"></property>
11.677 + <property name="use_underline">False</property>
11.678 + <property name="use_markup">False</property>
11.679 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.680 + <property name="wrap">False</property>
11.681 + <property name="selectable">False</property>
11.682 + <property name="xalign">0.5</property>
11.683 + <property name="yalign">0.5</property>
11.684 + <property name="xpad">0</property>
11.685 + <property name="ypad">0</property>
11.686 + </widget>
11.687 + </child>
11.688 +
11.689 + <child>
11.690 + <widget class="GtkLabel" id="label31">
11.691 + <property name="visible">True</property>
11.692 + <property name="label" translatable="yes"></property>
11.693 + <property name="use_underline">False</property>
11.694 + <property name="use_markup">False</property>
11.695 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.696 + <property name="wrap">False</property>
11.697 + <property name="selectable">False</property>
11.698 + <property name="xalign">0.5</property>
11.699 + <property name="yalign">0.5</property>
11.700 + <property name="xpad">0</property>
11.701 + <property name="ypad">0</property>
11.702 + </widget>
11.703 + </child>
11.704 +
11.705 + <child>
11.706 + <widget class="GtkLabel" id="label32">
11.707 + <property name="visible">True</property>
11.708 + <property name="label" translatable="yes"></property>
11.709 + <property name="use_underline">False</property>
11.710 + <property name="use_markup">False</property>
11.711 + <property name="justify">GTK_JUSTIFY_LEFT</property>
11.712 + <property name="wrap">False</property>
11.713 + <property name="selectable">False</property>
11.714 + <property name="xalign">0.5</property>
11.715 + <property name="yalign">0.5</property>
11.716 + <property name="xpad">0</property>
11.717 + <property name="ypad">0</property>
11.718 + </widget>
11.719 + </child>
11.720 + </widget>
11.721 + </child>
11.722 + </widget>
11.723 + <packing>
11.724 + <property name="shrink">True</property>
11.725 + <property name="resize">False</property>
11.726 + </packing>
11.727 + </child>
11.728 + </widget>
11.729 + </child>
11.730 + </widget>
11.731 + <packing>
11.732 + <property name="padding">0</property>
11.733 + <property name="expand">True</property>
11.734 + <property name="fill">True</property>
11.735 + </packing>
11.736 + </child>
11.737 +
11.738 + <child internal-child="appbar">
11.739 + <widget class="GnomeAppBar" id="debug_appbar">
11.740 + <property name="visible">True</property>
11.741 + <property name="has_progress">True</property>
11.742 + <property name="has_status">True</property>
11.743 + </widget>
11.744 + <packing>
11.745 + <property name="padding">0</property>
11.746 + <property name="expand">True</property>
11.747 + <property name="fill">True</property>
11.748 + </packing>
11.749 + </child>
11.750 +</widget>
11.751 +
11.752 +<widget class="GtkWindow" id="mmr_win">
11.753 + <property name="visible">True</property>
11.754 + <property name="title" translatable="yes">DreamOn! - Memory-Mapped Registers</property>
11.755 + <property name="type">GTK_WINDOW_TOPLEVEL</property>
11.756 + <property name="window_position">GTK_WIN_POS_NONE</property>
11.757 + <property name="modal">False</property>
11.758 + <property name="default_width">600</property>
11.759 + <property name="default_height">600</property>
11.760 + <property name="resizable">True</property>
11.761 + <property name="destroy_with_parent">False</property>
11.762 + <signal name="delete_event" handler="on_mmr_win_delete_event"/>
11.763 +
11.764 + <child>
11.765 + <widget class="GtkVBox" id="vbox1">
11.766 + <property name="visible">True</property>
11.767 + <property name="homogeneous">False</property>
11.768 + <property name="spacing">0</property>
11.769 +
11.770 + <child>
11.771 + <widget class="GtkNotebook" id="mmr_notebook">
11.772 + <property name="visible">True</property>
11.773 + <property name="can_focus">True</property>
11.774 + <property name="show_tabs">True</property>
11.775 + <property name="show_border">True</property>
11.776 + <property name="tab_pos">GTK_POS_LEFT</property>
11.777 + <property name="scrollable">False</property>
11.778 + <property name="enable_popup">False</property>
11.779 +
11.780 + <child>
11.781 + <placeholder/>
11.782 + </child>
11.783 +
11.784 + <child>
11.785 + <widget class="GtkLabel" id="label16">
11.786 + <property name="visible">True</property>
11.787 + <property name="label" translatable="yes">label16</property>
11.788 + <property name="use_underline">False</property>
11.789 + <property name="use_markup">False</property>
11.790 + <property name="justify">GTK_JUSTIFY_CENTER</property>
11.791 + <property name="wrap">False</property>
11.792 + <property name="selectable">False</property>
11.793 + <property name="xalign">0.5</property>
11.794 + <property name="yalign">0.5</property>
11.795 + <property name="xpad">0</property>
11.796 + <property name="ypad">0</property>
11.797 + </widget>
11.798 + <packing>
11.799 + <property name="type">tab</property>
11.800 + </packing>
11.801 + </child>
11.802 + </widget>
11.803 + <packing>
11.804 + <property name="padding">0</property>
11.805 + <property name="expand">True</property>
11.806 + <property name="fill">True</property>
11.807 + </packing>
11.808 + </child>
11.809 +
11.810 + <child>
11.811 + <widget class="GtkHButtonBox" id="hbuttonbox1">
11.812 + <property name="visible">True</property>
11.813 + <property name="layout_style">GTK_BUTTONBOX_DEFAULT_STYLE</property>
11.814 + <property name="spacing">30</property>
11.815 +
11.816 + <child>
11.817 + <widget class="GtkButton" id="mmr_close">
11.818 + <property name="visible">True</property>
11.819 + <property name="can_default">True</property>
11.820 + <property name="can_focus">True</property>
11.821 + <property name="label" translatable="yes">Close</property>
11.822 + <property name="use_underline">True</property>
11.823 + <property name="relief">GTK_RELIEF_NORMAL</property>
11.824 + <signal name="clicked" handler="on_mmr_close_clicked"/>
11.825 + </widget>
11.826 + </child>
11.827 + </widget>
11.828 + <packing>
11.829 + <property name="padding">0</property>
11.830 + <property name="expand">False</property>
11.831 + <property name="fill">True</property>
11.832 + </packing>
11.833 + </child>
11.834 + </widget>
11.835 + </child>
11.836 +</widget>
11.837 +
11.838 +<widget class="GnomeAbout" id="about_win">
11.839 + <property name="border_width">1</property>
11.840 + <property name="visible">True</property>
11.841 + <property name="destroy_with_parent">False</property>
11.842 + <property name="logo">dcemu.gif</property>
11.843 + <property name="copyright" translatable="yes">Copyright(c) 2002 Nathan Keynes</property>
11.844 + <property name="comments" translatable="yes"></property>
11.845 + <property name="authors">Nathan Keynes
11.846 +</property>
11.847 + <property name="translator_credits" translatable="yes">translator_credits</property>
11.848 +</widget>
11.849 +
11.850 +</glade-interface>
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
12.2 +++ b/dream.gladep Sat Mar 13 00:03:32 2004 +0000
12.3 @@ -0,0 +1,7 @@
12.4 +<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
12.5 +<!DOCTYPE glade-project SYSTEM "http://glade.gnome.org/glade-project-2.0.dtd">
12.6 +
12.7 +<glade-project>
12.8 + <name>Dream2</name>
12.9 + <program_name>dream</program_name>
12.10 +</glade-project>
13.1 Binary file pixmaps/dcemu.gif has changed
14.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
14.2 +++ b/po/Makefile.in.in Sat Mar 13 00:03:32 2004 +0000
14.3 @@ -0,0 +1,254 @@
14.4 +# Makefile for program source directory in GNU NLS utilities package.
14.5 +# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
14.6 +#
14.7 +# This file file be copied and used freely without restrictions. It can
14.8 +# be used in projects which are not available under the GNU Public License
14.9 +# but which still want to provide support for the GNU gettext functionality.
14.10 +# Please note that the actual code is *not* freely available.
14.11 +#
14.12 +# - Modified by Owen Taylor <otaylor@redhat.com> to use GETTEXT_PACKAGE
14.13 +# instead of PACKAGE and to look for po2tbl in ./ not in intl/
14.14 +#
14.15 +# - Modified by jacob berkman <jacob@ximian.com> to install
14.16 +# Makefile.in.in and po2tbl.sed.in for use with glib-gettextize
14.17 +
14.18 +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
14.19 +PACKAGE = @PACKAGE@
14.20 +VERSION = @VERSION@
14.21 +
14.22 +SHELL = /bin/sh
14.23 +@SET_MAKE@
14.24 +
14.25 +srcdir = @srcdir@
14.26 +top_srcdir = @top_srcdir@
14.27 +VPATH = @srcdir@
14.28 +
14.29 +prefix = @prefix@
14.30 +exec_prefix = @exec_prefix@
14.31 +datadir = @datadir@
14.32 +libdir = @libdir@
14.33 +localedir = $(libdir)/locale
14.34 +gnulocaledir = $(datadir)/locale
14.35 +gettextsrcdir = $(datadir)/glib-2.0/gettext/po
14.36 +subdir = po
14.37 +
14.38 +INSTALL = @INSTALL@
14.39 +INSTALL_DATA = @INSTALL_DATA@
14.40 +MKINSTALLDIRS = $(top_srcdir)/@MKINSTALLDIRS@
14.41 +
14.42 +CC = @CC@
14.43 +GENCAT = @GENCAT@
14.44 +GMSGFMT = @GMSGFMT@
14.45 +MSGFMT = @MSGFMT@
14.46 +XGETTEXT = @XGETTEXT@
14.47 +MSGMERGE = msgmerge
14.48 +
14.49 +DEFS = @DEFS@
14.50 +CFLAGS = @CFLAGS@
14.51 +CPPFLAGS = @CPPFLAGS@
14.52 +
14.53 +INCLUDES = -I.. -I$(top_srcdir)/intl
14.54 +
14.55 +COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
14.56 +
14.57 +SOURCES =
14.58 +POFILES = @POFILES@
14.59 +GMOFILES = @GMOFILES@
14.60 +DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(GETTEXT_PACKAGE).pot \
14.61 +$(POFILES) $(GMOFILES) $(SOURCES)
14.62 +
14.63 +POTFILES = \
14.64 +
14.65 +CATALOGS = @CATALOGS@
14.66 +CATOBJEXT = @CATOBJEXT@
14.67 +INSTOBJEXT = @INSTOBJEXT@
14.68 +
14.69 +.SUFFIXES:
14.70 +.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
14.71 +
14.72 +.c.o:
14.73 + $(COMPILE) $<
14.74 +
14.75 +.po.pox:
14.76 + $(MAKE) $(GETTEXT_PACKAGE).pot
14.77 + $(MSGMERGE) $< $(srcdir)/$(GETTEXT_PACKAGE).pot -o $*.pox
14.78 +
14.79 +.po.mo:
14.80 + $(MSGFMT) -o $@ $<
14.81 +
14.82 +.po.gmo:
14.83 + file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
14.84 + && rm -f $$file && $(GMSGFMT) -o $$file $<
14.85 +
14.86 +.po.cat:
14.87 + sed -f ../intl/po2msg.sed < $< > $*.msg \
14.88 + && rm -f $@ && $(GENCAT) $@ $*.msg
14.89 +
14.90 +
14.91 +all: all-@USE_NLS@
14.92 +
14.93 +all-yes: $(CATALOGS)
14.94 +all-no:
14.95 +
14.96 +$(srcdir)/$(GETTEXT_PACKAGE).pot: $(POTFILES)
14.97 + $(XGETTEXT) --default-domain=$(GETTEXT_PACKAGE) --directory=$(top_srcdir) \
14.98 + --add-comments --keyword=_ --keyword=N_ \
14.99 + --files-from=$(srcdir)/POTFILES.in \
14.100 + && test ! -f $(GETTEXT_PACKAGE).po \
14.101 + || ( rm -f $(srcdir)/$(GETTEXT_PACKAGE).pot \
14.102 + && mv $(GETTEXT_PACKAGE).po $(srcdir)/$(GETTEXT_PACKAGE).pot )
14.103 +
14.104 +install: install-exec install-data
14.105 +install-exec:
14.106 +install-data: install-data-@USE_NLS@
14.107 +install-data-no: all
14.108 +install-data-yes: all
14.109 + if test -r "$(MKINSTALLDIRS)"; then \
14.110 + $(MKINSTALLDIRS) $(DESTDIR)$(datadir); \
14.111 + else \
14.112 + $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir); \
14.113 + fi
14.114 + @catalogs='$(CATALOGS)'; \
14.115 + for cat in $$catalogs; do \
14.116 + cat=`basename $$cat`; \
14.117 + case "$$cat" in \
14.118 + *.gmo) destdir=$(gnulocaledir);; \
14.119 + *) destdir=$(localedir);; \
14.120 + esac; \
14.121 + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
14.122 + dir=$(DESTDIR)$$destdir/$$lang/LC_MESSAGES; \
14.123 + if test -r "$(MKINSTALLDIRS)"; then \
14.124 + $(MKINSTALLDIRS) $$dir; \
14.125 + else \
14.126 + $(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \
14.127 + fi; \
14.128 + if test -r $$cat; then \
14.129 + $(INSTALL_DATA) $$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
14.130 + echo "installing $$cat as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \
14.131 + else \
14.132 + $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
14.133 + echo "installing $(srcdir)/$$cat as" \
14.134 + "$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT)"; \
14.135 + fi; \
14.136 + if test -r $$cat.m; then \
14.137 + $(INSTALL_DATA) $$cat.m $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
14.138 + echo "installing $$cat.m as $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \
14.139 + else \
14.140 + if test -r $(srcdir)/$$cat.m ; then \
14.141 + $(INSTALL_DATA) $(srcdir)/$$cat.m \
14.142 + $$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
14.143 + echo "installing $(srcdir)/$$cat as" \
14.144 + "$$dir/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m"; \
14.145 + else \
14.146 + true; \
14.147 + fi; \
14.148 + fi; \
14.149 + done
14.150 + if test "$(PACKAGE)" = "glib"; then \
14.151 + if test -r "$(MKINSTALLDIRS)"; then \
14.152 + $(MKINSTALLDIRS) $(DESTDIR)$(gettextsrcdir); \
14.153 + else \
14.154 + $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(gettextsrcdir); \
14.155 + fi; \
14.156 + $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
14.157 + $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
14.158 + else \
14.159 + : ; \
14.160 + fi
14.161 +
14.162 +# Define this as empty until I found a useful application.
14.163 +installcheck:
14.164 +
14.165 +uninstall:
14.166 + catalogs='$(CATALOGS)'; \
14.167 + for cat in $$catalogs; do \
14.168 + cat=`basename $$cat`; \
14.169 + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
14.170 + rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
14.171 + rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
14.172 + rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT); \
14.173 + rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE)$(INSTOBJEXT).m; \
14.174 + done
14.175 + if test "$(PACKAGE)" = "glib"; then \
14.176 + rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
14.177 + fi
14.178 +
14.179 +check: all
14.180 +
14.181 +dvi info tags TAGS ID:
14.182 +
14.183 +mostlyclean:
14.184 + rm -f core core.* *.pox $(GETTEXT_PACKAGE).po *.old.po cat-id-tbl.tmp
14.185 + rm -fr *.o
14.186 +
14.187 +clean: mostlyclean
14.188 +
14.189 +distclean: clean
14.190 + rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m
14.191 +
14.192 +maintainer-clean: distclean
14.193 + @echo "This command is intended for maintainers to use;"
14.194 + @echo "it deletes files that may require special tools to rebuild."
14.195 + rm -f $(GMOFILES)
14.196 +
14.197 +distdir = ../$(GETTEXT_PACKAGE)-$(VERSION)/$(subdir)
14.198 +dist distdir: update-po $(DISTFILES)
14.199 + dists="$(DISTFILES)"; \
14.200 + for file in $$dists; do \
14.201 + ln $(srcdir)/$$file $(distdir) 2> /dev/null \
14.202 + || cp -p $(srcdir)/$$file $(distdir); \
14.203 + done
14.204 +
14.205 +update-po: Makefile
14.206 + $(MAKE) $(GETTEXT_PACKAGE).pot
14.207 + tmpdir=`pwd`; \
14.208 + cd $(srcdir); \
14.209 + catalogs='$(CATALOGS)'; \
14.210 + for cat in $$catalogs; do \
14.211 + cat=`basename $$cat`; \
14.212 + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
14.213 + echo "$$lang:"; \
14.214 + if $(MSGMERGE) $$lang.po $(GETTEXT_PACKAGE).pot -o $$tmpdir/$$lang.new.po; then \
14.215 + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
14.216 + rm -f $$tmpdir/$$lang.new.po; \
14.217 + else \
14.218 + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
14.219 + :; \
14.220 + else \
14.221 + echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
14.222 + rm -f $$tmpdir/$$lang.new.po; \
14.223 + exit 1; \
14.224 + fi; \
14.225 + fi; \
14.226 + else \
14.227 + echo "msgmerge for $$cat failed!"; \
14.228 + rm -f $$tmpdir/$$lang.new.po; \
14.229 + fi; \
14.230 + done
14.231 +
14.232 +# POTFILES is created from POTFILES.in by stripping comments, empty lines
14.233 +# and Intltool tags (enclosed in square brackets), and appending a full
14.234 +# relative path to them
14.235 +POTFILES: POTFILES.in
14.236 + ( if test 'x$(srcdir)' != 'x.'; then \
14.237 + posrcprefix='$(top_srcdir)/'; \
14.238 + else \
14.239 + posrcprefix="../"; \
14.240 + fi; \
14.241 + rm -f $@-t $@ \
14.242 + && (sed -e '/^#/d' \
14.243 + -e "s/^\[.*\] +//" \
14.244 + -e '/^[ ]*$$/d' \
14.245 + -e "s@.*@ $$posrcprefix& \\\\@" < $(srcdir)/$@.in \
14.246 + | sed -e '$$s/\\$$//') > $@-t \
14.247 + && chmod a-w $@-t \
14.248 + && mv $@-t $@ )
14.249 +
14.250 +Makefile: Makefile.in.in ../config.status POTFILES
14.251 + cd .. \
14.252 + && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
14.253 + $(SHELL) ./config.status
14.254 +
14.255 +# Tell versions [3.59,3.63) of GNU make not to export all variables.
14.256 +# Otherwise a system limit (for SysV at least) may be exceeded.
14.257 +.NOEXPORT:
15.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
15.2 +++ b/po/POTFILES.in Sat Mar 13 00:03:32 2004 +0000
15.3 @@ -0,0 +1,6 @@
15.4 +# List of source files containing translatable strings.
15.5 +
15.6 +src/main.c
15.7 +src/interface.c
15.8 +src/callbacks.c
15.9 +src/support.c
16.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
16.2 +++ b/src/Makefile.am Sat Mar 13 00:03:32 2004 +0000
16.3 @@ -0,0 +1,23 @@
16.4 +## Process this file with automake to produce Makefile.in
16.5 +
16.6 +INCLUDES = \
16.7 + -DPACKAGE_DATA_DIR=\""$(datadir)"\" \
16.8 + -DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \
16.9 + -Ish4 \
16.10 + @PACKAGE_CFLAGS@
16.11 +
16.12 +bin_PROGRAMS = dream
16.13 +
16.14 +dream_SOURCES = \
16.15 + main.c \
16.16 + support.c support.h \
16.17 + interface.c interface.h \
16.18 + callbacks.c callbacks.h \
16.19 + gui.c gui.h gui_mmr.c \
16.20 + asic.c asic.h pvr2.c pvr2.h \
16.21 + video.c machine.c aica.c aica.h\
16.22 + fileio.c ipbin.c
16.23 +
16.24 +dream_LDADD = @PACKAGE_LIBS@ $(INTLLIBS) sh4/libsh4.a
16.25 +
16.26 +AM_CFLAGS = -D_ISOC99_SOURCE -D_BSD_SOURCE
17.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
17.2 +++ b/src/Makefile.in Sat Mar 13 00:03:32 2004 +0000
17.3 @@ -0,0 +1,441 @@
17.4 +# Makefile.in generated by automake 1.7.9 from Makefile.am.
17.5 +# @configure_input@
17.6 +
17.7 +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
17.8 +# Free Software Foundation, Inc.
17.9 +# This Makefile.in is free software; the Free Software Foundation
17.10 +# gives unlimited permission to copy and/or distribute it,
17.11 +# with or without modifications, as long as this notice is preserved.
17.12 +
17.13 +# This program is distributed in the hope that it will be useful,
17.14 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
17.15 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
17.16 +# PARTICULAR PURPOSE.
17.17 +
17.18 +@SET_MAKE@
17.19 +
17.20 +srcdir = @srcdir@
17.21 +top_srcdir = @top_srcdir@
17.22 +VPATH = @srcdir@
17.23 +pkgdatadir = $(datadir)/@PACKAGE@
17.24 +pkglibdir = $(libdir)/@PACKAGE@
17.25 +pkgincludedir = $(includedir)/@PACKAGE@
17.26 +top_builddir = ..
17.27 +
17.28 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
17.29 +INSTALL = @INSTALL@
17.30 +install_sh_DATA = $(install_sh) -c -m 644
17.31 +install_sh_PROGRAM = $(install_sh) -c
17.32 +install_sh_SCRIPT = $(install_sh) -c
17.33 +INSTALL_HEADER = $(INSTALL_DATA)
17.34 +transform = $(program_transform_name)
17.35 +NORMAL_INSTALL = :
17.36 +PRE_INSTALL = :
17.37 +POST_INSTALL = :
17.38 +NORMAL_UNINSTALL = :
17.39 +PRE_UNINSTALL = :
17.40 +POST_UNINSTALL = :
17.41 +ACLOCAL = @ACLOCAL@
17.42 +AMDEP_FALSE = @AMDEP_FALSE@
17.43 +AMDEP_TRUE = @AMDEP_TRUE@
17.44 +AMTAR = @AMTAR@
17.45 +AUTOCONF = @AUTOCONF@
17.46 +AUTOHEADER = @AUTOHEADER@
17.47 +AUTOMAKE = @AUTOMAKE@
17.48 +AWK = @AWK@
17.49 +CATALOGS = @CATALOGS@
17.50 +CATOBJEXT = @CATOBJEXT@
17.51 +CC = @CC@
17.52 +CCDEPMODE = @CCDEPMODE@
17.53 +CFLAGS = @CFLAGS@
17.54 +CPP = @CPP@
17.55 +CPPFLAGS = @CPPFLAGS@
17.56 +CYGPATH_W = @CYGPATH_W@
17.57 +DATADIRNAME = @DATADIRNAME@
17.58 +DEFS = @DEFS@
17.59 +DEPDIR = @DEPDIR@
17.60 +ECHO_C = @ECHO_C@
17.61 +ECHO_N = @ECHO_N@
17.62 +ECHO_T = @ECHO_T@
17.63 +EGREP = @EGREP@
17.64 +EXEEXT = @EXEEXT@
17.65 +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
17.66 +GMOFILES = @GMOFILES@
17.67 +GMSGFMT = @GMSGFMT@
17.68 +INSTALL_DATA = @INSTALL_DATA@
17.69 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
17.70 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
17.71 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
17.72 +INSTOBJEXT = @INSTOBJEXT@
17.73 +INTLLIBS = @INTLLIBS@
17.74 +LDFLAGS = @LDFLAGS@
17.75 +LIBOBJS = @LIBOBJS@
17.76 +LIBS = @LIBS@
17.77 +LTLIBOBJS = @LTLIBOBJS@
17.78 +MAINT = @MAINT@
17.79 +MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
17.80 +MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
17.81 +MAKEINFO = @MAKEINFO@
17.82 +MKINSTALLDIRS = @MKINSTALLDIRS@
17.83 +MSGFMT = @MSGFMT@
17.84 +OBJEXT = @OBJEXT@
17.85 +PACKAGE = @PACKAGE@
17.86 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
17.87 +PACKAGE_CFLAGS = @PACKAGE_CFLAGS@
17.88 +PACKAGE_LIBS = @PACKAGE_LIBS@
17.89 +PACKAGE_NAME = @PACKAGE_NAME@
17.90 +PACKAGE_STRING = @PACKAGE_STRING@
17.91 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
17.92 +PACKAGE_VERSION = @PACKAGE_VERSION@
17.93 +PATH_SEPARATOR = @PATH_SEPARATOR@
17.94 +PKG_CONFIG = @PKG_CONFIG@
17.95 +POFILES = @POFILES@
17.96 +POSUB = @POSUB@
17.97 +PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
17.98 +PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
17.99 +SET_MAKE = @SET_MAKE@
17.100 +SHELL = @SHELL@
17.101 +STRIP = @STRIP@
17.102 +USE_NLS = @USE_NLS@
17.103 +VERSION = @VERSION@
17.104 +XGETTEXT = @XGETTEXT@
17.105 +ac_ct_CC = @ac_ct_CC@
17.106 +ac_ct_STRIP = @ac_ct_STRIP@
17.107 +am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
17.108 +am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
17.109 +am__include = @am__include@
17.110 +am__leading_dot = @am__leading_dot@
17.111 +am__quote = @am__quote@
17.112 +bindir = @bindir@
17.113 +build_alias = @build_alias@
17.114 +datadir = @datadir@
17.115 +exec_prefix = @exec_prefix@
17.116 +host_alias = @host_alias@
17.117 +includedir = @includedir@
17.118 +infodir = @infodir@
17.119 +install_sh = @install_sh@
17.120 +libdir = @libdir@
17.121 +libexecdir = @libexecdir@
17.122 +localstatedir = @localstatedir@
17.123 +mandir = @mandir@
17.124 +oldincludedir = @oldincludedir@
17.125 +prefix = @prefix@
17.126 +program_transform_name = @program_transform_name@
17.127 +sbindir = @sbindir@
17.128 +sharedstatedir = @sharedstatedir@
17.129 +sysconfdir = @sysconfdir@
17.130 +target_alias = @target_alias@
17.131 +
17.132 +INCLUDES = \
17.133 + -DPACKAGE_DATA_DIR=\""$(datadir)"\" \
17.134 + -DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \
17.135 + -Ish4 \
17.136 + @PACKAGE_CFLAGS@
17.137 +
17.138 +
17.139 +bin_PROGRAMS = dream
17.140 +
17.141 +dream_SOURCES = \
17.142 + main.c \
17.143 + support.c support.h \
17.144 + interface.c interface.h \
17.145 + callbacks.c callbacks.h \
17.146 + gui.c gui.h gui_mmr.c \
17.147 + asic.c asic.h pvr2.c pvr2.h \
17.148 + video.c machine.c aica.c aica.h\
17.149 + fileio.c ipbin.c
17.150 +
17.151 +
17.152 +dream_LDADD = @PACKAGE_LIBS@ $(INTLLIBS) sh4/libsh4.a
17.153 +
17.154 +AM_CFLAGS = -D_ISOC99_SOURCE -D_BSD_SOURCE
17.155 +subdir = src
17.156 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
17.157 +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
17.158 +CONFIG_HEADER = $(top_builddir)/config.h
17.159 +CONFIG_CLEAN_FILES =
17.160 +bin_PROGRAMS = dream$(EXEEXT)
17.161 +PROGRAMS = $(bin_PROGRAMS)
17.162 +
17.163 +am_dream_OBJECTS = main.$(OBJEXT) support.$(OBJEXT) interface.$(OBJEXT) \
17.164 + callbacks.$(OBJEXT) gui.$(OBJEXT) gui_mmr.$(OBJEXT) \
17.165 + asic.$(OBJEXT) pvr2.$(OBJEXT) video.$(OBJEXT) machine.$(OBJEXT) \
17.166 + aica.$(OBJEXT) fileio.$(OBJEXT) ipbin.$(OBJEXT)
17.167 +dream_OBJECTS = $(am_dream_OBJECTS)
17.168 +dream_DEPENDENCIES = sh4/libsh4.a
17.169 +dream_LDFLAGS =
17.170 +
17.171 +DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
17.172 +depcomp = $(SHELL) $(top_srcdir)/depcomp
17.173 +am__depfiles_maybe = depfiles
17.174 +@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/aica.Po ./$(DEPDIR)/asic.Po \
17.175 +@AMDEP_TRUE@ ./$(DEPDIR)/callbacks.Po ./$(DEPDIR)/fileio.Po \
17.176 +@AMDEP_TRUE@ ./$(DEPDIR)/gui.Po ./$(DEPDIR)/gui_mmr.Po \
17.177 +@AMDEP_TRUE@ ./$(DEPDIR)/interface.Po ./$(DEPDIR)/ipbin.Po \
17.178 +@AMDEP_TRUE@ ./$(DEPDIR)/machine.Po ./$(DEPDIR)/main.Po \
17.179 +@AMDEP_TRUE@ ./$(DEPDIR)/pvr2.Po ./$(DEPDIR)/support.Po \
17.180 +@AMDEP_TRUE@ ./$(DEPDIR)/video.Po
17.181 +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
17.182 + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
17.183 +CCLD = $(CC)
17.184 +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
17.185 +DIST_SOURCES = $(dream_SOURCES)
17.186 +DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
17.187 +SOURCES = $(dream_SOURCES)
17.188 +
17.189 +all: all-am
17.190 +
17.191 +.SUFFIXES:
17.192 +.SUFFIXES: .c .o .obj
17.193 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
17.194 + cd $(top_srcdir) && \
17.195 + $(AUTOMAKE) --gnu src/Makefile
17.196 +Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
17.197 + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
17.198 +binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
17.199 +install-binPROGRAMS: $(bin_PROGRAMS)
17.200 + @$(NORMAL_INSTALL)
17.201 + $(mkinstalldirs) $(DESTDIR)$(bindir)
17.202 + @list='$(bin_PROGRAMS)'; for p in $$list; do \
17.203 + p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
17.204 + if test -f $$p \
17.205 + ; then \
17.206 + f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
17.207 + echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f"; \
17.208 + $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f || exit 1; \
17.209 + else :; fi; \
17.210 + done
17.211 +
17.212 +uninstall-binPROGRAMS:
17.213 + @$(NORMAL_UNINSTALL)
17.214 + @list='$(bin_PROGRAMS)'; for p in $$list; do \
17.215 + f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
17.216 + echo " rm -f $(DESTDIR)$(bindir)/$$f"; \
17.217 + rm -f $(DESTDIR)$(bindir)/$$f; \
17.218 + done
17.219 +
17.220 +clean-binPROGRAMS:
17.221 + -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
17.222 +dream$(EXEEXT): $(dream_OBJECTS) $(dream_DEPENDENCIES)
17.223 + @rm -f dream$(EXEEXT)
17.224 + $(LINK) $(dream_LDFLAGS) $(dream_OBJECTS) $(dream_LDADD) $(LIBS)
17.225 +
17.226 +mostlyclean-compile:
17.227 + -rm -f *.$(OBJEXT) core *.core
17.228 +
17.229 +distclean-compile:
17.230 + -rm -f *.tab.c
17.231 +
17.232 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/aica.Po@am__quote@
17.233 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asic.Po@am__quote@
17.234 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/callbacks.Po@am__quote@
17.235 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fileio.Po@am__quote@
17.236 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gui.Po@am__quote@
17.237 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gui_mmr.Po@am__quote@
17.238 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/interface.Po@am__quote@
17.239 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ipbin.Po@am__quote@
17.240 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/machine.Po@am__quote@
17.241 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@
17.242 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pvr2.Po@am__quote@
17.243 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/support.Po@am__quote@
17.244 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/video.Po@am__quote@
17.245 +
17.246 +.c.o:
17.247 +@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
17.248 +@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
17.249 +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
17.250 +@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
17.251 +@am__fastdepCC_TRUE@ fi
17.252 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
17.253 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
17.254 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
17.255 +@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
17.256 +
17.257 +.c.obj:
17.258 +@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
17.259 +@am__fastdepCC_TRUE@ -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
17.260 +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
17.261 +@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
17.262 +@am__fastdepCC_TRUE@ fi
17.263 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
17.264 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
17.265 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
17.266 +@am__fastdepCC_FALSE@ $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
17.267 +uninstall-info-am:
17.268 +
17.269 +ETAGS = etags
17.270 +ETAGSFLAGS =
17.271 +
17.272 +CTAGS = ctags
17.273 +CTAGSFLAGS =
17.274 +
17.275 +tags: TAGS
17.276 +
17.277 +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
17.278 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
17.279 + unique=`for i in $$list; do \
17.280 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
17.281 + done | \
17.282 + $(AWK) ' { files[$$0] = 1; } \
17.283 + END { for (i in files) print i; }'`; \
17.284 + mkid -fID $$unique
17.285 +
17.286 +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
17.287 + $(TAGS_FILES) $(LISP)
17.288 + tags=; \
17.289 + here=`pwd`; \
17.290 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
17.291 + unique=`for i in $$list; do \
17.292 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
17.293 + done | \
17.294 + $(AWK) ' { files[$$0] = 1; } \
17.295 + END { for (i in files) print i; }'`; \
17.296 + test -z "$(ETAGS_ARGS)$$tags$$unique" \
17.297 + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
17.298 + $$tags $$unique
17.299 +
17.300 +ctags: CTAGS
17.301 +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
17.302 + $(TAGS_FILES) $(LISP)
17.303 + tags=; \
17.304 + here=`pwd`; \
17.305 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
17.306 + unique=`for i in $$list; do \
17.307 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
17.308 + done | \
17.309 + $(AWK) ' { files[$$0] = 1; } \
17.310 + END { for (i in files) print i; }'`; \
17.311 + test -z "$(CTAGS_ARGS)$$tags$$unique" \
17.312 + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
17.313 + $$tags $$unique
17.314 +
17.315 +GTAGS:
17.316 + here=`$(am__cd) $(top_builddir) && pwd` \
17.317 + && cd $(top_srcdir) \
17.318 + && gtags -i $(GTAGS_ARGS) $$here
17.319 +
17.320 +distclean-tags:
17.321 + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
17.322 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
17.323 +
17.324 +top_distdir = ..
17.325 +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
17.326 +
17.327 +distdir: $(DISTFILES)
17.328 + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
17.329 + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
17.330 + list='$(DISTFILES)'; for file in $$list; do \
17.331 + case $$file in \
17.332 + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
17.333 + $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
17.334 + esac; \
17.335 + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
17.336 + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
17.337 + if test "$$dir" != "$$file" && test "$$dir" != "."; then \
17.338 + dir="/$$dir"; \
17.339 + $(mkinstalldirs) "$(distdir)$$dir"; \
17.340 + else \
17.341 + dir=''; \
17.342 + fi; \
17.343 + if test -d $$d/$$file; then \
17.344 + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
17.345 + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
17.346 + fi; \
17.347 + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
17.348 + else \
17.349 + test -f $(distdir)/$$file \
17.350 + || cp -p $$d/$$file $(distdir)/$$file \
17.351 + || exit 1; \
17.352 + fi; \
17.353 + done
17.354 +check-am: all-am
17.355 +check: check-am
17.356 +all-am: Makefile $(PROGRAMS)
17.357 +
17.358 +installdirs:
17.359 + $(mkinstalldirs) $(DESTDIR)$(bindir)
17.360 +install: install-am
17.361 +install-exec: install-exec-am
17.362 +install-data: install-data-am
17.363 +uninstall: uninstall-am
17.364 +
17.365 +install-am: all-am
17.366 + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
17.367 +
17.368 +installcheck: installcheck-am
17.369 +install-strip:
17.370 + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
17.371 + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
17.372 + `test -z '$(STRIP)' || \
17.373 + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
17.374 +mostlyclean-generic:
17.375 +
17.376 +clean-generic:
17.377 +
17.378 +distclean-generic:
17.379 + -rm -f $(CONFIG_CLEAN_FILES)
17.380 +
17.381 +maintainer-clean-generic:
17.382 + @echo "This command is intended for maintainers to use"
17.383 + @echo "it deletes files that may require special tools to rebuild."
17.384 +clean: clean-am
17.385 +
17.386 +clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
17.387 +
17.388 +distclean: distclean-am
17.389 + -rm -rf ./$(DEPDIR)
17.390 + -rm -f Makefile
17.391 +distclean-am: clean-am distclean-compile distclean-generic \
17.392 + distclean-tags
17.393 +
17.394 +dvi: dvi-am
17.395 +
17.396 +dvi-am:
17.397 +
17.398 +info: info-am
17.399 +
17.400 +info-am:
17.401 +
17.402 +install-data-am:
17.403 +
17.404 +install-exec-am: install-binPROGRAMS
17.405 +
17.406 +install-info: install-info-am
17.407 +
17.408 +install-man:
17.409 +
17.410 +installcheck-am:
17.411 +
17.412 +maintainer-clean: maintainer-clean-am
17.413 + -rm -rf ./$(DEPDIR)
17.414 + -rm -f Makefile
17.415 +maintainer-clean-am: distclean-am maintainer-clean-generic
17.416 +
17.417 +mostlyclean: mostlyclean-am
17.418 +
17.419 +mostlyclean-am: mostlyclean-compile mostlyclean-generic
17.420 +
17.421 +pdf: pdf-am
17.422 +
17.423 +pdf-am:
17.424 +
17.425 +ps: ps-am
17.426 +
17.427 +ps-am:
17.428 +
17.429 +uninstall-am: uninstall-binPROGRAMS uninstall-info-am
17.430 +
17.431 +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
17.432 + clean-generic ctags distclean distclean-compile \
17.433 + distclean-generic distclean-tags distdir dvi dvi-am info \
17.434 + info-am install install-am install-binPROGRAMS install-data \
17.435 + install-data-am install-exec install-exec-am install-info \
17.436 + install-info-am install-man install-strip installcheck \
17.437 + installcheck-am installdirs maintainer-clean \
17.438 + maintainer-clean-generic mostlyclean mostlyclean-compile \
17.439 + mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
17.440 + uninstall-am uninstall-binPROGRAMS uninstall-info-am
17.441 +
17.442 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
17.443 +# Otherwise a system limit (for SysV at least) may be exceeded.
17.444 +.NOEXPORT:
18.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
18.2 +++ b/src/aica.c Sat Mar 13 00:03:32 2004 +0000
18.3 @@ -0,0 +1,21 @@
18.4 +#include "dream.h"
18.5 +#include "aica.h"
18.6 +#define MMIO_IMPL
18.7 +#include "aica.h"
18.8 +
18.9 +MMIO_REGION_DEFFNS( AICA0 )
18.10 +MMIO_REGION_DEFFNS( AICA1 )
18.11 +MMIO_REGION_DEFFNS( AICA2 )
18.12 +
18.13 +void aica_init( void )
18.14 +{
18.15 + register_io_regions( mmio_list_spu );
18.16 + MMIO_NOTRACE(AICA0);
18.17 + MMIO_NOTRACE(AICA1);
18.18 +}
18.19 +
18.20 +void aica_reset( void )
18.21 +{
18.22 +
18.23 +}
18.24 +
19.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
19.2 +++ b/src/aica.h Sat Mar 13 00:03:32 2004 +0000
19.3 @@ -0,0 +1,25 @@
19.4 +#include "mmio.h"
19.5 +
19.6 +MMIO_REGION_BEGIN( 0x00700000, AICA0, "AICA Sound System 0-31" )
19.7 +LONG_PORT( 0x000, AICACH0, PORT_MRW, UNDEFINED, "Channel 0" )
19.8 +MMIO_REGION_END
19.9 +
19.10 +MMIO_REGION_BEGIN( 0x00701000, AICA1, "AICA Sound System 32-63" )
19.11 +LONG_PORT( 0x000, AICACH32, PORT_MRW, UNDEFINED, "Channel 32" )
19.12 +MMIO_REGION_END
19.13 +
19.14 +MMIO_REGION_BEGIN( 0x00702000, AICA2, "AICA Sound System Control" )
19.15 +LONG_PORT( 0x040, VOLLEFT, PORT_MRW, 0, "Volume left" )
19.16 +LONG_PORT( 0x044, VOLRIGHT, PORT_MRW, 0, "Volume right" )
19.17 +LONG_PORT( 0x800, AICA_CTRL, PORT_MRW, UNDEFINED, "AICA control" )
19.18 +LONG_PORT( 0xC00, AICA_RESET,PORT_MRW, 0, "AICA reset" )
19.19 +MMIO_REGION_END
19.20 +
19.21 +MMIO_REGION_LIST_BEGIN( spu )
19.22 + MMIO_REGION( AICA0 )
19.23 + MMIO_REGION( AICA1 )
19.24 + MMIO_REGION( AICA2 )
19.25 +MMIO_REGION_LIST_END
19.26 +
19.27 +void aica_init( void );
19.28 +void aica_reset( void );
20.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
20.2 +++ b/src/asic.c Sat Mar 13 00:03:32 2004 +0000
20.3 @@ -0,0 +1,105 @@
20.4 +#include <assert.h>
20.5 +#include "dream.h"
20.6 +#include "mem.h"
20.7 +#include "sh4/intc.h"
20.8 +#include "asic.h"
20.9 +#include "maple.h"
20.10 +#define MMIO_IMPL
20.11 +#include "asic.h"
20.12 +/*
20.13 + * Open questions:
20.14 + * 1) Does changing the mask after event occurance result in the
20.15 + * interrupt being delivered immediately?
20.16 + * 2) If the pending register is not cleared after an interrupt, does
20.17 + * the interrupt line remain high? (ie does the IRQ reoccur?)
20.18 + * TODO: Logic diagram of ASIC event/interrupt logic.
20.19 + *
20.20 + * ... don't even get me started on the "EXTDMA" page, about which, apparently,
20.21 + * practically nothing is publicly known...
20.22 + */
20.23 +
20.24 +void asic_init( void )
20.25 +{
20.26 + register_io_region( &mmio_region_ASIC );
20.27 + register_io_region( &mmio_region_EXTDMA );
20.28 + mmio_region_ASIC.trace_flag = 0; /* Because this is called so often */
20.29 + asic_event( EVENT_GDROM_CMD );
20.30 +}
20.31 +
20.32 +void mmio_region_ASIC_write( uint32_t reg, uint32_t val )
20.33 +{
20.34 + switch( reg ) {
20.35 + case PIRQ0:
20.36 + case PIRQ1:
20.37 + case PIRQ2:
20.38 + /* Clear any interrupts */
20.39 + MMIO_WRITE( ASIC, reg, MMIO_READ(ASIC, reg)&~val );
20.40 + break;
20.41 + case MAPLE_STATE:
20.42 + MMIO_WRITE( ASIC, reg, val );
20.43 + if( val & 1 ) {
20.44 + uint32_t maple_addr = MMIO_READ( ASIC, MAPLE_DMA) &0x1FFFFFE0;
20.45 +// maple_handle_buffer( maple_addr );
20.46 + WARN( "Maple request initiated, halting" );
20.47 + MMIO_WRITE( ASIC, reg, 0 );
20.48 + sh4_stop();
20.49 + }
20.50 + break;
20.51 + default:
20.52 + MMIO_WRITE( ASIC, reg, val );
20.53 + WARN( "Write to ASIC (%03X <= %08X) [%s: %s]",
20.54 + reg, val, MMIO_REGID(ASIC,reg), MMIO_REGDESC(ASIC,reg) );
20.55 + }
20.56 +}
20.57 +
20.58 +int32_t mmio_region_ASIC_read( uint32_t reg )
20.59 +{
20.60 + int32_t val;
20.61 + switch( reg ) {
20.62 + case PIRQ0:
20.63 + case PIRQ1:
20.64 + case PIRQ2:
20.65 + val = MMIO_READ(ASIC, reg);
20.66 +// WARN( "Read from ASIC (%03X => %08X) [%s: %s]",
20.67 +// reg, val, MMIO_REGID(ASIC,reg), MMIO_REGDESC(ASIC,reg) );
20.68 + return val;
20.69 + case G2STATUS:
20.70 + return 0; /* find out later if there's any cases we actually need to care about */
20.71 + default:
20.72 + val = MMIO_READ(ASIC, reg);
20.73 + WARN( "Read from ASIC (%03X => %08X) [%s: %s]",
20.74 + reg, val, MMIO_REGID(ASIC,reg), MMIO_REGDESC(ASIC,reg) );
20.75 + return val;
20.76 + }
20.77 +
20.78 +}
20.79 +
20.80 +void asic_event( int event )
20.81 +{
20.82 + int offset = ((event&0x60)>>3);
20.83 + int result = (MMIO_READ(ASIC, PIRQ0 + offset)) |= (1<<(event&0x1F));
20.84 +
20.85 + if( result & MMIO_READ(ASIC, IRQA0 + offset) )
20.86 + intc_raise_interrupt( INT_IRQ13 );
20.87 + if( result & MMIO_READ(ASIC, IRQB0 + offset) )
20.88 + intc_raise_interrupt( INT_IRQ11 );
20.89 + if( result & MMIO_READ(ASIC, IRQC0 + offset) )
20.90 + intc_raise_interrupt( INT_IRQ9 );
20.91 +}
20.92 +
20.93 +
20.94 +
20.95 +MMIO_REGION_WRITE_FN( EXTDMA, reg, val )
20.96 +{
20.97 + MMIO_WRITE( EXTDMA, reg, val );
20.98 +}
20.99 +
20.100 +MMIO_REGION_READ_FN( EXTDMA, reg )
20.101 +{
20.102 + switch( reg ) {
20.103 + case GDBUSY: return 0;
20.104 + default:
20.105 + return MMIO_READ( EXTDMA, reg );
20.106 + }
20.107 +}
20.108 +
21.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
21.2 +++ b/src/asic.h Sat Mar 13 00:03:32 2004 +0000
21.3 @@ -0,0 +1,127 @@
21.4 +#include "mmio.h"
21.5 +
21.6 +/**
21.7 + * ASIC interrupts are mappable to any (or all of) 3 actual CPU IRQ lines.
21.8 + * events selected for IRQA trigger IRQ 13, IRQB => 11 and IRQC => 9.
21.9 + */
21.10 +
21.11 +MMIO_REGION_BEGIN( 0x005F6000, ASIC, "System ASIC" )
21.12 + LONG_PORT( 0x884, ASICUNK1, PORT_MRW, 0, "ASIC <unknown1>" )
21.13 + LONG_PORT( 0x888, ASICUNK2, PORT_MRW, 0, "ASIC <unknown2>" )
21.14 + LONG_PORT( 0x88C, G2STATUS, PORT_MR, 0, "G2 Bus status" )
21.15 + LONG_PORT( 0x900, PIRQ0, PORT_MRW, 0, "Pending interrupts 0" )
21.16 + LONG_PORT( 0x904, PIRQ1, PORT_MRW, 0, "Pending interrupts 1" )
21.17 + LONG_PORT( 0x908, PIRQ2, PORT_MRW, 0, "Pending interrupts 2" )
21.18 + LONG_PORT( 0x910, IRQA0, PORT_MRW, 0, "IRQ A event map 0" )
21.19 + LONG_PORT( 0x914, IRQA1, PORT_MRW, 0, "IRQ A event map 1" )
21.20 + LONG_PORT( 0x918, IRQA2, PORT_MRW, 0, "IRQ A event map 2" )
21.21 + LONG_PORT( 0x920, IRQB0, PORT_MRW, 0, "IRQ B event map 0" )
21.22 + LONG_PORT( 0x924, IRQB1, PORT_MRW, 0, "IRQ B event map 1" )
21.23 + LONG_PORT( 0x928, IRQB2, PORT_MRW, 0, "IRQ B event map 2" )
21.24 + LONG_PORT( 0x930, IRQC0, PORT_MRW, 0, "IRQ C event map 0" )
21.25 + LONG_PORT( 0x934, IRQC1, PORT_MRW, 0, "IRQ C event map 1" )
21.26 + LONG_PORT( 0x938, IRQC2, PORT_MRW, 0, "IRQ C event map 2" )
21.27 +
21.28 + LONG_PORT( 0xC04, MAPLE_DMA, PORT_MRW, UNDEFINED, "Maple DMA Address" )
21.29 + LONG_PORT( 0xC10, MAPLE_RESET2, PORT_MRW, UNDEFINED, "Maple Reset 2" )
21.30 + LONG_PORT( 0xC14, MAPLE_ENABLE, PORT_MRW, UNDEFINED, "Maple Enable" )
21.31 + LONG_PORT( 0xC18, MAPLE_STATE, PORT_MRW, 0, "Maple State" )
21.32 + LONG_PORT( 0xC80, MAPLE_SPEED, PORT_MRW, UNDEFINED, "Maple Speed" )
21.33 + LONG_PORT( 0xC8C, MAPLE_RESET1, PORT_MRW, UNDEFINED, "Maple Reset 1" )
21.34 +MMIO_REGION_END
21.35 +
21.36 +MMIO_REGION_BEGIN( 0x005F7000, EXTDMA, "ASIC External DMA" )
21.37 + BYTE_PORT( 0x018, GDBUSY, PORT_MRW, 0, "GD-Rom Busy" )
21.38 + WORD_PORT( 0x080, GDDATA, PORT_MRW, 0, "GD-Rom Data" )
21.39 + BYTE_PORT( 0x084, GDFEAT, PORT_MRW, 0, "GD-Rom Feature" )
21.40 + BYTE_PORT( 0x088, GDSECTOR, PORT_MRW, 0, "GD-Rom Sector Count" )
21.41 + BYTE_PORT( 0x08C, GDNSECTOR, PORT_MRW, 0, "GD-Rom Sector" )
21.42 + BYTE_PORT( 0x090, GDCMDLENLO, PORT_MRW, 0, "GD-Rom Command length low" )
21.43 + BYTE_PORT( 0x094, GDCMDLENHI, PORT_MRW, 0, "GD-Rom Command length hi" )
21.44 + BYTE_PORT( 0x09C, GDSTATUS, PORT_MRW, 0, "GD-Rom Status" )
21.45 + LONG_PORT( 0x404, EXTDMASH4, PORT_MRW, 0, "Ext DMA SH4 address" )
21.46 + LONG_PORT( 0x408, EXTDMASIZ, PORT_MRW, 0, "Ext DMA Size" )
21.47 + LONG_PORT( 0x40C, EXTDMADIR, PORT_MRW, 0, "Ext DMA Direction" )
21.48 + LONG_PORT( 0x414, EXTDMACTL1, PORT_MRW, 0, "Ext DMA Control 1" )
21.49 + LONG_PORT( 0x418, EXTDMACTL2, PORT_MRW, 0, "Ext DMA Control 2" )
21.50 + WORD_PORT( 0x480, EXTDMAUNK0, PORT_MRW, 0, "Ext DMA <unknown0>" )
21.51 + LONG_PORT( 0x484, EXTDMAUNK1, PORT_MRW, 0, "Ext DMA <unknown1>" )
21.52 + LONG_PORT( 0x488, EXTDMAUNK2, PORT_MRW, 0, "Ext DMA <unknown2>" )
21.53 + LONG_PORT( 0x48C, EXTDMAUNK3, PORT_MRW, 0, "Ext DMA <unknown3>" )
21.54 + LONG_PORT( 0x490, EXTDMAUNK4, PORT_MRW, 0, "Ext DMA <unknown4>" )
21.55 + LONG_PORT( 0x494, EXTDMAUNK5, PORT_MRW, 0, "Ext DMA <unknown5>" )
21.56 + LONG_PORT( 0x4A0, EXTDMAUNK6, PORT_MRW, 0, "Ext DMA <unknown6>" )
21.57 + LONG_PORT( 0x4A4, EXTDMAUNK7, PORT_MRW, 0, "Ext DMA <unknown7>" )
21.58 + LONG_PORT( 0x4B4, EXTDMAUNK8, PORT_MRW, 0, "Ext DMA <unknown8>" )
21.59 + LONG_PORT( 0x4B8, EXTDMAUNK9, PORT_MRW, 0, "Ext DMA <unknown9>" )
21.60 + LONG_PORT( 0x4E4, GDACTIVATE, PORT_MRW, 0, "GD-Rom activate" )
21.61 + LONG_PORT( 0x800, SPUDMA0EXT, PORT_MRW, 0, "SPU DMA0 External address" )
21.62 + LONG_PORT( 0x804, SPUDMA0SH4, PORT_MRW, 0, "SPU DMA0 SH4-based address" )
21.63 + LONG_PORT( 0x808, SPUDMA0SIZ, PORT_MRW, 0, "SPU DMA0 Size" )
21.64 + LONG_PORT( 0x80C, SPUDMA0DIR, PORT_MRW, 0, "SPU DMA0 Direction" )
21.65 + LONG_PORT( 0x810, SPUDMA0MOD, PORT_MRW, 0, "SPU DMA0 Mode" )
21.66 + LONG_PORT( 0x814, SPUDMA0CTL1, PORT_MRW, 0, "SPU DMA0 Control 1" )
21.67 + LONG_PORT( 0x818, SPUDMA0CTL2, PORT_MRW, 0, "SPU DMA0 Control 2" )
21.68 + LONG_PORT( 0x81C, SPUDMA0UN1, PORT_MRW, 0, "SPU DMA0 <unknown1>" )
21.69 + LONG_PORT( 0x820, SPUDMA1EXT, PORT_MRW, 0, "SPU DMA1 External address" )
21.70 + LONG_PORT( 0x824, SPUDMA1SH4, PORT_MRW, 0, "SPU DMA1 SH4-based address" )
21.71 + LONG_PORT( 0x828, SPUDMA1SIZ, PORT_MRW, 0, "SPU DMA1 Size" )
21.72 + LONG_PORT( 0x82C, SPUDMA1DIR, PORT_MRW, 0, "SPU DMA1 Direction" )
21.73 + LONG_PORT( 0x830, SPUDMA1MOD, PORT_MRW, 0, "SPU DMA1 Mode" )
21.74 + LONG_PORT( 0x834, SPUDMA1CTL1, PORT_MRW, 0, "SPU DMA1 Control 1" )
21.75 + LONG_PORT( 0x838, SPUDMA1CTL2, PORT_MRW, 0, "SPU DMA1 Control 2" )
21.76 + LONG_PORT( 0x83C, SPUDMA1UN1, PORT_MRW, 0, "SPU DMA1 <unknown1>" )
21.77 + LONG_PORT( 0x840, SPUDMA2EXT, PORT_MRW, 0, "SPU DMA2 External address" )
21.78 + LONG_PORT( 0x844, SPUDMA2SH4, PORT_MRW, 0, "SPU DMA2 SH4-based address" )
21.79 + LONG_PORT( 0x848, SPUDMA2SIZ, PORT_MRW, 0, "SPU DMA2 Size" )
21.80 + LONG_PORT( 0x84C, SPUDMA2DIR, PORT_MRW, 0, "SPU DMA2 Direction" )
21.81 + LONG_PORT( 0x850, SPUDMA2MOD, PORT_MRW, 0, "SPU DMA2 Mode" )
21.82 + LONG_PORT( 0x854, SPUDMA2CTL1, PORT_MRW, 0, "SPU DMA2 Control 1" )
21.83 + LONG_PORT( 0x858, SPUDMA2CTL2, PORT_MRW, 0, "SPU DMA2 Control 2" )
21.84 + LONG_PORT( 0x85C, SPUDMA2UN1, PORT_MRW, 0, "SPU DMA2 <unknown1>" )
21.85 + LONG_PORT( 0x860, SPUDMA3EXT, PORT_MRW, 0, "SPU DMA3 External address" )
21.86 + LONG_PORT( 0x864, SPUDMA3SH4, PORT_MRW, 0, "SPU DMA3 SH4-based address" )
21.87 + LONG_PORT( 0x868, SPUDMA3SIZ, PORT_MRW, 0, "SPU DMA3 Size" )
21.88 + LONG_PORT( 0x86C, SPUDMA3DIR, PORT_MRW, 0, "SPU DMA3 Direction" )
21.89 + LONG_PORT( 0x870, SPUDMA3MOD, PORT_MRW, 0, "SPU DMA3 Mode" )
21.90 + LONG_PORT( 0x874, SPUDMA3CTL1, PORT_MRW, 0, "SPU DMA3 Control 1" )
21.91 + LONG_PORT( 0x878, SPUDMA3CTL2, PORT_MRW, 0, "SPU DMA3 Control 2" )
21.92 + LONG_PORT( 0x87C, SPUDMA3UN1, PORT_MRW, 0, "SPU DMA3 <unknown1>" )
21.93 + LONG_PORT( 0x890, SPUDMAWAIT, PORT_MRW, 0, "SPU DMA wait states (?)" )
21.94 + LONG_PORT( 0x894, SPUDMAUN1, PORT_MRW, 0, "SPU DMA <unknown1>" )
21.95 + LONG_PORT( 0x898, SPUDMAUN2, PORT_MRW, 0, "SPU DMA <unknown2>" )
21.96 + LONG_PORT( 0x89C, SPUDMAUN3, PORT_MRW, 0, "SPU DMA <unknown3>" )
21.97 + LONG_PORT( 0x8A0, SPUDMAUN4, PORT_MRW, 0, "SPU DMA <unknown4>" )
21.98 + LONG_PORT( 0x8A4, SPUDMAUN5, PORT_MRW, 0, "SPU DMA <unknown5>" )
21.99 + LONG_PORT( 0x8A8, SPUDMAUN6, PORT_MRW, 0, "SPU DMA <unknown6>" )
21.100 + LONG_PORT( 0x8AC, SPUDMAUN7, PORT_MRW, 0, "SPU DMA <unknown7>" )
21.101 + LONG_PORT( 0x8B0, SPUDMAUN8, PORT_MRW, 0, "SPU DMA <unknown8>" )
21.102 + LONG_PORT( 0x8B4, SPUDMAUN9, PORT_MRW, 0, "SPU DMA <unknown9>" )
21.103 + LONG_PORT( 0x8B8, SPUDMAUN10, PORT_MRW, 0, "SPU DMA <unknown10>" )
21.104 + LONG_PORT( 0x8BC, SPUDMAUN11, PORT_MRW, 0, "SPU DMA <unknown11>" )
21.105 + LONG_PORT( 0xC00, PVRDMAEXT, PORT_MRW, 0, "PVR DMA External address" )
21.106 + LONG_PORT( 0xC04, PVRDMASH4, PORT_MRW, 0, "PVR DMA SH4 address" )
21.107 + LONG_PORT( 0xC08, PVRDMASIZ, PORT_MRW, 0, "PVR DMA Size" )
21.108 + LONG_PORT( 0xC0C, PVRDMADIR, PORT_MRW, 0, "PVR DMA Direction" )
21.109 + LONG_PORT( 0xC10, PVRDMAMOD, PORT_MRW, 0, "PVR DMA Mode" )
21.110 + LONG_PORT( 0xC14, PVRDMACTL1, PORT_MRW, 0, "PVR DMA Control 1" )
21.111 + LONG_PORT( 0xC18, PVRDMACTL2, PORT_MRW, 0, "PVR DMA Control 2" )
21.112 + LONG_PORT( 0xC80, PVRDMAUN1, PORT_MRW, 0, "PVR DMA <unknown1>" )
21.113 +
21.114 +MMIO_REGION_END
21.115 +
21.116 +#define EVENT_SCANLINE1 3
21.117 +#define EVENT_SCANLINE2 4
21.118 +#define EVENT_RETRACE 5
21.119 +#define EVENT_MAPLE_DMA 12
21.120 +#define EVENT_MAPLE_ERR 13 /* ??? */
21.121 +#define EVENT_GDROM_DMA 14
21.122 +#define EVENT_SPU_DMA0 15 /* ??? */
21.123 +#define EVENT_SPU_DMA1 16
21.124 +#define EVENT_SPU_DMA2 17
21.125 +#define EVENT_SPU_DMA3 18
21.126 +#define EVENT_GDROM_CMD 32
21.127 +#define EVENT_AICA 33
21.128 +
21.129 +void asic_event( int event );
21.130 +void asic_init( void );
22.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
22.2 +++ b/src/bootstrap.c Sat Mar 13 00:03:32 2004 +0000
22.3 @@ -0,0 +1,99 @@
22.4 +#include <stdlib.h>
22.5 +#include <stdint.h>
22.6 +#include <string.h>
22.7 +#include <stdio.h>
22.8 +#include <unistd.h>
22.9 +#include <fcntl.h>
22.10 +#include <errno.h>
22.11 +#include <assert.h>
22.12 +#include <sys/stat.h>
22.13 +#include <sys/mman.h>
22.14 +#include "ipbin.h"
22.15 +#include "gui.h"
22.16 +
22.17 +static char *dc_peripherals[] = { "Uses WinCE", "Unknown (0x0000002)",
22.18 + "Unknown (0x0000004)", "Unknown (0x0000008)",
22.19 + "VGA Box", "Unknown (0x0000020)",
22.20 + "Unknown (0x0000040)", "Unknown (0x0000080)",
22.21 + "Other Expansions", "Puru Puru pack",
22.22 + "Mike", "Memory card",
22.23 + "Basic controller", "C button",
22.24 + "D button", "X button",
22.25 + "Y button", "Z button",
22.26 + "Expanded direction buttons",
22.27 + "Analog R trigger", "Analog L trigger",
22.28 + "Analog horizontal", "Analog vertical",
22.29 + "Expanded analog horizontal",
22.30 + "Expanded analog vertical",
22.31 + "Gun", "Keyboard", "Mouse" };
22.32 +
22.33 +static uint32_t compute_crc16( dc_bootstrap_head_t h )
22.34 +{
22.35 + /* Note: Algorithm taken from http://mc.pp.se/dc/ip0000.bin.html */
22.36 + uint32_t i, c, n = 0xffff;
22.37 + char *data = h->product_id;
22.38 + for (i = 0; i < 16; i++)
22.39 + {
22.40 + n ^= (data[i]<<8);
22.41 + for (c = 0; c < 8; c++)
22.42 + if (n & 0x8000)
22.43 + n = (n << 1) ^ 4129;
22.44 + else
22.45 + n = (n << 1);
22.46 + }
22.47 + return n & 0xffff;
22.48 +}
22.49 +
22.50 +void parse_ipbin( char *data )
22.51 +{
22.52 + struct dc_bootstrap_head *head;
22.53 + int i, got, periph, crc, hcrc;
22.54 + char *prot_symbols;
22.55 + char buf[512];
22.56 +
22.57 + /* Dump out the bootstrap metadata table */
22.58 + head = (struct dc_bootstrap_head *)data;
22.59 + prot_symbols = ((char *)data) + 0x3700;
22.60 + memcpy( buf, head->product_name, 128 );
22.61 + for( i=127; i>0 && buf[i] == ' '; i-- );
22.62 + buf[i] = '\0';
22.63 + periph = strtol( head->peripherals, NULL, 16 );
22.64 + INFO( "Bootstrap loaded, Name: %s Author: %-16.16s",
22.65 + buf, head->vendor_id );
22.66 + sprintf( buf, "%4.4s", head->crc );
22.67 + crc = compute_crc16(head);
22.68 + hcrc = strtol( buf, NULL, 16 );
22.69 + emit( crc == hcrc ? EMIT_INFO : EMIT_WARN, MODULE_ID,
22.70 + " Header CRC: %04X (Computed %04X)", hcrc, crc );
22.71 + INFO( " Boot File: %-16.16s", head->boot_file );
22.72 + INFO( " Product ID: %-10.10s Product Ver: %-6.6s Date: %-8.8s",
22.73 + head->product_id, head->product_ver, head->product_date );
22.74 + INFO( " Disc ID: %-11.11s Regions: %-8.8s Peripherals: %07X",
22.75 + head->gdrom_id, head->regions, periph );
22.76 + strcpy( buf, " Supports: " );
22.77 + got = 0;
22.78 + for( i=0; i<28; i++ ) {
22.79 + if( periph & (1<<i) ){
22.80 + if( got ) strcat( buf, ", " );
22.81 + strcat( buf, dc_peripherals[i] );
22.82 + got = 1;
22.83 + }
22.84 + if( i == 11 ) i = 23; /* Skip 8-23 */
22.85 + }
22.86 + INFO( buf, NULL );
22.87 + strcpy( buf, " Requires: " );
22.88 + got = 0;
22.89 + for( i=12; i<24; i++ ) {
22.90 + if( periph & (1<<i) ) {
22.91 + if( got ) strcat( buf, ", " );
22.92 + strcat( buf, dc_peripherals[i] );
22.93 + got = 1;
22.94 + }
22.95 + }
22.96 + INFO( buf, NULL );
22.97 +#if 0
22.98 + INFO( " Area protection symbols:", NULL );
22.99 + for( i=0; i<8; i++ )
22.100 + INFO( " %d: %28.28s", i, &prot_symbols[(i*32)+4] );
22.101 +#endif
22.102 +}
23.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
23.2 +++ b/src/bootstrap.h Sat Mar 13 00:03:32 2004 +0000
23.3 @@ -0,0 +1,67 @@
23.4 +/*
23.5 + * IP.BIN related code. Ref: http://mc.pp.se/dc/ip0000.bin.html
23.6 + */
23.7 +#ifndef dc_ipbin_H
23.8 +#define dc_ipbin_H 1
23.9 +
23.10 +#include <sys/types.h>
23.11 +
23.12 +#ifdef __cplusplus
23.13 +extern "C" {
23.14 +#if 0
23.15 +}
23.16 +#endif
23.17 +#endif
23.18 +
23.19 +#define BOOTSTRAP_LOAD_ADDR 0x8C008000
23.20 +#define BOOTSTRAP_SIZE 32768
23.21 +
23.22 +typedef struct dc_bootstrap_head {
23.23 + char hardware_id[16]; /* must be "SEGA SEGAKATANA " */
23.24 + char maker_id[16]; /* ditto, "SEGA ENTERPRISES" */
23.25 + char crc[4];
23.26 + char padding; /* normally ascii space */
23.27 + char gdrom_id[6];
23.28 + char disc_no[5];
23.29 + char regions[8];
23.30 + char peripherals[8];
23.31 + char product_id[10];
23.32 + char product_ver[6];
23.33 + char product_date[16];
23.34 + char boot_file[16];
23.35 + char vendor_id[16];
23.36 + char product_name[128];
23.37 +} *dc_bootstrap_head_t;
23.38 +
23.39 +/* Expansion units */
23.40 +#define DC_PERIPH_WINCE 0x0000001
23.41 +#define DC_PERIPH_VGABOX 0x0000010
23.42 +#define DC_PERIPH_OTHER 0x0000100
23.43 +#define DC_PERIPH_PURUPURU 0x0000200
23.44 +#define DC_PERIPH_MIKE 0x0000400
23.45 +#define DC_PERIPH_MEMCARD 0x0000800
23.46 +/* Basic requirements */
23.47 +#define DC_PERIPH_BASIC 0x0001000 /* Basic controls - start, a, b, arrows */
23.48 +#define DC_PERIPH_C_BUTTON 0x0002000
23.49 +#define DC_PERIPH_D_BUTTON 0x0004000
23.50 +#define DC_PERIPH_X_BUTTON 0x0008000
23.51 +#define DC_PERIPH_Y_BUTTON 0x0010000
23.52 +#define DC_PERIPH_Z_BUTTON 0x0020000
23.53 +#define DC_PERIPH_EXP_DIR 0x0040000 /* Expanded direction buttons */
23.54 +#define DC_PERIPH_ANALOG_R 0x0080000 /* Analog R trigger */
23.55 +#define DC_PERIPH_ANALOG_L 0x0100000 /* Analog L trigger */
23.56 +#define DC_PERIPH_ANALOG_H 0x0200000 /* Analog horizontal controller */
23.57 +#define DC_PERIPH_ANALOG_V 0x0400000 /* Analog vertical controller */
23.58 +#define DC_PERIPH_EXP_AH 0x0800000 /* Expanded analog horizontal (?) */
23.59 +#define DC_PERIPH_EXP_AV 0x1000000 /* Expanded analog vertical (?) */
23.60 +/* Optional peripherals */
23.61 +#define DC_PERIPH_GUN 0x2000000
23.62 +#define DC_PERIPH_KEYBOARD 0x4000000
23.63 +#define DC_PERIPH_MOUSE 0x8000000
23.64 +
23.65 +void parse_ipbin(char *data);
23.66 +
23.67 +#ifdef __cplusplus
23.68 +}
23.69 +#endif
23.70 +#endif
24.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
24.2 +++ b/src/dream.h Sat Mar 13 00:03:32 2004 +0000
24.3 @@ -0,0 +1,39 @@
24.4 +/*
24.5 + * Application-wide declarations
24.6 + */
24.7 +#ifndef dream_H
24.8 +#define dream_H 1
24.9 +
24.10 +#ifdef __cplusplus
24.11 +extern "C" {
24.12 +#if 0
24.13 +}
24.14 +#endif
24.15 +#endif
24.16 +
24.17 +#define EMIT_FATAL 0
24.18 +#define EMIT_ERR 1
24.19 +#define EMIT_WARN 2
24.20 +#define EMIT_INFO 3
24.21 +#define EMIT_DEBUG 4
24.22 +#define EMIT_TRACE 5
24.23 +
24.24 +#ifndef MODULE_ID
24.25 +#define MODULE_ID 0
24.26 +#endif
24.27 +
24.28 +void emit( int level, int source, char *msg, ... );
24.29 +
24.30 +#define FATAL( ... ) emit( EMIT_FATAL, MODULE_ID, __VA_ARGS__ )
24.31 +#define ERROR( ... ) emit( EMIT_ERR, MODULE_ID, __VA_ARGS__ )
24.32 +#define WARN( ... ) emit( EMIT_WARN, MODULE_ID, __VA_ARGS__ )
24.33 +#define INFO( ... ) emit( EMIT_INFO, MODULE_ID, __VA_ARGS__ )
24.34 +#define DEBUG( ... ) emit( EMIT_DEBUG, MODULE_ID, __VA_ARGS__ )
24.35 +#define TRACE( ... ) emit( EMIT_TRACE, MODULE_ID, __VA_ARGS__ )
24.36 +
24.37 +#define BIOS_PATH "../bios"
24.38 +
24.39 +#ifdef __cplusplus
24.40 +}
24.41 +#endif
24.42 +#endif
25.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
25.2 +++ b/src/gdrom/cdi.c Sat Mar 13 00:03:32 2004 +0000
25.3 @@ -0,0 +1,154 @@
25.4 +
25.5 +#include <stdlib.h>
25.6 +#include <stdio.h>
25.7 +#include <stdint.h>
25.8 +#include <fcntl.h>
25.9 +#include <errno.h>
25.10 +#include <sys/stat.h>
25.11 +#include "cdi.h"
25.12 +
25.13 +#define CDI_V2 0x80000004
25.14 +#define CDI_V3 0x80000005
25.15 +
25.16 +static char track_start_marker[20] = { 0,0,1,0,0,0,255,255,255,255,
25.17 + 0,0,1,0,0,0,255,255,255,255 };
25.18 +
25.19 +struct cdi_trailer {
25.20 + uint32_t cdi_version;
25.21 + uint32_t header_offset;
25.22 +};
25.23 +
25.24 +struct cdi_track {
25.25 + int file_posn;
25.26 + int length; /* bytes */
25.27 + int pregap; /* sectors */
25.28 + int mode;
25.29 + int sector_size;
25.30 + int session;
25.31 + struct cdi_track *next;
25.32 +};
25.33 +
25.34 +struct cdi_handle {
25.35 + int fd;
25.36 + uint16_t num_sessions;
25.37 + struct cdi_track *tracks;
25.38 +};
25.39 +
25.40 +
25.41 +
25.42 +struct cdi_track_data {
25.43 + char unknown[0x19];
25.44 + uint32_t pregap_length;
25.45 + uint32_t length;
25.46 + char unknown2[6];
25.47 + uint32_t mode;
25.48 + char unknown3[0x0c];
25.49 + uint32_t start_lba;
25.50 + uint32_t total_length;
25.51 + char unknown4[0x10];
25.52 + uint32_t sector_size;
25.53 + char unknown5[0x1D];
25.54 +} __attribute__((packed));
25.55 +
25.56 +cdi_t cdi_open( char *filename )
25.57 +{
25.58 +#define BAIL( x, ... ) { fprintf( stderr, x, __VA_ARGS__ ); if( fd != -1 ) close(fd); return NULL; }
25.59 +
25.60 + struct stat st;
25.61 + int fd = -1, i,j, tmp;
25.62 + int posn = 0, hdr;
25.63 + long len;
25.64 + struct cdi_trailer trail;
25.65 + struct cdi_handle cdi;
25.66 + uint16_t tracks;
25.67 + uint32_t new_fmt;
25.68 + char tmpc;
25.69 + char marker[20];
25.70 +
25.71 + fd = open( filename, O_RDONLY );
25.72 + if( fd == -1 )
25.73 + BAIL( "Unable to open file: %s (%s)\n", filename, strerror(errno) );
25.74 + fstat( fd, &st );
25.75 + if( st.st_size < 8 )
25.76 + BAIL( "File is too small to be a valid CDI image: %s\n", filename );
25.77 + len = lseek( fd, -8, SEEK_END );
25.78 + read( fd, &trail, sizeof(trail) );
25.79 + if( trail.header_offset > st.st_size ||
25.80 + trail.header_offset == 0 )
25.81 + BAIL( "Not a valid CDI image: %s\n", filename );
25.82 +
25.83 + if( trail.cdi_version == CDI_V2 ) trail.cdi_version = 2;
25.84 + else if( trail.cdi_version == CDI_V3 ) trail.cdi_version = 3;
25.85 + else BAIL( "Unknown CDI version code %08x in %s\n", trail.cdi_version,
25.86 + filename );
25.87 +
25.88 + lseek( fd, trail.header_offset, SEEK_SET );
25.89 + read( fd, &cdi.num_sessions, 2 );
25.90 +
25.91 +
25.92 + printf( "CDI version: %d\n", trail.cdi_version );
25.93 + printf( "Sessions: %d\n\n", cdi.num_sessions );
25.94 + for( i=0; i< cdi.num_sessions; i++ ) {
25.95 + read( fd, &tracks, 2 );
25.96 + printf( "Session %d - %d tracks:\n", i+1, tracks );
25.97 + for( j=0; j<tracks; j++ ) {
25.98 + struct cdi_track_data trk;
25.99 +
25.100 + read( fd, &new_fmt, 4 );
25.101 + if( new_fmt != 0 ) { /* Additional data 3.00.780+ ?? */
25.102 + printf( "Note: CDI image has 3.00.780+ flag set\n" );
25.103 + lseek( fd, 8, SEEK_CUR );
25.104 + }
25.105 + read( fd, marker, 20 );
25.106 + if( memcmp( marker, track_start_marker, 20) != 0 )
25.107 + BAIL( "Track start marker not found, error reading cdi\n",NULL );
25.108 + read( fd, &tmp, 4 );
25.109 + printf( "Unknown 4 bytes: %08x\n", tmp );
25.110 + read( fd, &tmpc, 1 );
25.111 + lseek( fd, (int)tmpc, SEEK_CUR ); /* skip over the filename */
25.112 + read( fd, &trk, sizeof(trk) );
25.113 + switch( trk.sector_size ) {
25.114 + case 0: trk.sector_size = 2048; hdr=0; break;
25.115 + case 1: trk.sector_size = 2336; hdr=8; break;
25.116 + case 2:
25.117 + trk.sector_size = 2352;
25.118 + if( trk.mode == 2 ) hdr=24;
25.119 + else hdr=16;
25.120 + break;
25.121 + default: BAIL( "Unknown sector size: %d\n", trk.sector_size );
25.122 + }
25.123 + posn += hdr;
25.124 + len = trk.length*trk.sector_size;
25.125 + printf( " Track %d\n", j+1 );
25.126 + printf( " Pregap: %08x\n", trk.pregap_length );
25.127 + printf( " Length: %08x\n", trk.length );
25.128 + printf( " Mode: %d\n", trk.mode );
25.129 + printf( " Sector size: %d\n", trk.sector_size );
25.130 + printf( " Start LBA: %08x\n", trk.start_lba );
25.131 + printf( " Total length: %08x\n", trk.total_length );
25.132 + printf( " ---\n" );
25.133 + printf( " File position: %08x\n", posn+trk.pregap_length*trk.sector_size );
25.134 + printf( " File length: %d\n", len );
25.135 + posn += trk.total_length*trk.sector_size;
25.136 + lseek( fd, 12, SEEK_CUR );
25.137 + if( new_fmt )
25.138 + lseek( fd, 78, SEEK_CUR );
25.139 + tmp = lseek( fd, 0, SEEK_CUR );
25.140 + printf( "(Header offset: %x)\n", tmp - trail.header_offset );
25.141 + }
25.142 + }
25.143 +
25.144 + return NULL;
25.145 +#undef BAIL(x, ...)
25.146 +}
25.147 +
25.148 +int main(int argc, char *argv[] )
25.149 +{
25.150 + int i;
25.151 +
25.152 + for( i=1; i<argc; i++ ) {
25.153 + cdi_open(argv[i]);
25.154 + }
25.155 + return 0;
25.156 +}
25.157 +
26.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
26.2 +++ b/src/gdrom/cdi.h Sat Mar 13 00:03:32 2004 +0000
26.3 @@ -0,0 +1,21 @@
26.4 +#ifndef cdi_H
26.5 +#define cdi_H 1
26.6 +
26.7 +#ifdef __cplusplus
26.8 +extern "C" {
26.9 +#if 0
26.10 +}
26.11 +#endif
26.12 +#endif
26.13 +
26.14 +#include <stdio.h>
26.15 +
26.16 +typedef struct cdi_handle *cdi_t;
26.17 +
26.18 +cdi_t cdi_open( char *filename );
26.19 +
26.20 +#ifdef __cplusplus
26.21 +}
26.22 +#endif
26.23 +
26.24 +#endif
27.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
27.2 +++ b/src/gui/callbacks.c Sat Mar 13 00:03:32 2004 +0000
27.3 @@ -0,0 +1,275 @@
27.4 +#ifdef HAVE_CONFIG_H
27.5 +# include <config.h>
27.6 +#endif
27.7 +
27.8 +#include <gnome.h>
27.9 +
27.10 +#include "callbacks.h"
27.11 +#include "interface.h"
27.12 +#include "gui.h"
27.13 +#include "sh4core.h"
27.14 +#include "asic.h"
27.15 +
27.16 +extern int disasm_from;
27.17 +int selected_pc = -1;
27.18 +
27.19 +void
27.20 +on_new_file1_activate (GtkMenuItem *menuitem,
27.21 + gpointer user_data)
27.22 +{
27.23 +
27.24 +}
27.25 +
27.26 +
27.27 +void
27.28 +on_open1_activate (GtkMenuItem *menuitem,
27.29 + gpointer user_data)
27.30 +{
27.31 + open_file_dialog();
27.32 +}
27.33 +
27.34 +
27.35 +void
27.36 +on_save1_activate (GtkMenuItem *menuitem,
27.37 + gpointer user_data)
27.38 +{
27.39 +
27.40 +}
27.41 +
27.42 +
27.43 +void
27.44 +on_save_as1_activate (GtkMenuItem *menuitem,
27.45 + gpointer user_data)
27.46 +{
27.47 +
27.48 +}
27.49 +
27.50 +
27.51 +void
27.52 +on_exit1_activate (GtkMenuItem *menuitem,
27.53 + gpointer user_data)
27.54 +{
27.55 + gtk_main_quit();
27.56 +}
27.57 +
27.58 +
27.59 +void
27.60 +on_preferences1_activate (GtkMenuItem *menuitem,
27.61 + gpointer user_data)
27.62 +{
27.63 +
27.64 +}
27.65 +
27.66 +
27.67 +void
27.68 +on_about1_activate (GtkMenuItem *menuitem,
27.69 + gpointer user_data)
27.70 +{
27.71 + GtkWidget *about = create_about_win();
27.72 + gtk_widget_show(about);
27.73 +}
27.74 +
27.75 +
27.76 +void
27.77 +on_load_btn_clicked (GtkButton *button,
27.78 + gpointer user_data)
27.79 +{
27.80 + open_file_dialog();
27.81 +}
27.82 +
27.83 +
27.84 +void
27.85 +on_reset_btn_clicked (GtkButton *button,
27.86 + gpointer user_data)
27.87 +{
27.88 + sh4_reset();
27.89 + mem_reset();
27.90 + update_registers();
27.91 +}
27.92 +
27.93 +
27.94 +void
27.95 +on_stop_btn_clicked (GtkButton *button,
27.96 + gpointer user_data)
27.97 +{
27.98 + if( sh4_isrunning() ) {
27.99 + sh4_stop();
27.100 + }
27.101 +}
27.102 +
27.103 +
27.104 +void
27.105 +on_step_btn_clicked (GtkButton *button,
27.106 + gpointer user_data)
27.107 +{
27.108 + sh4_execute_instruction();
27.109 + update_registers();
27.110 +}
27.111 +
27.112 +
27.113 +void run( uint32_t target ) {
27.114 + if( ! sh4_isrunning() ) {
27.115 + do {
27.116 + if( target == -1 )
27.117 + sh4_runfor(1000000);
27.118 + else
27.119 + sh4_runto(target, 1000000);
27.120 + update_icount();
27.121 + run_timers(1000000);
27.122 + while( gtk_events_pending() )
27.123 + gtk_main_iteration();
27.124 + pvr2_next_frame();
27.125 + } while( sh4_isrunning() );
27.126 + update_registers();
27.127 + }
27.128 +}
27.129 +void
27.130 +on_run_btn_clicked (GtkButton *button,
27.131 + gpointer user_data)
27.132 +{
27.133 + run(-1);
27.134 +}
27.135 +
27.136 +
27.137 +void
27.138 +on_runto_btn_clicked (GtkButton *button,
27.139 + gpointer user_data)
27.140 +{
27.141 + if( selected_pc == -1 )
27.142 + WARN( "No address selected, so can't run to it", NULL );
27.143 + else {
27.144 + INFO( "Running until %08X...", selected_pc );
27.145 + run( selected_pc );
27.146 + }
27.147 +}
27.148 +
27.149 +
27.150 +void
27.151 +on_break_btn_clicked (GtkButton *button,
27.152 + gpointer user_data)
27.153 +{
27.154 +
27.155 +}
27.156 +
27.157 +
27.158 +gboolean
27.159 +on_debug_win_delete_event (GtkWidget *widget,
27.160 + GdkEvent *event,
27.161 + gpointer user_data)
27.162 +{
27.163 + gtk_main_quit();
27.164 + return FALSE;
27.165 +}
27.166 +
27.167 +
27.168 +void
27.169 +on_disasm_list_select_row (GtkCList *clist,
27.170 + gint row,
27.171 + gint column,
27.172 + GdkEvent *event,
27.173 + gpointer user_data)
27.174 +{
27.175 + selected_pc = disasm_from + (row<<1);
27.176 +}
27.177 +
27.178 +
27.179 +void
27.180 +on_disasm_list_unselect_row (GtkCList *clist,
27.181 + gint row,
27.182 + gint column,
27.183 + GdkEvent *event,
27.184 + gpointer user_data)
27.185 +{
27.186 + int pc = disasm_from + (row<<1);
27.187 + if( selected_pc == pc ) selected_pc = -1;
27.188 +}
27.189 +
27.190 +
27.191 +void
27.192 +on_mem_mapped_regs1_activate (GtkMenuItem *menuitem,
27.193 + gpointer user_data)
27.194 +{
27.195 + mmr_open_win();
27.196 +}
27.197 +
27.198 +
27.199 +gboolean
27.200 +on_mmr_win_delete_event (GtkWidget *widget,
27.201 + GdkEvent *event,
27.202 + gpointer user_data)
27.203 +{
27.204 + mmr_close_win();
27.205 + return TRUE;
27.206 +}
27.207 +
27.208 +
27.209 +void
27.210 +on_mmr_close_clicked (GtkButton *button,
27.211 + gpointer user_data)
27.212 +{
27.213 + mmr_close_win();
27.214 +}
27.215 +
27.216 +
27.217 +void
27.218 +on_mode_field_changed (GtkEditable *editable,
27.219 + gpointer user_data)
27.220 +{
27.221 +
27.222 +}
27.223 +
27.224 +
27.225 +void
27.226 +on_page_locked_btn_toggled (GtkToggleButton *togglebutton,
27.227 + gpointer user_data)
27.228 +{
27.229 +
27.230 +}
27.231 +
27.232 +
27.233 +gboolean
27.234 +on_page_field_key_press_event (GtkWidget *widget,
27.235 + GdkEventKey *event,
27.236 + gpointer user_data)
27.237 +{
27.238 + if( event->keyval == GDK_Return || event->keyval == GDK_Linefeed ) {
27.239 + gchar *text = gtk_entry_get_text( GTK_ENTRY(widget) );
27.240 + gchar *endptr;
27.241 + unsigned int val = strtoul( text, &endptr, 16 );
27.242 + if( text == endptr ) { /* invalid input */
27.243 + char buf[10];
27.244 + sprintf( buf, "%08X", disasm_from );
27.245 + gtk_entry_set_text( GTK_ENTRY(widget), buf );
27.246 + } else {
27.247 + set_disassembly_region(val);
27.248 + }
27.249 + }
27.250 + return FALSE;
27.251 +}
27.252 +
27.253 +
27.254 +void
27.255 +on_output_list_select_row (GtkCList *clist,
27.256 + gint row,
27.257 + gint column,
27.258 + GdkEvent *event,
27.259 + gpointer user_data)
27.260 +{
27.261 + if( event->type == GDK_2BUTTON_PRESS && event->button.button == 1 ) {
27.262 + char *val;
27.263 + gtk_clist_get_text( clist, row, 1, &val );
27.264 + if( val[0] != '\0' ) {
27.265 + int addr = strtoul( val, NULL, 16 );
27.266 + jump_to_disassembly( addr, TRUE );
27.267 + }
27.268 + }
27.269 +}
27.270 +
27.271 +
27.272 +void
27.273 +on_jump_pc_btn_clicked (GtkButton *button,
27.274 + gpointer user_data)
27.275 +{
27.276 + jump_to_disassembly( sh4r.pc, TRUE );
27.277 +}
27.278 +
28.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
28.2 +++ b/src/gui/callbacks.h Sat Mar 13 00:03:32 2004 +0000
28.3 @@ -0,0 +1,143 @@
28.4 +#include <gnome.h>
28.5 +
28.6 +
28.7 +void
28.8 +on_new_file1_activate (GtkMenuItem *menuitem,
28.9 + gpointer user_data);
28.10 +
28.11 +void
28.12 +on_open1_activate (GtkMenuItem *menuitem,
28.13 + gpointer user_data);
28.14 +
28.15 +void
28.16 +on_save1_activate (GtkMenuItem *menuitem,
28.17 + gpointer user_data);
28.18 +
28.19 +void
28.20 +on_save_as1_activate (GtkMenuItem *menuitem,
28.21 + gpointer user_data);
28.22 +
28.23 +void
28.24 +on_exit1_activate (GtkMenuItem *menuitem,
28.25 + gpointer user_data);
28.26 +
28.27 +void
28.28 +on_preferences1_activate (GtkMenuItem *menuitem,
28.29 + gpointer user_data);
28.30 +
28.31 +void
28.32 +on_about1_activate (GtkMenuItem *menuitem,
28.33 + gpointer user_data);
28.34 +
28.35 +void
28.36 +on_load_btn_clicked (GtkButton *button,
28.37 + gpointer user_data);
28.38 +
28.39 +void
28.40 +on_reset_btn_clicked (GtkButton *button,
28.41 + gpointer user_data);
28.42 +
28.43 +void
28.44 +on_stop_btn_clicked (GtkButton *button,
28.45 + gpointer user_data);
28.46 +
28.47 +void
28.48 +on_step_btn_clicked (GtkButton *button,
28.49 + gpointer user_data);
28.50 +
28.51 +void
28.52 +on_run_btn_clicked (GtkButton *button,
28.53 + gpointer user_data);
28.54 +
28.55 +void
28.56 +on_runto_btn_clicked (GtkButton *button,
28.57 + gpointer user_data);
28.58 +
28.59 +void
28.60 +on_break_btn_clicked (GtkButton *button,
28.61 + gpointer user_data);
28.62 +
28.63 +gboolean
28.64 +on_debug_win_delete_event (GtkWidget *widget,
28.65 + GdkEvent *event,
28.66 + gpointer user_data);
28.67 +
28.68 +void
28.69 +on_disasm_list_select_row (GtkCList *clist,
28.70 + gint row,
28.71 + gint column,
28.72 + GdkEvent *event,
28.73 + gpointer user_data);
28.74 +
28.75 +void
28.76 +on_disasm_list_unselect_row (GtkCList *clist,
28.77 + gint row,
28.78 + gint column,
28.79 + GdkEvent *event,
28.80 + gpointer user_data);
28.81 +
28.82 +void
28.83 +on_mem_mapped_regs1_activate (GtkMenuItem *menuitem,
28.84 + gpointer user_data);
28.85 +
28.86 +void
28.87 +on_mmu_reglist_select_row (GtkCList *clist,
28.88 + gint row,
28.89 + gint column,
28.90 + GdkEvent *event,
28.91 + gpointer user_data);
28.92 +
28.93 +void
28.94 +on_mmu_regclose_clicked (GtkButton *button,
28.95 + gpointer user_data);
28.96 +
28.97 +gboolean
28.98 +on_mmr_win_delete_event (GtkWidget *widget,
28.99 + GdkEvent *event,
28.100 + gpointer user_data);
28.101 +
28.102 +void
28.103 +on_mmr_close_clicked (GtkButton *button,
28.104 + gpointer user_data);
28.105 +
28.106 +void
28.107 +on_page_field_changed (GtkEditable *editable,
28.108 + gpointer user_data);
28.109 +
28.110 +void
28.111 +on_mode_field_changed (GtkEditable *editable,
28.112 + gpointer user_data);
28.113 +
28.114 +void
28.115 +on_disasm_list_select_row (GtkCList *clist,
28.116 + gint row,
28.117 + gint column,
28.118 + GdkEvent *event,
28.119 + gpointer user_data);
28.120 +
28.121 +void
28.122 +on_disasm_list_unselect_row (GtkCList *clist,
28.123 + gint row,
28.124 + gint column,
28.125 + GdkEvent *event,
28.126 + gpointer user_data);
28.127 +
28.128 +void
28.129 +on_page_locked_btn_toggled (GtkToggleButton *togglebutton,
28.130 + gpointer user_data);
28.131 +
28.132 +gboolean
28.133 +on_page_field_key_press_event (GtkWidget *widget,
28.134 + GdkEventKey *event,
28.135 + gpointer user_data);
28.136 +
28.137 +void
28.138 +on_output_list_select_row (GtkCList *clist,
28.139 + gint row,
28.140 + gint column,
28.141 + GdkEvent *event,
28.142 + gpointer user_data);
28.143 +
28.144 +void
28.145 +on_jump_pc_btn_clicked (GtkButton *button,
28.146 + gpointer user_data);
29.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
29.2 +++ b/src/gui/gui.c Sat Mar 13 00:03:32 2004 +0000
29.3 @@ -0,0 +1,282 @@
29.4 +#include <stdlib.h>
29.5 +#include <stdarg.h>
29.6 +#include <gnome.h>
29.7 +#include <math.h>
29.8 +#include "gui.h"
29.9 +#include "mem.h"
29.10 +#include "sh4dasm.h"
29.11 +#include "sh4core.h"
29.12 +
29.13 +#define REGISTER_FONT "-*-fixed-medium-r-normal--12-*-*-*-*-*-iso8859-1"
29.14 +
29.15 +#define REG_INT 0
29.16 +#define REG_FLT 1
29.17 +#define REG_SPECIAL 2
29.18 +
29.19 +struct reg_map_struct {
29.20 + char *name;
29.21 + int type;
29.22 + void *value;
29.23 +} reg_map[] = { {"R0", REG_INT, &sh4r.r[0]}, {"R1", REG_INT, &sh4r.r[1]},
29.24 + {"R2", REG_INT, &sh4r.r[2]}, {"R3", REG_INT, &sh4r.r[3]},
29.25 + {"R4", REG_INT, &sh4r.r[4]}, {"R5", REG_INT, &sh4r.r[5]},
29.26 + {"R6", REG_INT, &sh4r.r[6]}, {"R7", REG_INT, &sh4r.r[7]},
29.27 + {"R8", REG_INT, &sh4r.r[8]}, {"R9", REG_INT, &sh4r.r[9]},
29.28 + {"R10",REG_INT, &sh4r.r[10]}, {"R11",REG_INT, &sh4r.r[11]},
29.29 + {"R12",REG_INT, &sh4r.r[12]}, {"R13",REG_INT, &sh4r.r[13]},
29.30 + {"R14",REG_INT, &sh4r.r[14]}, {"R15",REG_INT, &sh4r.r[15]},
29.31 + {"SR", REG_INT, &sh4r.sr}, {"GBR", REG_INT, &sh4r.gbr},
29.32 + {"SSR",REG_INT, &sh4r.ssr}, {"SPC", REG_INT, &sh4r.spc},
29.33 + {"SGR",REG_INT, &sh4r.sgr}, {"DBR", REG_INT, &sh4r.dbr},
29.34 + {"VBR",REG_INT, &sh4r.vbr},
29.35 + {"PC", REG_INT, &sh4r.pc}, {"PR", REG_INT, &sh4r.pr},
29.36 + {"MACL",REG_INT, &sh4r.mac},{"MACH",REG_INT, ((uint32_t *)&sh4r.mac)+1},
29.37 + {"FPUL", REG_INT, &sh4r.fpul}, {"FPSCR", REG_INT, &sh4r.fpscr},
29.38 + {NULL, 0, NULL} };
29.39 +
29.40 +GtkCList *msgs, *regs, *disasm;
29.41 +GdkColor clrNormal, clrChanged, clrError, clrWarn, clrPC, clrDebug, clrTrace;
29.42 +GtkEntry *page_field;
29.43 +GnomeAppBar *appbar;
29.44 +GtkProgressBar *icounter;
29.45 +char icounter_text[16];
29.46 +GtkStyle *fixed_list_style;
29.47 +PangoFontDescription *fixed_list_font;
29.48 +GdkColor *msg_colors[] = { &clrError, &clrError, &clrWarn, &clrNormal,
29.49 + &clrDebug, &clrTrace };
29.50 +
29.51 +struct sh4_registers sh4r_s;
29.52 +int disasm_from = -1, disasm_to = -1;
29.53 +int disasm_pc = -1;
29.54 +
29.55 +void open_file_callback(GtkWidget *btn, gpointer user_data);
29.56 +void open_file_canceled(GtkWidget *btn, gpointer user_data);
29.57 +void open_file( char *filename );
29.58 +
29.59 +/*
29.60 + * Check for changed registers and update the display
29.61 + */
29.62 +void update_registers( void )
29.63 +{
29.64 + int i;
29.65 + for( i=0; reg_map[i].name != NULL; i++ ) {
29.66 + if( reg_map[i].type == REG_INT ) {
29.67 + /* Yes this _is_ probably fairly evil */
29.68 + if( *((uint32_t *)reg_map[i].value) !=
29.69 + *((uint32_t *)((char *)&sh4r_s + ((char *)reg_map[i].value - (char *)&sh4r))) ) {
29.70 + char buf[20];
29.71 + sprintf( buf, "%08X", *((uint32_t *)reg_map[i].value) );
29.72 + gtk_clist_set_text( regs, i, 1, buf );
29.73 + gtk_clist_set_foreground( regs, i, &clrChanged );
29.74 + } else {
29.75 + gtk_clist_set_foreground( regs, i, &clrNormal );
29.76 + }
29.77 + } else {
29.78 + if( *((float *)reg_map[i].value) !=
29.79 + *((float *)((char *)&sh4r_s + ((char *)reg_map[i].value - (char *)&sh4r))) ) {
29.80 + char buf[20];
29.81 + sprintf( buf, "%f", *((float *)reg_map[i].value) );
29.82 + gtk_clist_set_text( regs, i, 1, buf );
29.83 + gtk_clist_set_foreground( regs, i, &clrChanged );
29.84 + } else {
29.85 + gtk_clist_set_foreground( regs, i, &clrNormal );
29.86 + }
29.87 + }
29.88 + }
29.89 + if( sh4r.pc != sh4r_s.pc )
29.90 + set_disassembly_pc( sh4r.pc, FALSE );
29.91 + memcpy( &sh4r_s, &sh4r, sizeof(sh4r) );
29.92 +
29.93 + update_icount();
29.94 + update_mmr_win();
29.95 +}
29.96 +
29.97 +void update_icount( void )
29.98 +{
29.99 + sprintf( icounter_text, "%d", sh4r.icount );
29.100 + gtk_progress_bar_set_text( icounter, icounter_text );
29.101 +}
29.102 +
29.103 +void set_disassembly_region( unsigned int page )
29.104 +{
29.105 + uint32_t i, posn;
29.106 + uint16_t op;
29.107 + char buf[80];
29.108 + char addr[10];
29.109 + char opcode[6] = "";
29.110 + char *arr[4] = { addr, " ", opcode, buf };
29.111 + unsigned int from = page & 0xFFFFF000;
29.112 + unsigned int to = from + 4096;
29.113 +
29.114 + gtk_clist_clear(disasm);
29.115 +
29.116 + sprintf( addr, "%08X", from );
29.117 + gtk_entry_set_text( page_field, addr );
29.118 +
29.119 + if( !mem_has_page( from ) ) {
29.120 + arr[3] = "This page is currently unmapped";
29.121 + gtk_clist_append( disasm, arr );
29.122 + gtk_clist_set_foreground( disasm, 0, &clrError );
29.123 + } else {
29.124 + for( i=from; i<to; i+=2 ) {
29.125 + sh4_disasm_instruction( i, buf, sizeof(buf) );
29.126 + sprintf( addr, "%08X", i );
29.127 + op = mem_read_phys_word(i);
29.128 + sprintf( opcode, "%02X %02X", op&0xFF, op>>8 );
29.129 + posn = gtk_clist_append( disasm, arr );
29.130 + if( buf[0] == '?' )
29.131 + gtk_clist_set_foreground( disasm, posn, &clrWarn );
29.132 + }
29.133 + if( disasm_pc != -1 && disasm_pc >= from && disasm_pc < to )
29.134 + gtk_clist_set_foreground( disasm, (disasm_pc - from)>>1,
29.135 + &clrPC );
29.136 + }
29.137 +
29.138 + if( page != from ) { /* not a page boundary */
29.139 + gtk_clist_moveto( disasm, (page-from)>>1, 0, 0.5, 0.0 );
29.140 + }
29.141 + disasm_from = from;
29.142 + disasm_to = to;
29.143 +}
29.144 +
29.145 +void jump_to_disassembly( unsigned int addr, gboolean select )
29.146 +{
29.147 + int row;
29.148 +
29.149 + if( addr < disasm_from || addr >= disasm_to )
29.150 + set_disassembly_region(addr);
29.151 +
29.152 + row = (addr-disasm_from)>>1;
29.153 + if(select) {
29.154 + gtk_clist_select_row( disasm, row, 0 );
29.155 + }
29.156 + if( gtk_clist_row_is_visible( disasm, row ) != GTK_VISIBILITY_FULL ){
29.157 + gtk_clist_moveto( disasm, row, 0, 0.5, 0.0 );
29.158 + }
29.159 +}
29.160 +
29.161 +void set_disassembly_pc( unsigned int pc, gboolean select )
29.162 +{
29.163 + int row;
29.164 +
29.165 + jump_to_disassembly( pc, select );
29.166 + if( disasm_pc != -1 && disasm_pc >= disasm_from && disasm_pc < disasm_to )
29.167 + gtk_clist_set_foreground( disasm, (disasm_pc - disasm_from)>>1,
29.168 + &clrNormal );
29.169 + row = (pc - disasm_from)>>1;
29.170 + gtk_clist_set_foreground( disasm, row, &clrPC );
29.171 + disasm_pc = pc;
29.172 +}
29.173 +
29.174 +void open_file_callback(GtkWidget *btn, gpointer user_data) {
29.175 + GtkFileSelection *file = GTK_FILE_SELECTION(user_data);
29.176 + gchar *filename = strdup( gtk_file_selection_get_filename(
29.177 + GTK_FILE_SELECTION(file) ) );
29.178 + gtk_widget_destroy(GTK_WIDGET(file));
29.179 + open_file( filename );
29.180 + free(filename);
29.181 +}
29.182 +
29.183 +void open_file_canceled(GtkWidget *btn, gpointer user_data) {
29.184 + gtk_widget_destroy(GTK_WIDGET(user_data));
29.185 +}
29.186 +
29.187 +void open_file_dialog( void )
29.188 +{
29.189 + GtkWidget *file;
29.190 +
29.191 + file = gtk_file_selection_new( "Open..." );
29.192 + gtk_signal_connect( GTK_OBJECT(GTK_FILE_SELECTION(file)->ok_button),
29.193 + "clicked", GTK_SIGNAL_FUNC(open_file_callback), file );
29.194 + gtk_signal_connect( GTK_OBJECT(GTK_FILE_SELECTION(file)->cancel_button),
29.195 + "clicked", GTK_SIGNAL_FUNC(open_file_canceled), file );
29.196 + gtk_widget_show( file );
29.197 +}
29.198 +
29.199 +void emit( int level, int source, char *msg, ... )
29.200 +{
29.201 + char buf[20], addr[10] = "", *p;
29.202 + char *arr[3] = {buf, addr};
29.203 + int posn;
29.204 + time_t tm = time(NULL);
29.205 + va_list ap;
29.206 +
29.207 + va_start(ap, msg);
29.208 + p = g_strdup_vprintf( msg, ap );
29.209 + strftime( buf, sizeof(buf), "%H:%M:%S", localtime(&tm) );
29.210 + if( source != -1 )
29.211 + sprintf( addr, "%08X", sh4r.pc );
29.212 + arr[2] = p;
29.213 + posn = gtk_clist_append(msgs, arr);
29.214 + free(p);
29.215 + va_end(ap);
29.216 +
29.217 + gtk_clist_set_foreground( msgs, posn, msg_colors[level] );
29.218 + gtk_clist_moveto( msgs, posn, 0, 1.0, 0.0 );
29.219 +
29.220 + /* emit _really_ slows down the emu, to the point where the gui can be
29.221 + * completely unresponsive if I don't include this:
29.222 + */
29.223 + while( gtk_events_pending() )
29.224 + gtk_main_iteration();
29.225 +}
29.226 +
29.227 +void init_debug_win(GtkWidget *win)
29.228 +{
29.229 + GdkColormap *map;
29.230 + GdkFont *regfont;
29.231 + GtkAdjustment *adj;
29.232 + int i;
29.233 + char buf[20];
29.234 + char *arr[2];
29.235 +
29.236 + clrNormal.red = clrNormal.green = clrNormal.blue = 0;
29.237 + clrChanged.red = clrChanged.green = 64*256;
29.238 + clrChanged.blue = 154*256;
29.239 + clrError.red = 65535;
29.240 + clrError.green = clrError.blue = 64*256;
29.241 + clrPC.red = 32*256;
29.242 + clrPC.green = 170*256;
29.243 + clrPC.blue = 52*256;
29.244 + clrWarn = clrChanged;
29.245 + clrTrace.red = 156*256;
29.246 + clrTrace.green = 78*256;
29.247 + clrTrace.blue = 201*256;
29.248 + clrDebug = clrPC;
29.249 +
29.250 + map = gdk_colormap_new(gdk_visual_get_best(), TRUE);
29.251 + gdk_colormap_alloc_color(map, &clrNormal, TRUE, TRUE);
29.252 + gdk_colormap_alloc_color(map, &clrChanged, TRUE, TRUE);
29.253 + gdk_colormap_alloc_color(map, &clrError, TRUE, TRUE);
29.254 + gdk_colormap_alloc_color(map, &clrWarn, TRUE, TRUE);
29.255 + gdk_colormap_alloc_color(map, &clrPC, TRUE, TRUE);
29.256 + gdk_colormap_alloc_color(map, &clrDebug, TRUE, TRUE);
29.257 + gdk_colormap_alloc_color(map, &clrTrace, TRUE, TRUE);
29.258 +
29.259 + fixed_list_font = pango_font_description_from_string("Courier 10");
29.260 + regs = gtk_object_get_data(GTK_OBJECT(win), "reg_list");
29.261 + arr[1] = buf;
29.262 + for( i=0; reg_map[i].name != NULL; i++ ) {
29.263 + arr[0] = reg_map[i].name;
29.264 + if( reg_map[i].type == REG_INT )
29.265 + sprintf( buf, "%08X", *((uint32_t *)reg_map[i].value) );
29.266 + else
29.267 + sprintf( buf, "%f", *((float *)reg_map[i].value) );
29.268 + gtk_clist_append( regs, arr );
29.269 + }
29.270 +
29.271 + fixed_list_style = gtk_style_copy( gtk_rc_get_style( GTK_WIDGET(regs) ) );
29.272 + if( fixed_list_style != NULL ) {
29.273 + fixed_list_style->font_desc = fixed_list_font;
29.274 + gtk_widget_set_style( GTK_WIDGET(regs), fixed_list_style );
29.275 + }
29.276 +
29.277 + msgs = gtk_object_get_data(GTK_OBJECT(win), "output_list");
29.278 + disasm = gtk_object_get_data(GTK_OBJECT(win), "disasm_list");
29.279 + gtk_clist_set_column_width( disasm, 1, 16 );
29.280 + page_field = gtk_object_get_data(GTK_OBJECT(win), "page_field");
29.281 +
29.282 + appbar = gtk_object_get_data(GTK_OBJECT(win), "debug_appbar");
29.283 + icounter = gnome_appbar_get_progress( appbar );
29.284 + gtk_progress_bar_set_text(icounter, "1");
29.285 +}
30.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
30.2 +++ b/src/gui/gui.h Sat Mar 13 00:03:32 2004 +0000
30.3 @@ -0,0 +1,36 @@
30.4 +/*
30.5 + * Gui related code
30.6 + */
30.7 +#ifndef dream_gui_H
30.8 +#define dream_gui_H 1
30.9 +
30.10 +#include <gnome.h>
30.11 +#include "dream.h"
30.12 +
30.13 +#ifdef __cplusplus
30.14 +extern "C" {
30.15 +#if 0
30.16 +}
30.17 +#endif
30.18 +#endif
30.19 +
30.20 +void init_debug_win(GtkWidget *);
30.21 +void open_file_dialog( void );
30.22 +void update_mmr_win( void );
30.23 +void init_mmr_win( void );
30.24 +void update_registers( void );
30.25 +void update_icount( void );
30.26 +void set_disassembly_region( unsigned int page );
30.27 +void set_disassembly_pc( unsigned int pc, gboolean select );
30.28 +void jump_to_disassembly( unsigned int addr, gboolean select );
30.29 +
30.30 +extern GtkStyle *fixed_list_style;
30.31 +extern GdkColor clrNormal, clrChanged, clrError, clrWarn, clrPC;
30.32 +
30.33 +void mmr_open_win( void );
30.34 +void mmr_close_win( void );
30.35 +
30.36 +#ifdef __cplusplus
30.37 +}
30.38 +#endif
30.39 +#endif
31.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
31.2 +++ b/src/gui/gui_mmr.c Sat Mar 13 00:03:32 2004 +0000
31.3 @@ -0,0 +1,151 @@
31.4 +#include <stdint.h>
31.5 +#include <gnome.h>
31.6 +#include "interface.h"
31.7 +#include "gui.h"
31.8 +#include "mem.h"
31.9 +#include "mmio.h"
31.10 +
31.11 +GtkWidget *mmr_win;
31.12 +GtkNotebook *mmr_book;
31.13 +
31.14 +static void printbits( char *out, int nbits, uint32_t value )
31.15 +{
31.16 + if( nbits < 32 ) {
31.17 + int i;
31.18 + for( i=32; i>nbits; i-- ) {
31.19 + if( !(i % 8) ) *out++ = ' ';
31.20 + *out++ = ' ';
31.21 + }
31.22 + }
31.23 + while( nbits > 0 ) {
31.24 + *out++ = (value&(1<<--nbits) ? '1' : '0');
31.25 + if( !(nbits % 8) ) *out++ = ' ';
31.26 + }
31.27 + *out = '\0';
31.28 +}
31.29 +
31.30 +static void printhex( char *out, int nbits, uint32_t value )
31.31 +{
31.32 + char tmp[10], *p = tmp;
31.33 + int i;
31.34 +
31.35 + sprintf( tmp, "%08X", value );
31.36 + for( i=32; i>0; i-=4, p++ ) {
31.37 + if( i <= nbits ) *out++ = *p;
31.38 + else *out++ = ' ';
31.39 + }
31.40 + *out = '\0';
31.41 +}
31.42 +
31.43 +
31.44 +static GtkCList *create_mmr_page( char *name )
31.45 +{
31.46 + GtkCList *list;
31.47 + GtkWidget *scroll;
31.48 + GtkWidget *tab;
31.49 +
31.50 + scroll = gtk_scrolled_window_new(NULL, NULL);
31.51 + gtk_widget_show( scroll );
31.52 + gtk_scrolled_window_set_policy( GTK_SCROLLED_WINDOW(scroll),
31.53 + GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS );
31.54 + list = GTK_CLIST(gtk_clist_new(5));
31.55 + gtk_clist_set_column_width(list, 0, 60);
31.56 + gtk_clist_set_column_width(list, 1, 50);
31.57 + gtk_clist_set_column_width(list, 2, 60);
31.58 + gtk_clist_set_column_width(list, 3, 220);
31.59 + gtk_clist_set_column_width(list, 4, 160);
31.60 + gtk_clist_set_column_justification(list, 0, GTK_JUSTIFY_CENTER );
31.61 + gtk_clist_set_column_justification(list, 2, GTK_JUSTIFY_CENTER );
31.62 + gtk_clist_set_column_justification(list, 3, GTK_JUSTIFY_CENTER );
31.63 + gtk_clist_set_column_title(list, 0, "Address");
31.64 + gtk_clist_set_column_title(list, 1, "Register");
31.65 + gtk_clist_set_column_title(list, 2, "Value");
31.66 + gtk_clist_set_column_title(list, 3, "Bit Pattern");
31.67 + gtk_clist_set_column_title(list, 4, "Description");
31.68 + gtk_clist_column_titles_show(list);
31.69 + gtk_widget_set_style( GTK_WIDGET(list), fixed_list_style );
31.70 + gtk_widget_show( GTK_WIDGET(list) );
31.71 + tab = gtk_label_new(_(name));
31.72 + gtk_widget_show( tab );
31.73 + gtk_container_add( GTK_CONTAINER(scroll), GTK_WIDGET(list) );
31.74 + gtk_notebook_append_page( mmr_book, scroll, tab );
31.75 + gtk_object_set_data( GTK_OBJECT(mmr_win), name, list );
31.76 + return list;
31.77 +}
31.78 +
31.79 +void update_mmr_win( void )
31.80 +{
31.81 + int i,j, count = 0;
31.82 + GtkCList *page, *all_page;
31.83 + char data[10], bits[40];
31.84 +
31.85 + all_page = GTK_CLIST(gtk_object_get_data( GTK_OBJECT(mmr_win), "All" ));
31.86 +
31.87 + for( i=1; i < num_io_rgns; i++ ) {
31.88 + page = GTK_CLIST(gtk_object_get_data( GTK_OBJECT(mmr_win),
31.89 + io_rgn[i]->id ));
31.90 + for( j=0; io_rgn[i]->ports[j].id != NULL; j++ ) {
31.91 + if( *io_rgn[i]->ports[j].val !=
31.92 + *(uint32_t *)(io_rgn[i]->save_mem+io_rgn[i]->ports[j].offset)){
31.93 + int sz = io_rgn[i]->ports[j].width;
31.94 + /* Changed */
31.95 + printhex( data, sz, *io_rgn[i]->ports[j].val );
31.96 + printbits( bits, sz, *io_rgn[i]->ports[j].val );
31.97 +
31.98 + gtk_clist_set_text( page, j, 2, data );
31.99 + gtk_clist_set_text( page, j, 3, bits );
31.100 + gtk_clist_set_foreground( page, j, &clrChanged );
31.101 +
31.102 + gtk_clist_set_text( all_page, count, 2, data );
31.103 + gtk_clist_set_text( all_page, count, 3, bits );
31.104 + gtk_clist_set_foreground( all_page, count, &clrChanged );
31.105 +
31.106 + } else {
31.107 + gtk_clist_set_foreground( page, j, &clrNormal );
31.108 + gtk_clist_set_foreground( all_page, count, &clrNormal );
31.109 + }
31.110 + count++;
31.111 + }
31.112 + memcpy( io_rgn[i]->save_mem, io_rgn[i]->mem, PAGE_SIZE );
31.113 + }
31.114 +}
31.115 +
31.116 +void init_mmr_win( void )
31.117 +{
31.118 + int i, j;
31.119 + GtkCList *all_list;
31.120 + mmr_win = create_mmr_win();
31.121 + mmr_book = GTK_NOTEBOOK( gtk_object_get_data( GTK_OBJECT(mmr_win), "mmr_notebook" ));
31.122 +
31.123 + /* kill the dummy page glade insists on adding */
31.124 + gtk_notebook_remove_page( mmr_book, 0 );
31.125 +
31.126 + all_list = create_mmr_page( "All" );
31.127 + for( i=1; i < num_io_rgns; i++ ) {
31.128 + GtkCList *list = create_mmr_page( io_rgn[i]->id );
31.129 +
31.130 + for( j=0; io_rgn[i]->ports[j].id != NULL; j++ ) {
31.131 + int sz = io_rgn[i]->ports[j].width;
31.132 + char addr[10], data[10], bits[40];
31.133 + char *arr[] = { addr, io_rgn[i]->ports[j].id, data, bits,
31.134 + io_rgn[i]->ports[j].desc };
31.135 + sprintf( addr, "%08X",
31.136 + io_rgn[i]->base + io_rgn[i]->ports[j].offset );
31.137 + printhex( data, sz, *io_rgn[i]->ports[j].val );
31.138 + printbits( bits, io_rgn[i]->ports[j].width,
31.139 + *io_rgn[i]->ports[j].val );
31.140 + gtk_clist_append( list, arr );
31.141 + gtk_clist_append( all_list, arr );
31.142 + }
31.143 + }
31.144 +}
31.145 +
31.146 +void mmr_open_win( void )
31.147 +{
31.148 + gtk_widget_show( mmr_win );
31.149 +}
31.150 +
31.151 +void mmr_close_win( void )
31.152 +{
31.153 + gtk_widget_hide( mmr_win );
31.154 +}
32.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
32.2 +++ b/src/gui/interface.c Sat Mar 13 00:03:32 2004 +0000
32.3 @@ -0,0 +1,605 @@
32.4 +/*
32.5 + * DO NOT EDIT THIS FILE - it is generated by Glade.
32.6 + */
32.7 +
32.8 +#ifdef HAVE_CONFIG_H
32.9 +# include <config.h>
32.10 +#endif
32.11 +
32.12 +#include <sys/types.h>
32.13 +#include <sys/stat.h>
32.14 +#include <unistd.h>
32.15 +#include <string.h>
32.16 +#include <stdio.h>
32.17 +
32.18 +#include <bonobo.h>
32.19 +#include <gnome.h>
32.20 +
32.21 +#include "callbacks.h"
32.22 +#include "interface.h"
32.23 +#include "support.h"
32.24 +
32.25 +#define GLADE_HOOKUP_OBJECT(component,widget,name) \
32.26 + g_object_set_data_full (G_OBJECT (component), name, \
32.27 + gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
32.28 +
32.29 +#define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
32.30 + g_object_set_data (G_OBJECT (component), name, widget)
32.31 +
32.32 +static GnomeUIInfo file1_menu_uiinfo[] =
32.33 +{
32.34 + {
32.35 + GNOME_APP_UI_ITEM, N_("gtk-new"),
32.36 + NULL,
32.37 + (gpointer) on_new_file1_activate, NULL, NULL,
32.38 + GNOME_APP_PIXMAP_NONE, NULL,
32.39 + 0, (GdkModifierType) 0, NULL
32.40 + },
32.41 + {
32.42 + GNOME_APP_UI_ITEM, N_("gtk-open"),
32.43 + NULL,
32.44 + (gpointer) on_open1_activate, NULL, NULL,
32.45 + GNOME_APP_PIXMAP_NONE, NULL,
32.46 + 0, (GdkModifierType) 0, NULL
32.47 + },
32.48 + {
32.49 + GNOME_APP_UI_ITEM, N_("gtk-save"),
32.50 + NULL,
32.51 + (gpointer) on_save1_activate, NULL, NULL,
32.52 + GNOME_APP_PIXMAP_NONE, NULL,
32.53 + 0, (GdkModifierType) 0, NULL
32.54 + },
32.55 + {
32.56 + GNOME_APP_UI_ITEM, N_("gtk-save-as"),
32.57 + NULL,
32.58 + (gpointer) on_save_as1_activate, NULL, NULL,
32.59 + GNOME_APP_PIXMAP_NONE, NULL,
32.60 + 0, (GdkModifierType) 0, NULL
32.61 + },
32.62 + GNOMEUIINFO_SEPARATOR,
32.63 + {
32.64 + GNOME_APP_UI_ITEM, N_("gtk-quit"),
32.65 + NULL,
32.66 + (gpointer) on_exit1_activate, NULL, NULL,
32.67 + GNOME_APP_PIXMAP_NONE, NULL,
32.68 + 0, (GdkModifierType) 0, NULL
32.69 + },
32.70 + GNOMEUIINFO_END
32.71 +};
32.72 +
32.73 +static GnomeUIInfo view1_menu_uiinfo[] =
32.74 +{
32.75 + {
32.76 + GNOME_APP_UI_ITEM, N_("Mem mapped Regs"),
32.77 + NULL,
32.78 + (gpointer) on_mem_mapped_regs1_activate, NULL, NULL,
32.79 + GNOME_APP_PIXMAP_NONE, NULL,
32.80 + 0, (GdkModifierType) 0, NULL
32.81 + },
32.82 + GNOMEUIINFO_END
32.83 +};
32.84 +
32.85 +static GnomeUIInfo settings1_menu_uiinfo[] =
32.86 +{
32.87 + {
32.88 + GNOME_APP_UI_ITEM, N_("gtk-preferences"),
32.89 + NULL,
32.90 + (gpointer) on_preferences1_activate, NULL, NULL,
32.91 + GNOME_APP_PIXMAP_NONE, NULL,
32.92 + 0, (GdkModifierType) 0, NULL
32.93 + },
32.94 + GNOMEUIINFO_END
32.95 +};
32.96 +
32.97 +static GnomeUIInfo help1_menu_uiinfo[] =
32.98 +{
32.99 + {
32.100 + GNOME_APP_UI_ITEM, N_("gnome-stock-about"),
32.101 + NULL,
32.102 + (gpointer) on_about1_activate, NULL, NULL,
32.103 + GNOME_APP_PIXMAP_NONE, NULL,
32.104 + 0, (GdkModifierType) 0, NULL
32.105 + },
32.106 + GNOMEUIINFO_END
32.107 +};
32.108 +
32.109 +static GnomeUIInfo menubar1_uiinfo[] =
32.110 +{
32.111 + {
32.112 + GNOME_APP_UI_SUBTREE, N_("_File"),
32.113 + NULL,
32.114 + file1_menu_uiinfo, NULL, NULL,
32.115 + GNOME_APP_PIXMAP_NONE, NULL,
32.116 + 0, (GdkModifierType) 0, NULL
32.117 + },
32.118 + {
32.119 + GNOME_APP_UI_SUBTREE, N_("_View"),
32.120 + NULL,
32.121 + view1_menu_uiinfo, NULL, NULL,
32.122 + GNOME_APP_PIXMAP_NONE, NULL,
32.123 + 0, (GdkModifierType) 0, NULL
32.124 + },
32.125 + {
32.126 + GNOME_APP_UI_SUBTREE, N_("_Settings"),
32.127 + NULL,
32.128 + settings1_menu_uiinfo, NULL, NULL,
32.129 + GNOME_APP_PIXMAP_NONE, NULL,
32.130 + 0, (GdkModifierType) 0, NULL
32.131 + },
32.132 + {
32.133 + GNOME_APP_UI_SUBTREE, N_("_Help"),
32.134 + NULL,
32.135 + help1_menu_uiinfo, NULL, NULL,
32.136 + GNOME_APP_PIXMAP_NONE, NULL,
32.137 + 0, (GdkModifierType) 0, NULL
32.138 + },
32.139 + GNOMEUIINFO_END
32.140 +};
32.141 +
32.142 +GtkWidget*
32.143 +create_debug_win (void)
32.144 +{
32.145 + GtkWidget *debug_win;
32.146 + GtkWidget *dock1;
32.147 + GtkWidget *toolbar1;
32.148 + GtkWidget *tmp_toolbar_icon;
32.149 + GtkWidget *load_btn;
32.150 + GtkWidget *reset_btn;
32.151 + GtkWidget *stop_btn;
32.152 + GtkWidget *step_btn;
32.153 + GtkWidget *run_btn;
32.154 + GtkWidget *runto_btn;
32.155 + GtkWidget *break_btn;
32.156 + GtkWidget *vpaned1;
32.157 + GtkWidget *hpaned1;
32.158 + GtkWidget *vbox2;
32.159 + GtkWidget *hbox1;
32.160 + GtkWidget *label21;
32.161 + GtkWidget *page_field;
32.162 + GtkWidget *page_locked_btn;
32.163 + GtkWidget *jump_pc_btn;
32.164 + GtkWidget *label22;
32.165 + GtkWidget *mode_box;
32.166 + GList *mode_box_items = NULL;
32.167 + GtkWidget *mode_field;
32.168 + GtkWidget *label23;
32.169 + GtkWidget *scrolledwindow7;
32.170 + GtkWidget *disasm_list;
32.171 + GtkWidget *label24;
32.172 + GtkWidget *label27;
32.173 + GtkWidget *label28;
32.174 + GtkWidget *label29;
32.175 + GtkWidget *scrolledwindow4;
32.176 + GtkWidget *reg_list;
32.177 + GtkWidget *label25;
32.178 + GtkWidget *label30;
32.179 + GtkWidget *scrolledwindow8;
32.180 + GtkWidget *output_list;
32.181 + GtkWidget *label26;
32.182 + GtkWidget *label31;
32.183 + GtkWidget *label32;
32.184 + GtkWidget *debug_appbar;
32.185 +
32.186 + debug_win = gnome_app_new ("Dream2", _("DreamOn! Debugger"));
32.187 + gtk_window_set_default_size (GTK_WINDOW (debug_win), 1000, 700);
32.188 +
32.189 + dock1 = GNOME_APP (debug_win)->dock;
32.190 + gtk_widget_show (dock1);
32.191 +
32.192 + gnome_app_create_menus (GNOME_APP (debug_win), menubar1_uiinfo);
32.193 +
32.194 + toolbar1 = gtk_toolbar_new ();
32.195 + gtk_widget_show (toolbar1);
32.196 + gnome_app_add_toolbar (GNOME_APP (debug_win), GTK_TOOLBAR (toolbar1), "toolbar1",
32.197 + BONOBO_DOCK_ITEM_BEH_EXCLUSIVE,
32.198 + BONOBO_DOCK_TOP, 1, 0, 0);
32.199 + gtk_container_set_border_width (GTK_CONTAINER (toolbar1), 1);
32.200 + gtk_toolbar_set_style (GTK_TOOLBAR (toolbar1), GTK_TOOLBAR_BOTH);
32.201 +
32.202 + tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-open", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
32.203 + load_btn = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
32.204 + GTK_TOOLBAR_CHILD_BUTTON,
32.205 + NULL,
32.206 + _("Load"),
32.207 + _("New File"), NULL,
32.208 + tmp_toolbar_icon, NULL, NULL);
32.209 + gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
32.210 + gtk_widget_show (load_btn);
32.211 +
32.212 + tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-refresh", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
32.213 + reset_btn = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
32.214 + GTK_TOOLBAR_CHILD_BUTTON,
32.215 + NULL,
32.216 + _("Reset"),
32.217 + _("Open File"), NULL,
32.218 + tmp_toolbar_icon, NULL, NULL);
32.219 + gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
32.220 + gtk_widget_show (reset_btn);
32.221 +
32.222 + tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-stop", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
32.223 + stop_btn = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
32.224 + GTK_TOOLBAR_CHILD_BUTTON,
32.225 + NULL,
32.226 + _("Stop"),
32.227 + _("Save File"), NULL,
32.228 + tmp_toolbar_icon, NULL, NULL);
32.229 + gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
32.230 + gtk_widget_show (stop_btn);
32.231 +
32.232 + tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-redo", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
32.233 + step_btn = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
32.234 + GTK_TOOLBAR_CHILD_BUTTON,
32.235 + NULL,
32.236 + _("Step"),
32.237 + NULL, NULL,
32.238 + tmp_toolbar_icon, NULL, NULL);
32.239 + gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
32.240 + gtk_widget_show (step_btn);
32.241 +
32.242 + tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-go-forward", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
32.243 + run_btn = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
32.244 + GTK_TOOLBAR_CHILD_BUTTON,
32.245 + NULL,
32.246 + _("Run"),
32.247 + NULL, NULL,
32.248 + tmp_toolbar_icon, NULL, NULL);
32.249 + gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
32.250 + gtk_widget_show (run_btn);
32.251 +
32.252 + tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-goto-last", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
32.253 + runto_btn = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
32.254 + GTK_TOOLBAR_CHILD_BUTTON,
32.255 + NULL,
32.256 + _("Run to"),
32.257 + NULL, NULL,
32.258 + tmp_toolbar_icon, NULL, NULL);
32.259 + gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
32.260 + gtk_widget_show (runto_btn);
32.261 +
32.262 + tmp_toolbar_icon = gtk_image_new_from_stock ("gtk-close", gtk_toolbar_get_icon_size (GTK_TOOLBAR (toolbar1)));
32.263 + break_btn = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar1),
32.264 + GTK_TOOLBAR_CHILD_BUTTON,
32.265 + NULL,
32.266 + _("Break"),
32.267 + NULL, NULL,
32.268 + tmp_toolbar_icon, NULL, NULL);
32.269 + gtk_label_set_use_underline (GTK_LABEL (((GtkToolbarChild*) (g_list_last (GTK_TOOLBAR (toolbar1)->children)->data))->label), TRUE);
32.270 + gtk_widget_show (break_btn);
32.271 +
32.272 + vpaned1 = gtk_vpaned_new ();
32.273 + gtk_widget_show (vpaned1);
32.274 + gnome_app_set_contents (GNOME_APP (debug_win), vpaned1);
32.275 + gtk_paned_set_position (GTK_PANED (vpaned1), 430);
32.276 +
32.277 + hpaned1 = gtk_hpaned_new ();
32.278 + gtk_widget_show (hpaned1);
32.279 + gtk_paned_pack1 (GTK_PANED (vpaned1), hpaned1, TRUE, TRUE);
32.280 + gtk_paned_set_position (GTK_PANED (hpaned1), 800);
32.281 +
32.282 + vbox2 = gtk_vbox_new (FALSE, 0);
32.283 + gtk_widget_show (vbox2);
32.284 + gtk_paned_pack1 (GTK_PANED (hpaned1), vbox2, FALSE, TRUE);
32.285 +
32.286 + hbox1 = gtk_hbox_new (FALSE, 0);
32.287 + gtk_widget_show (hbox1);
32.288 + gtk_box_pack_start (GTK_BOX (vbox2), hbox1, FALSE, FALSE, 3);
32.289 +
32.290 + label21 = gtk_label_new (_("Page"));
32.291 + gtk_widget_show (label21);
32.292 + gtk_box_pack_start (GTK_BOX (hbox1), label21, FALSE, FALSE, 4);
32.293 + gtk_label_set_justify (GTK_LABEL (label21), GTK_JUSTIFY_CENTER);
32.294 +
32.295 + page_field = gtk_entry_new ();
32.296 + gtk_widget_show (page_field);
32.297 + gtk_box_pack_start (GTK_BOX (hbox1), page_field, FALSE, TRUE, 0);
32.298 +
32.299 + page_locked_btn = gtk_check_button_new_with_mnemonic (_("Locked"));
32.300 + gtk_widget_show (page_locked_btn);
32.301 + gtk_box_pack_start (GTK_BOX (hbox1), page_locked_btn, FALSE, FALSE, 5);
32.302 +
32.303 + jump_pc_btn = gtk_button_new_with_mnemonic (_(" Jump to PC "));
32.304 + gtk_widget_show (jump_pc_btn);
32.305 + gtk_box_pack_start (GTK_BOX (hbox1), jump_pc_btn, FALSE, FALSE, 4);
32.306 +
32.307 + label22 = gtk_label_new (_("Mode"));
32.308 + gtk_widget_show (label22);
32.309 + gtk_box_pack_start (GTK_BOX (hbox1), label22, FALSE, FALSE, 5);
32.310 + gtk_label_set_justify (GTK_LABEL (label22), GTK_JUSTIFY_RIGHT);
32.311 + gtk_misc_set_alignment (GTK_MISC (label22), 1, 0.5);
32.312 +
32.313 + mode_box = gtk_combo_new ();
32.314 + g_object_set_data (G_OBJECT (GTK_COMBO (mode_box)->popwin),
32.315 + "GladeParentKey", mode_box);
32.316 + gtk_widget_show (mode_box);
32.317 + gtk_box_pack_start (GTK_BOX (hbox1), mode_box, FALSE, FALSE, 0);
32.318 + mode_box_items = g_list_append (mode_box_items, (gpointer) "");
32.319 + gtk_combo_set_popdown_strings (GTK_COMBO (mode_box), mode_box_items);
32.320 + g_list_free (mode_box_items);
32.321 +
32.322 + mode_field = GTK_COMBO (mode_box)->entry;
32.323 + gtk_widget_show (mode_field);
32.324 +
32.325 + label23 = gtk_label_new ("");
32.326 + gtk_widget_show (label23);
32.327 + gtk_box_pack_start (GTK_BOX (hbox1), label23, TRUE, TRUE, 4);
32.328 + gtk_label_set_justify (GTK_LABEL (label23), GTK_JUSTIFY_CENTER);
32.329 +
32.330 + scrolledwindow7 = gtk_scrolled_window_new (NULL, NULL);
32.331 + gtk_widget_show (scrolledwindow7);
32.332 + gtk_box_pack_start (GTK_BOX (vbox2), scrolledwindow7, TRUE, TRUE, 0);
32.333 + GTK_WIDGET_UNSET_FLAGS (scrolledwindow7, GTK_CAN_FOCUS);
32.334 + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow7), GTK_SHADOW_IN);
32.335 +
32.336 + disasm_list = gtk_clist_new (4);
32.337 + gtk_widget_show (disasm_list);
32.338 + gtk_container_add (GTK_CONTAINER (scrolledwindow7), disasm_list);
32.339 + gtk_clist_set_column_width (GTK_CLIST (disasm_list), 0, 80);
32.340 + gtk_clist_set_column_width (GTK_CLIST (disasm_list), 1, 80);
32.341 + gtk_clist_set_column_width (GTK_CLIST (disasm_list), 2, 80);
32.342 + gtk_clist_set_column_width (GTK_CLIST (disasm_list), 3, 80);
32.343 + gtk_clist_column_titles_hide (GTK_CLIST (disasm_list));
32.344 +
32.345 + label24 = gtk_label_new ("");
32.346 + gtk_widget_show (label24);
32.347 + gtk_clist_set_column_widget (GTK_CLIST (disasm_list), 0, label24);
32.348 +
32.349 + label27 = gtk_label_new ("");
32.350 + gtk_widget_show (label27);
32.351 + gtk_clist_set_column_widget (GTK_CLIST (disasm_list), 1, label27);
32.352 +
32.353 + label28 = gtk_label_new ("");
32.354 + gtk_widget_show (label28);
32.355 + gtk_clist_set_column_widget (GTK_CLIST (disasm_list), 2, label28);
32.356 +
32.357 + label29 = gtk_label_new ("");
32.358 + gtk_widget_show (label29);
32.359 + gtk_clist_set_column_widget (GTK_CLIST (disasm_list), 3, label29);
32.360 +
32.361 + scrolledwindow4 = gtk_scrolled_window_new (NULL, NULL);
32.362 + gtk_widget_show (scrolledwindow4);
32.363 + gtk_paned_pack2 (GTK_PANED (hpaned1), scrolledwindow4, FALSE, TRUE);
32.364 + GTK_WIDGET_UNSET_FLAGS (scrolledwindow4, GTK_CAN_FOCUS);
32.365 + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow4), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
32.366 + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow4), GTK_SHADOW_IN);
32.367 +
32.368 + reg_list = gtk_clist_new (2);
32.369 + gtk_widget_show (reg_list);
32.370 + gtk_container_add (GTK_CONTAINER (scrolledwindow4), reg_list);
32.371 + gtk_clist_set_column_width (GTK_CLIST (reg_list), 0, 80);
32.372 + gtk_clist_set_column_width (GTK_CLIST (reg_list), 1, 80);
32.373 + gtk_clist_column_titles_hide (GTK_CLIST (reg_list));
32.374 +
32.375 + label25 = gtk_label_new ("");
32.376 + gtk_widget_show (label25);
32.377 + gtk_clist_set_column_widget (GTK_CLIST (reg_list), 0, label25);
32.378 +
32.379 + label30 = gtk_label_new ("");
32.380 + gtk_widget_show (label30);
32.381 + gtk_clist_set_column_widget (GTK_CLIST (reg_list), 1, label30);
32.382 +
32.383 + scrolledwindow8 = gtk_scrolled_window_new (NULL, NULL);
32.384 + gtk_widget_show (scrolledwindow8);
32.385 + gtk_paned_pack2 (GTK_PANED (vpaned1), scrolledwindow8, FALSE, TRUE);
32.386 + GTK_WIDGET_UNSET_FLAGS (scrolledwindow8, GTK_CAN_FOCUS);
32.387 + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow8), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
32.388 + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow8), GTK_SHADOW_IN);
32.389 +
32.390 + output_list = gtk_clist_new (3);
32.391 + gtk_widget_show (output_list);
32.392 + gtk_container_add (GTK_CONTAINER (scrolledwindow8), output_list);
32.393 + gtk_clist_set_column_width (GTK_CLIST (output_list), 0, 80);
32.394 + gtk_clist_set_column_width (GTK_CLIST (output_list), 1, 80);
32.395 + gtk_clist_set_column_width (GTK_CLIST (output_list), 2, 80);
32.396 + gtk_clist_column_titles_hide (GTK_CLIST (output_list));
32.397 +
32.398 + label26 = gtk_label_new ("");
32.399 + gtk_widget_show (label26);
32.400 + gtk_clist_set_column_widget (GTK_CLIST (output_list), 0, label26);
32.401 +
32.402 + label31 = gtk_label_new ("");
32.403 + gtk_widget_show (label31);
32.404 + gtk_clist_set_column_widget (GTK_CLIST (output_list), 1, label31);
32.405 +
32.406 + label32 = gtk_label_new ("");
32.407 + gtk_widget_show (label32);
32.408 + gtk_clist_set_column_widget (GTK_CLIST (output_list), 2, label32);
32.409 +
32.410 + debug_appbar = gnome_appbar_new (TRUE, TRUE, GNOME_PREFERENCES_NEVER);
32.411 + gtk_widget_show (debug_appbar);
32.412 + gnome_app_set_statusbar (GNOME_APP (debug_win), debug_appbar);
32.413 +
32.414 + g_signal_connect ((gpointer) debug_win, "delete_event",
32.415 + G_CALLBACK (on_debug_win_delete_event),
32.416 + NULL);
32.417 + gnome_app_install_menu_hints (GNOME_APP (debug_win), menubar1_uiinfo);
32.418 + g_signal_connect ((gpointer) load_btn, "clicked",
32.419 + G_CALLBACK (on_load_btn_clicked),
32.420 + NULL);
32.421 + g_signal_connect ((gpointer) reset_btn, "clicked",
32.422 + G_CALLBACK (on_reset_btn_clicked),
32.423 + NULL);
32.424 + g_signal_connect ((gpointer) stop_btn, "clicked",
32.425 + G_CALLBACK (on_stop_btn_clicked),
32.426 + NULL);
32.427 + g_signal_connect ((gpointer) step_btn, "clicked",
32.428 + G_CALLBACK (on_step_btn_clicked),
32.429 + NULL);
32.430 + g_signal_connect ((gpointer) run_btn, "clicked",
32.431 + G_CALLBACK (on_run_btn_clicked),
32.432 + NULL);
32.433 + g_signal_connect ((gpointer) runto_btn, "clicked",
32.434 + G_CALLBACK (on_runto_btn_clicked),
32.435 + NULL);
32.436 + g_signal_connect ((gpointer) break_btn, "clicked",
32.437 + G_CALLBACK (on_break_btn_clicked),
32.438 + NULL);
32.439 + g_signal_connect ((gpointer) page_field, "key_press_event",
32.440 + G_CALLBACK (on_page_field_key_press_event),
32.441 + NULL);
32.442 + g_signal_connect ((gpointer) page_locked_btn, "toggled",
32.443 + G_CALLBACK (on_page_locked_btn_toggled),
32.444 + NULL);
32.445 + g_signal_connect ((gpointer) jump_pc_btn, "clicked",
32.446 + G_CALLBACK (on_jump_pc_btn_clicked),
32.447 + NULL);
32.448 + g_signal_connect ((gpointer) mode_field, "changed",
32.449 + G_CALLBACK (on_mode_field_changed),
32.450 + NULL);
32.451 + g_signal_connect ((gpointer) disasm_list, "select_row",
32.452 + G_CALLBACK (on_disasm_list_select_row),
32.453 + NULL);
32.454 + g_signal_connect ((gpointer) disasm_list, "unselect_row",
32.455 + G_CALLBACK (on_disasm_list_unselect_row),
32.456 + NULL);
32.457 + g_signal_connect ((gpointer) output_list, "select_row",
32.458 + G_CALLBACK (on_output_list_select_row),
32.459 + NULL);
32.460 +
32.461 + /* Store pointers to all widgets, for use by lookup_widget(). */
32.462 + GLADE_HOOKUP_OBJECT_NO_REF (debug_win, debug_win, "debug_win");
32.463 + GLADE_HOOKUP_OBJECT (debug_win, dock1, "dock1");
32.464 + GLADE_HOOKUP_OBJECT (debug_win, menubar1_uiinfo[0].widget, "file1");
32.465 + GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[0].widget, "new_file1");
32.466 + GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[1].widget, "open1");
32.467 + GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[2].widget, "save1");
32.468 + GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[3].widget, "save_as1");
32.469 + GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[4].widget, "separator1");
32.470 + GLADE_HOOKUP_OBJECT (debug_win, file1_menu_uiinfo[5].widget, "exit1");
32.471 + GLADE_HOOKUP_OBJECT (debug_win, menubar1_uiinfo[1].widget, "view1");
32.472 + GLADE_HOOKUP_OBJECT (debug_win, view1_menu_uiinfo[0].widget, "mem_mapped_regs1");
32.473 + GLADE_HOOKUP_OBJECT (debug_win, menubar1_uiinfo[2].widget, "settings1");
32.474 + GLADE_HOOKUP_OBJECT (debug_win, settings1_menu_uiinfo[0].widget, "preferences1");
32.475 + GLADE_HOOKUP_OBJECT (debug_win, menubar1_uiinfo[3].widget, "help1");
32.476 + GLADE_HOOKUP_OBJECT (debug_win, help1_menu_uiinfo[0].widget, "about1");
32.477 + GLADE_HOOKUP_OBJECT (debug_win, toolbar1, "toolbar1");
32.478 + GLADE_HOOKUP_OBJECT (debug_win, load_btn, "load_btn");
32.479 + GLADE_HOOKUP_OBJECT (debug_win, reset_btn, "reset_btn");
32.480 + GLADE_HOOKUP_OBJECT (debug_win, stop_btn, "stop_btn");
32.481 + GLADE_HOOKUP_OBJECT (debug_win, step_btn, "step_btn");
32.482 + GLADE_HOOKUP_OBJECT (debug_win, run_btn, "run_btn");
32.483 + GLADE_HOOKUP_OBJECT (debug_win, runto_btn, "runto_btn");
32.484 + GLADE_HOOKUP_OBJECT (debug_win, break_btn, "break_btn");
32.485 + GLADE_HOOKUP_OBJECT (debug_win, vpaned1, "vpaned1");
32.486 + GLADE_HOOKUP_OBJECT (debug_win, hpaned1, "hpaned1");
32.487 + GLADE_HOOKUP_OBJECT (debug_win, vbox2, "vbox2");
32.488 + GLADE_HOOKUP_OBJECT (debug_win, hbox1, "hbox1");
32.489 + GLADE_HOOKUP_OBJECT (debug_win, label21, "label21");
32.490 + GLADE_HOOKUP_OBJECT (debug_win, page_field, "page_field");
32.491 + GLADE_HOOKUP_OBJECT (debug_win, page_locked_btn, "page_locked_btn");
32.492 + GLADE_HOOKUP_OBJECT (debug_win, jump_pc_btn, "jump_pc_btn");
32.493 + GLADE_HOOKUP_OBJECT (debug_win, label22, "label22");
32.494 + GLADE_HOOKUP_OBJECT (debug_win, mode_box, "mode_box");
32.495 + GLADE_HOOKUP_OBJECT (debug_win, mode_field, "mode_field");
32.496 + GLADE_HOOKUP_OBJECT (debug_win, label23, "label23");
32.497 + GLADE_HOOKUP_OBJECT (debug_win, scrolledwindow7, "scrolledwindow7");
32.498 + GLADE_HOOKUP_OBJECT (debug_win, disasm_list, "disasm_list");
32.499 + GLADE_HOOKUP_OBJECT (debug_win, label24, "label24");
32.500 + GLADE_HOOKUP_OBJECT (debug_win, label27, "label27");
32.501 + GLADE_HOOKUP_OBJECT (debug_win, label28, "label28");
32.502 + GLADE_HOOKUP_OBJECT (debug_win, label29, "label29");
32.503 + GLADE_HOOKUP_OBJECT (debug_win, scrolledwindow4, "scrolledwindow4");
32.504 + GLADE_HOOKUP_OBJECT (debug_win, reg_list, "reg_list");
32.505 + GLADE_HOOKUP_OBJECT (debug_win, label25, "label25");
32.506 + GLADE_HOOKUP_OBJECT (debug_win, label30, "label30");
32.507 + GLADE_HOOKUP_OBJECT (debug_win, scrolledwindow8, "scrolledwindow8");
32.508 + GLADE_HOOKUP_OBJECT (debug_win, output_list, "output_list");
32.509 + GLADE_HOOKUP_OBJECT (debug_win, label26, "label26");
32.510 + GLADE_HOOKUP_OBJECT (debug_win, label31, "label31");
32.511 + GLADE_HOOKUP_OBJECT (debug_win, label32, "label32");
32.512 + GLADE_HOOKUP_OBJECT (debug_win, debug_appbar, "debug_appbar");
32.513 +
32.514 + return debug_win;
32.515 +}
32.516 +
32.517 +GtkWidget*
32.518 +create_mmr_win (void)
32.519 +{
32.520 + GtkWidget *mmr_win;
32.521 + GtkWidget *vbox1;
32.522 + GtkWidget *mmr_notebook;
32.523 + GtkWidget *empty_notebook_page;
32.524 + GtkWidget *label16;
32.525 + GtkWidget *hbuttonbox1;
32.526 + GtkWidget *mmr_close;
32.527 +
32.528 + mmr_win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
32.529 + gtk_window_set_title (GTK_WINDOW (mmr_win), _("DreamOn! - Memory-Mapped Registers"));
32.530 + gtk_window_set_default_size (GTK_WINDOW (mmr_win), 600, 600);
32.531 +
32.532 + vbox1 = gtk_vbox_new (FALSE, 0);
32.533 + gtk_widget_show (vbox1);
32.534 + gtk_container_add (GTK_CONTAINER (mmr_win), vbox1);
32.535 +
32.536 + mmr_notebook = gtk_notebook_new ();
32.537 + gtk_widget_show (mmr_notebook);
32.538 + gtk_box_pack_start (GTK_BOX (vbox1), mmr_notebook, TRUE, TRUE, 0);
32.539 + gtk_notebook_set_tab_pos (GTK_NOTEBOOK (mmr_notebook), GTK_POS_LEFT);
32.540 +
32.541 + empty_notebook_page = gtk_vbox_new (FALSE, 0);
32.542 + gtk_widget_show (empty_notebook_page);
32.543 + gtk_container_add (GTK_CONTAINER (mmr_notebook), empty_notebook_page);
32.544 +
32.545 + label16 = gtk_label_new (_("label16"));
32.546 + gtk_widget_show (label16);
32.547 + gtk_notebook_set_tab_label (GTK_NOTEBOOK (mmr_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (mmr_notebook), 0), label16);
32.548 + gtk_label_set_justify (GTK_LABEL (label16), GTK_JUSTIFY_CENTER);
32.549 +
32.550 + hbuttonbox1 = gtk_hbutton_box_new ();
32.551 + gtk_widget_show (hbuttonbox1);
32.552 + gtk_box_pack_start (GTK_BOX (vbox1), hbuttonbox1, FALSE, TRUE, 0);
32.553 + gtk_box_set_spacing (GTK_BOX (hbuttonbox1), 30);
32.554 +
32.555 + mmr_close = gtk_button_new_with_mnemonic (_("Close"));
32.556 + gtk_widget_show (mmr_close);
32.557 + gtk_container_add (GTK_CONTAINER (hbuttonbox1), mmr_close);
32.558 + GTK_WIDGET_SET_FLAGS (mmr_close, GTK_CAN_DEFAULT);
32.559 +
32.560 + g_signal_connect ((gpointer) mmr_win, "delete_event",
32.561 + G_CALLBACK (on_mmr_win_delete_event),
32.562 + NULL);
32.563 + g_signal_connect ((gpointer) mmr_close, "clicked",
32.564 + G_CALLBACK (on_mmr_close_clicked),
32.565 + NULL);
32.566 +
32.567 + /* Store pointers to all widgets, for use by lookup_widget(). */
32.568 + GLADE_HOOKUP_OBJECT_NO_REF (mmr_win, mmr_win, "mmr_win");
32.569 + GLADE_HOOKUP_OBJECT (mmr_win, vbox1, "vbox1");
32.570 + GLADE_HOOKUP_OBJECT (mmr_win, mmr_notebook, "mmr_notebook");
32.571 + GLADE_HOOKUP_OBJECT (mmr_win, label16, "label16");
32.572 + GLADE_HOOKUP_OBJECT (mmr_win, hbuttonbox1, "hbuttonbox1");
32.573 + GLADE_HOOKUP_OBJECT (mmr_win, mmr_close, "mmr_close");
32.574 +
32.575 + return mmr_win;
32.576 +}
32.577 +
32.578 +GtkWidget*
32.579 +create_about_win (void)
32.580 +{
32.581 + const gchar *authors[] = {
32.582 + "Nathan Keynes",
32.583 + NULL
32.584 + };
32.585 + const gchar *documenters[] = { NULL };
32.586 + /* TRANSLATORS: Replace this string with your names, one name per line. */
32.587 + gchar *translators = _("translator_credits");
32.588 + GdkPixbuf *about_win_logo_pixbuf;
32.589 + GtkWidget *about_win;
32.590 +
32.591 + if (!strcmp (translators, "translator_credits"))
32.592 + translators = NULL;
32.593 + about_win_logo_pixbuf = create_pixbuf ("dream/dcemu.gif");
32.594 + about_win = gnome_about_new ("Dream2", VERSION,
32.595 + _("Copyright(c) 2002 Nathan Keynes"),
32.596 + "",
32.597 + authors,
32.598 + documenters,
32.599 + translators,
32.600 + about_win_logo_pixbuf);
32.601 + gtk_container_set_border_width (GTK_CONTAINER (about_win), 1);
32.602 +
32.603 + /* Store pointers to all widgets, for use by lookup_widget(). */
32.604 + GLADE_HOOKUP_OBJECT_NO_REF (about_win, about_win, "about_win");
32.605 +
32.606 + return about_win;
32.607 +}
32.608 +
33.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
33.2 +++ b/src/gui/interface.h Sat Mar 13 00:03:32 2004 +0000
33.3 @@ -0,0 +1,7 @@
33.4 +/*
33.5 + * DO NOT EDIT THIS FILE - it is generated by Glade.
33.6 + */
33.7 +
33.8 +GtkWidget* create_debug_win (void);
33.9 +GtkWidget* create_mmr_win (void);
33.10 +GtkWidget* create_about_win (void);
34.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
34.2 +++ b/src/gui/support.c Sat Mar 13 00:03:32 2004 +0000
34.3 @@ -0,0 +1,115 @@
34.4 +/*
34.5 + * DO NOT EDIT THIS FILE - it is generated by Glade.
34.6 + */
34.7 +
34.8 +#ifdef HAVE_CONFIG_H
34.9 +# include <config.h>
34.10 +#endif
34.11 +
34.12 +#include <sys/types.h>
34.13 +#include <sys/stat.h>
34.14 +#include <unistd.h>
34.15 +#include <string.h>
34.16 +#include <stdio.h>
34.17 +
34.18 +#include <gnome.h>
34.19 +
34.20 +#include "support.h"
34.21 +
34.22 +GtkWidget*
34.23 +lookup_widget (GtkWidget *widget,
34.24 + const gchar *widget_name)
34.25 +{
34.26 + GtkWidget *parent, *found_widget;
34.27 +
34.28 + for (;;)
34.29 + {
34.30 + if (GTK_IS_MENU (widget))
34.31 + parent = gtk_menu_get_attach_widget (GTK_MENU (widget));
34.32 + else
34.33 + parent = widget->parent;
34.34 + if (!parent)
34.35 + parent = (GtkWidget*) g_object_get_data (G_OBJECT (widget), "GladeParentKey");
34.36 + if (parent == NULL)
34.37 + break;
34.38 + widget = parent;
34.39 + }
34.40 +
34.41 + found_widget = (GtkWidget*) g_object_get_data (G_OBJECT (widget),
34.42 + widget_name);
34.43 + if (!found_widget)
34.44 + g_warning ("Widget not found: %s", widget_name);
34.45 + return found_widget;
34.46 +}
34.47 +
34.48 +/* This is an internally used function to create pixmaps. */
34.49 +GtkWidget*
34.50 +create_pixmap (GtkWidget *widget,
34.51 + const gchar *filename)
34.52 +{
34.53 + GtkWidget *pixmap;
34.54 + gchar *pathname;
34.55 +
34.56 + if (!filename || !filename[0])
34.57 + return gtk_image_new ();
34.58 +
34.59 + pathname = gnome_program_locate_file (NULL, GNOME_FILE_DOMAIN_APP_PIXMAP,
34.60 + filename, TRUE, NULL);
34.61 + if (!pathname)
34.62 + {
34.63 + g_warning (_("Couldn't find pixmap file: %s"), filename);
34.64 + return gtk_image_new ();
34.65 + }
34.66 +
34.67 + pixmap = gtk_image_new_from_file (pathname);
34.68 + g_free (pathname);
34.69 + return pixmap;
34.70 +}
34.71 +
34.72 +/* This is an internally used function to create pixmaps. */
34.73 +GdkPixbuf*
34.74 +create_pixbuf (const gchar *filename)
34.75 +{
34.76 + gchar *pathname = NULL;
34.77 + GdkPixbuf *pixbuf;
34.78 + GError *error = NULL;
34.79 +
34.80 + if (!filename || !filename[0])
34.81 + return NULL;
34.82 +
34.83 + pathname = gnome_program_locate_file (NULL, GNOME_FILE_DOMAIN_APP_PIXMAP,
34.84 + filename, TRUE, NULL);
34.85 +
34.86 + if (!pathname)
34.87 + {
34.88 + g_warning (_("Couldn't find pixmap file: %s"), filename);
34.89 + return NULL;
34.90 + }
34.91 +
34.92 + pixbuf = gdk_pixbuf_new_from_file (pathname, &error);
34.93 + if (!pixbuf)
34.94 + {
34.95 + fprintf (stderr, "Failed to load pixbuf file: %s: %s\n",
34.96 + pathname, error->message);
34.97 + g_error_free (error);
34.98 + }
34.99 + g_free (pathname);
34.100 + return pixbuf;
34.101 +}
34.102 +
34.103 +/* This is used to set ATK action descriptions. */
34.104 +void
34.105 +glade_set_atk_action_description (AtkAction *action,
34.106 + const gchar *action_name,
34.107 + const gchar *description)
34.108 +{
34.109 + gint n_actions, i;
34.110 +
34.111 + n_actions = atk_action_get_n_actions (action);
34.112 + for (i = 0; i < n_actions; i++)
34.113 + {
34.114 + if (!strcmp (atk_action_get_name (action, i), action_name))
34.115 + atk_action_set_description (action, i, description);
34.116 + }
34.117 +}
34.118 +
35.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
35.2 +++ b/src/gui/support.h Sat Mar 13 00:03:32 2004 +0000
35.3 @@ -0,0 +1,37 @@
35.4 +/*
35.5 + * DO NOT EDIT THIS FILE - it is generated by Glade.
35.6 + */
35.7 +
35.8 +#include <gnome.h>
35.9 +
35.10 +/*
35.11 + * Public Functions.
35.12 + */
35.13 +
35.14 +/*
35.15 + * This function returns a widget in a component created by Glade.
35.16 + * Call it with the toplevel widget in the component (i.e. a window/dialog),
35.17 + * or alternatively any widget in the component, and the name of the widget
35.18 + * you want returned.
35.19 + */
35.20 +GtkWidget* lookup_widget (GtkWidget *widget,
35.21 + const gchar *widget_name);
35.22 +
35.23 +
35.24 +
35.25 +/*
35.26 + * Private Functions.
35.27 + */
35.28 +
35.29 +/* This is used to create the pixmaps used in the interface. */
35.30 +GtkWidget* create_pixmap (GtkWidget *widget,
35.31 + const gchar *filename);
35.32 +
35.33 +/* This is used to create the pixbufs used in the interface. */
35.34 +GdkPixbuf* create_pixbuf (const gchar *filename);
35.35 +
35.36 +/* This is used to set ATK action descriptions. */
35.37 +void glade_set_atk_action_description (AtkAction *action,
35.38 + const gchar *action_name,
35.39 + const gchar *description);
35.40 +
36.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
36.2 +++ b/src/loader.c Sat Mar 13 00:03:32 2004 +0000
36.3 @@ -0,0 +1,85 @@
36.4 +/*
36.5 + *
36.6 + */
36.7 +
36.8 +#include <stdio.h>
36.9 +#include <fcntl.h>
36.10 +#include <sys/stat.h>
36.11 +#include <sys/mman.h>
36.12 +#include <errno.h>
36.13 +#include <stdint.h>
36.14 +#include "gui.h"
36.15 +#include "ipbin.h"
36.16 +#include "sh4core.h"
36.17 +#include "mem.h"
36.18 +
36.19 +char ip_bin_magic[32] = "SEGA SEGAKATANA SEGA ENTERPRISES";
36.20 +char iso_magic[6] = "\001CD001";
36.21 +
36.22 +#define CDI_V2 0x80000004
36.23 +#define CDI_V3 0x80000005
36.24 +
36.25 +void open_file( char *filename )
36.26 +{
36.27 + char buf[32];
36.28 + uint32_t tmpa[2];
36.29 + struct stat st;
36.30 +
36.31 + int fd = open( filename, O_RDONLY );
36.32 + if( fd == -1 ) {
36.33 + ERROR( "Unable to open file: '%s' (%s)", filename,
36.34 + strerror(errno) );
36.35 + return;
36.36 + }
36.37 +
36.38 + fstat( fd, &st );
36.39 + if( st.st_size < 32768 ) {
36.40 + ERROR( "File '%s' too small to be a dreamcast image", filename );
36.41 + close(fd);
36.42 + return;
36.43 + }
36.44 +
36.45 + /* begin magic */
36.46 + if( read( fd, buf, 32 ) != 32 ) {
36.47 + ERROR( "Unable to read from file '%s'", filename );
36.48 + close(fd);
36.49 + return;
36.50 + }
36.51 + if( memcmp( buf, ip_bin_magic, 32 ) == 0 ) {
36.52 + /* we have a DC bootstrap */
36.53 + if( st.st_size == BOOTSTRAP_SIZE ) {
36.54 + char *load = mem_get_region( BOOTSTRAP_LOAD_ADDR );
36.55 + /* Just the bootstrap, no image... */
36.56 + WARN( "File '%s' contains bootstrap only, loading anyway",
36.57 + filename );
36.58 + lseek( fd, 0, SEEK_SET );
36.59 + read( fd, load, BOOTSTRAP_SIZE );
36.60 + parse_ipbin( load );
36.61 + sh4_reset();
36.62 + sh4_set_pc( BOOTSTRAP_LOAD_ADDR + 0x300 );
36.63 + set_disassembly_region( BOOTSTRAP_LOAD_ADDR );
36.64 + set_disassembly_pc( sh4r.pc, TRUE );
36.65 + update_registers();
36.66 + } else {
36.67 + /* look for a valid ISO9660 header */
36.68 + lseek( fd, 32768, SEEK_SET );
36.69 + read( fd, buf, 8 );
36.70 + if( memcmp( buf, iso_magic, 6 ) == 0 ) {
36.71 + /* Alright, got it */
36.72 + INFO( "Loading ISO9660 filesystem from '%s'",
36.73 + filename );
36.74 + }
36.75 + }
36.76 + } else {
36.77 + /* check if it's a CDI file: */
36.78 + lseek( fd, -8, SEEK_END );
36.79 + read( fd, &tmpa, 8 );
36.80 + if( tmpa[0] == CDI_V2 || tmpa[0] == CDI_V3 ) {
36.81 + /* Yup, it is */
36.82 + INFO( "Loading CDI file '%s'", filename );
36.83 + } else {
36.84 + ERROR( "Don't know what to do with '%s'", filename );
36.85 + }
36.86 + }
36.87 + close(fd);
36.88 +}
37.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
37.2 +++ b/src/machine.c Sat Mar 13 00:03:32 2004 +0000
37.3 @@ -0,0 +1,29 @@
37.4 +#include "dream.h"
37.5 +#include "mem.h"
37.6 +#include "aica.h"
37.7 +#include "asic.h"
37.8 +/* Central switchboard for the system */
37.9 +
37.10 +void machine_init( void )
37.11 +{
37.12 + mem_init();
37.13 + sh4_init();
37.14 + asic_init();
37.15 + pvr2_init();
37.16 + aica_init();
37.17 +
37.18 + mem_create_ram_region( 0x0C000000, 16 MB, MEM_REGION_MAIN );
37.19 + mem_create_ram_region( 0x05000000, 8 MB, MEM_REGION_VIDEO );
37.20 + mem_create_ram_region( 0x00800000, 2 MB, MEM_REGION_AUDIO );
37.21 + mem_create_ram_region( 0x00703000, 8 KB, MEM_REGION_AUDIO_SCRATCH ); /*???*/
37.22 + mem_load_rom( "dcboot.rom", 0x00000000, 0x00200000, 0x89f2b1a1 );
37.23 + mem_load_rom( "dcflash.rom",0x00200000, 0x00020000, 0x357c3568 );
37.24 +}
37.25 +
37.26 +void machine_reset( void )
37.27 +{
37.28 + sh4_reset();
37.29 + mem_reset();
37.30 +// pvr2_reset();
37.31 + aica_reset();
37.32 +}
38.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
38.2 +++ b/src/main.c Sat Mar 13 00:03:32 2004 +0000
38.3 @@ -0,0 +1,42 @@
38.4 +/*
38.5 + * Initial main.c file generated by Glade. Edit as required.
38.6 + * Glade will not overwrite this file.
38.7 + */
38.8 +
38.9 +#ifdef HAVE_CONFIG_H
38.10 +# include <config.h>
38.11 +#endif
38.12 +
38.13 +#include <gnome.h>
38.14 +
38.15 +#include "interface.h"
38.16 +#include "gui.h"
38.17 +#include "sh4core.h"
38.18 +
38.19 +
38.20 +int
38.21 +main (int argc, char *argv[])
38.22 +{
38.23 + GtkWidget *debug_win;
38.24 +
38.25 +#ifdef ENABLE_NLS
38.26 + bindtextdomain (PACKAGE, PACKAGE_LOCALE_DIR);
38.27 + textdomain (PACKAGE);
38.28 +#endif
38.29 + gnome_init ("dreamon", VERSION, argc, argv);
38.30 +
38.31 + debug_win = create_debug_win ();
38.32 + init_debug_win(debug_win);
38.33 + video_open();
38.34 + machine_init();
38.35 + init_mmr_win(); /* Note: must be done after sh4_init */
38.36 + sh4_reset();
38.37 + update_registers();
38.38 + gtk_widget_show (debug_win);
38.39 + set_disassembly_region( 0xA0000000 );
38.40 + emit( EMIT_INFO, -1, "DreamOn! ready..." );
38.41 +
38.42 + gtk_main ();
38.43 + return 0;
38.44 +}
38.45 +
39.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
39.2 +++ b/src/maple/maple.c Sat Mar 13 00:03:32 2004 +0000
39.3 @@ -0,0 +1,27 @@
39.4 +#include <assert.h>
39.5 +#include "dream.h"
39.6 +#include "mem.h"
39.7 +#include "asic.h"
39.8 +#include "maple.h"
39.9 +
39.10 +void maple_handle_buffer( uint32_t address ) {
39.11 + uint32_t *buf = (uint32_t *)mem_get_region(address);
39.12 + if( buf == NULL ) {
39.13 + ERROR( "Invalid or unmapped buffer passed to maple (0x%08X)", address );
39.14 + } else {
39.15 + int last, port, length, cmd, recv_addr, send_addr, add_length;
39.16 + int i = 0;
39.17 + do {
39.18 + last = buf[i]>>31; /* indicates last packet */
39.19 + port = (buf[i]>>16)&0x03;
39.20 + length = buf[i]&0x0F;
39.21 + uint32_t return_address = buf[i+1];
39.22 + cmd = buf[i+2]&0xFF;
39.23 + recv_addr = (buf[i+2]>>8)&0xFF;
39.24 + send_addr = (buf[i+2]>>16)&0xFF;
39.25 + add_length = (buf[i+2]>>24)&0xFF;
39.26 + char *return_buf = mem_get_region(return_address);
39.27 +
39.28 + } while( !last );
39.29 + }
39.30 +}
40.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
40.2 +++ b/src/maple/maple.h Sat Mar 13 00:03:32 2004 +0000
40.3 @@ -0,0 +1,46 @@
40.4 +/**
40.5 + * Maple bus routines
40.6 + */
40.7 +#ifndef dream_maple_H
40.8 +#define dream_maple_H 1
40.9 +
40.10 +#define MAPLE_CMD_INFO 1 /* Request device information */
40.11 +#define MAPLE_CMD_EXT_INFO 2 /* Request extended information */
40.12 +#define MAPLE_CMD_RESET 3 /* Reset device */
40.13 +#define MAPLE_CMD_SHUTDOWN 4 /* Shutdown device */
40.14 +#define MAPLE_CMD_GET_COND 9 /* Get condition */
40.15 +#define MAPLE_CMD_MEM_INFO 10 /* Get memory information */
40.16 +#define MAPLE_CMD_BLOCK_READ 11 /* Block read */
40.17 +#define MAPLE_CMD_BLOCK_WRITE 12 /* Block write */
40.18 +#define MAPLE_CMD_SET_COND 14 /* Set condition */
40.19 +#define MAPLE_RESP_INFO 5 /* Device information response */
40.20 +#define MAPLE_RESP_EXT_INFO 6 /* Extended device information response */
40.21 +#define MAPLE_RESP_ACK 7 /* Acknowledge command */
40.22 +#define MAPLE_RESP_DATA 8 /* Bytes read */
40.23 +#define MAPLE_ERR_NO_RESPONSE -1 /* Device did not respond */
40.24 +#define MAPLE_ERR_FUNC_UNSUP -2 /* Function code unsupported */
40.25 +#define MAPLE_ERR_CMD_UNKNOWN -3 /* Command code unknown */
40.26 +#define MAPLE_ERR_RETRY -4 /* Retry command */
40.27 +#define MAPLE_ERR_FILE -5 /* File error? */
40.28 +
40.29 +#define MAPLE_FUNC_CONTROLLER 0x001
40.30 +#define MAPLE_FUNC_MEMORY 0x002
40.31 +#define MAPLE_FUNC_LCD 0x004
40.32 +#define MAPLE_FUNC_CLOCK 0x008
40.33 +#define MAPLE_FUNC_MICROPHONE 0x010
40.34 +#define MAPLE_FUNC_AR_GUN 0x020
40.35 +#define MAPLE_FUNC_KEYBOARD 0x040
40.36 +#define MAPLE_FUNC_LIGHT_GUN 0x080
40.37 +#define MAPLE_FUNC_PURU_PURU 0x100
40.38 +#define MAPLE_FUNC_MOUSE 0x200
40.39 +
40.40 +void maple_handle_buffer( uint32_t buffer );
40.41 +
40.42 +
40.43 +struct maple_device_t {
40.44 +
40.45 +
40.46 +};
40.47 +
40.48 +
40.49 +#endif /* !dream_maple_H */
41.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
41.2 +++ b/src/pvr2/pvr2.c Sat Mar 13 00:03:32 2004 +0000
41.3 @@ -0,0 +1,96 @@
41.4 +#include "dream.h"
41.5 +#include "video.h"
41.6 +#include "mem.h"
41.7 +#include "asic.h"
41.8 +#include "pvr2.h"
41.9 +#define MMIO_IMPL
41.10 +#include "pvr2.h"
41.11 +
41.12 +char *video_base;
41.13 +
41.14 +void pvr2_init( void )
41.15 +{
41.16 + register_io_region( &mmio_region_PVR2 );
41.17 + video_base = mem_get_region_by_name( MEM_REGION_VIDEO );
41.18 +}
41.19 +
41.20 +uint32_t vid_stride, vid_lpf, vid_ppl, vid_hres, vid_vres, vid_col;
41.21 +int interlaced, bChanged = 1, bEnabled = 0, vid_size = 0;
41.22 +char *frame_start; /* current video start address (in real memory) */
41.23 +
41.24 +/*
41.25 + * Display the next frame, copying the current contents of video ram to
41.26 + * the window. If the video configuration has changed, first recompute the
41.27 + * new frame size/depth.
41.28 + */
41.29 +void pvr2_next_frame( void )
41.30 +{
41.31 + if( bChanged ) {
41.32 + int dispsize = MMIO_READ( PVR2, DISPSIZE );
41.33 + int dispmode = MMIO_READ( PVR2, DISPMODE );
41.34 + int vidcfg = MMIO_READ( PVR2, VIDCFG );
41.35 + vid_stride = ((dispsize & DISPSIZE_MODULO) >> 20) - 1;
41.36 + vid_lpf = ((dispsize & DISPSIZE_LPF) >> 10) + 1;
41.37 + vid_ppl = ((dispsize & DISPSIZE_PPL)) + 1;
41.38 + vid_col = (dispmode & DISPMODE_COL);
41.39 + frame_start = video_base + MMIO_READ( PVR2, DISPADDR1 );
41.40 + interlaced = (vidcfg & VIDCFG_I ? 1 : 0);
41.41 + bEnabled = (dispmode & DISPMODE_DE) && (vidcfg & VIDCFG_VO ) ? 1 : 0;
41.42 + vid_size = (vid_ppl * vid_lpf) << (interlaced ? 3 : 2);
41.43 + vid_hres = vid_ppl;
41.44 + vid_vres = vid_lpf;
41.45 + if( interlaced ) vid_vres <<= 1;
41.46 + switch( vid_col ) {
41.47 + case MODE_RGB15:
41.48 + case MODE_RGB16: vid_hres <<= 1; break;
41.49 + case MODE_RGB24: vid_hres *= 3; break;
41.50 + case MODE_RGB32: vid_hres <<= 2; break;
41.51 + }
41.52 + vid_hres >>= 2;
41.53 + video_update_size( vid_hres, vid_vres, vid_col );
41.54 + bChanged = 0;
41.55 + }
41.56 + if( bEnabled ) {
41.57 + /* Assume bit depths match for now... */
41.58 + memcpy( video_data, frame_start, vid_size );
41.59 + } else {
41.60 + memset( video_data, 0, vid_size );
41.61 + }
41.62 + video_update_frame();
41.63 + asic_event( EVENT_SCANLINE1 );
41.64 + asic_event( EVENT_SCANLINE2 );
41.65 + asic_event( EVENT_RETRACE );
41.66 +}
41.67 +
41.68 +void mmio_region_PVR2_write( uint32_t reg, uint32_t val )
41.69 +{
41.70 + if( reg >= 0x200 && reg < 0x600 ) { /* Fog table */
41.71 + MMIO_WRITE( PVR2, reg, val );
41.72 + /* I don't want to hear about these */
41.73 + return;
41.74 + }
41.75 +
41.76 + INFO( "PVR2 write to %08X <= %08X [%s: %s]", reg, val,
41.77 + MMIO_REGID(PVR2,reg), MMIO_REGDESC(PVR2,reg) );
41.78 +
41.79 + switch(reg) {
41.80 + case DISPSIZE: bChanged = 1;
41.81 + case DISPMODE: bChanged = 1;
41.82 + case DISPADDR1: bChanged = 1;
41.83 + case DISPADDR2: bChanged = 1;
41.84 + case VIDCFG: bChanged = 1;
41.85 + break;
41.86 +
41.87 + }
41.88 + MMIO_WRITE( PVR2, reg, val );
41.89 +}
41.90 +
41.91 +MMIO_REGION_READ_FN( PVR2, reg )
41.92 +{
41.93 + switch( reg ) {
41.94 + case BEAMPOS:
41.95 + return sh4r.icount&0x20 ? 0x2000 : 0;
41.96 + default:
41.97 + return MMIO_READ( PVR2, reg );
41.98 + }
41.99 +}
42.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
42.2 +++ b/src/pvr2/pvr2.h Sat Mar 13 00:03:32 2004 +0000
42.3 @@ -0,0 +1,81 @@
42.4 +#include "mmio.h"
42.5 +
42.6 +MMIO_REGION_BEGIN( 0x005F8000, PVR2, "Power VR/2" )
42.7 + LONG_PORT( 0x000, PVRID, PORT_MR, 0x17FD11DB, "PVR2 Core ID" )
42.8 + LONG_PORT( 0x004, PVRVER, PORT_MR, 0x00000011, "PVR2 Core Version" )
42.9 + LONG_PORT( 0x008, PVRRST, PORT_MR, 0, "PVR2 Reset" )
42.10 + LONG_PORT( 0x014, RENDST, PORT_W, 0, "Start render" )
42.11 + LONG_PORT( 0x020, OBJBASE, PORT_MRW, 0, "Object buffer base offset" )
42.12 + LONG_PORT( 0x02C, TILEBASE, PORT_MRW, 0, "Tile buffer base offset" )
42.13 + LONG_PORT( 0x040, PVRBCOL, PORT_MRW, 0, "Border Colour (RGB)" )
42.14 + LONG_PORT( 0x044, DISPMODE, PORT_MRW, 0, "Display Mode" )
42.15 + LONG_PORT( 0x048, RENDMODE, PORT_MRW, 0, "Rendering Mode" )
42.16 + LONG_PORT( 0x04C, RENDSIZE, PORT_MRW, 0, "Rendering width (bytes/2)" )
42.17 + LONG_PORT( 0x050, DISPADDR1, PORT_MRW, 0, "Video memory base 1" )
42.18 + LONG_PORT( 0x054, DISPADDR2, PORT_MRW, 0, "Video memory base 2" )
42.19 + LONG_PORT( 0x05C, DISPSIZE, PORT_MRW, 0, "Display size" )
42.20 + LONG_PORT( 0x060, RENDADDR1, PORT_MRW, 0, "Rendering memory base 1" )
42.21 + LONG_PORT( 0x064, RENDADDR2, PORT_MRW, 0, "Rendering memory base 2" )
42.22 + LONG_PORT( 0x068, HCLIP, PORT_MRW, 0, "Horizontal clipping area" )
42.23 + LONG_PORT( 0x06C, VCLIP, PORT_MRW, 0, "Vertical clipping area" )
42.24 +LONG_PORT( 0x074, SHADOW, PORT_MRW, 0, "Shadowing" )
42.25 + LONG_PORT( 0x078, OBJCLIP, PORT_MRW, 0, "Object clip distance (float32)" )
42.26 + LONG_PORT( 0x084, TSPCLIP, PORT_MRW, 0, "Texture clip distance (float32)" )
42.27 + LONG_PORT( 0x088, BGPLANEZ, PORT_MRW, 0, "Background plane depth (float32)" )
42.28 + LONG_PORT( 0x08C, BGPLANECFG, PORT_MRW, 0, "Background plane config" )
42.29 + LONG_PORT( 0x0B0, FGTBLCOL, PORT_MRW, 0, "Fog table colour" )
42.30 + LONG_PORT( 0x0B4, FGVRTCOL, PORT_MRW, 0, "Fog vertex colour" )
42.31 + LONG_PORT( 0x0B8, FGCOEFF, PORT_MRW, 0, "Fog density coefficient (float16)" )
42.32 + LONG_PORT( 0x0BC, CLAMPHI, PORT_MRW, 0, "Clamp high colour" )
42.33 + LONG_PORT( 0x0C0, CLAMPLO, PORT_MRW, 0, "Clamp low colour" )
42.34 + LONG_PORT( 0x0C4, GUNPOS, PORT_MRW, 0, "Lightgun position" )
42.35 + LONG_PORT( 0x0CC, EVTPOS, PORT_MRW, 0, "Raster event position" )
42.36 + LONG_PORT( 0x0D0, VIDCFG, PORT_MRW, 0, "Sync configuration & enable" )
42.37 + LONG_PORT( 0x0D4, HBORDER, PORT_MRW, 0, "Horizontal border area" )
42.38 + LONG_PORT( 0x0D8, REFRESH, PORT_MRW, 0, "Refresh rates?" )
42.39 + LONG_PORT( 0x0DC, VBORDER, PORT_MRW, 0, "Vertical border area" )
42.40 + LONG_PORT( 0x0E0, SYNCPOS, PORT_MRW, 0, "Sync pulse timing" )
42.41 + LONG_PORT( 0x0E4, TSPCFG, PORT_MRW, 0, "Texture modulo width" )
42.42 + LONG_PORT( 0x0E8, VIDCFG2, PORT_MRW, 0, "Video configuration 2" )
42.43 + LONG_PORT( 0x0F0, VPOS, PORT_MRW, 0, "Vertical display position" )
42.44 + LONG_PORT( 0x0F4, SCALERCFG, PORT_MRW, 0, "Scaler configuration (?)" )
42.45 + LONG_PORT( 0x10C, BEAMPOS, PORT_R, 0, "Raster beam position" )
42.46 + LONG_PORT( 0x124, TAOPBST, PORT_MRW, 0, "TA Object Pointer Buffer start" )
42.47 + LONG_PORT( 0x128, TAOBST, PORT_MRW, 0, "TA Object Buffer start" )
42.48 + LONG_PORT( 0x12C, TAOPBEN, PORT_MRW, 0, "TA Object Pointer Buffer end" )
42.49 + LONG_PORT( 0x130, TAOBEN, PORT_MRW, 0, "TA Object Buffer end" )
42.50 + LONG_PORT( 0x134, TAOPBPOS, PORT_MRW, 0, "TA Object Pointer Buffer position" )
42.51 + LONG_PORT( 0x138, TAOBPOS, PORT_MRW, 0, "TA Object Buffer position" )
42.52 + LONG_PORT( 0x13C, TATBSZ, PORT_MRW, 0, "TA Tile Buffer size" )
42.53 + LONG_PORT( 0x140, TAOPBCFG, PORT_MRW, 0, "TA Object Pointer Buffer config" )
42.54 + LONG_PORT( 0x144, TAINIT, PORT_MRW, 0, "TA Initialize" )
42.55 + LONG_PORT( 0x164, TAOPLST, PORT_MRW, 0, "TA Object Pointer List start" )
42.56 +MMIO_REGION_END
42.57 +
42.58 +
42.59 +#define DISPMODE_DE 0x00000001 /* Display enable */
42.60 +#define DISPMODE_SD 0x00000002 /* Scan double */
42.61 +#define DISPMODE_COL 0x0000000C /* Colour mode */
42.62 +#define DISPMODE_CD 0x08000000 /* Clock double */
42.63 +
42.64 +#define MODE_RGB15 0x00000000
42.65 +#define MODE_RGB16 0x00000040
42.66 +#define MODE_RGB24 0x00000080
42.67 +#define MODE_RGB32 0x000000C0
42.68 +
42.69 +#define DISPSIZE_MODULO 0x3FF00000 /* line skip +1 (32-bit words)*/
42.70 +#define DISPSIZE_LPF 0x000FFC00 /* lines per field */
42.71 +#define DISPSIZE_PPL 0x000003FF /* pixel words (32 bit) per line */
42.72 +
42.73 +#define VIDCFG_VP 0x00000001 /* V-sync polarity */
42.74 +#define VIDCFG_HP 0x00000002 /* H-sync polarity */
42.75 +#define VIDCFG_I 0x00000010 /* Interlace enable */
42.76 +#define VIDCFG_BS 0x000000C0 /* Broadcast standard */
42.77 +#define VIDCFG_VO 0x00000100 /* Video output enable */
42.78 +
42.79 +#define BS_NTSC 0x00000000
42.80 +#define BS_PAL 0x00000040
42.81 +#define BS_PALM 0x00000080 /* ? */
42.82 +#define BS_PALN 0x000000C0 /* ? */
42.83 +
42.84 +void pvr2_next_frame( void );
43.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
43.2 +++ b/src/sh4/Makefile Sat Mar 13 00:03:32 2004 +0000
43.3 @@ -0,0 +1,438 @@
43.4 +# Makefile.in generated by automake 1.7.9 from Makefile.am.
43.5 +# src/sh4/Makefile. Generated from Makefile.in by configure.
43.6 +
43.7 +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
43.8 +# Free Software Foundation, Inc.
43.9 +# This Makefile.in is free software; the Free Software Foundation
43.10 +# gives unlimited permission to copy and/or distribute it,
43.11 +# with or without modifications, as long as this notice is preserved.
43.12 +
43.13 +# This program is distributed in the hope that it will be useful,
43.14 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
43.15 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
43.16 +# PARTICULAR PURPOSE.
43.17 +
43.18 +
43.19 +
43.20 +srcdir = .
43.21 +top_srcdir = ../..
43.22 +
43.23 +pkgdatadir = $(datadir)/DreamOn
43.24 +pkglibdir = $(libdir)/DreamOn
43.25 +pkgincludedir = $(includedir)/DreamOn
43.26 +top_builddir = ../..
43.27 +
43.28 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
43.29 +INSTALL = /usr/bin/install -c
43.30 +install_sh_DATA = $(install_sh) -c -m 644
43.31 +install_sh_PROGRAM = $(install_sh) -c
43.32 +install_sh_SCRIPT = $(install_sh) -c
43.33 +INSTALL_HEADER = $(INSTALL_DATA)
43.34 +transform = $(program_transform_name)
43.35 +NORMAL_INSTALL = :
43.36 +PRE_INSTALL = :
43.37 +POST_INSTALL = :
43.38 +NORMAL_UNINSTALL = :
43.39 +PRE_UNINSTALL = :
43.40 +POST_UNINSTALL = :
43.41 +host_triplet = i686-pc-linux-gnu
43.42 +ACLOCAL = ${SHELL} /usr/home/nkeynes/src/dream/missing --run aclocal-1.7 -I macros
43.43 +ALLOCA =
43.44 +AMDEP_FALSE = #
43.45 +AMDEP_TRUE =
43.46 +AMTAR = ${SHELL} /usr/home/nkeynes/src/dream/missing --run tar
43.47 +AUTOCONF = ${SHELL} /usr/home/nkeynes/src/dream/missing --run autoconf
43.48 +AUTOHEADER = ${SHELL} /usr/home/nkeynes/src/dream/missing --run autoheader
43.49 +AUTOMAKE = ${SHELL} /usr/home/nkeynes/src/dream/missing --run automake-1.7
43.50 +AWK = gawk
43.51 +BUILD_INCLUDED_LIBINTL = no
43.52 +CATOBJEXT = .gmo
43.53 +CC = gcc
43.54 +CCDEPMODE = depmode=gcc3
43.55 +CFLAGS = -g -O2 -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations
43.56 +CPP = gcc -E
43.57 +CPPFLAGS = -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include
43.58 +CYGPATH_W = echo
43.59 +DATADIRNAME = share
43.60 +DEFS = -DHAVE_CONFIG_H
43.61 +DEPDIR = .deps
43.62 +ECHO_C =
43.63 +ECHO_N = -n
43.64 +ECHO_T =
43.65 +EGREP = grep -E
43.66 +EXEEXT =
43.67 +GENCAT = gencat
43.68 +GLIBC21 = yes
43.69 +GMSGFMT = /usr/bin/msgfmt
43.70 +GNOMEGNORBA_LIBS = -rdynamic -lgnorba -lORBitCosNaming -lORBit -lIIOP -lORBitutil -lgnomeui -lart_lgpl -lgdk_imlib -lSM -lICE -lgtk -lgdk -lgmodule -ldl -lXi -lXext -lX11 -lgnome -lgnomesupport -lesd -laudiofile -lm -ldb-3 -lglib
43.71 +GNOMEUI_LIBS = -rdynamic -lgnomeui -lart_lgpl -lgdk_imlib -lSM -lICE -lgtk -lgdk -lgmodule -ldl -lXi -lXext -lX11 -lgnome -lgnomesupport -lesd -laudiofile -lm -ldb-3 -lglib
43.72 +GNOME_APPLETS_LIBS =
43.73 +GNOME_CAPPLET_LIBS =
43.74 +GNOME_CONFIG = /usr/bin/gnome-config
43.75 +GNOME_DOCKLETS_LIBS =
43.76 +GNOME_INCLUDEDIR = -I/usr/include/gnome-1.0 -DNEED_GNOMESUPPORT_H -I/usr/lib/gnome-libs/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/include/orbit-1.0 -I/usr/include/gtk-1.2
43.77 +GNOME_LIBDIR = -rdynamic -L/usr/lib -L/usr/X11R6/lib
43.78 +GNOME_LIBS = -lgnome -lgnomesupport -lesd -laudiofile -lm -ldb-3 -lglib
43.79 +GNORBA_CFLAGS = -I/usr/include/gnome-1.0 -DNEED_GNOMESUPPORT_H -I/usr/lib/gnome-libs/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/include/orbit-1.0 -I/usr/include/gtk-1.2
43.80 +GNORBA_LIBS = -rdynamic -L/usr/lib -L/usr/X11R6/lib -lgnorba -lORBitCosNaming -lORBit -lIIOP -lORBitutil -lgnomeui -lart_lgpl -lgdk_imlib -lSM -lICE -lgtk -lgdk -lgmodule -ldl -lXi -lXext -lX11 -lgnome -lgnomesupport -lesd -laudiofile -lm -ldb-3 -lglib
43.81 +GTKXMHTML_LIBS = -rdynamic -lgtkxmhtml -lXpm -ljpeg -lpng10 -lz -lSM -lICE -lgtk -lgdk -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm
43.82 +GTK_CFLAGS = -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include
43.83 +GTK_CONFIG = /usr/bin/gtk-config
43.84 +GTK_LIBS = -lSM -lICE -L/usr/lib -L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm
43.85 +HAVE_ASPRINTF = 1
43.86 +HAVE_GNORBA_FALSE = #
43.87 +HAVE_GNORBA_TRUE =
43.88 +HAVE_ORBIT_FALSE = #
43.89 +HAVE_ORBIT_TRUE =
43.90 +HAVE_POSIX_PRINTF = 1
43.91 +HAVE_SNPRINTF = 1
43.92 +HAVE_WPRINTF = 0
43.93 +INSIDE_GNOME_COMMON_FALSE =
43.94 +INSIDE_GNOME_COMMON_TRUE = #
43.95 +INSTALL_DATA = ${INSTALL} -m 644
43.96 +INSTALL_PROGRAM = ${INSTALL}
43.97 +INSTALL_SCRIPT = ${INSTALL}
43.98 +INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
43.99 +INSTOBJEXT = .mo
43.100 +INTLBISON = bison
43.101 +INTLLIBS =
43.102 +INTLOBJS =
43.103 +INTL_LIBTOOL_SUFFIX_PREFIX =
43.104 +LDFLAGS =
43.105 +LIBICONV =
43.106 +LIBINTL =
43.107 +LIBOBJS =
43.108 +LIBS =
43.109 +LTLIBICONV =
43.110 +LTLIBINTL =
43.111 +LTLIBOBJS =
43.112 +MAKEINFO = ${SHELL} /usr/home/nkeynes/src/dream/missing --run makeinfo
43.113 +MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs
43.114 +MSGFMT = /usr/bin/msgfmt
43.115 +MSGMERGE = /usr/bin/msgmerge
43.116 +OBJEXT = o
43.117 +ORBIT_CFLAGS = -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/include/orbit-1.0
43.118 +ORBIT_CONFIG = /usr/bin/orbit-config
43.119 +ORBIT_IDL = /usr/bin/orbit-idl
43.120 +ORBIT_LIBS = -L/usr/lib -lORBitCosNaming -lORBit -lIIOP -lORBitutil -lglib -lm
43.121 +PACKAGE = DreamOn
43.122 +PACKAGE_BUGREPORT =
43.123 +PACKAGE_NAME =
43.124 +PACKAGE_STRING =
43.125 +PACKAGE_TARNAME =
43.126 +PACKAGE_VERSION =
43.127 +PATH_SEPARATOR = :
43.128 +POSUB = po
43.129 +PTHREAD_LIB = -lpthread
43.130 +RANLIB = ranlib
43.131 +SET_MAKE =
43.132 +SHELL = /bin/sh
43.133 +STRIP =
43.134 +USE_INCLUDED_LIBINTL = no
43.135 +USE_NLS = yes
43.136 +VERSION = 0.01
43.137 +XGETTEXT = /usr/bin/xgettext
43.138 +XPM_LIBS = -lXpm
43.139 +ZVT_LIBS = -rdynamic -lzvt -lutil -lSM -lICE -lgdk_imlib -lgtk -lgdk -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm
43.140 +ac_ct_CC = gcc
43.141 +ac_ct_RANLIB = ranlib
43.142 +ac_ct_STRIP =
43.143 +am__fastdepCC_FALSE = #
43.144 +am__fastdepCC_TRUE =
43.145 +am__include = include
43.146 +am__leading_dot = .
43.147 +am__quote =
43.148 +bindir = ${exec_prefix}/bin
43.149 +build = i686-pc-linux-gnu
43.150 +build_alias =
43.151 +build_cpu = i686
43.152 +build_os = linux-gnu
43.153 +build_vendor = pc
43.154 +cflags_set = yes
43.155 +datadir = ${prefix}/share
43.156 +exec_prefix = ${prefix}
43.157 +host = i686-pc-linux-gnu
43.158 +host_alias =
43.159 +host_cpu = i686
43.160 +host_os = linux-gnu
43.161 +host_vendor = pc
43.162 +includedir = ${prefix}/include
43.163 +infodir = ${prefix}/info
43.164 +install_sh = /usr/home/nkeynes/src/dream/install-sh
43.165 +libdir = ${exec_prefix}/lib
43.166 +libexecdir = ${exec_prefix}/libexec
43.167 +localstatedir = ${prefix}/var
43.168 +mandir = ${prefix}/man
43.169 +oldincludedir = /usr/include
43.170 +prefix = /usr/local
43.171 +program_transform_name = s,x,x,
43.172 +sbindir = ${exec_prefix}/sbin
43.173 +sharedstatedir = ${prefix}/com
43.174 +sysconfdir = ${prefix}/etc
43.175 +target_alias =
43.176 +
43.177 +INCLUDES = \
43.178 + -I$(top_srcdir)/intl -I$(top_srcdir)/src
43.179 +
43.180 +
43.181 +noinst_LIBRARIES = libsh4.a
43.182 +libsh4_a_SOURCES = mem.c mem.h sh4core.c sh4core.h sh4dasm.c sh4dasm.h \
43.183 + sh4mmio.c sh4mmio.h mmio.h intc.c intc.h
43.184 +
43.185 +
43.186 +AM_CFLAGS = -D_ISOC99_SOURCE -D_BSD_SOURCE
43.187 +subdir = src/sh4
43.188 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
43.189 +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
43.190 +CONFIG_HEADER = $(top_builddir)/config.h
43.191 +CONFIG_CLEAN_FILES =
43.192 +LIBRARIES = $(noinst_LIBRARIES)
43.193 +
43.194 +libsh4_a_AR = $(AR) cru
43.195 +libsh4_a_LIBADD =
43.196 +am_libsh4_a_OBJECTS = mem.$(OBJEXT) sh4core.$(OBJEXT) sh4dasm.$(OBJEXT) \
43.197 + sh4mmio.$(OBJEXT) intc.$(OBJEXT)
43.198 +libsh4_a_OBJECTS = $(am_libsh4_a_OBJECTS)
43.199 +
43.200 +DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
43.201 +depcomp = $(SHELL) $(top_srcdir)/depcomp
43.202 +am__depfiles_maybe = depfiles
43.203 +DEP_FILES = ./$(DEPDIR)/intc.Po ./$(DEPDIR)/mem.Po \
43.204 + ./$(DEPDIR)/sh4core.Po ./$(DEPDIR)/sh4dasm.Po \
43.205 + ./$(DEPDIR)/sh4mmio.Po
43.206 +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
43.207 + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
43.208 +CCLD = $(CC)
43.209 +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
43.210 +DIST_SOURCES = $(libsh4_a_SOURCES)
43.211 +DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
43.212 +SOURCES = $(libsh4_a_SOURCES)
43.213 +
43.214 +all: all-am
43.215 +
43.216 +.SUFFIXES:
43.217 +.SUFFIXES: .c .o .obj
43.218 +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
43.219 + cd $(top_srcdir) && \
43.220 + $(AUTOMAKE) --gnu src/sh4/Makefile
43.221 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
43.222 + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
43.223 +
43.224 +AR = ar
43.225 +
43.226 +clean-noinstLIBRARIES:
43.227 + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
43.228 +libsh4.a: $(libsh4_a_OBJECTS) $(libsh4_a_DEPENDENCIES)
43.229 + -rm -f libsh4.a
43.230 + $(libsh4_a_AR) libsh4.a $(libsh4_a_OBJECTS) $(libsh4_a_LIBADD)
43.231 + $(RANLIB) libsh4.a
43.232 +
43.233 +mostlyclean-compile:
43.234 + -rm -f *.$(OBJEXT) core *.core
43.235 +
43.236 +distclean-compile:
43.237 + -rm -f *.tab.c
43.238 +
43.239 +include ./$(DEPDIR)/intc.Po
43.240 +include ./$(DEPDIR)/mem.Po
43.241 +include ./$(DEPDIR)/sh4core.Po
43.242 +include ./$(DEPDIR)/sh4dasm.Po
43.243 +include ./$(DEPDIR)/sh4mmio.Po
43.244 +
43.245 +.c.o:
43.246 + if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
43.247 + -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
43.248 + then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
43.249 + else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
43.250 + fi
43.251 +# source='$<' object='$@' libtool=no \
43.252 +# depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' \
43.253 +# $(CCDEPMODE) $(depcomp) \
43.254 +# $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
43.255 +
43.256 +.c.obj:
43.257 + if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
43.258 + -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
43.259 + then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
43.260 + else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
43.261 + fi
43.262 +# source='$<' object='$@' libtool=no \
43.263 +# depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' \
43.264 +# $(CCDEPMODE) $(depcomp) \
43.265 +# $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
43.266 +uninstall-info-am:
43.267 +
43.268 +ETAGS = etags
43.269 +ETAGSFLAGS =
43.270 +
43.271 +CTAGS = ctags
43.272 +CTAGSFLAGS =
43.273 +
43.274 +tags: TAGS
43.275 +
43.276 +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
43.277 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
43.278 + unique=`for i in $$list; do \
43.279 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
43.280 + done | \
43.281 + $(AWK) ' { files[$$0] = 1; } \
43.282 + END { for (i in files) print i; }'`; \
43.283 + mkid -fID $$unique
43.284 +
43.285 +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
43.286 + $(TAGS_FILES) $(LISP)
43.287 + tags=; \
43.288 + here=`pwd`; \
43.289 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
43.290 + unique=`for i in $$list; do \
43.291 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
43.292 + done | \
43.293 + $(AWK) ' { files[$$0] = 1; } \
43.294 + END { for (i in files) print i; }'`; \
43.295 + test -z "$(ETAGS_ARGS)$$tags$$unique" \
43.296 + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
43.297 + $$tags $$unique
43.298 +
43.299 +ctags: CTAGS
43.300 +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
43.301 + $(TAGS_FILES) $(LISP)
43.302 + tags=; \
43.303 + here=`pwd`; \
43.304 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
43.305 + unique=`for i in $$list; do \
43.306 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
43.307 + done | \
43.308 + $(AWK) ' { files[$$0] = 1; } \
43.309 + END { for (i in files) print i; }'`; \
43.310 + test -z "$(CTAGS_ARGS)$$tags$$unique" \
43.311 + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
43.312 + $$tags $$unique
43.313 +
43.314 +GTAGS:
43.315 + here=`$(am__cd) $(top_builddir) && pwd` \
43.316 + && cd $(top_srcdir) \
43.317 + && gtags -i $(GTAGS_ARGS) $$here
43.318 +
43.319 +distclean-tags:
43.320 + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
43.321 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
43.322 +
43.323 +top_distdir = ../..
43.324 +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
43.325 +
43.326 +distdir: $(DISTFILES)
43.327 + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
43.328 + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
43.329 + list='$(DISTFILES)'; for file in $$list; do \
43.330 + case $$file in \
43.331 + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
43.332 + $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
43.333 + esac; \
43.334 + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
43.335 + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
43.336 + if test "$$dir" != "$$file" && test "$$dir" != "."; then \
43.337 + dir="/$$dir"; \
43.338 + $(mkinstalldirs) "$(distdir)$$dir"; \
43.339 + else \
43.340 + dir=''; \
43.341 + fi; \
43.342 + if test -d $$d/$$file; then \
43.343 + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
43.344 + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
43.345 + fi; \
43.346 + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
43.347 + else \
43.348 + test -f $(distdir)/$$file \
43.349 + || cp -p $$d/$$file $(distdir)/$$file \
43.350 + || exit 1; \
43.351 + fi; \
43.352 + done
43.353 +check-am: all-am
43.354 +check: check-am
43.355 +all-am: Makefile $(LIBRARIES)
43.356 +
43.357 +installdirs:
43.358 +install: install-am
43.359 +install-exec: install-exec-am
43.360 +install-data: install-data-am
43.361 +uninstall: uninstall-am
43.362 +
43.363 +install-am: all-am
43.364 + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
43.365 +
43.366 +installcheck: installcheck-am
43.367 +install-strip:
43.368 + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
43.369 + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
43.370 + `test -z '$(STRIP)' || \
43.371 + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
43.372 +mostlyclean-generic:
43.373 +
43.374 +clean-generic:
43.375 +
43.376 +distclean-generic:
43.377 + -rm -f $(CONFIG_CLEAN_FILES)
43.378 +
43.379 +maintainer-clean-generic:
43.380 + @echo "This command is intended for maintainers to use"
43.381 + @echo "it deletes files that may require special tools to rebuild."
43.382 +clean: clean-am
43.383 +
43.384 +clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
43.385 +
43.386 +distclean: distclean-am
43.387 + -rm -rf ./$(DEPDIR)
43.388 + -rm -f Makefile
43.389 +distclean-am: clean-am distclean-compile distclean-generic \
43.390 + distclean-tags
43.391 +
43.392 +dvi: dvi-am
43.393 +
43.394 +dvi-am:
43.395 +
43.396 +info: info-am
43.397 +
43.398 +info-am:
43.399 +
43.400 +install-data-am:
43.401 +
43.402 +install-exec-am:
43.403 +
43.404 +install-info: install-info-am
43.405 +
43.406 +install-man:
43.407 +
43.408 +installcheck-am:
43.409 +
43.410 +maintainer-clean: maintainer-clean-am
43.411 + -rm -rf ./$(DEPDIR)
43.412 + -rm -f Makefile
43.413 +maintainer-clean-am: distclean-am maintainer-clean-generic
43.414 +
43.415 +mostlyclean: mostlyclean-am
43.416 +
43.417 +mostlyclean-am: mostlyclean-compile mostlyclean-generic
43.418 +
43.419 +pdf: pdf-am
43.420 +
43.421 +pdf-am:
43.422 +
43.423 +ps: ps-am
43.424 +
43.425 +ps-am:
43.426 +
43.427 +uninstall-am: uninstall-info-am
43.428 +
43.429 +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
43.430 + clean-noinstLIBRARIES ctags distclean distclean-compile \
43.431 + distclean-generic distclean-tags distdir dvi dvi-am info \
43.432 + info-am install install-am install-data install-data-am \
43.433 + install-exec install-exec-am install-info install-info-am \
43.434 + install-man install-strip installcheck installcheck-am \
43.435 + installdirs maintainer-clean maintainer-clean-generic \
43.436 + mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
43.437 + ps ps-am tags uninstall uninstall-am uninstall-info-am
43.438 +
43.439 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
43.440 +# Otherwise a system limit (for SysV at least) may be exceeded.
43.441 +.NOEXPORT:
44.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
44.2 +++ b/src/sh4/Makefile.am Sat Mar 13 00:03:32 2004 +0000
44.3 @@ -0,0 +1,10 @@
44.4 +## Process this file with automake to produce Makefile.in
44.5 +
44.6 +INCLUDES = \
44.7 + -I$(top_srcdir)/intl -I$(top_srcdir)/src
44.8 +
44.9 +noinst_LIBRARIES = libsh4.a
44.10 +libsh4_a_SOURCES = mem.c mem.h sh4core.c sh4core.h sh4dasm.c sh4dasm.h \
44.11 + sh4mmio.c sh4mmio.h mmio.h intc.c intc.h
44.12 +
44.13 +AM_CFLAGS = -D_ISOC99_SOURCE -D_BSD_SOURCE
45.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
45.2 +++ b/src/sh4/Makefile.in Sat Mar 13 00:03:32 2004 +0000
45.3 @@ -0,0 +1,438 @@
45.4 +# Makefile.in generated by automake 1.7.9 from Makefile.am.
45.5 +# @configure_input@
45.6 +
45.7 +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
45.8 +# Free Software Foundation, Inc.
45.9 +# This Makefile.in is free software; the Free Software Foundation
45.10 +# gives unlimited permission to copy and/or distribute it,
45.11 +# with or without modifications, as long as this notice is preserved.
45.12 +
45.13 +# This program is distributed in the hope that it will be useful,
45.14 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
45.15 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
45.16 +# PARTICULAR PURPOSE.
45.17 +
45.18 +@SET_MAKE@
45.19 +
45.20 +srcdir = @srcdir@
45.21 +top_srcdir = @top_srcdir@
45.22 +VPATH = @srcdir@
45.23 +pkgdatadir = $(datadir)/@PACKAGE@
45.24 +pkglibdir = $(libdir)/@PACKAGE@
45.25 +pkgincludedir = $(includedir)/@PACKAGE@
45.26 +top_builddir = ../..
45.27 +
45.28 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
45.29 +INSTALL = @INSTALL@
45.30 +install_sh_DATA = $(install_sh) -c -m 644
45.31 +install_sh_PROGRAM = $(install_sh) -c
45.32 +install_sh_SCRIPT = $(install_sh) -c
45.33 +INSTALL_HEADER = $(INSTALL_DATA)
45.34 +transform = $(program_transform_name)
45.35 +NORMAL_INSTALL = :
45.36 +PRE_INSTALL = :
45.37 +POST_INSTALL = :
45.38 +NORMAL_UNINSTALL = :
45.39 +PRE_UNINSTALL = :
45.40 +POST_UNINSTALL = :
45.41 +host_triplet = @host@
45.42 +ACLOCAL = @ACLOCAL@
45.43 +ALLOCA = @ALLOCA@
45.44 +AMDEP_FALSE = @AMDEP_FALSE@
45.45 +AMDEP_TRUE = @AMDEP_TRUE@
45.46 +AMTAR = @AMTAR@
45.47 +AUTOCONF = @AUTOCONF@
45.48 +AUTOHEADER = @AUTOHEADER@
45.49 +AUTOMAKE = @AUTOMAKE@
45.50 +AWK = @AWK@
45.51 +BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
45.52 +CATOBJEXT = @CATOBJEXT@
45.53 +CC = @CC@
45.54 +CCDEPMODE = @CCDEPMODE@
45.55 +CFLAGS = @CFLAGS@
45.56 +CPP = @CPP@
45.57 +CPPFLAGS = @CPPFLAGS@
45.58 +CYGPATH_W = @CYGPATH_W@
45.59 +DATADIRNAME = @DATADIRNAME@
45.60 +DEFS = @DEFS@
45.61 +DEPDIR = @DEPDIR@
45.62 +ECHO_C = @ECHO_C@
45.63 +ECHO_N = @ECHO_N@
45.64 +ECHO_T = @ECHO_T@
45.65 +EGREP = @EGREP@
45.66 +EXEEXT = @EXEEXT@
45.67 +GENCAT = @GENCAT@
45.68 +GLIBC21 = @GLIBC21@
45.69 +GMSGFMT = @GMSGFMT@
45.70 +GNOMEGNORBA_LIBS = @GNOMEGNORBA_LIBS@
45.71 +GNOMEUI_LIBS = @GNOMEUI_LIBS@
45.72 +GNOME_APPLETS_LIBS = @GNOME_APPLETS_LIBS@
45.73 +GNOME_CAPPLET_LIBS = @GNOME_CAPPLET_LIBS@
45.74 +GNOME_CONFIG = @GNOME_CONFIG@
45.75 +GNOME_DOCKLETS_LIBS = @GNOME_DOCKLETS_LIBS@
45.76 +GNOME_INCLUDEDIR = @GNOME_INCLUDEDIR@
45.77 +GNOME_LIBDIR = @GNOME_LIBDIR@
45.78 +GNOME_LIBS = @GNOME_LIBS@
45.79 +GNORBA_CFLAGS = @GNORBA_CFLAGS@
45.80 +GNORBA_LIBS = @GNORBA_LIBS@
45.81 +GTKXMHTML_LIBS = @GTKXMHTML_LIBS@
45.82 +GTK_CFLAGS = @GTK_CFLAGS@
45.83 +GTK_CONFIG = @GTK_CONFIG@
45.84 +GTK_LIBS = @GTK_LIBS@
45.85 +HAVE_ASPRINTF = @HAVE_ASPRINTF@
45.86 +HAVE_GNORBA_FALSE = @HAVE_GNORBA_FALSE@
45.87 +HAVE_GNORBA_TRUE = @HAVE_GNORBA_TRUE@
45.88 +HAVE_ORBIT_FALSE = @HAVE_ORBIT_FALSE@
45.89 +HAVE_ORBIT_TRUE = @HAVE_ORBIT_TRUE@
45.90 +HAVE_POSIX_PRINTF = @HAVE_POSIX_PRINTF@
45.91 +HAVE_SNPRINTF = @HAVE_SNPRINTF@
45.92 +HAVE_WPRINTF = @HAVE_WPRINTF@
45.93 +INSIDE_GNOME_COMMON_FALSE = @INSIDE_GNOME_COMMON_FALSE@
45.94 +INSIDE_GNOME_COMMON_TRUE = @INSIDE_GNOME_COMMON_TRUE@
45.95 +INSTALL_DATA = @INSTALL_DATA@
45.96 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
45.97 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
45.98 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
45.99 +INSTOBJEXT = @INSTOBJEXT@
45.100 +INTLBISON = @INTLBISON@
45.101 +INTLLIBS = @INTLLIBS@
45.102 +INTLOBJS = @INTLOBJS@
45.103 +INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
45.104 +LDFLAGS = @LDFLAGS@
45.105 +LIBICONV = @LIBICONV@
45.106 +LIBINTL = @LIBINTL@
45.107 +LIBOBJS = @LIBOBJS@
45.108 +LIBS = @LIBS@
45.109 +LTLIBICONV = @LTLIBICONV@
45.110 +LTLIBINTL = @LTLIBINTL@
45.111 +LTLIBOBJS = @LTLIBOBJS@
45.112 +MAKEINFO = @MAKEINFO@
45.113 +MKINSTALLDIRS = @MKINSTALLDIRS@
45.114 +MSGFMT = @MSGFMT@
45.115 +MSGMERGE = @MSGMERGE@
45.116 +OBJEXT = @OBJEXT@
45.117 +ORBIT_CFLAGS = @ORBIT_CFLAGS@
45.118 +ORBIT_CONFIG = @ORBIT_CONFIG@
45.119 +ORBIT_IDL = @ORBIT_IDL@
45.120 +ORBIT_LIBS = @ORBIT_LIBS@
45.121 +PACKAGE = @PACKAGE@
45.122 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
45.123 +PACKAGE_NAME = @PACKAGE_NAME@
45.124 +PACKAGE_STRING = @PACKAGE_STRING@
45.125 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
45.126 +PACKAGE_VERSION = @PACKAGE_VERSION@
45.127 +PATH_SEPARATOR = @PATH_SEPARATOR@
45.128 +POSUB = @POSUB@
45.129 +PTHREAD_LIB = @PTHREAD_LIB@
45.130 +RANLIB = @RANLIB@
45.131 +SET_MAKE = @SET_MAKE@
45.132 +SHELL = @SHELL@
45.133 +STRIP = @STRIP@
45.134 +USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
45.135 +USE_NLS = @USE_NLS@
45.136 +VERSION = @VERSION@
45.137 +XGETTEXT = @XGETTEXT@
45.138 +XPM_LIBS = @XPM_LIBS@
45.139 +ZVT_LIBS = @ZVT_LIBS@
45.140 +ac_ct_CC = @ac_ct_CC@
45.141 +ac_ct_RANLIB = @ac_ct_RANLIB@
45.142 +ac_ct_STRIP = @ac_ct_STRIP@
45.143 +am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
45.144 +am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
45.145 +am__include = @am__include@
45.146 +am__leading_dot = @am__leading_dot@
45.147 +am__quote = @am__quote@
45.148 +bindir = @bindir@
45.149 +build = @build@
45.150 +build_alias = @build_alias@
45.151 +build_cpu = @build_cpu@
45.152 +build_os = @build_os@
45.153 +build_vendor = @build_vendor@
45.154 +cflags_set = @cflags_set@
45.155 +datadir = @datadir@
45.156 +exec_prefix = @exec_prefix@
45.157 +host = @host@
45.158 +host_alias = @host_alias@
45.159 +host_cpu = @host_cpu@
45.160 +host_os = @host_os@
45.161 +host_vendor = @host_vendor@
45.162 +includedir = @includedir@
45.163 +infodir = @infodir@
45.164 +install_sh = @install_sh@
45.165 +libdir = @libdir@
45.166 +libexecdir = @libexecdir@
45.167 +localstatedir = @localstatedir@
45.168 +mandir = @mandir@
45.169 +oldincludedir = @oldincludedir@
45.170 +prefix = @prefix@
45.171 +program_transform_name = @program_transform_name@
45.172 +sbindir = @sbindir@
45.173 +sharedstatedir = @sharedstatedir@
45.174 +sysconfdir = @sysconfdir@
45.175 +target_alias = @target_alias@
45.176 +
45.177 +INCLUDES = \
45.178 + -I$(top_srcdir)/intl -I$(top_srcdir)/src
45.179 +
45.180 +
45.181 +noinst_LIBRARIES = libsh4.a
45.182 +libsh4_a_SOURCES = mem.c mem.h sh4core.c sh4core.h sh4dasm.c sh4dasm.h \
45.183 + sh4mmio.c sh4mmio.h mmio.h intc.c intc.h
45.184 +
45.185 +
45.186 +AM_CFLAGS = -D_ISOC99_SOURCE -D_BSD_SOURCE
45.187 +subdir = src/sh4
45.188 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
45.189 +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
45.190 +CONFIG_HEADER = $(top_builddir)/config.h
45.191 +CONFIG_CLEAN_FILES =
45.192 +LIBRARIES = $(noinst_LIBRARIES)
45.193 +
45.194 +libsh4_a_AR = $(AR) cru
45.195 +libsh4_a_LIBADD =
45.196 +am_libsh4_a_OBJECTS = mem.$(OBJEXT) sh4core.$(OBJEXT) sh4dasm.$(OBJEXT) \
45.197 + sh4mmio.$(OBJEXT) intc.$(OBJEXT)
45.198 +libsh4_a_OBJECTS = $(am_libsh4_a_OBJECTS)
45.199 +
45.200 +DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
45.201 +depcomp = $(SHELL) $(top_srcdir)/depcomp
45.202 +am__depfiles_maybe = depfiles
45.203 +@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/intc.Po ./$(DEPDIR)/mem.Po \
45.204 +@AMDEP_TRUE@ ./$(DEPDIR)/sh4core.Po ./$(DEPDIR)/sh4dasm.Po \
45.205 +@AMDEP_TRUE@ ./$(DEPDIR)/sh4mmio.Po
45.206 +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
45.207 + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
45.208 +CCLD = $(CC)
45.209 +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
45.210 +DIST_SOURCES = $(libsh4_a_SOURCES)
45.211 +DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
45.212 +SOURCES = $(libsh4_a_SOURCES)
45.213 +
45.214 +all: all-am
45.215 +
45.216 +.SUFFIXES:
45.217 +.SUFFIXES: .c .o .obj
45.218 +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
45.219 + cd $(top_srcdir) && \
45.220 + $(AUTOMAKE) --gnu src/sh4/Makefile
45.221 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
45.222 + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
45.223 +
45.224 +AR = ar
45.225 +
45.226 +clean-noinstLIBRARIES:
45.227 + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
45.228 +libsh4.a: $(libsh4_a_OBJECTS) $(libsh4_a_DEPENDENCIES)
45.229 + -rm -f libsh4.a
45.230 + $(libsh4_a_AR) libsh4.a $(libsh4_a_OBJECTS) $(libsh4_a_LIBADD)
45.231 + $(RANLIB) libsh4.a
45.232 +
45.233 +mostlyclean-compile:
45.234 + -rm -f *.$(OBJEXT) core *.core
45.235 +
45.236 +distclean-compile:
45.237 + -rm -f *.tab.c
45.238 +
45.239 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/intc.Po@am__quote@
45.240 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mem.Po@am__quote@
45.241 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sh4core.Po@am__quote@
45.242 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sh4dasm.Po@am__quote@
45.243 +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sh4mmio.Po@am__quote@
45.244 +
45.245 +.c.o:
45.246 +@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
45.247 +@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
45.248 +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
45.249 +@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
45.250 +@am__fastdepCC_TRUE@ fi
45.251 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
45.252 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
45.253 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
45.254 +@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
45.255 +
45.256 +.c.obj:
45.257 +@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
45.258 +@am__fastdepCC_TRUE@ -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
45.259 +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
45.260 +@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
45.261 +@am__fastdepCC_TRUE@ fi
45.262 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
45.263 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
45.264 +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
45.265 +@am__fastdepCC_FALSE@ $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
45.266 +uninstall-info-am:
45.267 +
45.268 +ETAGS = etags
45.269 +ETAGSFLAGS =
45.270 +
45.271 +CTAGS = ctags
45.272 +CTAGSFLAGS =
45.273 +
45.274 +tags: TAGS
45.275 +
45.276 +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
45.277 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
45.278 + unique=`for i in $$list; do \
45.279 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
45.280 + done | \
45.281 + $(AWK) ' { files[$$0] = 1; } \
45.282 + END { for (i in files) print i; }'`; \
45.283 + mkid -fID $$unique
45.284 +
45.285 +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
45.286 + $(TAGS_FILES) $(LISP)
45.287 + tags=; \
45.288 + here=`pwd`; \
45.289 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
45.290 + unique=`for i in $$list; do \
45.291 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
45.292 + done | \
45.293 + $(AWK) ' { files[$$0] = 1; } \
45.294 + END { for (i in files) print i; }'`; \
45.295 + test -z "$(ETAGS_ARGS)$$tags$$unique" \
45.296 + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
45.297 + $$tags $$unique
45.298 +
45.299 +ctags: CTAGS
45.300 +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
45.301 + $(TAGS_FILES) $(LISP)
45.302 + tags=; \
45.303 + here=`pwd`; \
45.304 + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
45.305 + unique=`for i in $$list; do \
45.306 + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
45.307 + done | \
45.308 + $(AWK) ' { files[$$0] = 1; } \
45.309 + END { for (i in files) print i; }'`; \
45.310 + test -z "$(CTAGS_ARGS)$$tags$$unique" \
45.311 + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
45.312 + $$tags $$unique
45.313 +
45.314 +GTAGS:
45.315 + here=`$(am__cd) $(top_builddir) && pwd` \
45.316 + && cd $(top_srcdir) \
45.317 + && gtags -i $(GTAGS_ARGS) $$here
45.318 +
45.319 +distclean-tags:
45.320 + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
45.321 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
45.322 +
45.323 +top_distdir = ../..
45.324 +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
45.325 +
45.326 +distdir: $(DISTFILES)
45.327 + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
45.328 + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
45.329 + list='$(DISTFILES)'; for file in $$list; do \
45.330 + case $$file in \
45.331 + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
45.332 + $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
45.333 + esac; \
45.334 + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
45.335 + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
45.336 + if test "$$dir" != "$$file" && test "$$dir" != "."; then \
45.337 + dir="/$$dir"; \
45.338 + $(mkinstalldirs) "$(distdir)$$dir"; \
45.339 + else \
45.340 + dir=''; \
45.341 + fi; \
45.342 + if test -d $$d/$$file; then \
45.343 + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
45.344 + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
45.345 + fi; \
45.346 + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
45.347 + else \
45.348 + test -f $(distdir)/$$file \
45.349 + || cp -p $$d/$$file $(distdir)/$$file \
45.350 + || exit 1; \
45.351 + fi; \
45.352 + done
45.353 +check-am: all-am
45.354 +check: check-am
45.355 +all-am: Makefile $(LIBRARIES)
45.356 +
45.357 +installdirs:
45.358 +install: install-am
45.359 +install-exec: install-exec-am
45.360 +install-data: install-data-am
45.361 +uninstall: uninstall-am
45.362 +
45.363 +install-am: all-am
45.364 + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
45.365 +
45.366 +installcheck: installcheck-am
45.367 +install-strip:
45.368 + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
45.369 + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
45.370 + `test -z '$(STRIP)' || \
45.371 + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
45.372 +mostlyclean-generic:
45.373 +
45.374 +clean-generic:
45.375 +
45.376 +distclean-generic:
45.377 + -rm -f $(CONFIG_CLEAN_FILES)
45.378 +
45.379 +maintainer-clean-generic:
45.380 + @echo "This command is intended for maintainers to use"
45.381 + @echo "it deletes files that may require special tools to rebuild."
45.382 +clean: clean-am
45.383 +
45.384 +clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
45.385 +
45.386 +distclean: distclean-am
45.387 + -rm -rf ./$(DEPDIR)
45.388 + -rm -f Makefile
45.389 +distclean-am: clean-am distclean-compile distclean-generic \
45.390 + distclean-tags
45.391 +
45.392 +dvi: dvi-am
45.393 +
45.394 +dvi-am:
45.395 +
45.396 +info: info-am
45.397 +
45.398 +info-am:
45.399 +
45.400 +install-data-am:
45.401 +
45.402 +install-exec-am:
45.403 +
45.404 +install-info: install-info-am
45.405 +
45.406 +install-man:
45.407 +
45.408 +installcheck-am:
45.409 +
45.410 +maintainer-clean: maintainer-clean-am
45.411 + -rm -rf ./$(DEPDIR)
45.412 + -rm -f Makefile
45.413 +maintainer-clean-am: distclean-am maintainer-clean-generic
45.414 +
45.415 +mostlyclean: mostlyclean-am
45.416 +
45.417 +mostlyclean-am: mostlyclean-compile mostlyclean-generic
45.418 +
45.419 +pdf: pdf-am
45.420 +
45.421 +pdf-am:
45.422 +
45.423 +ps: ps-am
45.424 +
45.425 +ps-am:
45.426 +
45.427 +uninstall-am: uninstall-info-am
45.428 +
45.429 +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
45.430 + clean-noinstLIBRARIES ctags distclean distclean-compile \
45.431 + distclean-generic distclean-tags distdir dvi dvi-am info \
45.432 + info-am install install-am install-data install-data-am \
45.433 + install-exec install-exec-am install-info install-info-am \
45.434 + install-man install-strip installcheck installcheck-am \
45.435 + installdirs maintainer-clean maintainer-clean-generic \
45.436 + mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
45.437 + ps ps-am tags uninstall uninstall-am uninstall-info-am
45.438 +
45.439 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
45.440 +# Otherwise a system limit (for SysV at least) may be exceeded.
45.441 +.NOEXPORT:
46.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
46.2 +++ b/src/sh4/intc.c Sat Mar 13 00:03:32 2004 +0000
46.3 @@ -0,0 +1,145 @@
46.4 +#include <assert.h>
46.5 +#include "sh4mmio.h"
46.6 +#include "sh4core.h"
46.7 +#include "intc.h"
46.8 +
46.9 +int priorities[12] = {0,0,0,0,0,0,0,0,0,0,0,0};
46.10 +
46.11 +struct intc_sources_t {
46.12 + char *name;
46.13 + uint32_t code;
46.14 + int priority;
46.15 +};
46.16 +
46.17 +#define PRIORITY(which) intc_sources[which].priority
46.18 +#define INTCODE(which) intc_sources[which].code
46.19 +
46.20 +static struct intc_sources_t intc_sources[] = {
46.21 + { "IRQ0", 0x200, 15 }, { "IRQ1", 0x220, 14 }, { "IRQ2", 0x240, 13 },
46.22 + { "IRQ3", 0x260, 12 }, { "IRQ4", 0x280, 11 }, { "IRQ5", 0x2A0, 10 },
46.23 + { "IRQ6", 0x2C0, 9 }, { "IRQ7", 0x2E0, 8 }, { "IRQ8", 0x300, 7 },
46.24 + { "IRQ9", 0x320, 6 }, { "IRQ10",0x340, 5 }, { "IRQ11",0x360, 4 },
46.25 + { "IRQ12",0x380, 3 }, { "IRQ13",0x3A0, 2 }, { "IRQ14",0x3C0, 1 },
46.26 + { "NMI", 0x1C0, 16 }, { "H-UDI",0x600, 0 }, { "GPIOI",0x620, 0 },
46.27 + { "DMTE0",0x640, 0 }, { "DMTE1",0x660, 0 }, { "DMTE2",0x680, 0 },
46.28 + { "DMTE3",0x6A0, 0 }, { "DMTAE",0x6C0, 0 }, { "TUNI0",0x400, 0 },
46.29 + { "TUNI1",0x420, 0 }, { "TUNI2",0x440, 0 }, { "TICPI2",0x460, 0 },
46.30 + { "RTC_ATI",0x480, 0 },{ "RTC_PRI",0x4A0, 0 },{ "RTC_CUI",0x4C0, 0 },
46.31 + { "SCI_ERI",0x4E0, 0 },{ "SCI_RXI",0x500, 0 },{ "SCI_TXI",0x520, 0 },
46.32 + { "SCI_TEI",0x540, 0 },
46.33 + { "SCIF_ERI",0x700, 0 },{ "SCIF_RXI",0x720, 0 },{ "SCIF_BRI",0x740, 0 },
46.34 + { "SCIF_TXI",0x760, 0 },
46.35 + { "WDT_ITI",0x560, 0 },{ "RCMI",0x580, 0 }, { "ROVI",0x5A0, 0 } };
46.36 +
46.37 +int intc_pending[INT_NUM_SOURCES];
46.38 +int intc_num_pending = 0;
46.39 +
46.40 +void mmio_region_INTC_write( uint32_t reg, uint32_t val )
46.41 +{
46.42 + /* Well it saves having to use an intermediate table... */
46.43 + switch( reg ) {
46.44 + case ICR: /* care about this later */
46.45 + break;
46.46 + case IPRA:
46.47 + PRIORITY(INT_TMU_TUNI0) = (val>>12)&0x000F;
46.48 + PRIORITY(INT_TMU_TUNI1) = (val>>8)&0x000F;
46.49 + PRIORITY(INT_TMU_TUNI2) =
46.50 + PRIORITY(INT_TMU_TICPI2) = (val>>4)&0x000F;
46.51 + PRIORITY(INT_RTC_ATI) =
46.52 + PRIORITY(INT_RTC_PRI) =
46.53 + PRIORITY(INT_RTC_CUI) = val&0x000F;
46.54 + break;
46.55 + case IPRB:
46.56 + PRIORITY(INT_WDT_ITI) = (val>>12)&0x000F;
46.57 + PRIORITY(INT_REF_RCMI) =
46.58 + PRIORITY(INT_REF_ROVI) = (val>>8)&0x000F;
46.59 + PRIORITY(INT_SCI_ERI) =
46.60 + PRIORITY(INT_SCI_RXI) =
46.61 + PRIORITY(INT_SCI_TXI) =
46.62 + PRIORITY(INT_SCI_TEI) = (val>>4)&0x000F;
46.63 + /* Bits 0-3 reserved */
46.64 + break;
46.65 + case IPRC:
46.66 + PRIORITY(INT_GPIO) = (val>>12)&0x000F;
46.67 + PRIORITY(INT_DMA_DMTE0) =
46.68 + PRIORITY(INT_DMA_DMTE1) =
46.69 + PRIORITY(INT_DMA_DMTE2) =
46.70 + PRIORITY(INT_DMA_DMTE3) =
46.71 + PRIORITY(INT_DMA_DMAE) = (val>>8)&0x000F;
46.72 + PRIORITY(INT_SCIF_ERI) =
46.73 + PRIORITY(INT_SCIF_RXI) =
46.74 + PRIORITY(INT_SCIF_BRI) =
46.75 + PRIORITY(INT_SCIF_TXI) = (val>>4)&0x000F;
46.76 + PRIORITY(INT_HUDI) = val&0x000F;
46.77 + break;
46.78 + }
46.79 + MMIO_WRITE( INTC, reg, val );
46.80 +}
46.81 +
46.82 +int32_t mmio_region_INTC_read( uint32_t reg )
46.83 +{
46.84 + return MMIO_READ( INTC, reg );
46.85 +}
46.86 +
46.87 +/* We basically maintain a priority queue here, raise_interrupt adds an entry,
46.88 + * accept_interrupt takes it off. At the moment this is does as a simple
46.89 + * ordered array, on the basis that in practice there's unlikely to be more
46.90 + * than one at a time. There are lots of ways to optimize this if it turns out
46.91 + * to be necessary, but I'd doubt it will be...
46.92 + */
46.93 +
46.94 +void intc_raise_interrupt( int which )
46.95 +{
46.96 + int i, j, pri;
46.97 +
46.98 + pri = PRIORITY(which);
46.99 + if( pri == 0 ) return; /* masked off */
46.100 +
46.101 + for( i=0; i<intc_num_pending; i++ ) {
46.102 + if( intc_pending[i] == which ) return; /* Don't queue more than once */
46.103 + if( PRIORITY(intc_pending[i]) > pri ||
46.104 + (PRIORITY(intc_pending[i]) == pri &&
46.105 + intc_pending[i] < which))
46.106 + break;
46.107 + }
46.108 + /* i == insertion point */
46.109 + for( j=intc_num_pending; j > i; j-- )
46.110 + intc_pending[j] = intc_pending[j-1];
46.111 + intc_pending[i] = which;
46.112 +
46.113 + if( i == intc_num_pending && (sh4r.sr&SR_BL)==0 && SH4_INTMASK() < pri )
46.114 + sh4r.int_pending = 1;
46.115 +
46.116 + intc_num_pending++;
46.117 +}
46.118 +
46.119 +uint32_t intc_accept_interrupt( void )
46.120 +{
46.121 + assert(intc_num_pending > 0);
46.122 + intc_num_pending--;
46.123 + if( intc_num_pending > 0 )
46.124 + sh4r.int_pending = PRIORITY(intc_pending[intc_num_pending-1]);
46.125 + else
46.126 + sh4r.int_pending = 0;
46.127 + return INTCODE(intc_pending[intc_num_pending]);
46.128 +}
46.129 +
46.130 +void intc_mask_changed( void )
46.131 +{
46.132 + if( intc_num_pending > 0 && (sh4r.sr&SR_BL)==0 &&
46.133 + SH4_INTMASK() < PRIORITY(intc_pending[intc_num_pending-1]) )
46.134 + sh4r.int_pending = 1;
46.135 + else sh4r.int_pending = 0;
46.136 +}
46.137 +
46.138 +
46.139 +char *intc_get_interrupt_name( int code )
46.140 +{
46.141 + return intc_sources[code].name;
46.142 +}
46.143 +
46.144 +void intc_reset( void )
46.145 +{
46.146 + intc_num_pending = 0;
46.147 + sh4r.int_pending = 0;
46.148 +}
47.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
47.2 +++ b/src/sh4/intc.h Sat Mar 13 00:03:32 2004 +0000
47.3 @@ -0,0 +1,68 @@
47.4 +#ifndef sh4intc_H
47.5 +#define sh4intc_H 1
47.6 +
47.7 +#include "sh4core.h"
47.8 +
47.9 +#ifdef __cplusplus
47.10 +extern "C" {
47.11 +#if 0
47.12 +}
47.13 +#endif
47.14 +#endif
47.15 +
47.16 +#define INT_IRQ0 0 /* External Interrupt request 0 */
47.17 +#define INT_IRQ1 1
47.18 +#define INT_IRQ2 2
47.19 +#define INT_IRQ3 3
47.20 +#define INT_IRQ4 4
47.21 +#define INT_IRQ5 5
47.22 +#define INT_IRQ6 6
47.23 +#define INT_IRQ7 7
47.24 +#define INT_IRQ8 8
47.25 +#define INT_IRQ9 9
47.26 +#define INT_IRQ10 10
47.27 +#define INT_IRQ11 11
47.28 +#define INT_IRQ12 12
47.29 +#define INT_IRQ13 13
47.30 +#define INT_IRQ14 14
47.31 +#define INT_NMI 15 /* Non-Maskable Interrupt */
47.32 +#define INT_HUDI 16 /* Hitachi use debug interface */
47.33 +#define INT_GPIO 17 /* I/O port interrupt */
47.34 +#define INT_DMA_DMTE0 18 /* DMA transfer end 0 */
47.35 +#define INT_DMA_DMTE1 19 /* DMA transfer end 1 */
47.36 +#define INT_DMA_DMTE2 20 /* DMA transfer end 2 */
47.37 +#define INT_DMA_DMTE3 21 /* DMA transfer end 3 */
47.38 +#define INT_DMA_DMAE 22 /* DMA address error */
47.39 +#define INT_TMU_TUNI0 23 /* Timer underflow interrupt 0 */
47.40 +#define INT_TMU_TUNI1 24 /* Timer underflow interrupt 1 */
47.41 +#define INT_TMU_TUNI2 25 /* Timer underflow interrupt 2 */
47.42 +#define INT_TMU_TICPI2 26 /* Timer input capture interrupt */
47.43 +#define INT_RTC_ATI 27 /* RTC Alarm interrupt */
47.44 +#define INT_RTC_PRI 28 /* RTC periodic interrupt */
47.45 +#define INT_RTC_CUI 29 /* RTC Carry-up interrupt */
47.46 +#define INT_SCI_ERI 30 /* SCI receive-error interrupt */
47.47 +#define INT_SCI_RXI 31 /* SCI receive-data-full interrupt */
47.48 +#define INT_SCI_TXI 32 /* SCI transmit-data-empty interrupt */
47.49 +#define INT_SCI_TEI 33 /* SCI transmit-end interrupt */
47.50 +#define INT_SCIF_ERI 34 /* SCIF receive-error interrupt */
47.51 +#define INT_SCIF_RXI 35 /* SCIF receive-data-full interrupt */
47.52 +#define INT_SCIF_BRI 36 /* SCIF break interrupt request */
47.53 +#define INT_SCIF_TXI 37 /* SCIF Transmit-data-empty interrupt */
47.54 +#define INT_WDT_ITI 38 /* WDT Interval timer interval (CPG) */
47.55 +#define INT_REF_RCMI 39 /* Compare-match interrupt */
47.56 +#define INT_REF_ROVI 40 /* Refresh counter overflow interrupt */
47.57 +
47.58 +#define INT_NUM_SOURCES 41
47.59 +
47.60 +char *intc_get_interrupt_name( int which );
47.61 +void intc_raise_interrupt( int which );
47.62 +void intc_clear_interrupt( int which );
47.63 +uint32_t intc_accept_interrupt( void );
47.64 +void intc_reset( void );
47.65 +void intc_mask_changed( void );
47.66 +
47.67 +#ifdef __cplusplus
47.68 +}
47.69 +#endif
47.70 +
47.71 +#endif /* !sh4intc_H */
48.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
48.2 +++ b/src/sh4/mem.c Sat Mar 13 00:03:32 2004 +0000
48.3 @@ -0,0 +1,416 @@
48.4 +#include <sys/mman.h>
48.5 +#include <assert.h>
48.6 +#include <stdint.h>
48.7 +#include <stdlib.h>
48.8 +#include <stdio.h>
48.9 +#include <unistd.h>
48.10 +#include <fcntl.h>
48.11 +#include <errno.h>
48.12 +#include <string.h>
48.13 +#include <zlib.h>
48.14 +#include "dream.h"
48.15 +#include "sh4core.h"
48.16 +#include "mem.h"
48.17 +
48.18 +#define OC_BASE 0x1C000000
48.19 +#define OC_TOP 0x20000000
48.20 +
48.21 +static char **page_map = NULL;
48.22 +static char *cache = NULL;
48.23 +
48.24 +struct mem_region mem_rgn[MAX_MEM_REGIONS];
48.25 +struct mmio_region *io_rgn[MAX_IO_REGIONS];
48.26 +struct mmio_region *P4_io[4096];
48.27 +
48.28 +int num_io_rgns = 1, num_mem_rgns = 0;
48.29 +
48.30 +void *mem_alloc_pages( int n )
48.31 +{
48.32 + void *mem = mmap( NULL, n * 4096,
48.33 + PROT_READ|PROT_WRITE, MAP_ANONYMOUS|MAP_PRIVATE, -1, 0 );
48.34 + if( mem == MAP_FAILED ) {
48.35 + ERROR( "Memory allocation failure! (%s)", strerror(errno) );
48.36 + return NULL;
48.37 + }
48.38 + return mem;
48.39 +}
48.40 +
48.41 +
48.42 +void mem_init( void )
48.43 +{
48.44 + page_map = mmap( NULL, sizeof(char *) * PAGE_TABLE_ENTRIES,
48.45 + PROT_READ|PROT_WRITE, MAP_ANONYMOUS|MAP_PRIVATE, -1, 0 );
48.46 + if( page_map == MAP_FAILED ) {
48.47 + ERROR( "Unable to allocate page map! (%s)", strerror(errno) );
48.48 + page_map = NULL;
48.49 + return;
48.50 + }
48.51 +
48.52 + memset( page_map, 0, sizeof(uint32_t) * PAGE_TABLE_ENTRIES );
48.53 + cache = mem_alloc_pages(2);
48.54 +}
48.55 +
48.56 +void mem_reset( void )
48.57 +{
48.58 + /* Restore all mmio registers to their initial settings */
48.59 + int i, j;
48.60 + for( i=1; i<num_io_rgns; i++ ) {
48.61 + for( j=0; io_rgn[i]->ports[j].id != NULL; j++ ) {
48.62 + if( io_rgn[i]->ports[j].def_val != UNDEFINED &&
48.63 + io_rgn[i]->ports[j].def_val != *io_rgn[i]->ports[j].val ) {
48.64 + io_rgn[i]->io_write( io_rgn[i]->ports[j].offset,
48.65 + io_rgn[i]->ports[j].def_val );
48.66 + }
48.67 + }
48.68 + }
48.69 +}
48.70 +
48.71 +struct mem_region *mem_map_region( void *mem, uint32_t base, uint32_t size,
48.72 + char *name, int flags )
48.73 +{
48.74 + int i;
48.75 + mem_rgn[num_mem_rgns].base = base;
48.76 + mem_rgn[num_mem_rgns].size = size;
48.77 + mem_rgn[num_mem_rgns].flags = flags;
48.78 + mem_rgn[num_mem_rgns].name = name;
48.79 + mem_rgn[num_mem_rgns].mem = mem;
48.80 + num_mem_rgns++;
48.81 +
48.82 + for( i=0; i<size>>PAGE_BITS; i++ )
48.83 + page_map[(base>>PAGE_BITS)+i] = mem + (i<<PAGE_BITS);
48.84 +
48.85 + return &mem_rgn[num_mem_rgns-1];
48.86 +}
48.87 +
48.88 +void *mem_create_ram_region( uint32_t base, uint32_t size, char *name )
48.89 +{
48.90 + char *mem;
48.91 +
48.92 + assert( (base&0xFFFFF000) == base ); /* must be page aligned */
48.93 + assert( (size&0x00000FFF) == 0 );
48.94 + assert( num_mem_rgns < MAX_MEM_REGIONS );
48.95 + assert( page_map != NULL );
48.96 +
48.97 + mem = mem_alloc_pages( size>>PAGE_BITS );
48.98 +
48.99 + mem_map_region( mem, base, size, name, 6 );
48.100 + return mem;
48.101 +}
48.102 +
48.103 +void *mem_load_rom( char *file, uint32_t base, uint32_t size, uint32_t crc )
48.104 +{
48.105 + char buf[512], *mem;
48.106 + int fd;
48.107 + uint32_t calc_crc;
48.108 + snprintf( buf, 512, "%s/%s",BIOS_PATH, file );
48.109 + fd = open( buf, O_RDONLY );
48.110 + if( fd == -1 ) {
48.111 + ERROR( "Bios file not found: %s", buf );
48.112 + return NULL;
48.113 + }
48.114 + mem = mmap( NULL, size, PROT_READ, MAP_PRIVATE, fd, 0 );
48.115 + if( mem == MAP_FAILED ) {
48.116 + ERROR( "Unable to map bios file: %s (%s)", file, strerror(errno) );
48.117 + close(fd);
48.118 + return NULL;
48.119 + }
48.120 + mem_map_region( mem, base, size, file, 4 );
48.121 +
48.122 + /* CRC check */
48.123 + calc_crc = crc32(0L, mem, size);
48.124 + if( calc_crc != crc ) {
48.125 + WARN( "Bios CRC Mismatch in %s: %08X (expected %08X)",
48.126 + file, calc_crc, crc);
48.127 + }
48.128 + return mem;
48.129 +}
48.130 +
48.131 +char *mem_get_region_by_name( char *name )
48.132 +{
48.133 + int i;
48.134 + for( i=0; i<num_mem_rgns; i++ ) {
48.135 + if( strcmp( mem_rgn[i].name, name ) == 0 )
48.136 + return mem_rgn[i].mem;
48.137 + }
48.138 + return NULL;
48.139 +}
48.140 +
48.141 +#define OCRAM_START (0x1C000000>>PAGE_BITS)
48.142 +#define OCRAM_END (0x20000000>>PAGE_BITS)
48.143 +
48.144 +void mem_set_cache_mode( int mode )
48.145 +{
48.146 + uint32_t i;
48.147 + switch( mode ) {
48.148 + case MEM_OC_INDEX0: /* OIX=0 */
48.149 + for( i=OCRAM_START; i<OCRAM_END; i++ )
48.150 + page_map[i] = cache + ((i&0x02)<<(PAGE_BITS-1));
48.151 + break;
48.152 + case MEM_OC_INDEX1: /* OIX=1 */
48.153 + for( i=OCRAM_START; i<OCRAM_END; i++ )
48.154 + page_map[i] = cache + ((i&0x02000000)>>(25-PAGE_BITS));
48.155 + break;
48.156 + default: /* disabled */
48.157 + for( i=OCRAM_START; i<OCRAM_END; i++ )
48.158 + page_map[i] = NULL;
48.159 + break;
48.160 + }
48.161 +}
48.162 +
48.163 +void register_io_region( struct mmio_region *io )
48.164 +{
48.165 + int i;
48.166 +
48.167 + assert(io);
48.168 + io->mem = mem_alloc_pages(2);
48.169 + io->save_mem = io->mem + PAGE_SIZE;
48.170 + io->index = (struct mmio_port **)malloc(1024*sizeof(struct mmio_port *));
48.171 + io->trace_flag = 1;
48.172 + memset( io->index, 0, 1024*sizeof(struct mmio_port *) );
48.173 + for( i=0; io->ports[i].id != NULL; i++ ) {
48.174 + io->ports[i].val = (uint32_t *)(io->mem + io->ports[i].offset);
48.175 + *io->ports[i].val = io->ports[i].def_val;
48.176 + io->index[io->ports[i].offset>>2] = &io->ports[i];
48.177 + }
48.178 + memcpy( io->save_mem, io->mem, PAGE_SIZE );
48.179 + if( (io->base & 0xFF000000) == 0xFF000000 ) {
48.180 + /* P4 area (on-chip I/O channels */
48.181 + P4_io[(io->base&0x1FFFFFFF)>>19] = io;
48.182 + } else {
48.183 + page_map[io->base>>12] = (char *)num_io_rgns;
48.184 + }
48.185 + io_rgn[num_io_rgns] = io;
48.186 + num_io_rgns++;
48.187 +}
48.188 +
48.189 +void register_io_regions( struct mmio_region **io )
48.190 +{
48.191 + while( *io ) register_io_region( *io++ );
48.192 +}
48.193 +
48.194 +#define TRACE_IO( str, p, r, ... ) if(io_rgn[(uint32_t)p]->trace_flag) \
48.195 +TRACE( str " [%s.%s: %s]", __VA_ARGS__, \
48.196 + MMIO_NAME_BYNUM((uint32_t)p), MMIO_REGID_BYNUM((uint32_t)p, r), \
48.197 + MMIO_REGDESC_BYNUM((uint32_t)p, r) )
48.198 +
48.199 +
48.200 +int32_t mem_read_p4( uint32_t addr )
48.201 +{
48.202 + struct mmio_region *io = P4_io[(addr&0x1FFFFFFF)>>19];
48.203 + if( !io ) {
48.204 + ERROR( "Attempted read from unknown P4 region: %08X", addr );
48.205 + return 0;
48.206 + } else {
48.207 + return io->io_read( addr&0xFFF );
48.208 + }
48.209 +}
48.210 +
48.211 +void mem_write_p4( uint32_t addr, int32_t val )
48.212 +{
48.213 + struct mmio_region *io = P4_io[(addr&0x1FFFFFFF)>>19];
48.214 + if( !io ) {
48.215 + ERROR( "Attempted write to unknown P4 region: %08X", addr );
48.216 + } else {
48.217 + io->io_write( addr&0xFFF, val );
48.218 + }
48.219 +}
48.220 +
48.221 +int mem_has_page( uint32_t addr )
48.222 +{
48.223 + char *page = page_map[ (addr & 0x1FFFFFFF) >> 12 ];
48.224 + return page != NULL;
48.225 +}
48.226 +
48.227 +int32_t mem_read_phys_word( uint32_t addr )
48.228 +{
48.229 + char *page;
48.230 + if( addr > 0xE0000000 ) /* P4 Area, handled specially */
48.231 + return SIGNEXT16(mem_read_p4( addr ));
48.232 +
48.233 + page = page_map[ (addr & 0x1FFFFFFF) >> 12 ];
48.234 + if( ((uint32_t)page) < MAX_IO_REGIONS ) { /* IO Region */
48.235 + if( page == NULL ) {
48.236 + ERROR( "Attempted word read to missing page: %08X",
48.237 + addr );
48.238 + return 0;
48.239 + }
48.240 + return SIGNEXT16(io_rgn[(uint32_t)page]->io_read(addr&0xFFF));
48.241 + } else {
48.242 + return SIGNEXT16(*(int16_t *)(page+(addr&0xFFF)));
48.243 + }
48.244 +}
48.245 +
48.246 +int32_t mem_read_long( uint32_t addr )
48.247 +{
48.248 + char *page;
48.249 + if( addr > 0xE0000000 ) /* P4 Area, handled specially */
48.250 + return mem_read_p4( addr );
48.251 +
48.252 + if( IS_MMU_ENABLED() ) {
48.253 + ERROR( "user-mode & mmu translation not implemented, aborting", NULL );
48.254 + sh4_stop();
48.255 + return 0;
48.256 + }
48.257 +
48.258 + page = page_map[ (addr & 0x1FFFFFFF) >> 12 ];
48.259 + if( ((uint32_t)page) < MAX_IO_REGIONS ) { /* IO Region */
48.260 + int32_t val;
48.261 + if( page == NULL ) {
48.262 + ERROR( "Attempted long read to missing page: %08X", addr );
48.263 + return 0;
48.264 + }
48.265 + val = io_rgn[(uint32_t)page]->io_read(addr&0xFFF);
48.266 + TRACE_IO( "Long read %08X <= %08X", page, (addr&0xFFF), val, addr );
48.267 + return val;
48.268 + } else {
48.269 + return *(int32_t *)(page+(addr&0xFFF));
48.270 + }
48.271 +}
48.272 +
48.273 +int32_t mem_read_word( uint32_t addr )
48.274 +{
48.275 + char *page;
48.276 + if( addr > 0xE0000000 ) /* P4 Area, handled specially */
48.277 + return SIGNEXT16(mem_read_p4( addr ));
48.278 +
48.279 + if( IS_MMU_ENABLED() ) {
48.280 + ERROR( "user-mode & mmu translation not implemented, aborting", NULL );
48.281 + sh4_stop();
48.282 + return 0;
48.283 + }
48.284 +
48.285 + page = page_map[ (addr & 0x1FFFFFFF) >> 12 ];
48.286 + if( ((uint32_t)page) < MAX_IO_REGIONS ) { /* IO Region */
48.287 + int32_t val;
48.288 + if( page == NULL ) {
48.289 + ERROR( "Attempted word read to missing page: %08X", addr );
48.290 + return 0;
48.291 + }
48.292 + val = SIGNEXT16(io_rgn[(uint32_t)page]->io_read(addr&0xFFF));
48.293 + TRACE_IO( "Word read %04X <= %08X", page, (addr&0xFFF), val&0xFFFF, addr );
48.294 + return val;
48.295 + } else {
48.296 + return SIGNEXT16(*(int16_t *)(page+(addr&0xFFF)));
48.297 + }
48.298 +}
48.299 +
48.300 +int32_t mem_read_byte( uint32_t addr )
48.301 +{
48.302 + char *page;
48.303 + if( addr > 0xE0000000 ) /* P4 Area, handled specially */
48.304 + return SIGNEXT8(mem_read_p4( addr ));
48.305 +
48.306 + if( IS_MMU_ENABLED() ) {
48.307 + ERROR( "user-mode & mmu translation not implemented, aborting", NULL );
48.308 + sh4_stop();
48.309 + return 0;
48.310 + }
48.311 +
48.312 + page = page_map[ (addr & 0x1FFFFFFF) >> 12 ];
48.313 + if( ((uint32_t)page) < MAX_IO_REGIONS ) { /* IO Region */
48.314 + int32_t val;
48.315 + if( page == NULL ) {
48.316 + ERROR( "Attempted byte read to missing page: %08X", addr );
48.317 + return 0;
48.318 + }
48.319 + val = SIGNEXT8(io_rgn[(uint32_t)page]->io_read(addr&0xFFF));
48.320 + TRACE_IO( "Byte read %02X <= %08X", page, (addr&0xFFF), val&0xFF, addr );
48.321 + return val;
48.322 + } else {
48.323 + return SIGNEXT8(*(int8_t *)(page+(addr&0xFFF)));
48.324 + }
48.325 +}
48.326 +
48.327 +void mem_write_long( uint32_t addr, uint32_t val )
48.328 +{
48.329 + char *page;
48.330 +
48.331 + if( addr > 0xE0000000 ) {
48.332 + mem_write_p4( addr, val );
48.333 + return;
48.334 + }
48.335 +
48.336 + if( addr & 0xFFFFF000 == 0x0CFF0000 ||
48.337 + addr & 0x0FFFF000 == 0x0C374000 ) {
48.338 + TRACE( "Long write to watched page: %08X => %08X", val, addr );
48.339 + }
48.340 +
48.341 + if( IS_MMU_ENABLED() ) {
48.342 + ERROR( "user-mode & mmu translation not implemented, aborting", NULL );
48.343 + sh4_stop();
48.344 + return;
48.345 + }
48.346 + page = page_map[ (addr & 0x1FFFFFFF) >> 12 ];
48.347 + if( ((uint32_t)page) < MAX_IO_REGIONS ) { /* IO Region */
48.348 + if( page == NULL ) {
48.349 + ERROR( "Long write to missing page: %08X => %08X", val, addr );
48.350 + return;
48.351 + }
48.352 + TRACE_IO( "Long write %08X => %08X", page, (addr&0xFFF), val, addr );
48.353 + io_rgn[(uint32_t)page]->io_write(addr&0xFFF, val);
48.354 + } else {
48.355 + *(uint32_t *)(page+(addr&0xFFF)) = val;
48.356 + }
48.357 +}
48.358 +
48.359 +void mem_write_word( uint32_t addr, uint32_t val )
48.360 +{
48.361 + char *page;
48.362 +
48.363 + if( addr > 0xE0000000 ) {
48.364 + mem_write_p4( addr, (int16_t)val );
48.365 + return;
48.366 + }
48.367 + if( IS_MMU_ENABLED() ) {
48.368 + ERROR( "user-mode & mmu translation not implemented, aborting", NULL );
48.369 + sh4_stop();
48.370 + return;
48.371 + }
48.372 + page = page_map[ (addr & 0x1FFFFFFF) >> 12 ];
48.373 + if( ((uint32_t)page) < MAX_IO_REGIONS ) { /* IO Region */
48.374 + if( page == NULL ) {
48.375 + ERROR( "Attempted word write to missing page: %08X", addr );
48.376 + return;
48.377 + }
48.378 + TRACE_IO( "Word write %04X => %08X", page, (addr&0xFFF), val&0xFFFF, addr );
48.379 + io_rgn[(uint32_t)page]->io_write(addr&0xFFF, val);
48.380 + } else {
48.381 + *(uint16_t *)(page+(addr&0xFFF)) = val;
48.382 + }
48.383 +}
48.384 +
48.385 +void mem_write_byte( uint32_t addr, uint32_t val )
48.386 +{
48.387 + char *page;
48.388 +
48.389 + if( addr > 0xE0000000 ) {
48.390 + mem_write_p4( addr, (int8_t)val );
48.391 + return;
48.392 + }
48.393 + if( IS_MMU_ENABLED() ) {
48.394 + ERROR( "user-mode & mmu translation not implemented, aborting", NULL );
48.395 + sh4_stop();
48.396 + return;
48.397 + }
48.398 + page = page_map[ (addr & 0x1FFFFFFF) >> 12 ];
48.399 + if( ((uint32_t)page) < MAX_IO_REGIONS ) { /* IO Region */
48.400 + if( page == NULL ) {
48.401 + ERROR( "Attempted byte write to missing page: %08X", addr );
48.402 + return;
48.403 + }
48.404 + TRACE_IO( "Byte write %02X => %08X", page, (addr&0xFFF), val&0xFF, addr );
48.405 + io_rgn[(uint32_t)page]->io_write( (addr&0xFFF), val);
48.406 + } else {
48.407 + *(uint8_t *)(page+(addr&0xFFF)) = val;
48.408 + }
48.409 +}
48.410 +
48.411 +char *mem_get_region( uint32_t addr )
48.412 +{
48.413 + char *page = page_map[ (addr & 0x1FFFFFFF) >> 12 ];
48.414 + if( ((uint32_t)page) < MAX_IO_REGIONS ) { /* IO Region */
48.415 + return NULL;
48.416 + } else {
48.417 + return page+(addr&0xFFF);
48.418 + }
48.419 +}
49.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
49.2 +++ b/src/sh4/mem.h Sat Mar 13 00:03:32 2004 +0000
49.3 @@ -0,0 +1,85 @@
49.4 +#ifndef dream_sh4_mem_H
49.5 +#define dream_sh4_mem_H
49.6 +
49.7 +#include <stdint.h>
49.8 +#include "sh4mmio.h"
49.9 +
49.10 +#ifdef __cplusplus
49.11 +extern "C" {
49.12 +#if 0
49.13 +}
49.14 +#endif
49.15 +#endif
49.16 +
49.17 +struct mem_region {
49.18 + uint32_t base;
49.19 + uint32_t size;
49.20 + char *name;
49.21 + char *mem;
49.22 + int flags;
49.23 +};
49.24 +
49.25 +#define MAX_IO_REGIONS 24
49.26 +#define MAX_MEM_REGIONS 8
49.27 +
49.28 +#define MEM_REGION_MAIN "System RAM"
49.29 +#define MEM_REGION_VIDEO "Video RAM"
49.30 +#define MEM_REGION_AUDIO "Audio RAM"
49.31 +#define MEM_REGION_AUDIO_SCRATCH "Audio Scratch RAM"
49.32 +
49.33 +#define MB * (1024 * 1024)
49.34 +#define KB * 1024
49.35 +
49.36 +int32_t mem_read_long( uint32_t addr );
49.37 +int32_t mem_read_word( uint32_t addr );
49.38 +int32_t mem_read_byte( uint32_t addr );
49.39 +void mem_write_long( uint32_t addr, uint32_t val );
49.40 +void mem_write_word( uint32_t addr, uint32_t val );
49.41 +void mem_write_byte( uint32_t addr, uint32_t val );
49.42 +
49.43 +int32_t mem_read_phys_word( uint32_t addr );
49.44 +void *mem_create_ram_region( uint32_t base, uint32_t size, char *name );
49.45 +void *mem_load_rom( char *name, uint32_t base, uint32_t size, uint32_t crc );
49.46 +char *mem_get_region( uint32_t addr );
49.47 +char *mem_get_region_by_name( char *name );
49.48 +void mem_set_cache_mode( int );
49.49 +int mem_has_page( uint32_t addr );
49.50 +
49.51 +void mem_init( void );
49.52 +void mem_reset( void );
49.53 +
49.54 +
49.55 +/* mmucr register bits */
49.56 +#define MMUCR_AT 0x00000001 /* Address Translation enabled */
49.57 +#define MMUCR_TI 0x00000004 /* TLB invalidate (always read as 0) */
49.58 +#define MMUCR_SV 0x00000100 /* Single Virtual mode=1 / multiple virtual=0 */
49.59 +#define MMUCR_SQMD 0x00000200 /* Store queue mode bit (0=user, 1=priv only) */
49.60 +#define MMUCR_URC 0x0000FC00 /* UTLB access counter */
49.61 +#define MMUCR_URB 0x00FC0000 /* UTLB entry boundary */
49.62 +#define MMUCR_LRUI 0xFC000000 /* Least recently used ITLB */
49.63 +#define MMUCR_MASK 0xFCFCFF05
49.64 +#define MMUCR_RMASK 0xFCFCFF01 /* Read mask */
49.65 +
49.66 +#define IS_MMU_ENABLED() (MMIO_READ(MMU, MMUCR)&MMUCR_AT)
49.67 +
49.68 +/* ccr register bits */
49.69 +#define CCR_IIX 0x00008000 /* IC index enable */
49.70 +#define CCR_ICI 0x00000800 /* IC invalidation (always read as 0) */
49.71 +#define CCR_ICE 0x00000100 /* IC enable */
49.72 +#define CCR_OIX 0x00000080 /* OC index enable */
49.73 +#define CCR_ORA 0x00000020 /* OC RAM enable */
49.74 +#define CCR_OCI 0x00000008 /* OC invalidation (always read as 0) */
49.75 +#define CCR_CB 0x00000004 /* Copy-back (P1 area cache write mode) */
49.76 +#define CCR_WT 0x00000002 /* Write-through (P0,U0,P3 write mode) */
49.77 +#define CCR_OCE 0x00000001 /* OC enable */
49.78 +#define CCR_MASK 0x000089AF
49.79 +#define CCR_RMASK 0x000081A7 /* Read mask */
49.80 +
49.81 +#define MEM_OC_DISABLED 0
49.82 +#define MEM_OC_INDEX0 CCR_ORA
49.83 +#define MEM_OC_INDEX1 CCR_ORA|CCR_OIX
49.84 +
49.85 +#ifdef __cplusplus
49.86 +}
49.87 +#endif
49.88 +#endif
50.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
50.2 +++ b/src/sh4/mmio.h Sat Mar 13 00:03:32 2004 +0000
50.3 @@ -0,0 +1,152 @@
50.4 +#ifndef dream_mmio_H
50.5 +#define dream_mmio_H 1
50.6 +
50.7 +#ifdef __cplusplus
50.8 +extern "C" {
50.9 +#if 0
50.10 +}
50.11 +#endif
50.12 +#endif
50.13 +
50.14 +#include <stdint.h>
50.15 +#include <stdlib.h>
50.16 +#include "sh4core.h"
50.17 +
50.18 +#define PAGE_TABLE_ENTRIES 128*1024
50.19 +#define PAGE_SIZE 4096
50.20 +#define PAGE_BITS 12
50.21 +
50.22 +#define PORT_R 1
50.23 +#define PORT_W 2
50.24 +#define PORT_MEM 4 /* store written value */
50.25 +#define PORT_RW 3
50.26 +#define PORT_MR 5
50.27 +#define PORT_MRW 7
50.28 +#define UNDEFINED 0xDEADBEEF /* This has to be a value that nothing inits to */
50.29 +
50.30 +struct mmio_region {
50.31 + char *id, *desc;
50.32 + uint32_t base;
50.33 + int32_t (*io_read)(uint32_t addr);
50.34 + void (*io_write)(uint32_t addr, uint32_t val);
50.35 + char *mem;
50.36 + char *save_mem; /* Used to compare for gui updates */
50.37 + struct mmio_port {
50.38 + char *id, *desc;
50.39 + int width;
50.40 + uint32_t offset;
50.41 + uint32_t def_val;
50.42 + int flags;
50.43 + uint32_t *val;
50.44 + } ports[80];
50.45 + struct mmio_port **index; /* reverse lookup by address */
50.46 + int trace_flag; /* set to 1 to enable transfer traces */
50.47 +};
50.48 +
50.49 +void register_io_region( struct mmio_region *mmio );
50.50 +void register_io_regions( struct mmio_region **mmiolist );
50.51 +
50.52 +extern struct mmio_region *io_rgn[];
50.53 +extern int num_io_rgns;
50.54 +
50.55 +#define MMIO_READ( id, r ) *((int32_t *)(mmio_region_##id.mem + (r)))
50.56 +#define MMIO_WRITE( id, r, v ) *((int32_t *)(mmio_region_##id.mem + (r))) = (v)
50.57 +#define MMIO_REG( id, r ) ((int32_t *)(mmio_region_##id.mem + (r)))
50.58 +#define MMIO_REGID( mid, r ) (mmio_region_##mid.index[(r)>>2] != NULL ? \
50.59 + mmio_region_##mid.index[(r)>>2]->id : "<UNDEF>" )
50.60 +#define MMIO_REGDESC( mid, r) (mmio_region_##mid.index[(r)>>2] != NULL ? \
50.61 + mmio_region_##mid.index[(r)>>2]->desc : "Undefined register" )
50.62 +#define MMIO_TRACE( mid ) mmio_region_##mid.trace_flag = 1
50.63 +#define MMIO_NOTRACE( mid ) mmio_region_##mid.trace_flag = 0
50.64 +
50.65 +#define MMIO_REGID_BYNUM( mid, r ) (io_rgn[mid]->index[(r)>>2] != NULL ? \
50.66 + io_rgn[mid]->index[(r)>>2]->id : "<UNDEF>" )
50.67 +#define MMIO_REGDESC_BYNUM( mid, r ) (io_rgn[mid]->index[(r)>>2] != NULL ? \
50.68 + io_rgn[mid]->index[(r)>>2]->desc : "Undefined register" )
50.69 +#define MMIO_NAME_BYNUM( mid ) (io_rgn[mid]->id)
50.70 +
50.71 +#ifdef __cplusplus
50.72 +}
50.73 +#endif
50.74 +
50.75 +#endif
50.76 +
50.77 +#ifdef MMIO_IMPL
50.78 +
50.79 +#ifndef MMIO_IMPL_INCLUDED
50.80 +#define MMIO_IMPL_INCLUDED
50.81 +#undef MMIO_REGION_BEGIN
50.82 +#undef LONG_PORT
50.83 +#undef WORD_PORT
50.84 +#undef BYTE_PORT
50.85 +#undef MMIO_REGION_END
50.86 +#undef MMIO_REGION_LIST_BEGIN
50.87 +#undef MMIO_REGION
50.88 +#undef MMIO_REGION_LIST_END
50.89 +#define MMIO_REGION_BEGIN(b,id,d) struct mmio_region mmio_region_##id = { #id, d, b, mmio_region_##id##_read, mmio_region_##id##_write, 0, 0, {
50.90 +#define LONG_PORT( o,id,f,def,d ) { #id, d, 32, o, def, f },
50.91 +#define WORD_PORT( o,id,f,def,d ) { #id, d, 16, o, def, f },
50.92 +#define BYTE_PORT( o,id,f,def,d ) { #id, d, 8, o, def, f },
50.93 +#define MMIO_REGION_END {NULL, NULL, 0, 0, 0, 0} } };
50.94 +#define MMIO_REGION_LIST_BEGIN(id) struct mmio_region *mmio_list_##id[] = {
50.95 +#define MMIO_REGION( id ) &mmio_region_##id,
50.96 +#define MMIO_REGION_LIST_END NULL};
50.97 +
50.98 +/* Stub defines for modules we haven't got to yet, or ones which don't
50.99 + * actually need any direct code on read and/or write
50.100 + */
50.101 +#define MMIO_REGION_READ_STUBFN( id ) \
50.102 +int32_t mmio_region_##id##_read( uint32_t reg ) { \
50.103 + int32_t val = MMIO_READ( id, reg ); \
50.104 + WARN( "Read from unimplemented module %s (%03X => %08X) [%s: %s]",\
50.105 + #id, reg, val, MMIO_REGID(id,reg), MMIO_REGDESC(id,reg) ); \
50.106 + return val; \
50.107 +}
50.108 +#define MMIO_REGION_WRITE_STUBFN( id ) \
50.109 +void mmio_region_##id##_write( uint32_t reg, uint32_t val ) { \
50.110 + WARN( "Write to unimplemented module %s (%03X <= %08X) [%s: %s]", \
50.111 + #id, reg, val, MMIO_REGID(id,reg), MMIO_REGDESC(id,reg) ); \
50.112 + MMIO_WRITE( id, reg, val ); \
50.113 +}
50.114 +#define MMIO_REGION_STUBFNS( id ) \
50.115 + MMIO_REGION_READ_STUBFN( id ) \
50.116 + MMIO_REGION_WRITE_STUBFN( id )
50.117 +#define MMIO_REGION_READ_DEFFN( id ) \
50.118 +int32_t mmio_region_##id##_read( uint32_t reg ) { \
50.119 + return MMIO_READ( id, reg ); \
50.120 +}
50.121 +#define MMIO_REGION_WRITE_DEFFN( id ) \
50.122 +void mmio_region_##id##_write( uint32_t reg, uint32_t val ) { \
50.123 + MMIO_WRITE( id, reg, val ); \
50.124 +}
50.125 +#define MMIO_REGION_DEFFNS( id ) \
50.126 + MMIO_REGION_READ_DEFFN( id ) \
50.127 + MMIO_REGION_WRITE_DEFFN( id )
50.128 +#endif
50.129 +
50.130 +#define MMIO_REGION_WRITE_FN( id, reg, val ) \
50.131 +void mmio_region_##id##_write( uint32_t reg, uint32_t val )
50.132 +
50.133 +#define MMIO_REGION_READ_FN( id, reg ) \
50.134 +int32_t mmio_region_##id##_read( uint32_t reg )
50.135 +
50.136 +#else
50.137 +
50.138 +#ifndef MMIO_IFACE_INCLUDED
50.139 +#define MMIO_IFACE_INCLUDED
50.140 +#define MMIO_REGION_BEGIN(b,id,d) \
50.141 +extern struct mmio_region mmio_region_##id; \
50.142 +int32_t mmio_region_##id##_read(uint32_t); \
50.143 +void mmio_region_##id##_write(uint32_t, uint32_t); \
50.144 +enum mmio_region_##id##_port_t {
50.145 +#define LONG_PORT( o,id,f,def,d ) id = o,
50.146 +#define WORD_PORT( o,id,f,def,d ) id = o,
50.147 +#define BYTE_PORT( o,id,f,def,d ) id = o,
50.148 +#define MMIO_REGION_END };
50.149 +#define MMIO_REGION_LIST_BEGIN(id) extern struct mmio_region *mmio_list_##id[];
50.150 +#define MMIO_REGION( id )
50.151 +#define MMIO_REGION_LIST_END
50.152 +#endif
50.153 +
50.154 +#endif
50.155 +
51.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
51.2 +++ b/src/sh4/sh4core.c Sat Mar 13 00:03:32 2004 +0000
51.3 @@ -0,0 +1,1110 @@
51.4 +#include <math.h>
51.5 +#include "dream.h"
51.6 +#include "sh4core.h"
51.7 +#include "sh4mmio.h"
51.8 +#include "mem.h"
51.9 +#include "intc.h"
51.10 +
51.11 +struct sh4_registers sh4r;
51.12 +
51.13 +static int running = 0;
51.14 +
51.15 +void sh4_init(void)
51.16 +{
51.17 + register_io_regions( mmio_list_sh4mmio );
51.18 +}
51.19 +
51.20 +void sh4_reset(void)
51.21 +{
51.22 + sh4r.pc = 0xA0000000;
51.23 + sh4r.new_pc= 0xA0000002;
51.24 + sh4r.vbr = 0x00000000;
51.25 + sh4r.fpscr = 0x00040001;
51.26 + sh4r.sr = 0x700000F0;
51.27 + sh4r.icount= 0;
51.28 + /* Everything else is undefined anyway, so don't bother setting it */
51.29 + intc_reset();
51.30 +}
51.31 +
51.32 +void sh4_set_pc( int pc )
51.33 +{
51.34 + sh4r.pc = pc;
51.35 + sh4r.new_pc = pc+2;
51.36 +}
51.37 +
51.38 +void sh4_stop(void)
51.39 +{
51.40 + running = 0;
51.41 +}
51.42 +
51.43 +void sh4_run(void)
51.44 +{
51.45 + running = 1;
51.46 + while( running ) {
51.47 + sh4_execute_instruction();
51.48 + }
51.49 +}
51.50 +
51.51 +void sh4_runfor(uint32_t count)
51.52 +{
51.53 + running = 1;
51.54 + while( running && count--) {
51.55 + sh4_execute_instruction();
51.56 + }
51.57 +}
51.58 +
51.59 +int sh4_isrunning(void)
51.60 +{
51.61 + return running;
51.62 +}
51.63 +
51.64 +void sh4_runto( uint32_t target_pc, uint32_t count )
51.65 +{
51.66 + running = 1;
51.67 + do {
51.68 + sh4_execute_instruction();
51.69 + } while( running && sh4r.pc != target_pc && count-- );
51.70 + if( count == 0 )
51.71 + running = 0;
51.72 +}
51.73 +
51.74 +#define UNDEF(ir) do{ ERROR( "Raising exception on undefined instruction at %08x, opcode = %04x", sh4r.pc, ir ); sh4_stop(); RAISE( EXC_ILLEGAL, EXV_ILLEGAL ); }while(0)
51.75 +#define UNIMP(ir) do{ ERROR( "Halted on unimplemented instruction at %08x, opcode = %04x", sh4r.pc, ir ); sh4_stop(); return; }while(0)
51.76 +
51.77 +#define RAISE( x, v ) do{ \
51.78 + if( sh4r.vbr == 0 ) { \
51.79 + ERROR( "%08X: VBR not initialized while raising exception %03X, halting", sh4r.pc, x ); \
51.80 + sh4_stop(); \
51.81 + } else { \
51.82 + sh4r.spc = sh4r.pc + 2; \
51.83 + sh4r.ssr = sh4_read_sr(); \
51.84 + sh4r.sgr = sh4r.r[15]; \
51.85 + MMIO_WRITE(MMU,EXPEVT,x); \
51.86 + sh4r.pc = sh4r.vbr + v; \
51.87 + sh4r.new_pc = sh4r.pc + 2; \
51.88 + sh4_load_sr( sh4r.ssr |SR_MD|SR_BL|SR_RB ); \
51.89 + } \
51.90 + return; } while(0)
51.91 +
51.92 +#define MEM_READ_BYTE( addr ) mem_read_byte(addr)
51.93 +#define MEM_READ_WORD( addr ) mem_read_word(addr)
51.94 +#define MEM_READ_LONG( addr ) mem_read_long(addr)
51.95 +#define MEM_WRITE_BYTE( addr, val ) mem_write_byte(addr, val)
51.96 +#define MEM_WRITE_WORD( addr, val ) mem_write_word(addr, val)
51.97 +#define MEM_WRITE_LONG( addr, val ) mem_write_long(addr, val)
51.98 +
51.99 +#define MEM_FP_READ( addr, reg ) if( IS_FPU_DOUBLESIZE() ) { \
51.100 + ((uint32_t *)FR)[(reg)&0xE0] = mem_read_long(addr); \
51.101 + ((uint32_t *)FR)[(reg)|1] = mem_read_long(addr+4); \
51.102 +} else ((uint32_t *)FR)[reg] = mem_read_long(addr)
51.103 +
51.104 +#define MEM_FP_WRITE( addr, reg ) if( IS_FPU_DOUBLESIZE() ) { \
51.105 + mem_write_long( addr, ((uint32_t *)FR)[(reg)&0xE0] ); \
51.106 + mem_write_long( addr+4, ((uint32_t *)FR)[(reg)|1] ); \
51.107 +} else mem_write_long( addr, ((uint32_t *)FR)[reg] )
51.108 +
51.109 +#define FP_WIDTH (IS_FPU_DOUBLESIZE() ? 8 : 4)
51.110 +
51.111 +#define EXC_POWER_RESET 0x000 /* vector special */
51.112 +#define EXC_MANUAL_RESET 0x020
51.113 +#define EXC_ILLEGAL 0x180
51.114 +#define EXV_ILLEGAL 0x100
51.115 +#define EXC_TRAP 0x160
51.116 +#define EXV_TRAP 0x100
51.117 +#define EXC_FPDISABLE 0x800
51.118 +#define EXV_FPDISABLE 0x100
51.119 +
51.120 +#define CHECK( x, c, v ) if( !x ) RAISE( c, v )
51.121 +#define CHECKPRIV() CHECK( IS_SH4_PRIVMODE(), EXC_ILLEGAL, EXV_ILLEGAL )
51.122 +#define CHECKFPUEN() CHECK( IS_FPU_ENABLED(), EXC_FPDISABLE, EXV_FPDISABLE )
51.123 +#define CHECKDEST(p) if( (p) == 0 ) { ERROR( "%08X: Branch/jump to NULL, CPU halted", sh4r.pc ); sh4_stop(); return; }
51.124 +
51.125 +static void sh4_switch_banks( )
51.126 +{
51.127 + uint32_t tmp[8];
51.128 +
51.129 + memcpy( tmp, sh4r.r, sizeof(uint32_t)*8 );
51.130 + memcpy( sh4r.r, sh4r.r_bank, sizeof(uint32_t)*8 );
51.131 + memcpy( sh4r.r_bank, tmp, sizeof(uint32_t)*8 );
51.132 +}
51.133 +
51.134 +static void sh4_load_sr( uint32_t newval )
51.135 +{
51.136 + if( (newval ^ sh4r.sr) & SR_RB )
51.137 + sh4_switch_banks();
51.138 + sh4r.sr = newval;
51.139 + sh4r.t = (newval&SR_T) ? 1 : 0;
51.140 + sh4r.s = (newval&SR_S) ? 1 : 0;
51.141 + sh4r.m = (newval&SR_M) ? 1 : 0;
51.142 + sh4r.q = (newval&SR_Q) ? 1 : 0;
51.143 + intc_mask_changed();
51.144 +}
51.145 +
51.146 +static uint32_t sh4_read_sr( void )
51.147 +{
51.148 + /* synchronize sh4r.sr with the various bitflags */
51.149 + sh4r.sr &= SR_MQSTMASK;
51.150 + if( sh4r.t ) sh4r.sr |= SR_T;
51.151 + if( sh4r.s ) sh4r.sr |= SR_S;
51.152 + if( sh4r.m ) sh4r.sr |= SR_M;
51.153 + if( sh4r.q ) sh4r.sr |= SR_Q;
51.154 + return sh4r.sr;
51.155 +}
51.156 +/* function for external use */
51.157 +void sh4_raise_exception( int code, int vector )
51.158 +{
51.159 + RAISE(code, vector);
51.160 +}
51.161 +
51.162 +static void sh4_accept_interrupt( void )
51.163 +{
51.164 + uint32_t code = intc_accept_interrupt();
51.165 +
51.166 + sh4r.ssr = sh4_read_sr();
51.167 + sh4r.spc = sh4r.pc;
51.168 + sh4r.sgr = sh4r.r[15];
51.169 + sh4_load_sr( sh4r.ssr|SR_BL|SR_MD|SR_RB );
51.170 + MMIO_WRITE( MMU, INTEVT, code );
51.171 + sh4r.pc = sh4r.vbr + 0x600;
51.172 + sh4r.new_pc = sh4r.pc + 2;
51.173 +}
51.174 +
51.175 +void sh4_execute_instruction( void )
51.176 +{
51.177 + int pc = sh4r.pc;
51.178 + unsigned short ir = MEM_READ_WORD(pc);
51.179 + uint32_t tmp;
51.180 + uint64_t tmpl;
51.181 +
51.182 +#define R0 sh4r.r[0]
51.183 +#define FR0 (FR[0])
51.184 +#define RN(ir) sh4r.r[(ir&0x0F00)>>8]
51.185 +#define RN_BANK(ir) sh4r.r_bank[(ir&0x0070)>>4]
51.186 +#define RM(ir) sh4r.r[(ir&0x00F0)>>4]
51.187 +#define DISP4(ir) (ir&0x000F) /* 4-bit displacements are *NOT* sign-extended */
51.188 +#define DISP8(ir) (ir&0x00FF)
51.189 +#define PCDISP8(ir) SIGNEXT8(ir&0x00FF)
51.190 +#define IMM8(ir) SIGNEXT8(ir&0x00FF)
51.191 +#define UIMM8(ir) (ir&0x00FF) /* Unsigned immmediate */
51.192 +#define DISP12(ir) SIGNEXT12(ir&0x0FFF)
51.193 +#define FVN(ir) ((ir&0x0C00)
51.194 +#define FVM(ir) ((ir&0x0300)>>8)
51.195 +#define FRN(ir) (FR[(ir&0x0F00)>>8])
51.196 +#define FRM(ir) (FR[(ir&0x00F0)>>4])
51.197 +#define FRNi(ir) (((uint32_t *)FR)[(ir&0x0F00)>>8])
51.198 +#define FRMi(ir) (((uint32_t *)FR)[(ir&0x00F0)>>4])
51.199 +#define DRN(ir) (((double *)FR)[(ir&0x0E00)>>9])
51.200 +#define DRM(ir) (((double *)FR)[(ir&0x00E0)>>5])
51.201 +#define DRNi(ir) (((uint64_t *)FR)[(ir&0x0E00)>>9])
51.202 +#define DRMi(ir) (((uint64_t *)FR)[(ir&0x00E0)>>5])
51.203 +#define FRNn(ir) ((ir&0x0F00)>>8)
51.204 +#define FRMn(ir) ((ir&0x00F0)>>4)
51.205 +#define FPULf *((float *)&sh4r.fpul)
51.206 +#define FPULi (sh4r.fpul)
51.207 +
51.208 + if( SH4_INT_PENDING() ) sh4_accept_interrupt();
51.209 +
51.210 + sh4r.icount++;
51.211 +
51.212 + switch( (ir&0xF000)>>12 ) {
51.213 + case 0: /* 0000nnnnmmmmxxxx */
51.214 + switch( ir&0x000F ) {
51.215 + case 2:
51.216 + switch( (ir&0x00F0)>>4 ) {
51.217 + case 0: /* STC SR, Rn */
51.218 + CHECKPRIV();
51.219 + RN(ir) = sh4_read_sr();
51.220 + break;
51.221 + case 1: /* STC GBR, Rn */
51.222 + RN(ir) = sh4r.gbr;
51.223 + break;
51.224 + case 2: /* STC VBR, Rn */
51.225 + CHECKPRIV();
51.226 + RN(ir) = sh4r.vbr;
51.227 + break;
51.228 + case 3: /* STC SSR, Rn */
51.229 + CHECKPRIV();
51.230 + RN(ir) = sh4r.ssr;
51.231 + break;
51.232 + case 4: /* STC SPC, Rn */
51.233 + CHECKPRIV();
51.234 + RN(ir) = sh4r.spc;
51.235 + break;
51.236 + case 8: case 9: case 10: case 11: case 12: case 13:
51.237 + case 14: case 15:/* STC Rm_bank, Rn */
51.238 + CHECKPRIV();
51.239 + RN(ir) = RN_BANK(ir);
51.240 + break;
51.241 + default: UNDEF(ir);
51.242 + }
51.243 + break;
51.244 + case 3:
51.245 + switch( (ir&0x00F0)>>4 ) {
51.246 + case 0: /* BSRF Rn */
51.247 + CHECKDEST( pc + 4 + RN(ir) );
51.248 + sh4r.pr = sh4r.pc + 4;
51.249 + sh4r.pc = sh4r.new_pc;
51.250 + sh4r.new_pc = pc + 4 + RN(ir);
51.251 + return;
51.252 + case 2: /* BRAF Rn */
51.253 + CHECKDEST( pc + 4 + RN(ir) );
51.254 + sh4r.pc = sh4r.new_pc;
51.255 + sh4r.new_pc = pc + 4 + RN(ir);
51.256 + return;
51.257 + case 8: /* PREF [Rn] */
51.258 + case 9: /* OCBI [Rn] */
51.259 + case 10:/* OCBP [Rn] */
51.260 + case 11:/* OCBWB [Rn] */
51.261 + /* anything? */
51.262 + break;
51.263 + case 12:/* MOVCA.L R0, [Rn] */
51.264 + UNIMP(ir);
51.265 + default: UNDEF(ir);
51.266 + }
51.267 + break;
51.268 + case 4: /* MOV.B Rm, [R0 + Rn] */
51.269 + MEM_WRITE_BYTE( R0 + RN(ir), RM(ir) );
51.270 + break;
51.271 + case 5: /* MOV.W Rm, [R0 + Rn] */
51.272 + MEM_WRITE_WORD( R0 + RN(ir), RM(ir) );
51.273 + break;
51.274 + case 6: /* MOV.L Rm, [R0 + Rn] */
51.275 + MEM_WRITE_LONG( R0 + RN(ir), RM(ir) );
51.276 + break;
51.277 + case 7: /* MUL.L Rm, Rn */
51.278 + sh4r.mac = (sh4r.mac&0xFFFFFFFF00000000) |
51.279 + (RM(ir) * RN(ir));
51.280 + break;
51.281 + case 8:
51.282 + switch( (ir&0x0FF0)>>4 ) {
51.283 + case 0: /* CLRT */
51.284 + sh4r.t = 0;
51.285 + break;
51.286 + case 1: /* SETT */
51.287 + sh4r.t = 1;
51.288 + break;
51.289 + case 2: /* CLRMAC */
51.290 + sh4r.mac = 0;
51.291 + break;
51.292 + case 3: /* LDTLB */
51.293 + break;
51.294 + case 4: /* CLRS */
51.295 + sh4r.s = 0;
51.296 + break;
51.297 + case 5: /* SETS */
51.298 + sh4r.s = 1;
51.299 + break;
51.300 + default: UNDEF(ir);
51.301 + }
51.302 + break;
51.303 + case 9:
51.304 + if( (ir&0x00F0) == 0x20 ) /* MOVT Rn */
51.305 + RN(ir) = sh4r.t;
51.306 + else if( ir == 0x0019 ) /* DIV0U */
51.307 + sh4r.m = sh4r.q = sh4r.t = 0;
51.308 + else if( ir == 0x0009 )
51.309 + /* NOP */;
51.310 + else UNDEF(ir);
51.311 + break;
51.312 + case 10:
51.313 + switch( (ir&0x00F0) >> 4 ) {
51.314 + case 0: /* STS MACH, Rn */
51.315 + RN(ir) = sh4r.mac >> 32;
51.316 + break;
51.317 + case 1: /* STS MACL, Rn */
51.318 + RN(ir) = (uint32_t)sh4r.mac;
51.319 + break;
51.320 + case 2: /* STS PR, Rn */
51.321 + RN(ir) = sh4r.pr;
51.322 + break;
51.323 + case 3: /* STC SGR, Rn */
51.324 + CHECKPRIV();
51.325 + RN(ir) = sh4r.sgr;
51.326 + break;
51.327 + case 5:/* STS FPUL, Rn */
51.328 + RN(ir) = sh4r.fpul;
51.329 + break;
51.330 + case 6: /* STS FPSCR, Rn */
51.331 + RN(ir) = sh4r.fpscr;
51.332 + break;
51.333 + case 15:/* STC DBR, Rn */
51.334 + CHECKPRIV();
51.335 + RN(ir) = sh4r.dbr;
51.336 + break;
51.337 + default: UNDEF(ir);
51.338 + }
51.339 + break;
51.340 + case 11:
51.341 + switch( (ir&0x0FF0)>>4 ) {
51.342 + case 0: /* RTS */
51.343 + CHECKDEST( sh4r.pr );
51.344 + sh4r.pc = sh4r.new_pc;
51.345 + sh4r.new_pc = sh4r.pr;
51.346 + return;
51.347 + case 1: /* SLEEP */
51.348 + running = 0;
51.349 + break;
51.350 + case 2: /* RTE */
51.351 + CHECKPRIV();
51.352 + CHECKDEST( sh4r.spc );
51.353 + sh4r.pc = sh4r.new_pc;
51.354 + sh4r.new_pc = sh4r.spc;
51.355 + sh4_load_sr( sh4r.ssr );
51.356 + return;
51.357 + default:UNDEF(ir);
51.358 + }
51.359 + break;
51.360 + case 12:/* MOV.B [R0+R%d], R%d */
51.361 + RN(ir) = MEM_READ_BYTE( R0 + RM(ir) );
51.362 + break;
51.363 + case 13:/* MOV.W [R0+R%d], R%d */
51.364 + RN(ir) = MEM_READ_WORD( R0 + RM(ir) );
51.365 + break;
51.366 + case 14:/* MOV.L [R0+R%d], R%d */
51.367 + RN(ir) = MEM_READ_LONG( R0 + RM(ir) );
51.368 + break;
51.369 + case 15:/* MAC.L [Rm++], [Rn++] */
51.370 + tmpl = ( SIGNEXT32(MEM_READ_LONG(RM(ir))) *
51.371 + SIGNEXT32(MEM_READ_LONG(RN(ir))) );
51.372 + if( sh4r.s ) {
51.373 + /* 48-bit Saturation. Yuch */
51.374 + tmpl += SIGNEXT48(sh4r.mac);
51.375 + if( tmpl < 0xFFFF800000000000 )
51.376 + tmpl = 0xFFFF800000000000;
51.377 + else if( tmpl > 0x00007FFFFFFFFFFF )
51.378 + tmpl = 0x00007FFFFFFFFFFF;
51.379 + sh4r.mac = (sh4r.mac&0xFFFF000000000000) |
51.380 + (tmpl&0x0000FFFFFFFFFFFF);
51.381 + } else sh4r.mac = tmpl;
51.382 +
51.383 + RM(ir) += 4;
51.384 + RN(ir) += 4;
51.385 +
51.386 + break;
51.387 + default: UNDEF(ir);
51.388 + }
51.389 + break;
51.390 + case 1: /* 0001nnnnmmmmdddd */
51.391 + /* MOV.L Rm, [Rn + disp4*4] */
51.392 + MEM_WRITE_LONG( RN(ir) + (DISP4(ir)<<2), RM(ir) );
51.393 + break;
51.394 + case 2: /* 0010nnnnmmmmxxxx */
51.395 + switch( ir&0x000F ) {
51.396 + case 0: /* MOV.B Rm, [Rn] */
51.397 + MEM_WRITE_BYTE( RN(ir), RM(ir) );
51.398 + break;
51.399 + case 1: /* MOV.W Rm, [Rn] */
51.400 + MEM_WRITE_WORD( RN(ir), RM(ir) );
51.401 + break;
51.402 + case 2: /* MOV.L Rm, [Rn] */
51.403 + MEM_WRITE_LONG( RN(ir), RM(ir) );
51.404 + break;
51.405 + case 3: UNDEF(ir);
51.406 + break;
51.407 + case 4: /* MOV.B Rm, [--Rn] */
51.408 + RN(ir) --;
51.409 + MEM_WRITE_BYTE( RN(ir), RM(ir) );
51.410 + break;
51.411 + case 5: /* MOV.W Rm, [--Rn] */
51.412 + RN(ir) -= 2;
51.413 + MEM_WRITE_WORD( RN(ir), RM(ir) );
51.414 + break;
51.415 + case 6: /* MOV.L Rm, [--Rn] */
51.416 + RN(ir) -= 4;
51.417 + MEM_WRITE_LONG( RN(ir), RM(ir) );
51.418 + break;
51.419 + case 7: /* DIV0S Rm, Rn */
51.420 + sh4r.q = RN(ir)>>31;
51.421 + sh4r.m = RM(ir)>>31;
51.422 + sh4r.t = sh4r.q ^ sh4r.m;
51.423 + break;
51.424 + case 8: /* TST Rm, Rn */
51.425 + sh4r.t = (RN(ir)&RM(ir) ? 0 : 1);
51.426 + break;
51.427 + case 9: /* AND Rm, Rn */
51.428 + RN(ir) &= RM(ir);
51.429 + break;
51.430 + case 10:/* XOR Rm, Rn */
51.431 + RN(ir) ^= RM(ir);
51.432 + break;
51.433 + case 11:/* OR Rm, Rn */
51.434 + RN(ir) |= RM(ir);
51.435 + break;
51.436 + case 12:/* CMP/STR Rm, Rn */
51.437 + /* set T = 1 if any byte in RM & RN is the same */
51.438 + tmp = RM(ir) ^ RN(ir);
51.439 + sh4r.t = ((tmp&0x000000FF)==0 || (tmp&0x0000FF00)==0 ||
51.440 + (tmp&0x00FF0000)==0 || (tmp&0xFF000000)==0)?1:0;
51.441 + break;
51.442 + case 13:/* XTRCT Rm, Rn */
51.443 + RN(ir) = (RN(ir)>>16) | (RM(ir)<<16);
51.444 + break;
51.445 + case 14:/* MULU.W Rm, Rn */
51.446 + sh4r.mac = (sh4r.mac&0xFFFFFFFF00000000) |
51.447 + (uint32_t)((RM(ir)&0xFFFF) * (RN(ir)&0xFFFF));
51.448 + break;
51.449 + case 15:/* MULS.W Rm, Rn */
51.450 + sh4r.mac = (sh4r.mac&0xFFFFFFFF00000000) |
51.451 + (uint32_t)(SIGNEXT32(RM(ir)&0xFFFF) * SIGNEXT32(RN(ir)&0xFFFF));
51.452 + break;
51.453 + }
51.454 + break;
51.455 + case 3: /* 0011nnnnmmmmxxxx */
51.456 + switch( ir&0x000F ) {
51.457 + case 0: /* CMP/EQ Rm, Rn */
51.458 + sh4r.t = ( RM(ir) == RN(ir) ? 1 : 0 );
51.459 + break;
51.460 + case 2: /* CMP/HS Rm, Rn */
51.461 + sh4r.t = ( RN(ir) >= RM(ir) ? 1 : 0 );
51.462 + break;
51.463 + case 3: /* CMP/GE Rm, Rn */
51.464 + sh4r.t = ( ((int32_t)RN(ir)) >= ((int32_t)RM(ir)) ? 1 : 0 );
51.465 + break;
51.466 + case 4: { /* DIV1 Rm, Rn */
51.467 + /* This is just from the sh4p manual with some
51.468 + * simplifications (someone want to check it's correct? :)
51.469 + * Why they couldn't just provide a real DIV instruction...
51.470 + * Please oh please let the translator batch these things
51.471 + * up into a single DIV... */
51.472 + uint32_t tmp0, tmp1, tmp2, dir;
51.473 +
51.474 + dir = sh4r.q ^ sh4r.m;
51.475 + sh4r.q = (RN(ir) >> 31);
51.476 + tmp2 = RM(ir);
51.477 + RN(ir) = (RN(ir) << 1) | sh4r.t;
51.478 + tmp0 = RN(ir);
51.479 + if( dir ) {
51.480 + RN(ir) += tmp2;
51.481 + tmp1 = (RN(ir)<tmp0 ? 1 : 0 );
51.482 + } else {
51.483 + RN(ir) -= tmp2;
51.484 + tmp1 = (RN(ir)>tmp0 ? 1 : 0 );
51.485 + }
51.486 + sh4r.q ^= sh4r.m ^ tmp1;
51.487 + sh4r.t = ( sh4r.q == sh4r.m ? 1 : 0 );
51.488 + break; }
51.489 + case 5: /* DMULU.L Rm, Rn */
51.490 + sh4r.mac = ((uint64_t)RM(ir)) * ((uint64_t)RN(ir));
51.491 + break;
51.492 + case 6: /* CMP/HI Rm, Rn */
51.493 + sh4r.t = ( RN(ir) > RM(ir) ? 1 : 0 );
51.494 + break;
51.495 + case 7: /* CMP/GT Rm, Rn */
51.496 + sh4r.t = ( ((int32_t)RN(ir)) > ((int32_t)RM(ir)) ? 1 : 0 );
51.497 + break;
51.498 + case 8: /* SUB Rm, Rn */
51.499 + RN(ir) -= RM(ir);
51.500 + break;
51.501 + case 10:/* SUBC Rm, Rn */
51.502 + tmp = RN(ir);
51.503 + RN(ir) = RN(ir) - RM(ir) - sh4r.t;
51.504 + sh4r.t = (RN(ir) > tmp || (RN(ir) == tmp && sh4r.t == 1));
51.505 + break;
51.506 + case 11:/* SUBV Rm, Rn */
51.507 + UNIMP(ir);
51.508 + break;
51.509 + case 12:/* ADD Rm, Rn */
51.510 + RN(ir) += RM(ir);
51.511 + break;
51.512 + case 13:/* DMULS.L Rm, Rn */
51.513 + sh4r.mac = SIGNEXT32(RM(ir)) * SIGNEXT32(RN(ir));
51.514 + break;
51.515 + case 14:/* ADDC Rm, Rn */
51.516 + tmp = RN(ir);
51.517 + RN(ir) += RM(ir) + sh4r.t;
51.518 + sh4r.t = ( RN(ir) < tmp || (RN(ir) == tmp && sh4r.t != 0) ? 1 : 0 );
51.519 + break;
51.520 + case 15:/* ADDV Rm, Rn */
51.521 + UNIMP(ir);
51.522 + break;
51.523 + default: UNDEF(ir);
51.524 + }
51.525 + break;
51.526 + case 4: /* 0100nnnnxxxxxxxx */
51.527 + switch( ir&0x00FF ) {
51.528 + case 0x00: /* SHLL Rn */
51.529 + sh4r.t = RN(ir) >> 31;
51.530 + RN(ir) <<= 1;
51.531 + break;
51.532 + case 0x01: /* SHLR Rn */
51.533 + sh4r.t = RN(ir) & 0x00000001;
51.534 + RN(ir) >>= 1;
51.535 + break;
51.536 + case 0x02: /* STS.L MACH, [--Rn] */
51.537 + RN(ir) -= 4;
51.538 + MEM_WRITE_LONG( RN(ir), (sh4r.mac>>32) );
51.539 + break;
51.540 + case 0x03: /* STC.L SR, [--Rn] */
51.541 + CHECKPRIV();
51.542 + RN(ir) -= 4;
51.543 + MEM_WRITE_LONG( RN(ir), sh4_read_sr() );
51.544 + break;
51.545 + case 0x04: /* ROTL Rn */
51.546 + sh4r.t = RN(ir) >> 31;
51.547 + RN(ir) <<= 1;
51.548 + RN(ir) |= sh4r.t;
51.549 + break;
51.550 + case 0x05: /* ROTR Rn */
51.551 + sh4r.t = RN(ir) & 0x00000001;
51.552 + RN(ir) >>= 1;
51.553 + RN(ir) |= (sh4r.t << 31);
51.554 + break;
51.555 + case 0x06: /* LDS.L [Rn++], MACH */
51.556 + sh4r.mac = (sh4r.mac & 0x00000000FFFFFFFF) |
51.557 + (((uint64_t)MEM_READ_LONG(RN(ir)))<<32);
51.558 + RN(ir) += 4;
51.559 + break;
51.560 + case 0x07: /* LDC.L [Rn++], SR */
51.561 + CHECKPRIV();
51.562 + sh4_load_sr( MEM_READ_LONG(RN(ir)) );
51.563 + RN(ir) +=4;
51.564 + break;
51.565 + case 0x08: /* SHLL2 Rn */
51.566 + RN(ir) <<= 2;
51.567 + break;
51.568 + case 0x09: /* SHLR2 Rn */
51.569 + RN(ir) >>= 2;
51.570 + break;
51.571 + case 0x0A: /* LDS Rn, MACH */
51.572 + sh4r.mac = (sh4r.mac & 0x00000000FFFFFFFF) |
51.573 + (((uint64_t)RN(ir))<<32);
51.574 + break;
51.575 + case 0x0B: /* JSR [Rn] */
51.576 + CHECKDEST( RN(ir) );
51.577 + sh4r.pc = sh4r.new_pc;
51.578 + sh4r.new_pc = RN(ir);
51.579 + sh4r.pr = pc + 4;
51.580 + return;
51.581 + case 0x0E: /* LDC Rn, SR */
51.582 + CHECKPRIV();
51.583 + sh4_load_sr( RN(ir) );
51.584 + break;
51.585 + case 0x10: /* DT Rn */
51.586 + RN(ir) --;
51.587 + sh4r.t = ( RN(ir) == 0 ? 1 : 0 );
51.588 + break;
51.589 + case 0x11: /* CMP/PZ Rn */
51.590 + sh4r.t = ( ((int32_t)RN(ir)) >= 0 ? 1 : 0 );
51.591 + break;
51.592 + case 0x12: /* STS.L MACL, [--Rn] */
51.593 + RN(ir) -= 4;
51.594 + MEM_WRITE_LONG( RN(ir), (uint32_t)sh4r.mac );
51.595 + break;
51.596 + case 0x13: /* STC.L GBR, [--Rn] */
51.597 + RN(ir) -= 4;
51.598 + MEM_WRITE_LONG( RN(ir), sh4r.gbr );
51.599 + break;
51.600 + case 0x15: /* CMP/PL Rn */
51.601 + sh4r.t = ( ((int32_t)RN(ir)) > 0 ? 1 : 0 );
51.602 + break;
51.603 + case 0x16: /* LDS.L [Rn++], MACL */
51.604 + sh4r.mac = (sh4r.mac & 0xFFFFFFFF00000000) |
51.605 + (uint64_t)((uint32_t)MEM_READ_LONG(RN(ir)));
51.606 + RN(ir) += 4;
51.607 + break;
51.608 + case 0x17: /* LDC.L [Rn++], GBR */
51.609 + sh4r.gbr = MEM_READ_LONG(RN(ir));
51.610 + RN(ir) +=4;
51.611 + break;
51.612 + case 0x18: /* SHLL8 Rn */
51.613 + RN(ir) <<= 8;
51.614 + break;
51.615 + case 0x19: /* SHLR8 Rn */
51.616 + RN(ir) >>= 8;
51.617 + break;
51.618 + case 0x1A: /* LDS Rn, MACL */
51.619 + sh4r.mac = (sh4r.mac & 0xFFFFFFFF00000000) |
51.620 + (uint64_t)((uint32_t)(RN(ir)));
51.621 + break;
51.622 + case 0x1B: /* TAS.B [Rn] */
51.623 + tmp = MEM_READ_BYTE( RN(ir) );
51.624 + sh4r.t = ( tmp == 0 ? 1 : 0 );
51.625 + MEM_WRITE_BYTE( RN(ir), tmp | 0x80 );
51.626 + break;
51.627 + case 0x1E: /* LDC Rn, GBR */
51.628 + sh4r.gbr = RN(ir);
51.629 + break;
51.630 + case 0x20: /* SHAL Rn */
51.631 + sh4r.t = RN(ir) >> 31;
51.632 + RN(ir) <<= 1;
51.633 + break;
51.634 + case 0x21: /* SHAR Rn */
51.635 + sh4r.t = RN(ir) & 0x00000001;
51.636 + RN(ir) = ((int32_t)RN(ir)) >> 1;
51.637 + break;
51.638 + case 0x22: /* STS.L PR, [--Rn] */
51.639 + RN(ir) -= 4;
51.640 + MEM_WRITE_LONG( RN(ir), sh4r.pr );
51.641 + break;
51.642 + case 0x23: /* STC.L VBR, [--Rn] */
51.643 + CHECKPRIV();
51.644 + RN(ir) -= 4;
51.645 + MEM_WRITE_LONG( RN(ir), sh4r.pr );
51.646 + break;
51.647 + case 0x24: /* ROTCL Rn */
51.648 + tmp = RN(ir) >> 31;
51.649 + RN(ir) <<= 1;
51.650 + RN(ir) |= sh4r.t;
51.651 + sh4r.t = tmp;
51.652 + break;
51.653 + case 0x25: /* ROTCR Rn */
51.654 + tmp = RN(ir) & 0x00000001;
51.655 + RN(ir) >>= 1;
51.656 + RN(ir) |= (sh4r.t << 31 );
51.657 + sh4r.t = tmp;
51.658 + break;
51.659 + case 0x26: /* LDS.L [Rn++], PR */
51.660 + sh4r.pr = MEM_READ_LONG( RN(ir) );
51.661 + RN(ir) += 4;
51.662 + break;
51.663 + case 0x27: /* LDC.L [Rn++], VBR */
51.664 + CHECKPRIV();
51.665 + sh4r.vbr = MEM_READ_LONG(RN(ir));
51.666 + RN(ir) +=4;
51.667 + break;
51.668 + case 0x28: /* SHLL16 Rn */
51.669 + RN(ir) <<= 16;
51.670 + break;
51.671 + case 0x29: /* SHLR16 Rn */
51.672 + RN(ir) >>= 16;
51.673 + break;
51.674 + case 0x2A: /* LDS Rn, PR */
51.675 + sh4r.pr = RN(ir);
51.676 + break;
51.677 + case 0x2B: /* JMP [Rn] */
51.678 + CHECKDEST( RN(ir) );
51.679 + sh4r.pc = sh4r.new_pc;
51.680 + sh4r.new_pc = RN(ir);
51.681 + return;
51.682 + case 0x2E: /* LDC Rn, VBR */
51.683 + CHECKPRIV();
51.684 + sh4r.vbr = RN(ir);
51.685 + break;
51.686 + case 0x32: /* STC.L SGR, [--Rn] */
51.687 + CHECKPRIV();
51.688 + RN(ir) -= 4;
51.689 + MEM_WRITE_LONG( RN(ir), sh4r.sgr );
51.690 + break;
51.691 + case 0x33: /* STC.L SSR, [--Rn] */
51.692 + CHECKPRIV();
51.693 + RN(ir) -= 4;
51.694 + MEM_WRITE_LONG( RN(ir), sh4r.ssr );
51.695 + break;
51.696 + case 0x37: /* LDC.L [Rn++], SSR */
51.697 + CHECKPRIV();
51.698 + sh4r.ssr = MEM_READ_LONG(RN(ir));
51.699 + RN(ir) +=4;
51.700 + break;
51.701 + case 0x3E: /* LDC Rn, SSR */
51.702 + CHECKPRIV();
51.703 + sh4r.ssr = RN(ir);
51.704 + break;
51.705 + case 0x43: /* STC.L SPC, [--Rn] */
51.706 + CHECKPRIV();
51.707 + RN(ir) -= 4;
51.708 + MEM_WRITE_LONG( RN(ir), sh4r.spc );
51.709 + break;
51.710 + case 0x47: /* LDC.L [Rn++], SPC */
51.711 + CHECKPRIV();
51.712 + sh4r.spc = MEM_READ_LONG(RN(ir));
51.713 + RN(ir) +=4;
51.714 + break;
51.715 + case 0x4E: /* LDC Rn, SPC */
51.716 + CHECKPRIV();
51.717 + sh4r.spc = RN(ir);
51.718 + break;
51.719 + case 0x52: /* STS.L FPUL, [--Rn] */
51.720 + RN(ir) -= 4;
51.721 + MEM_WRITE_LONG( RN(ir), sh4r.fpul );
51.722 + break;
51.723 + case 0x56: /* LDS.L [Rn++], FPUL */
51.724 + sh4r.fpul = MEM_READ_LONG(RN(ir));
51.725 + RN(ir) +=4;
51.726 + break;
51.727 + case 0x5A: /* LDS Rn, FPUL */
51.728 + sh4r.fpul = RN(ir);
51.729 + break;
51.730 + case 0x62: /* STS.L FPSCR, [--Rn] */
51.731 + RN(ir) -= 4;
51.732 + MEM_WRITE_LONG( RN(ir), sh4r.fpscr );
51.733 + break;
51.734 + case 0x66: /* LDS.L [Rn++], FPSCR */
51.735 + sh4r.fpscr = MEM_READ_LONG(RN(ir));
51.736 + RN(ir) +=4;
51.737 + break;
51.738 + case 0x6A: /* LDS Rn, FPSCR */
51.739 + sh4r.fpscr = RN(ir);
51.740 + break;
51.741 + case 0xF2: /* STC.L DBR, [--Rn] */
51.742 + CHECKPRIV();
51.743 + RN(ir) -= 4;
51.744 + MEM_WRITE_LONG( RN(ir), sh4r.dbr );
51.745 + break;
51.746 + case 0xF6: /* LDC.L [Rn++], DBR */
51.747 + CHECKPRIV();
51.748 + sh4r.dbr = MEM_READ_LONG(RN(ir));
51.749 + RN(ir) +=4;
51.750 + break;
51.751 + case 0xFA: /* LDC Rn, DBR */
51.752 + CHECKPRIV();
51.753 + sh4r.dbr = RN(ir);
51.754 + break;
51.755 + case 0x83: case 0x93: case 0xA3: case 0xB3: case 0xC3:
51.756 + case 0xD3: case 0xE3: case 0xF3: /* STC.L Rn_BANK, [--Rn] */
51.757 + CHECKPRIV();
51.758 + RN(ir) -= 4;
51.759 + MEM_WRITE_LONG( RN(ir), RN_BANK(ir) );
51.760 + break;
51.761 + case 0x87: case 0x97: case 0xA7: case 0xB7: case 0xC7:
51.762 + case 0xD7: case 0xE7: case 0xF7: /* LDC.L [Rn++], Rn_BANK */
51.763 + CHECKPRIV();
51.764 + RN_BANK(ir) = MEM_READ_LONG( RN(ir) );
51.765 + RN(ir) += 4;
51.766 + break;
51.767 + case 0x8E: case 0x9E: case 0xAE: case 0xBE: case 0xCE:
51.768 + case 0xDE: case 0xEE: case 0xFE: /* LDC Rm, Rn_BANK */
51.769 + CHECKPRIV();
51.770 + RN_BANK(ir) = RM(ir);
51.771 + break;
51.772 + default:
51.773 + if( (ir&0x000F) == 0x0F ) {
51.774 + /* MAC.W [Rm++], [Rn++] */
51.775 + tmp = SIGNEXT16(MEM_READ_WORD(RM(ir))) *
51.776 + SIGNEXT16(MEM_READ_WORD(RN(ir)));
51.777 + if( sh4r.s ) {
51.778 + /* FIXME */
51.779 + UNIMP(ir);
51.780 + } else sh4r.mac += SIGNEXT32(tmp);
51.781 + RM(ir) += 2;
51.782 + RN(ir) += 2;
51.783 + } else if( (ir&0x000F) == 0x0C ) {
51.784 + /* SHAD Rm, Rn */
51.785 + tmp = RM(ir);
51.786 + if( (tmp & 0x80000000) == 0 ) RN(ir) <<= (tmp&0x1f);
51.787 + else if( (tmp & 0x1F) == 0 ) ((int32_t)RN(ir)) >>=31;
51.788 + else ((int32_t)RN(ir)) >>= (((~RM(ir)) & 0x1F)+1);
51.789 + } else if( (ir&0x000F) == 0x0D ) {
51.790 + /* SHLD Rm, Rn */
51.791 + tmp = RM(ir);
51.792 + if( (tmp & 0x80000000) == 0 ) RN(ir) <<= (tmp&0x1f);
51.793 + else if( (tmp & 0x1F) == 0 ) RN(ir) = 0;
51.794 + else RN(ir) >>= (((~tmp) & 0x1F)+1);
51.795 + } else UNDEF(ir);
51.796 + }
51.797 + break;
51.798 + case 5: /* 0101nnnnmmmmdddd */
51.799 + /* MOV.L [Rm + disp4*4], Rn */
51.800 + RN(ir) = MEM_READ_LONG( RM(ir) + (DISP4(ir)<<2) );
51.801 + break;
51.802 + case 6: /* 0110xxxxxxxxxxxx */
51.803 + switch( ir&0x000f ) {
51.804 + case 0: /* MOV.B [Rm], Rn */
51.805 + RN(ir) = MEM_READ_BYTE( RM(ir) );
51.806 + break;
51.807 + case 1: /* MOV.W [Rm], Rn */
51.808 + RN(ir) = MEM_READ_WORD( RM(ir) );
51.809 + break;
51.810 + case 2: /* MOV.L [Rm], Rn */
51.811 + RN(ir) = MEM_READ_LONG( RM(ir) );
51.812 + break;
51.813 + case 3: /* MOV Rm, Rn */
51.814 + RN(ir) = RM(ir);
51.815 + break;
51.816 + case 4: /* MOV.B [Rm++], Rn */
51.817 + RN(ir) = MEM_READ_BYTE( RM(ir) );
51.818 + RM(ir) ++;
51.819 + break;
51.820 + case 5: /* MOV.W [Rm++], Rn */
51.821 + RN(ir) = MEM_READ_WORD( RM(ir) );
51.822 + RM(ir) += 2;
51.823 + break;
51.824 + case 6: /* MOV.L [Rm++], Rn */
51.825 + RN(ir) = MEM_READ_LONG( RM(ir) );
51.826 + RM(ir) += 4;
51.827 + break;
51.828 + case 7: /* NOT Rm, Rn */
51.829 + RN(ir) = ~RM(ir);
51.830 + break;
51.831 + case 8: /* SWAP.B Rm, Rn */
51.832 + RN(ir) = (RM(ir)&0xFFFF0000) | ((RM(ir)&0x0000FF00)>>8) |
51.833 + ((RM(ir)&0x000000FF)<<8);
51.834 + break;
51.835 + case 9: /* SWAP.W Rm, Rn */
51.836 + RN(ir) = (RM(ir)>>16) | (RM(ir)<<16);
51.837 + break;
51.838 + case 10:/* NEGC Rm, Rn */
51.839 + tmp = 0 - RM(ir);
51.840 + RN(ir) = tmp - sh4r.t;
51.841 + sh4r.t = ( 0<tmp || tmp<RN(ir) ? 1 : 0 );
51.842 + break;
51.843 + case 11:/* NEG Rm, Rn */
51.844 + RN(ir) = 0 - RM(ir);
51.845 + break;
51.846 + case 12:/* EXTU.B Rm, Rn */
51.847 + RN(ir) = RM(ir)&0x000000FF;
51.848 + break;
51.849 + case 13:/* EXTU.W Rm, Rn */
51.850 + RN(ir) = RM(ir)&0x0000FFFF;
51.851 + break;
51.852 + case 14:/* EXTS.B Rm, Rn */
51.853 + RN(ir) = SIGNEXT8( RM(ir)&0x000000FF );
51.854 + break;
51.855 + case 15:/* EXTS.W Rm, Rn */
51.856 + RN(ir) = SIGNEXT16( RM(ir)&0x0000FFFF );
51.857 + break;
51.858 + }
51.859 + break;
51.860 + case 7: /* 0111nnnniiiiiiii */
51.861 + /* ADD imm8, Rn */
51.862 + RN(ir) += IMM8(ir);
51.863 + break;
51.864 + case 8: /* 1000xxxxxxxxxxxx */
51.865 + switch( (ir&0x0F00) >> 8 ) {
51.866 + case 0: /* MOV.B R0, [Rm + disp4] */
51.867 + MEM_WRITE_BYTE( RM(ir) + DISP4(ir), R0 );
51.868 + break;
51.869 + case 1: /* MOV.W R0, [Rm + disp4*2] */
51.870 + MEM_WRITE_WORD( RM(ir) + (DISP4(ir)<<1), R0 );
51.871 + break;
51.872 + case 4: /* MOV.B [Rm + disp4], R0 */
51.873 + R0 = MEM_READ_BYTE( RM(ir) + DISP4(ir) );
51.874 + break;
51.875 + case 5: /* MOV.W [Rm + disp4*2], R0 */
51.876 + R0 = MEM_READ_WORD( RM(ir) + (DISP4(ir)<<1) );
51.877 + break;
51.878 + case 8: /* CMP/EQ imm, R0 */
51.879 + sh4r.t = ( R0 == IMM8(ir) ? 1 : 0 );
51.880 + break;
51.881 + case 9: /* BT disp8 */
51.882 + if( sh4r.t ) {
51.883 + CHECKDEST( sh4r.pc + (PCDISP8(ir)<<1) + 4 )
51.884 + sh4r.pc += (PCDISP8(ir)<<1) + 4;
51.885 + sh4r.new_pc = sh4r.pc + 2;
51.886 + return;
51.887 + }
51.888 + break;
51.889 + case 11:/* BF disp8 */
51.890 + if( !sh4r.t ) {
51.891 + CHECKDEST( sh4r.pc + (PCDISP8(ir)<<1) + 4 )
51.892 + sh4r.pc += (PCDISP8(ir)<<1) + 4;
51.893 + sh4r.new_pc = sh4r.pc + 2;
51.894 + return;
51.895 + }
51.896 + break;
51.897 + case 13:/* BT/S disp8 */
51.898 + if( sh4r.t ) {
51.899 + CHECKDEST( sh4r.pc + (PCDISP8(ir)<<1) + 4 )
51.900 + sh4r.pc = sh4r.new_pc;
51.901 + sh4r.new_pc = pc + (PCDISP8(ir)<<1) + 4;
51.902 + return;
51.903 + }
51.904 + break;
51.905 + case 15:/* BF/S disp8 */
51.906 + if( !sh4r.t ) {
51.907 + CHECKDEST( sh4r.pc + (PCDISP8(ir)<<1) + 4 )
51.908 + sh4r.pc = sh4r.new_pc;
51.909 + sh4r.new_pc = pc + (PCDISP8(ir)<<1) + 4;
51.910 + return;
51.911 + }
51.912 + break;
51.913 + default: UNDEF(ir);
51.914 + }
51.915 + break;
51.916 + case 9: /* 1001xxxxxxxxxxxx */
51.917 + /* MOV.W [disp8*2 + pc + 4], Rn */
51.918 + RN(ir) = MEM_READ_WORD( pc + 4 + (DISP8(ir)<<1) );
51.919 + break;
51.920 + case 10:/* 1010dddddddddddd */
51.921 + /* BRA disp12 */
51.922 + CHECKDEST( sh4r.pc + (DISP12(ir)<<1) + 4 );
51.923 + sh4r.pc = sh4r.new_pc;
51.924 + sh4r.new_pc = pc + 4 + (DISP12(ir)<<1);
51.925 + return;
51.926 + case 11:/* 1011dddddddddddd */
51.927 + /* BSR disp12 */
51.928 + CHECKDEST( sh4r.pc + (DISP12(ir)<<1) + 4 )
51.929 + sh4r.pr = pc + 4;
51.930 + sh4r.pc = sh4r.new_pc;
51.931 + sh4r.new_pc = pc + 4 + (DISP12(ir)<<1);
51.932 + return;
51.933 + case 12:/* 1100xxxxdddddddd */
51.934 + switch( (ir&0x0F00)>>8 ) {
51.935 + case 0: /* MOV.B R0, [GBR + disp8] */
51.936 + MEM_WRITE_BYTE( sh4r.gbr + DISP8(ir), R0 );
51.937 + break;
51.938 + case 1: /* MOV.W R0, [GBR + disp8*2] */
51.939 + MEM_WRITE_WORD( sh4r.gbr + (DISP8(ir)<<1), R0 );
51.940 + break;
51.941 + case 2: /*MOV.L R0, [GBR + disp8*4] */
51.942 + MEM_WRITE_LONG( sh4r.gbr + (DISP8(ir)<<2), R0 );
51.943 + break;
51.944 + case 3: /* TRAPA imm8 */
51.945 + MMIO_WRITE( MMU, TRA, UIMM8(ir) );
51.946 + sh4r.pc = sh4r.new_pc; /* RAISE ends the instruction */
51.947 + sh4r.new_pc += 2;
51.948 + RAISE( EXC_TRAP, EXV_TRAP );
51.949 + break;
51.950 + case 4: /* MOV.B [GBR + disp8], R0 */
51.951 + R0 = MEM_READ_BYTE( sh4r.gbr + DISP8(ir) );
51.952 + break;
51.953 + case 5: /* MOV.W [GBR + disp8*2], R0 */
51.954 + R0 = MEM_READ_WORD( sh4r.gbr + (DISP8(ir)<<1) );
51.955 + break;
51.956 + case 6: /* MOV.L [GBR + disp8*4], R0 */
51.957 + R0 = MEM_READ_LONG( sh4r.gbr + (DISP8(ir)<<2) );
51.958 + break;
51.959 + case 7: /* MOVA disp8 + pc&~3 + 4, R0 */
51.960 + R0 = (pc&0xFFFFFFFC) + (DISP8(ir)<<2) + 4;
51.961 + break;
51.962 + case 8: /* TST imm8, R0 */
51.963 + sh4r.t = (R0 & UIMM8(ir) ? 0 : 1);
51.964 + break;
51.965 + case 9: /* AND imm8, R0 */
51.966 + R0 &= UIMM8(ir);
51.967 + break;
51.968 + case 10:/* XOR imm8, R0 */
51.969 + R0 ^= UIMM8(ir);
51.970 + break;
51.971 + case 11:/* OR imm8, R0 */
51.972 + R0 |= UIMM8(ir);
51.973 + break;
51.974 + case 12:/* TST.B imm8, [R0+GBR] */
51.975 + sh4r.t = ( MEM_READ_BYTE(R0 + sh4r.gbr) & UIMM8(ir) ? 0 : 1 );
51.976 + break;
51.977 + case 13:/* AND.B imm8, [R0+GBR] */
51.978 + MEM_WRITE_BYTE( R0 + sh4r.gbr,
51.979 + UIMM8(ir) & MEM_READ_BYTE(R0 + sh4r.gbr) );
51.980 + break;
51.981 + case 14:/* XOR.B imm8, [R0+GBR] */
51.982 + MEM_WRITE_BYTE( R0 + sh4r.gbr,
51.983 + UIMM8(ir) ^ MEM_READ_BYTE(R0 + sh4r.gbr) );
51.984 + break;
51.985 + case 15:/* OR.B imm8, [R0+GBR] */
51.986 + MEM_WRITE_BYTE( R0 + sh4r.gbr,
51.987 + UIMM8(ir) | MEM_READ_BYTE(R0 + sh4r.gbr) );
51.988 + break;
51.989 + }
51.990 + break;
51.991 + case 13:/* 1101nnnndddddddd */
51.992 + /* MOV.L [disp8*4 + pc&~3 + 4], Rn */
51.993 + RN(ir) = MEM_READ_LONG( (pc&0xFFFFFFFC) + (DISP8(ir)<<2) + 4 );
51.994 + break;
51.995 + case 14:/* 1110nnnniiiiiiii */
51.996 + /* MOV imm8, Rn */
51.997 + RN(ir) = IMM8(ir);
51.998 + break;
51.999 + case 15:/* 1111xxxxxxxxxxxx */
51.1000 + CHECKFPUEN();
51.1001 + switch( ir&0x000F ) {
51.1002 + case 0: /* FADD FRm, FRn */
51.1003 + FRN(ir) += FRM(ir);
51.1004 + break;
51.1005 + case 1: /* FSUB FRm, FRn */
51.1006 + FRN(ir) -= FRM(ir);
51.1007 + break;
51.1008 + case 2: /* FMUL FRm, FRn */
51.1009 + FRN(ir) = FRN(ir) * FRM(ir);
51.1010 + break;
51.1011 + case 3: /* FDIV FRm, FRn */
51.1012 + FRN(ir) = FRN(ir) / FRM(ir);
51.1013 + break;
51.1014 + case 4: /* FCMP/EQ FRm, FRn */
51.1015 + sh4r.t = ( FRN(ir) == FRM(ir) ? 1 : 0 );
51.1016 + break;
51.1017 + case 5: /* FCMP/GT FRm, FRn */
51.1018 + sh4r.t = ( FRN(ir) > FRM(ir) ? 1 : 0 );
51.1019 + break;
51.1020 + case 6: /* FMOV.S [Rm+R0], FRn */
51.1021 + MEM_FP_READ( RM(ir) + R0, FRNn(ir) );
51.1022 + break;
51.1023 + case 7: /* FMOV.S FRm, [Rn+R0] */
51.1024 + MEM_FP_WRITE( RN(ir) + R0, FRMn(ir) );
51.1025 + break;
51.1026 + case 8: /* FMOV.S [Rm], FRn */
51.1027 + MEM_FP_READ( RM(ir), FRNn(ir) );
51.1028 + break;
51.1029 + case 9: /* FMOV.S [Rm++], FRn */
51.1030 + MEM_FP_READ( RM(ir), FRNn(ir) );
51.1031 + RM(ir) += FP_WIDTH;
51.1032 + break;
51.1033 + case 10:/* FMOV.S FRm, [Rn] */
51.1034 + MEM_FP_WRITE( RN(ir), FRMn(ir) );
51.1035 + break;
51.1036 + case 11:/* FMOV.S FRm, [--Rn] */
51.1037 + RN(ir) -= FP_WIDTH;
51.1038 + MEM_FP_WRITE( RN(ir), FRMn(ir) );
51.1039 + break;
51.1040 + case 12:/* FMOV FRm, FRn */
51.1041 + if( IS_FPU_DOUBLESIZE() ) {
51.1042 + DRN(ir) = DRM(ir);
51.1043 + } else {
51.1044 + FRN(ir) = FRM(ir);
51.1045 + }
51.1046 + break;
51.1047 + case 13:
51.1048 + switch( (ir&0x00F0) >> 4 ) {
51.1049 + case 0: /* FSTS FPUL, FRn */
51.1050 + FRN(ir) = FPULf;
51.1051 + break;
51.1052 + case 1: /* FLDS FRn, FPUL */
51.1053 + FPULf = FRN(ir);
51.1054 + break;
51.1055 + case 2: /* FLOAT FPUL, FRn */
51.1056 + FRN(ir) = (float)FPULi;
51.1057 + break;
51.1058 + case 3: /* FTRC FRn, FPUL */
51.1059 + FPULi = (uint32_t)FRN(ir);
51.1060 + /* FIXME: is this sufficient? */
51.1061 + break;
51.1062 + case 4: /* FNEG FRn */
51.1063 + FRN(ir) = -FRN(ir);
51.1064 + break;
51.1065 + case 5: /* FABS FRn */
51.1066 + FRN(ir) = fabsf(FRN(ir));
51.1067 + break;
51.1068 + case 6: /* FSQRT FRn */
51.1069 + FRN(ir) = sqrtf(FRN(ir));
51.1070 + break;
51.1071 + case 8: /* FLDI0 FRn */
51.1072 + FRN(ir) = 0.0;
51.1073 + break;
51.1074 + case 9: /* FLDI1 FRn */
51.1075 + FRN(ir) = 1.0;
51.1076 + break;
51.1077 + case 10: /* FCNVSD FPUL, DRn */
51.1078 + if( IS_FPU_DOUBLEPREC() )
51.1079 + DRN(ir) = (double)FPULf;
51.1080 + else UNDEF(ir);
51.1081 + break;
51.1082 + case 11: /* FCNVDS DRn, FPUL */
51.1083 + if( IS_FPU_DOUBLEPREC() )
51.1084 + FPULf = (float)DRN(ir);
51.1085 + else UNDEF(ir);
51.1086 + break;
51.1087 + case 14:/* FIPR FVn, FVn */
51.1088 + UNIMP(ir);
51.1089 + break;
51.1090 + case 15:
51.1091 + if( FVM(ir) == 1 )
51.1092 + /* FTRV XMTRX,FVn */
51.1093 + UNIMP(ir);
51.1094 + else if( ir == 0xFBFD )
51.1095 + /* FRCHG */
51.1096 + sh4r.fpscr ^= FPSCR_FR;
51.1097 + else if( ir == 0xF3FD )
51.1098 + sh4r.fpscr ^= FPSCR_SZ;
51.1099 + /* FSCHG */
51.1100 + break;
51.1101 + default: UNDEF(ir);
51.1102 + }
51.1103 + break;
51.1104 + case 14:/* FMAC FR0, FRm, FRn */
51.1105 + FRN(ir) += FRM(ir)*FR0;
51.1106 + break;
51.1107 + default: UNDEF(ir);
51.1108 + }
51.1109 + break;
51.1110 + }
51.1111 + sh4r.pc = sh4r.new_pc;
51.1112 + sh4r.new_pc += 2;
51.1113 +}
52.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
52.2 +++ b/src/sh4/sh4core.h Sat Mar 13 00:03:32 2004 +0000
52.3 @@ -0,0 +1,108 @@
52.4 +/*
52.5 + * Header for the basic sh4 emulator core
52.6 + */
52.7 +#ifndef sh4core_H
52.8 +#define sh4core_H 1
52.9 +
52.10 +#include <stdint.h>
52.11 +
52.12 +#ifdef __cplusplus
52.13 +extern "C" {
52.14 +#if 0
52.15 +}
52.16 +#endif
52.17 +#endif
52.18 +
52.19 +struct sh4_registers {
52.20 + uint32_t r[16];
52.21 + uint32_t r_bank[8]; /* hidden banked registers */
52.22 + uint32_t sr, gbr, ssr, spc, sgr, dbr, vbr;
52.23 + uint32_t pr, pc, fpul, fpscr;
52.24 + uint64_t mac;
52.25 + uint32_t m, q, s, t; /* really boolean - 0 or 1 */
52.26 + float fr[2][16];
52.27 +
52.28 + uint32_t new_pc; /* Not a real register, but used to handle delay slots */
52.29 + uint32_t icount; /* Also not a real register, instruction counter */
52.30 + uint32_t int_pending; /* flag set by the INTC = pending priority level */
52.31 +};
52.32 +
52.33 +extern struct sh4_registers sh4r;
52.34 +
52.35 +/* Public functions */
52.36 +
52.37 +void sh4_init( void );
52.38 +void sh4_reset( void );
52.39 +void sh4_run( void );
52.40 +void sh4_runto( uint32_t pc, uint32_t count );
52.41 +void sh4_runfor( uint32_t count );
52.42 +int sh4_isrunning( void );
52.43 +void sh4_stop( void );
52.44 +void sh4_set_pc( int );
52.45 +void sh4_execute_instruction( void );
52.46 +void sh4_raise_exception( int, int );
52.47 +
52.48 +void run_timers( int );
52.49 +
52.50 +#define SIGNEXT4(n) ((((int32_t)(n))<<28)>>28)
52.51 +#define SIGNEXT8(n) ((int32_t)((int8_t)(n)))
52.52 +#define SIGNEXT12(n) ((((int32_t)(n))<<20)>>20)
52.53 +#define SIGNEXT16(n) ((int32_t)((int16_t)(n)))
52.54 +#define SIGNEXT32(n) ((int64_t)((int32_t)(n)))
52.55 +#define SIGNEXT48(n) ((((int64_t)(n))<<16)>>16)
52.56 +
52.57 +/* Status Register (SR) bits */
52.58 +#define SR_MD 0x40000000 /* Processor mode ( User=0, Privileged=1 ) */
52.59 +#define SR_RB 0x20000000 /* Register bank (priviledged mode only) */
52.60 +#define SR_BL 0x10000000 /* Exception/interupt block (1 = masked) */
52.61 +#define SR_FD 0x00008000 /* FPU disable */
52.62 +#define SR_M 0x00000200
52.63 +#define SR_Q 0x00000100
52.64 +#define SR_IMASK 0x000000F0 /* Interrupt mask level */
52.65 +#define SR_S 0x00000002 /* Saturation operation for MAC instructions */
52.66 +#define SR_T 0x00000001 /* True/false or carry/borrow */
52.67 +#define SR_MASK 0x700083F3
52.68 +#define SR_MQSTMASK 0xFFFFFCFC /* Mask to clear the flags we're keeping separately */
52.69 +
52.70 +#define IS_SH4_PRIVMODE() (sh4r.sr&SR_MD)
52.71 +#define SH4_INTMASK() ((sh4r.sr&SR_IMASK)>>4)
52.72 +#define SH4_INT_PENDING() (sh4r.int_pending)
52.73 +
52.74 +#define FPSCR_FR 0x00200000 /* FPU register bank */
52.75 +#define FPSCR_SZ 0x00100000 /* FPU transfer size (0=32 bits, 1=64 bits) */
52.76 +#define FPSCR_PR 0x00080000 /* Precision (0=32 bites, 1=64 bits) */
52.77 +#define FPSCR_DN 0x00040000 /* Denormalization mode (1 = treat as 0) */
52.78 +#define FPSCR_CAUSE 0x0003F000
52.79 +#define FPSCR_ENABLE 0x00000F80
52.80 +#define FPSCR_FLAG 0x0000007C
52.81 +#define FPSCR_RM 0x00000003 /* Rounding mode (0=nearest, 1=to zero) */
52.82 +
52.83 +#define IS_FPU_DOUBLEPREC() (sh4r.fpscr&FPSCR_PR)
52.84 +#define IS_FPU_DOUBLESIZE() (sh4r.fpscr&FPSCR_SZ)
52.85 +#define IS_FPU_ENABLED() ((sh4r.sr&SR_FD)==0)
52.86 +
52.87 +#define FR sh4r.fr[(sh4r.fpscr&FPSCR_FR)>>21]
52.88 +
52.89 +/* Exceptions (for use with sh4_raise_exception) */
52.90 +
52.91 +#define EX_ILLEGAL_INSTRUCTION 0x180, 0x100
52.92 +#define EX_SLOT_ILLEGAL 0x1A0, 0x100
52.93 +#define EX_TLB_MISS_READ 0x040, 0x400
52.94 +#define EX_TLB_MISS_WRITE 0x060, 0x400
52.95 +#define EX_INIT_PAGE_WRITE 0x080, 0x100
52.96 +#define EX_TLB_PROT_READ 0x0A0, 0x100
52.97 +#define EX_TLB_PROT_WRITE 0x0C0, 0x100
52.98 +#define EX_DATA_ADDR_READ 0x0E0, 0x100
52.99 +#define EX_DATA_ADDR_WRITE 0x100, 0x100
52.100 +#define EX_FPU_EXCEPTION 0x120, 0x100
52.101 +#define EX_TRAPA 0x160, 0x100
52.102 +#define EX_BREAKPOINT 0x1E0, 0x100
52.103 +#define EX_FPU_DISABLED 0x800, 0x100
52.104 +#define EX_SLOT_FPU_DISABLED 0x820, 0x100
52.105 +
52.106 +
52.107 +
52.108 +#ifdef __cplusplus
52.109 +}
52.110 +#endif
52.111 +#endif
53.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
53.2 +++ b/src/sh4/sh4dasm.c Sat Mar 13 00:03:32 2004 +0000
53.3 @@ -0,0 +1,345 @@
53.4 +#include "sh4core.h"
53.5 +#include "sh4dasm.h"
53.6 +#include "mem.h"
53.7 +
53.8 +#define UNIMP(ir) snprintf( buf, len, "??? " )
53.9 +
53.10 +int sh4_disasm_instruction( int pc, char *buf, int len )
53.11 +{
53.12 + uint16_t ir = mem_read_word(pc);
53.13 +
53.14 +#define RN(ir) ((ir&0x0F00)>>8)
53.15 +#define RN_BANK(ir) ((ir&0x0070)>>4)
53.16 +#define RM(ir) ((ir&0x00F0)>>4)
53.17 +#define DISP4(ir) (ir&0x000F) /* 4-bit displacements are *not* sign extended */
53.18 +#define DISP8(ir) (ir&0x00FF)
53.19 +#define PCDISP8(ir) SIGNEXT8(ir&0x00FF)
53.20 +#define UIMM8(ir) (ir&0x00FF)
53.21 +#define IMM8(ir) SIGNEXT8(ir&0x00FF)
53.22 +#define DISP12(ir) SIGNEXT12(ir&0x0FFF)
53.23 +#define FVN(ir) ((ir&0x0C00)>>10)
53.24 +#define FVM(ir) ((ir&0x0300)>>8)
53.25 +
53.26 + switch( (ir&0xF000)>>12 ) {
53.27 + case 0: /* 0000nnnnmmmmxxxx */
53.28 + switch( ir&0x000F ) {
53.29 + case 2:
53.30 + switch( (ir&0x00F0)>>4 ) {
53.31 + case 0: snprintf( buf, len, "STC SR, R%d", RN(ir) ); break;
53.32 + case 1: snprintf( buf, len, "STC GBR, R%d", RN(ir) ); break;
53.33 + case 2: snprintf( buf, len, "STC VBR, R%d", RN(ir) ); break;
53.34 + case 3: snprintf( buf, len, "STC SSR, R%d", RN(ir) ); break;
53.35 + case 4: snprintf( buf, len, "STC SPC, R%d", RN(ir) ); break;
53.36 + case 8: case 9: case 10: case 11: case 12: case 13: case 14:
53.37 + case 15:snprintf( buf, len, "STC R%d_bank, R%d", RN_BANK(ir), RN(ir) ); break;
53.38 + default: UNIMP(ir);
53.39 + }
53.40 + break;
53.41 + case 3:
53.42 + switch( (ir&0x00F0)>>4 ) {
53.43 + case 0: snprintf( buf, len, "BSRF R%d", RN(ir) ); break;
53.44 + case 2: snprintf( buf, len, "BRAF R%d", RN(ir) ); break;
53.45 + case 8: snprintf( buf, len, "PREF [R%d]", RN(ir) ); break;
53.46 + case 9: snprintf( buf, len, "OCBI [R%d]", RN(ir) ); break;
53.47 + case 10:snprintf( buf, len, "OCBP [R%d]", RN(ir) ); break;
53.48 + case 11:snprintf( buf, len, "OCBWB [R%d]", RN(ir) ); break;
53.49 + case 12:snprintf( buf, len, "MOVCA.L R0, [R%d]", RN(ir) ); break;
53.50 + default: UNIMP(ir);
53.51 + }
53.52 + break;
53.53 + case 4: snprintf( buf, len, "MOV.B R%d, [R0+R%d]", RM(ir), RN(ir) ); break;
53.54 + case 5: snprintf( buf, len, "MOV.W R%d, [R0+R%d]", RM(ir), RN(ir) ); break;
53.55 + case 6: snprintf( buf, len, "MOV.L R%d, [R0+R%d]", RM(ir), RN(ir) ); break;
53.56 + case 7: snprintf( buf, len, "MUL.L R%d, R%d", RM(ir), RN(ir) ); break;
53.57 + case 8:
53.58 + switch( (ir&0x0FF0)>>4 ) {
53.59 + case 0: snprintf( buf, len, "CLRT " ); break;
53.60 + case 1: snprintf( buf, len, "SETT " ); break;
53.61 + case 2: snprintf( buf, len, "CLRMAC " ); break;
53.62 + case 3: snprintf( buf, len, "LDTLB " ); break;
53.63 + case 4: snprintf( buf, len, "CLRS " ); break;
53.64 + case 5: snprintf( buf, len, "SETS " ); break;
53.65 + default: UNIMP(ir);
53.66 + }
53.67 + break;
53.68 + case 9:
53.69 + if( (ir&0x00F0) == 0x20 )
53.70 + snprintf( buf, len, "MOVT R%d", RN(ir) );
53.71 + else if( ir == 0x0019 )
53.72 + snprintf( buf, len, "DIV0U " );
53.73 + else if( ir == 0x0009 )
53.74 + snprintf( buf, len, "NOP " );
53.75 + else UNIMP(ir);
53.76 + break;
53.77 + case 10:
53.78 + switch( (ir&0x00F0) >> 4 ) {
53.79 + case 0: snprintf( buf, len, "STS MACH, R%d", RN(ir) ); break;
53.80 + case 1: snprintf( buf, len, "STS MACL, R%d", RN(ir) ); break;
53.81 + case 2: snprintf( buf, len, "STS PR, R%d", RN(ir) ); break;
53.82 + case 3: snprintf( buf, len, "STC SGR, R%d", RN(ir) ); break;
53.83 + case 5: snprintf( buf, len, "STS FPUL, R%d", RN(ir) ); break;
53.84 + case 6: snprintf( buf, len, "STS FPSCR, R%d", RN(ir) ); break;
53.85 + case 15:snprintf( buf, len, "STC DBR, R%d", RN(ir) ); break;
53.86 + default: UNIMP(ir);
53.87 + }
53.88 + break;
53.89 + case 11:
53.90 + switch( (ir&0x0FF0)>>4 ) {
53.91 + case 0: snprintf( buf, len, "RTS " ); break;
53.92 + case 1: snprintf( buf, len, "SLEEP " ); break;
53.93 + case 2: snprintf( buf, len, "RTE " ); break;
53.94 + default:UNIMP(ir);
53.95 + }
53.96 + break;
53.97 + case 12:snprintf( buf, len, "MOV.B [R0+R%d], R%d", RM(ir), RN(ir) ); break;
53.98 + case 13:snprintf( buf, len, "MOV.W [R0+R%d], R%d", RM(ir), RN(ir) ); break;
53.99 + case 14:snprintf( buf, len, "MOV.L [R0+R%d], R%d", RM(ir), RN(ir) ); break;
53.100 + case 15:snprintf( buf, len, "MAC.L [R%d++], [R%d++]", RM(ir), RN(ir) ); break;
53.101 + default: UNIMP(ir);
53.102 + }
53.103 + break;
53.104 + case 1: /* 0001nnnnmmmmdddd */
53.105 + snprintf( buf, len, "MOV.L R%d, [R%d%+d]", RM(ir), RN(ir), DISP4(ir)<<2 ); break;
53.106 + case 2: /* 0010nnnnmmmmxxxx */
53.107 + switch( ir&0x000F ) {
53.108 + case 0: snprintf( buf, len, "MOV.B R%d, [R%d]", RM(ir), RN(ir) ); break;
53.109 + case 1: snprintf( buf, len, "MOV.W R%d, [R%d]", RM(ir), RN(ir) ); break;
53.110 + case 2: snprintf( buf, len, "MOV.L R%d, [R%d]", RM(ir), RN(ir) ); break;
53.111 + case 3: UNIMP(ir); break;
53.112 + case 4: snprintf( buf, len, "MOV.B R%d, [--R%d]", RM(ir), RN(ir) ); break;
53.113 + case 5: snprintf( buf, len, "MOV.W R%d, [--R%d]", RM(ir), RN(ir) ); break;
53.114 + case 6: snprintf( buf, len, "MOV.L R%d, [--R%d]", RM(ir), RN(ir) ); break;
53.115 + case 7: snprintf( buf, len, "DIV0S R%d, R%d", RM(ir), RN(ir) ); break;
53.116 + case 8: snprintf( buf, len, "TST R%d, R%d", RM(ir), RN(ir) ); break;
53.117 + case 9: snprintf( buf, len, "AND R%d, R%d", RM(ir), RN(ir) ); break;
53.118 + case 10:snprintf( buf, len, "XOR R%d, R%d", RM(ir), RN(ir) ); break;
53.119 + case 11:snprintf( buf, len, "OR R%d, R%d", RM(ir), RN(ir) ); break;
53.120 + case 12:snprintf( buf, len, "CMP/STR R%d, R%d", RM(ir), RN(ir) ); break;
53.121 + case 13:snprintf( buf, len, "XTRCT R%d, R%d", RM(ir), RN(ir) ); break;
53.122 + case 14:snprintf( buf, len, "MULU.W R%d, R%d", RM(ir), RN(ir) ); break;
53.123 + case 15:snprintf( buf, len, "MULS.W R%d, R%d", RM(ir), RN(ir) ); break;
53.124 + }
53.125 + break;
53.126 + case 3: /* 0011nnnnmmmmxxxx */
53.127 + switch( ir&0x000F ) {
53.128 + case 0: snprintf( buf, len, "CMP/EQ R%d, R%d", RM(ir), RN(ir) ); break;
53.129 + case 2: snprintf( buf, len, "CMP/HS R%d, R%d", RM(ir), RN(ir) ); break;
53.130 + case 3: snprintf( buf, len, "CMP/GE R%d, R%d", RM(ir), RN(ir) ); break;
53.131 + case 4: snprintf( buf, len, "DIV1 R%d, R%d", RM(ir), RN(ir) ); break;
53.132 + case 5: snprintf( buf, len, "DMULU.L R%d, R%d", RM(ir), RN(ir) ); break;
53.133 + case 6: snprintf( buf, len, "CMP/HI R%d, R%d", RM(ir), RN(ir) ); break;
53.134 + case 7: snprintf( buf, len, "CMP/GT R%d, R%d", RM(ir), RN(ir) ); break;
53.135 + case 8: snprintf( buf, len, "SUB R%d, R%d", RM(ir), RN(ir) ); break;
53.136 + case 10:snprintf( buf, len, "SUBC R%d, R%d", RM(ir), RN(ir) ); break;
53.137 + case 11:snprintf( buf, len, "SUBV R%d, R%d", RM(ir), RN(ir) ); break;
53.138 + case 12:snprintf( buf, len, "ADD R%d, R%d", RM(ir), RN(ir) ); break;
53.139 + case 13:snprintf( buf, len, "DMULS.L R%d, R%d", RM(ir), RN(ir) ); break;
53.140 + case 14:snprintf( buf, len, "ADDC R%d, R%d", RM(ir), RN(ir) ); break;
53.141 + case 15:snprintf( buf, len, "ADDV R%d, R%d", RM(ir), RN(ir) ); break;
53.142 + default: UNIMP(ir);
53.143 + }
53.144 + break;
53.145 + case 4: /* 0100nnnnxxxxxxxx */
53.146 + switch( ir&0x00FF ) {
53.147 + case 0x00: snprintf( buf, len, "SHLL R%d", RN(ir) ); break;
53.148 + case 0x01: snprintf( buf, len, "SHLR R%d", RN(ir) ); break;
53.149 + case 0x02: snprintf( buf, len, "STS.L MACH, [--R%d]", RN(ir) ); break;
53.150 + case 0x03: snprintf( buf, len, "STC.L SR, [--R%d]", RN(ir) ); break;
53.151 + case 0x04: snprintf( buf, len, "ROTL R%d", RN(ir) ); break;
53.152 + case 0x05: snprintf( buf, len, "ROTR R%d", RN(ir) ); break;
53.153 + case 0x06: snprintf( buf, len, "LDS.L [R%d++], MACH", RN(ir) ); break;
53.154 + case 0x07: snprintf( buf, len, "LDC.L [R%d++], SR", RN(ir) ); break;
53.155 + case 0x08: snprintf( buf, len, "SHLL2 R%d", RN(ir) ); break;
53.156 + case 0x09: snprintf( buf, len, "SHLR2 R%d", RN(ir) ); break;
53.157 + case 0x0A: snprintf( buf, len, "LDS R%d, MACH", RN(ir) ); break;
53.158 + case 0x0B: snprintf( buf, len, "JSR [R%d]", RN(ir) ); break;
53.159 + case 0x0E: snprintf( buf, len, "LDC R%d, SR", RN(ir) ); break;
53.160 + case 0x10: snprintf( buf, len, "DT R%d", RN(ir) ); break;
53.161 + case 0x11: snprintf( buf, len, "CMP/PZ R%d", RN(ir) ); break;
53.162 + case 0x12: snprintf( buf, len, "STS.L MACL, [--R%d]", RN(ir) ); break;
53.163 + case 0x13: snprintf( buf, len, "STC.L GBR, [--R%d]", RN(ir) ); break;
53.164 + case 0x15: snprintf( buf, len, "CMP/PL R%d", RN(ir) ); break;
53.165 + case 0x16: snprintf( buf, len, "LDS.L [R%d++], MACL", RN(ir) ); break;
53.166 + case 0x17: snprintf( buf, len, "LDC.L [R%d++], GBR", RN(ir) ); break;
53.167 + case 0x18: snprintf( buf, len, "SHLL8 R%d", RN(ir) ); break;
53.168 + case 0x19: snprintf( buf, len, "SHLR8 R%d", RN(ir) ); break;
53.169 + case 0x1A: snprintf( buf, len, "LDS R%d, MACL", RN(ir) ); break;
53.170 + case 0x1B: snprintf( buf, len, "TAS.B [R%d]", RN(ir) ); break;
53.171 + case 0x1E: snprintf( buf, len, "LDC R%d, GBR", RN(ir) ); break;
53.172 + case 0x20: snprintf( buf, len, "SHAL R%d", RN(ir) ); break;
53.173 + case 0x21: snprintf( buf, len, "SHAR R%d", RN(ir) ); break;
53.174 + case 0x22: snprintf( buf, len, "STS.L PR, [--R%d]", RN(ir) ); break;
53.175 + case 0x23: snprintf( buf, len, "STC.L VBR, [--R%d]", RN(ir) ); break;
53.176 + case 0x24: snprintf( buf, len, "ROTCL R%d", RN(ir) ); break;
53.177 + case 0x25: snprintf( buf, len, "ROTCR R%d", RN(ir) ); break;
53.178 + case 0x26: snprintf( buf, len, "LDS.L [R%d++], PR", RN(ir) ); break;
53.179 + case 0x27: snprintf( buf, len, "LDC.L [R%d++], VBR", RN(ir) ); break;
53.180 + case 0x28: snprintf( buf, len, "SHLL16 R%d", RN(ir) ); break;
53.181 + case 0x29: snprintf( buf, len, "SHLR16 R%d", RN(ir) ); break;
53.182 + case 0x2A: snprintf( buf, len, "LDS R%d, PR", RN(ir) ); break;
53.183 + case 0x2B: snprintf( buf, len, "JMP [R%d]", RN(ir) ); break;
53.184 + case 0x2E: snprintf( buf, len, "LDC R%d, VBR", RN(ir) ); break;
53.185 + case 0x32: snprintf( buf, len, "STC.L SGR, [--R%d]", RN(ir) ); break;
53.186 + case 0x33: snprintf( buf, len, "STC.L SSR, [--R%d]", RN(ir) ); break;
53.187 + case 0x37: snprintf( buf, len, "LDC.L [R%d++], SSR", RN(ir) ); break;
53.188 + case 0x3E: snprintf( buf, len, "LDC R%d, SSR", RN(ir) ); break;
53.189 + case 0x43: snprintf( buf, len, "STC.L SPC, [--R%d]", RN(ir) ); break;
53.190 + case 0x47: snprintf( buf, len, "LDC.L [R%d++], SPC", RN(ir) ); break;
53.191 + case 0x4E: snprintf( buf, len, "LDC R%d, SPC", RN(ir) ); break;
53.192 + case 0x52: snprintf( buf, len, "STS.L FPUL, [--R%d]", RN(ir) ); break;
53.193 + case 0x56: snprintf( buf, len, "LDS.L [R%d++], FPUL", RN(ir) ); break;
53.194 + case 0x5A: snprintf( buf, len, "LDS R%d, FPUL", RN(ir) ); break;
53.195 + case 0x62: snprintf( buf, len, "STS.L FPSCR, [--R%d]", RN(ir) ); break;
53.196 + case 0x66: snprintf( buf, len, "LDS.L [R%d++], FPSCR", RN(ir) ); break;
53.197 + case 0x6A: snprintf( buf, len, "LDS R%d, FPSCR", RN(ir) ); break;
53.198 + case 0xF2: snprintf( buf, len, "STC.L DBR, [--R%d]", RN(ir) ); break;
53.199 + case 0xF6: snprintf( buf, len, "LDC.L [R%d++], DBR", RN(ir) ); break;
53.200 + case 0xFA: snprintf( buf, len, "LDC R%d, DBR", RN(ir) ); break;
53.201 + case 0x83: case 0x93: case 0xA3: case 0xB3: case 0xC3: case 0xD3: case 0xE3:
53.202 + case 0xF3: snprintf( buf, len, "STC.L R%d_BANK, [--R%d]", RN_BANK(ir), RN(ir) ); break;
53.203 + case 0x87: case 0x97: case 0xA7: case 0xB7: case 0xC7: case 0xD7: case 0xE7:
53.204 + case 0xF7: snprintf( buf, len, "LDC.L [R%d++], R%d_BANK", RN(ir), RN_BANK(ir) ); break;
53.205 + case 0x8E: case 0x9E: case 0xAE: case 0xBE: case 0xCE: case 0xDE: case 0xEE:
53.206 + case 0xFE: snprintf( buf, len, "LDC R%d, R%d_BANK", RN(ir), RN_BANK(ir) ); break;
53.207 + default:
53.208 + if( (ir&0x000F) == 0x0F ) {
53.209 + snprintf( buf, len, "MAC.W [R%d++], [R%d++]", RM(ir), RN(ir) );
53.210 + } else if( (ir&0x000F) == 0x0C ) {
53.211 + snprintf( buf, len, "SHAD R%d, R%d", RM(ir), RN(ir) );
53.212 + } else if( (ir&0x000F) == 0x0D ) {
53.213 + snprintf( buf, len, "SHLD R%d, R%d", RM(ir), RN(ir) );
53.214 + } else UNIMP(ir);
53.215 + }
53.216 + break;
53.217 + case 5: /* 0101nnnnmmmmdddd */
53.218 + snprintf( buf, len, "MOV.L [R%d%+d], R%d", RM(ir), DISP4(ir)<<2, RN(ir) ); break;
53.219 + case 6: /* 0110xxxxxxxxxxxx */
53.220 + switch( ir&0x000f ) {
53.221 + case 0: snprintf( buf, len, "MOV.B [R%d], R%d", RM(ir), RN(ir) ); break;
53.222 + case 1: snprintf( buf, len, "MOV.W [R%d], R%d", RM(ir), RN(ir) ); break;
53.223 + case 2: snprintf( buf, len, "MOV.L [R%d], R%d", RM(ir), RN(ir) ); break;
53.224 + case 3: snprintf( buf, len, "MOV R%d, R%d", RM(ir), RN(ir) ); break;
53.225 + case 4: snprintf( buf, len, "MOV.B [R%d++], R%d", RM(ir), RN(ir) ); break;
53.226 + case 5: snprintf( buf, len, "MOV.W [R%d++], R%d", RM(ir), RN(ir) ); break;
53.227 + case 6: snprintf( buf, len, "MOV.L [R%d++], R%d", RM(ir), RN(ir) ); break;
53.228 + case 7: snprintf( buf, len, "NOT R%d, R%d", RM(ir), RN(ir) ); break;
53.229 + case 8: snprintf( buf, len, "SWAP.B R%d, R%d", RM(ir), RN(ir) ); break;
53.230 + case 9: snprintf( buf, len, "SWAP.W R%d, R%d", RM(ir), RN(ir) ); break;
53.231 + case 10:snprintf( buf, len, "NEGC R%d, R%d", RM(ir), RN(ir) ); break;
53.232 + case 11:snprintf( buf, len, "NEG R%d, R%d", RM(ir), RN(ir) ); break;
53.233 + case 12:snprintf( buf, len, "EXTU.B R%d, R%d", RM(ir), RN(ir) ); break;
53.234 + case 13:snprintf( buf, len, "EXTU.W R%d, R%d", RM(ir), RN(ir) ); break;
53.235 + case 14:snprintf( buf, len, "EXTS.B R%d, R%d", RM(ir), RN(ir) ); break;
53.236 + case 15:snprintf( buf, len, "EXTS.W R%d, R%d", RM(ir), RN(ir) ); break;
53.237 + }
53.238 + break;
53.239 + case 7: /* 0111nnnniiiiiiii */
53.240 + snprintf( buf, len, "ADD #%d, R%d", SIGNEXT8(ir&0x00FF), RN(ir) ); break;
53.241 + case 8: /* 1000xxxxxxxxxxxx */
53.242 + switch( (ir&0x0F00) >> 8 ) {
53.243 + case 0: snprintf( buf, len, "MOV.B R0, [R%d%+d]", RM(ir), DISP4(ir) ); break;
53.244 + case 1: snprintf( buf, len, "MOV.W R0, [R%d%+d]", RM(ir), DISP4(ir)<<1 ); break;
53.245 + case 4: snprintf( buf, len, "MOV.B [R%d%+d], R0", RM(ir), DISP4(ir) ); break;
53.246 + case 5: snprintf( buf, len, "MOV.W [R%d%+d], R0", RM(ir), DISP4(ir)<<1 ); break;
53.247 + case 8: snprintf( buf, len, "CMP/EQ #%d, R0", IMM8(ir) ); break;
53.248 + case 9: snprintf( buf, len, "BT $%xh", (PCDISP8(ir)<<1)+pc+4 ); break;
53.249 + case 11:snprintf( buf, len, "BF $%xh", (PCDISP8(ir)<<1)+pc+4 ); break;
53.250 + case 13:snprintf( buf, len, "BT/S $%xh", (PCDISP8(ir)<<1)+pc+4 ); break;
53.251 + case 15:snprintf( buf, len, "BF/S $%xh", (PCDISP8(ir)<<1)+pc+4 ); break;
53.252 + default: UNIMP(ir);
53.253 + }
53.254 + break;
53.255 + case 9: /* 1001xxxxxxxxxxxx */
53.256 + snprintf( buf, len, "MOV.W [$%xh], R%-2d ; <- #%08x", (DISP8(ir)<<1)+pc+4, RN(ir),
53.257 + mem_read_word( (DISP8(ir)<<1)+pc+4 ) ); break;
53.258 + case 10:/* 1010xxxxxxxxxxxx */
53.259 + snprintf( buf, len, "BRA $%xh", (DISP12(ir)<<1)+pc+4 ); break;
53.260 + case 11:/* 1011xxxxxxxxxxxx */
53.261 + snprintf( buf, len, "BSR $%xh", (DISP12(ir)<<1)+pc+4 ); break;
53.262 + case 12:/* 1100xxxxdddddddd */
53.263 + switch( (ir&0x0F00)>>8 ) {
53.264 + case 0: snprintf( buf, len, "MOV.B R0, [GBR%+d]", DISP8(ir) ); break;
53.265 + case 1: snprintf( buf, len, "MOV.W R0, [GBR%+d]", DISP8(ir)<<1 ); break;
53.266 + case 2: snprintf( buf, len, "MOV.L R0, [GBR%+d]", DISP8(ir)<<2 ); break;
53.267 + case 3: snprintf( buf, len, "TRAPA #%d", UIMM8(ir) ); break;
53.268 + case 4: snprintf( buf, len, "MOV.B [GBR%+d], R0", DISP8(ir) ); break;
53.269 + case 5: snprintf( buf, len, "MOV.W [GBR%+d], R0", DISP8(ir)<<1 ); break;
53.270 + case 6: snprintf( buf, len, "MOV.L [GBR%+d], R0", DISP8(ir)<<2 ); break;
53.271 + case 7: snprintf( buf, len, "MOVA $%xh, R0", (DISP8(ir)<<2)+(pc&~3)+4 ); break;
53.272 + case 8: snprintf( buf, len, "TST #%02Xh, R0", UIMM8(ir) ); break;
53.273 + case 9: snprintf( buf, len, "AND #%02Xh, R0", UIMM8(ir) ); break;
53.274 + case 10:snprintf( buf, len, "XOR #%02Xh, R0", UIMM8(ir) ); break;
53.275 + case 11:snprintf( buf, len, "OR #%02Xh, R0", UIMM8(ir) ); break;
53.276 + case 12:snprintf( buf, len, "TST.B #%02Xh, [R0+GBR]", UIMM8(ir) ); break;
53.277 + case 13:snprintf( buf, len, "AND.B #%02Xh, [R0+GBR]", UIMM8(ir) ); break;
53.278 + case 14:snprintf( buf, len, "XOR.B #%02Xh, [R0+GBR]", UIMM8(ir) ); break;
53.279 + case 15:snprintf( buf, len, "OR.B #%02Xh, [R0+GBR]", UIMM8(ir) ); break;
53.280 + }
53.281 + break;
53.282 + case 13:/* 1101xxxxxxxxxxxx */
53.283 + snprintf( buf, len, "MOV.L [$%xh], R%-2d ; <- #%08x", (DISP8(ir)<<2)+(pc&~3)+4, RN(ir),
53.284 + mem_read_long( (DISP8(ir)<<2)+(pc&~3)+4 ) ); break;
53.285 + case 14:/* 1110xxxxxxxxxxxx */
53.286 + snprintf( buf, len, "MOV #%d, R%d", DISP8(ir), RN(ir)); break;
53.287 + case 15:/* 1111xxxxxxxxxxxx */
53.288 + switch( ir&0x000F ) {
53.289 + case 0: snprintf( buf, len, "FADD FR%d, FR%d", RM(ir), RN(ir) ); break;
53.290 + case 1: snprintf( buf, len, "FSUB FR%d, FR%d", RM(ir), RN(ir) ); break;
53.291 + case 2: snprintf( buf, len, "FMUL FR%d, FR%d", RM(ir), RN(ir) ); break;
53.292 + case 3: snprintf( buf, len, "FDIV FR%d, FR%d", RM(ir), RN(ir) ); break;
53.293 + case 4: snprintf( buf, len, "FCMP/EQ FR%d, FR%d", RM(ir), RN(ir) ); break;
53.294 + case 5: snprintf( buf, len, "FCMP/GT FR%d, FR%d", RM(ir), RN(ir) ); break;
53.295 + case 6: snprintf( buf, len, "FMOV.S [R%d+R0], FR%d", RM(ir), RN(ir) ); break;
53.296 + case 7: snprintf( buf, len, "FMOV.S FR%d, [R%d+R0]", RM(ir), RN(ir) ); break;
53.297 + case 8: snprintf( buf, len, "FMOV.S [R%d], FR%d", RM(ir), RN(ir) ); break;
53.298 + case 9: snprintf( buf, len, "FMOV.S [R%d++], FR%d", RM(ir), RN(ir) ); break;
53.299 + case 10:snprintf( buf, len, "FMOV.S FR%d, [R%d]", RM(ir), RN(ir) ); break;
53.300 + case 11:snprintf( buf, len, "FMOV.S FR%d, [--R%d]", RM(ir), RN(ir) ); break;
53.301 + case 12:snprintf( buf, len, "FMOV FR%d, FR%d", RM(ir), RN(ir) ); break;
53.302 + case 13:
53.303 + switch( (ir&0x00F0) >> 4 ) {
53.304 + case 0: snprintf( buf, len, "FSTS FPUL, FR%d", RN(ir) ); break;
53.305 + case 1: snprintf( buf, len, "FLDS FR%d, FPUL", RN(ir) ); break;
53.306 + case 2: snprintf( buf, len, "FLOAT FPUL, FR%d", RN(ir) ); break;
53.307 + case 3: snprintf( buf, len, "FTRC FR%d, FPUL", RN(ir) ); break;
53.308 + case 4: snprintf( buf, len, "FNEG FR%d", RN(ir) ); break;
53.309 + case 5: snprintf( buf, len, "FABS FR%d", RN(ir) ); break;
53.310 + case 6: snprintf( buf, len, "FSQRT FR%d", RN(ir) ); break;
53.311 + case 8: snprintf( buf, len, "FLDI0 FR%d", RN(ir) ); break;
53.312 + case 9: snprintf( buf, len, "FLDI1 FR%d", RN(ir) ); break;
53.313 + case 10:snprintf( buf, len, "FCNVSD FPUL, DR%d", RN(ir)>>1 ); break;
53.314 + case 11:snprintf( buf, len, "FCNVDS DR%d, FPUL", RN(ir)>>1 ); break;
53.315 + case 14:snprintf( buf, len, "FIPR FV%d, FV%d", FVM(ir), FVN(ir) ); break;
53.316 + case 15:
53.317 + if( FVM(ir) == 1 )
53.318 + snprintf( buf, len, "FTRV XMTRX,FV%d", FVN(ir) );
53.319 + else if( ir == 0xFBFD )
53.320 + snprintf( buf, len, "FRCHG " );
53.321 + else if( ir == 0xF3FD )
53.322 + snprintf( buf, len, "FSCHG " );
53.323 + break;
53.324 + default: UNIMP(ir);
53.325 + }
53.326 + break;
53.327 + case 14:snprintf( buf, len, "FMAC FR0, FR%d, FR%d", RM(ir), RN(ir) ); break;
53.328 + default: UNIMP(ir);
53.329 + }
53.330 + break;
53.331 + }
53.332 + return pc+2;
53.333 +}
53.334 +
53.335 +
53.336 +void sh4_disasm_region( FILE *f, int from, int to, int load_addr )
53.337 +{
53.338 + int pc;
53.339 + char buf[80];
53.340 +
53.341 + for( pc = from; pc < to; pc+=2 ) {
53.342 + uint16_t op = mem_read_word( pc );
53.343 + buf[0] = '\0';
53.344 + sh4_disasm_instruction( pc,
53.345 + buf, sizeof(buf) );
53.346 + fprintf( f, " %08x: %04x %s\n", pc + load_addr, op, buf );
53.347 + }
53.348 +}
54.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
54.2 +++ b/src/sh4/sh4dasm.h Sat Mar 13 00:03:32 2004 +0000
54.3 @@ -0,0 +1,20 @@
54.4 +#ifndef sh4dasm_H
54.5 +#define sh4dasm_H 1
54.6 +
54.7 +#ifdef __cplusplus
54.8 +extern "C" {
54.9 +#if 0
54.10 +}
54.11 +#endif
54.12 +#endif
54.13 +
54.14 +#include <stdio.h>
54.15 +
54.16 +int sh4_disasm_instruction( int pc, char *buf, int len );
54.17 +void sh4_disasm_region( FILE *f, int from, int to, int load_addr );
54.18 +
54.19 +#ifdef __cplusplus
54.20 +}
54.21 +#endif
54.22 +
54.23 +#endif
55.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
55.2 +++ b/src/sh4/sh4mmio.c Sat Mar 13 00:03:32 2004 +0000
55.3 @@ -0,0 +1,176 @@
55.4 +#include "dream.h"
55.5 +#include "mem.h"
55.6 +#include "sh4core.h"
55.7 +#include "sh4mmio.h"
55.8 +#define MMIO_IMPL
55.9 +#include "sh4mmio.h"
55.10 +
55.11 +/********************************* MMU *************************************/
55.12 +
55.13 +MMIO_REGION_READ_STUBFN( MMU )
55.14 +
55.15 +void mmio_region_MMU_write( uint32_t reg, uint32_t val )
55.16 +{
55.17 + switch(reg) {
55.18 + case CCR:
55.19 + mem_set_cache_mode( val & (CCR_OIX|CCR_ORA) );
55.20 + INFO( "Cache mode set to %08X", val );
55.21 + break;
55.22 + default:
55.23 + break;
55.24 + }
55.25 + MMIO_WRITE( MMU, reg, val );
55.26 +}
55.27 +
55.28 +
55.29 +/********************************* BSC *************************************/
55.30 +
55.31 +uint16_t bsc_output_mask_lo = 0, bsc_output_mask_hi = 0;
55.32 +uint16_t bsc_input_mask_lo = 0, bsc_input_mask_hi = 0;
55.33 +uint32_t bsc_output = 0, bsc_input = 0x0300;
55.34 +
55.35 +void bsc_out( int output, int mask )
55.36 +{
55.37 + /* Go figure... The BIOS won't start without this mess though */
55.38 + if( ((output | (~mask)) & 0x03) == 3 ) {
55.39 + bsc_output |= 0x03;
55.40 + } else {
55.41 + bsc_output &= ~0x03;
55.42 + }
55.43 +}
55.44 +
55.45 +void mmio_region_BSC_write( uint32_t reg, uint32_t val )
55.46 +{
55.47 + int i;
55.48 + switch( reg ) {
55.49 + case PCTRA:
55.50 + bsc_input_mask_lo = bsc_output_mask_lo = 0;
55.51 + for( i=0; i<16; i++ ) {
55.52 + int bits = (val >> (i<<1)) & 0x03;
55.53 + if( bits == 2 ) bsc_input_mask_lo |= (1<<i);
55.54 + else if( bits != 0 ) bsc_output_mask_lo |= (1<<i);
55.55 + }
55.56 + bsc_output = (bsc_output&0x000F0000) |
55.57 + (MMIO_READ( BSC, PDTRA ) & bsc_output_mask_lo);
55.58 + bsc_out( MMIO_READ( BSC, PDTRA ) | ((MMIO_READ(BSC,PDTRB)<<16)),
55.59 + bsc_output_mask_lo | (bsc_output_mask_hi<<16) );
55.60 + break;
55.61 + case PCTRB:
55.62 + bsc_input_mask_hi = bsc_output_mask_hi = 0;
55.63 + for( i=0; i<4; i++ ) {
55.64 + int bits = (val >> (i>>1)) & 0x03;
55.65 + if( bits == 2 ) bsc_input_mask_hi |= (1<<i);
55.66 + else if( bits != 0 ) bsc_output_mask_hi |= (1<<i);
55.67 + }
55.68 + bsc_output = (bsc_output&0xFFFF) |
55.69 + ((MMIO_READ( BSC, PDTRA ) & bsc_output_mask_hi)<<16);
55.70 + break;
55.71 + case PDTRA:
55.72 + bsc_output = (bsc_output&0x000F0000) |
55.73 + (val & bsc_output_mask_lo );
55.74 + bsc_out( val | ((MMIO_READ(BSC,PDTRB)<<16)),
55.75 + bsc_output_mask_lo | (bsc_output_mask_hi<<16) );
55.76 + break;
55.77 + case PDTRB:
55.78 + bsc_output = (bsc_output&0xFFFF) |
55.79 + ( (val & bsc_output_mask_hi)<<16 );
55.80 + break;
55.81 + }
55.82 + WARN( "Write to (mostly) unimplemented BSC (%03X <= %08X) [%s: %s]",
55.83 + reg, val, MMIO_REGID(BSC,reg), MMIO_REGDESC(BSC,reg) );
55.84 + MMIO_WRITE( BSC, reg, val );
55.85 +}
55.86 +
55.87 +int32_t mmio_region_BSC_read( uint32_t reg )
55.88 +{
55.89 + int32_t val;
55.90 + switch( reg ) {
55.91 + case PDTRA:
55.92 + val = (bsc_input & bsc_input_mask_lo) | (bsc_output&0xFFFF);
55.93 + break;
55.94 + case PDTRB:
55.95 + val = ((bsc_input>>16) & bsc_input_mask_hi) | (bsc_output>>16);
55.96 + break;
55.97 + default:
55.98 + val = MMIO_READ( BSC, reg );
55.99 + }
55.100 + WARN( "Read from (mostly) unimplemented BSC (%03X => %08X) [%s: %s]",
55.101 + reg, val, MMIO_REGID(BSC,reg), MMIO_REGDESC(BSC,reg) );
55.102 + return val;
55.103 +}
55.104 +
55.105 +/********************************* UBC *************************************/
55.106 +
55.107 +MMIO_REGION_STUBFNS( UBC )
55.108 +
55.109 +/********************************* CPG *************************************/
55.110 +
55.111 +MMIO_REGION_STUBFNS( CPG )
55.112 +
55.113 +/********************************* DMAC *************************************/
55.114 +
55.115 +MMIO_REGION_STUBFNS( DMAC )
55.116 +
55.117 +/********************************** RTC *************************************/
55.118 +
55.119 +MMIO_REGION_STUBFNS( RTC )
55.120 +
55.121 +/********************************** TMU *************************************/
55.122 +
55.123 +int timer_divider[3] = {16,16,16};
55.124 +MMIO_REGION_READ_DEFFN( TMU )
55.125 +
55.126 +int get_timer_div( int val )
55.127 +{
55.128 + switch( val & 0x07 ) {
55.129 + case 0: return 16; /* assume peripheral clock is IC/4 */
55.130 + case 1: return 64;
55.131 + case 2: return 256;
55.132 + case 3: return 1024;
55.133 + case 4: return 4096;
55.134 + }
55.135 + return 1;
55.136 +}
55.137 +
55.138 +void mmio_region_TMU_write( uint32_t reg, uint32_t val )
55.139 +{
55.140 + switch( reg ) {
55.141 + case TCR0:
55.142 + timer_divider[0] = get_timer_div(val);
55.143 + break;
55.144 + case TCR1:
55.145 + timer_divider[1] = get_timer_div(val);
55.146 + break;
55.147 + case TCR2:
55.148 + timer_divider[2] = get_timer_div(val);
55.149 + break;
55.150 + }
55.151 + MMIO_WRITE( TMU, reg, val );
55.152 +}
55.153 +
55.154 +void run_timers( int cycles )
55.155 +{
55.156 + int tcr = MMIO_READ( TMU, TSTR );
55.157 + cycles *= 16;
55.158 + if( tcr & 1 ) {
55.159 + int count = cycles / timer_divider[0];
55.160 + int *val = MMIO_REG( TMU, TCNT0 );
55.161 + if( *val < count ) {
55.162 + MMIO_READ( TMU, TCR0 ) |= 0x100;
55.163 + /* interrupt goes here */
55.164 + count -= *val;
55.165 + *val = MMIO_READ( TMU, TCOR0 ) - count;
55.166 + } else {
55.167 + *val -= count;
55.168 + }
55.169 + }
55.170 +}
55.171 +
55.172 +/********************************** SCI *************************************/
55.173 +
55.174 +MMIO_REGION_STUBFNS( SCI )
55.175 +
55.176 +/********************************* SCIF *************************************/
55.177 +
55.178 +MMIO_REGION_STUBFNS( SCIF )
55.179 +
56.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
56.2 +++ b/src/sh4/sh4mmio.h Sat Mar 13 00:03:32 2004 +0000
56.3 @@ -0,0 +1,153 @@
56.4 +#include "mmio.h"
56.5 +
56.6 +#if (defined(MMIO_IMPL) && !defined(SH4MMIO_IMPL)) || \
56.7 + (!defined(MMIO_IMPL) && !defined(SH4MMIO_IFACE))
56.8 +
56.9 +#ifdef MMIO_IMPL
56.10 +#define SH4MMIO_IMPL
56.11 +#else
56.12 +#define SH4MMIO_IFACE
56.13 +#endif
56.14 +/* SH7750 onchip mmio devices */
56.15 +
56.16 +MMIO_REGION_BEGIN( 0xFF000000, MMU, "MMU Registers" )
56.17 + LONG_PORT( 0x000, PTEH, PORT_MRW, UNDEFINED, "Page table entry high" )
56.18 + LONG_PORT( 0x004, PTEL, PORT_MRW, UNDEFINED, "Page table entry low" )
56.19 + LONG_PORT( 0x008, TTB, PORT_MRW, UNDEFINED, "Translation table base" )
56.20 + LONG_PORT( 0x00C, TEA, PORT_MRW, UNDEFINED, "TLB exception address" )
56.21 + LONG_PORT( 0x010, MMUCR,PORT_MRW, 0, "MMU control register" )
56.22 + BYTE_PORT( 0x14, BASRA, PORT_MRW, UNDEFINED, "Break ASID A" ) /* UBC */
56.23 + BYTE_PORT( 0x18, BASRB, PORT_MRW, UNDEFINED, "Break ASID B" ) /* UBC */
56.24 + LONG_PORT( 0x01C, CCR, PORT_MRW, 0, "Cache control register" )
56.25 + LONG_PORT( 0x020, TRA, PORT_MRW, UNDEFINED, "TRAPA exception register" )
56.26 + LONG_PORT( 0x024, EXPEVT,PORT_MRW, 0, "Exception event register" )
56.27 + LONG_PORT( 0x028, INTEVT,PORT_MRW, UNDEFINED, "Interrupt event register" )
56.28 + LONG_PORT( 0x034, PTEA, PORT_MRW, UNDEFINED, "Page table entry assistance" )
56.29 + LONG_PORT( 0x038, QACR0,PORT_MRW, UNDEFINED, "Queue address control 0" )
56.30 + LONG_PORT( 0x03C, QACR1,PORT_MRW, UNDEFINED, "Queue address control 1" )
56.31 +MMIO_REGION_END
56.32 +
56.33 +/* User Break Controller (Page 717 [757] of sh7750h manual) */
56.34 +MMIO_REGION_BEGIN( 0xFF200000, UBC, "User Break Controller" )
56.35 + LONG_PORT( 0x000, BARA, PORT_MRW, UNDEFINED, "Break address A" )
56.36 + BYTE_PORT( 0x004, BAMRA, PORT_MRW, UNDEFINED, "Break address mask A" )
56.37 + WORD_PORT( 0x008, BBRA, PORT_MRW, 0, "Break bus cycle A" )
56.38 + LONG_PORT( 0x00C, BARB, PORT_MRW, UNDEFINED, "Break address B" )
56.39 + BYTE_PORT( 0x010, BAMRB, PORT_MRW, UNDEFINED, "Break address mask B" )
56.40 + WORD_PORT( 0x014, BBRB, PORT_MRW, 0, "Break bus cycle B" )
56.41 + LONG_PORT( 0x018, BDRB, PORT_MRW, UNDEFINED, "Break data B" )
56.42 + LONG_PORT( 0x01C, BDMRB, PORT_MRW, UNDEFINED, "Break data mask B" )
56.43 + WORD_PORT( 0x020, BRCR, PORT_MRW, 0, "Break control" )
56.44 +MMIO_REGION_END
56.45 +/* Bus State Controller (Page 293 [333] of sh7750h manual)
56.46 + * I/O Ports */
56.47 +MMIO_REGION_BEGIN( 0xFF800000, BSC, "Bus State Controller" )
56.48 + LONG_PORT( 0x000, BCR1, PORT_MRW, 0, "Bus control 1" )
56.49 + WORD_PORT( 0x004, BCR2, PORT_MRW, 0x3FFC, "Bus control 2" )
56.50 + LONG_PORT( 0x008, WCR1, PORT_MRW, 0x77777777, "Wait state control 1" )
56.51 + LONG_PORT( 0x00C, WCR2, PORT_MRW, 0xFFFEEFFF, "Wait state control 2" )
56.52 + LONG_PORT( 0x010, WCR3, PORT_MRW, 0x07777777, "Wait state control 3" )
56.53 + LONG_PORT( 0x014, MCR, PORT_MRW, 0, "Memory control register" )
56.54 + WORD_PORT( 0x018, PCR, PORT_MRW, 0, "PCMCIA control register" )
56.55 + WORD_PORT( 0x01C, RTCSR, PORT_MRW, 0, "Refresh timer control/status" )
56.56 + WORD_PORT( 0x020, RTCNT, PORT_MRW, 0, "Refresh timer counter" )
56.57 + WORD_PORT( 0x024, RTCOR, PORT_MRW, 0, "Refresh timer constant" )
56.58 + WORD_PORT( 0x028, RFCR, PORT_MRW, 0, "Refresh count" )
56.59 + LONG_PORT( 0x02C, PCTRA, PORT_MRW, 0, "Port control register A" )
56.60 + WORD_PORT( 0x030, PDTRA, PORT_RW, UNDEFINED, "Port data register A" )
56.61 + LONG_PORT( 0x040, PCTRB, PORT_MRW, 0, "Port control register B" )
56.62 + WORD_PORT( 0x044, PDTRB, PORT_RW, UNDEFINED, "Port data register B" )
56.63 + WORD_PORT( 0x048, GPIOIC, PORT_MRW, 0, "GPIO interrupt control register" )
56.64 +MMIO_REGION_END
56.65 +
56.66 +/* DMA Controller (Page 457 [497] of sh7750h manual) */
56.67 +MMIO_REGION_BEGIN( 0xFFA00000, DMAC, "DMA Controller" )
56.68 + LONG_PORT( 0x000, SAR0, PORT_MRW, UNDEFINED, "DMA source address 0" )
56.69 + LONG_PORT( 0x004, DAR0, PORT_MRW, UNDEFINED, "DMA destination address 0" )
56.70 + LONG_PORT( 0x008, DMATCR0, PORT_MRW, UNDEFINED, "DMA transfer count 0" )
56.71 + LONG_PORT( 0x00C, CHCR0, PORT_MRW, 0, "DMA channel control 0" )
56.72 + LONG_PORT( 0x010, SAR1, PORT_MRW, UNDEFINED, "DMA source address 1" )
56.73 + LONG_PORT( 0x014, DAR1, PORT_MRW, UNDEFINED, "DMA destination address 1" )
56.74 + LONG_PORT( 0x018, DMATCR1, PORT_MRW, UNDEFINED, "DMA transfer count 1" )
56.75 + LONG_PORT( 0x01C, CHCR1, PORT_MRW, 0, "DMA channel control 1" )
56.76 + LONG_PORT( 0x020, SAR2, PORT_MRW, UNDEFINED, "DMA source address 2" )
56.77 + LONG_PORT( 0x024, DAR2, PORT_MRW, UNDEFINED, "DMA destination address 2" )
56.78 + LONG_PORT( 0x028, DMATCR2, PORT_MRW, UNDEFINED, "DMA transfer count 2" )
56.79 + LONG_PORT( 0x02C, CHCR2, PORT_MRW, 0, "DMA channel control 2" )
56.80 + LONG_PORT( 0x030, SAR3, PORT_MRW, UNDEFINED, "DMA source address 3" )
56.81 + LONG_PORT( 0x034, DAR3, PORT_MRW, UNDEFINED, "DMA destination address 3" )
56.82 + LONG_PORT( 0x038, DMATCR3, PORT_MRW, UNDEFINED, "DMA transfer count 3" )
56.83 + LONG_PORT( 0x03C, CHCR3, PORT_MRW, 0, "DMA channel control 3" )
56.84 + LONG_PORT( 0x040, DMAOR, PORT_MRW, 0, "DMA operation register" )
56.85 +MMIO_REGION_END
56.86 +
56.87 +/* Clock Pulse Generator (page 233 [273] of sh7750h manual) */
56.88 +MMIO_REGION_BEGIN( 0xFFC00000, CPG, "Clock Pulse Generator" )
56.89 + WORD_PORT( 0x000, FRQCR, PORT_MRW, UNDEFINED, "Frequency control" )
56.90 + BYTE_PORT( 0x004, STBCR, PORT_MRW, 0, "Standby control" )
56.91 + BYTE_PORT( 0x008, WTCNT, PORT_MRW, 0, "Watchdog timer counter" )
56.92 + BYTE_PORT( 0x00C, WTCSR, PORT_MRW, 0, "Watchdog timer control/status" )
56.93 + BYTE_PORT( 0x010, STBCR2, PORT_MRW, 0, "Standby control 2" )
56.94 +MMIO_REGION_END
56.95 +
56.96 +/* Real time clock (Page 253 [293] of sh7750h manual) */
56.97 +MMIO_REGION_BEGIN( 0xFFC80000, RTC, "Realtime Clock" )
56.98 + BYTE_PORT( 0x000, R64CNT, PORT_R, UNDEFINED, "64 Hz counter" )
56.99 + BYTE_PORT( 0x004, RSECCNT, PORT_MRW, UNDEFINED, "Second counter" )
56.100 + /* ... */
56.101 +MMIO_REGION_END
56.102 +
56.103 +/* Interrupt controller (Page 699 [739] of sh7750h manual) */
56.104 +MMIO_REGION_BEGIN( 0xFFD00000, INTC, "Interrupt Controller" )
56.105 + WORD_PORT( 0x000, ICR, PORT_MRW, 0x0000, "Interrupt control register" )
56.106 + WORD_PORT( 0x004, IPRA, PORT_MRW, 0x0000, "Interrupt priority register A" )
56.107 + WORD_PORT( 0x008, IPRB, PORT_MRW, 0x0000, "Interrupt priority register B" )
56.108 + WORD_PORT( 0x00C, IPRC, PORT_MRW, 0x0000, "Interrupt priority register C" )
56.109 + WORD_PORT( 0x010, IPRD, PORT_MRW, 0xDA74, "Interrupt priority register D" )
56.110 +MMIO_REGION_END
56.111 +
56.112 +/* Timer unit (Page 277 [317] of sh7750h manual) */
56.113 +MMIO_REGION_BEGIN( 0xFFD80000, TMU, "Timer Unit" )
56.114 + BYTE_PORT( 0x000, TOCR, PORT_MRW, 0x00, "Timer output control register" )
56.115 + BYTE_PORT( 0x004, TSTR, PORT_MRW, 0x00, "Timer start register" )
56.116 + LONG_PORT( 0x008, TCOR0, PORT_MRW, 0xFFFFFFFF, "Timer constant 0" )
56.117 + LONG_PORT( 0x00C, TCNT0, PORT_MRW, 0xFFFFFFFF, "Timer counter 0" )
56.118 + WORD_PORT( 0x010, TCR0, PORT_MRW, 0x0000, "Timer control 0" )
56.119 + LONG_PORT( 0x014, TCOR1, PORT_MRW, 0xFFFFFFFF, "Timer constant 1" )
56.120 + LONG_PORT( 0x018, TCNT1, PORT_MRW, 0xFFFFFFFF, "Timer counter 1" )
56.121 + WORD_PORT( 0x01C, TCR1, PORT_MRW, 0x0000, "Timer control 1" )
56.122 + LONG_PORT( 0x020, TCOR2, PORT_MRW, 0xFFFFFFFF, "Timer constant 2" )
56.123 + LONG_PORT( 0x024, TCNT2, PORT_MRW, 0xFFFFFFFF, "Timer counter 2" )
56.124 + WORD_PORT( 0x028, TCR2, PORT_MRW, 0x0000, "Timer control 2" )
56.125 + LONG_PORT( 0x02C, TCPR2, PORT_R, UNDEFINED, "Input capture register" )
56.126 +MMIO_REGION_END
56.127 +
56.128 +/* Serial channel (page 541 [581] of sh7750h manual) */
56.129 +MMIO_REGION_BEGIN( 0xFFE00000, SCI, "Serial Communication Interface" )
56.130 + BYTE_PORT( 0x000, SCSMR1, PORT_MRW, 0x00, "Serial mode register" )
56.131 + BYTE_PORT( 0x004, SCBRR1, PORT_MRW, 0xFF, "Bit rate register" )
56.132 + BYTE_PORT( 0x008, SCSCR1, PORT_MRW, 0x00, "Serial control register" )
56.133 + BYTE_PORT( 0x00C, SCTDR1, PORT_MRW, 0xFF, "Transmit data register" )
56.134 + BYTE_PORT( 0x010, SCSSR1, PORT_MRW, 0x84, "Serial status register" )
56.135 + BYTE_PORT( 0x014, SCRDR1, PORT_R, 0x00, "Receive data register" )
56.136 + BYTE_PORT( 0x01C, SCSPTR1, PORT_MRW, 0x00, "Serial port register" )
56.137 +MMIO_REGION_END
56.138 +
56.139 +MMIO_REGION_BEGIN( 0xFFE80000, SCIF, "Serial Controller (FIFO) Registers" )
56.140 + WORD_PORT( 0x000, SCSMR2, PORT_MRW, 0x0000, "Serial mode register (FIFO)" )
56.141 +MMIO_REGION_END
56.142 +
56.143 +MMIO_REGION_LIST_BEGIN( sh4mmio )
56.144 + MMIO_REGION( MMU )
56.145 + MMIO_REGION( UBC )
56.146 + MMIO_REGION( BSC )
56.147 + MMIO_REGION( DMAC )
56.148 + MMIO_REGION( CPG )
56.149 + MMIO_REGION( RTC )
56.150 + MMIO_REGION( INTC )
56.151 + MMIO_REGION( TMU )
56.152 + MMIO_REGION( SCI )
56.153 + MMIO_REGION( SCIF )
56.154 +MMIO_REGION_LIST_END
56.155 +
56.156 +#endif
57.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
57.2 +++ b/src/tst.c Sat Mar 13 00:03:32 2004 +0000
57.3 @@ -0,0 +1,15 @@
57.4 +#define D #define
57.5 +#define tst(a) D a 1
57.6 +
57.7 +tst(forte)
57.8 +
57.9 +int main()
57.10 +{
57.11 + signed int a = 0xFFFFFFFF;
57.12 + unsigned int b = 0xFFFFFFFF;
57.13 +
57.14 + a >>= 16;
57.15 + b >>= 16;
57.16 +
57.17 + printf( "%08x %08x\n", a, b );
57.18 +}
58.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
58.2 +++ b/src/tst1.c Sat Mar 13 00:03:32 2004 +0000
58.3 @@ -0,0 +1,57 @@
58.4 +#include <stdint.h>
58.5 +
58.6 +#define PORT_R 1
58.7 +#define PORT_W 2
58.8 +#define PORT_MEM 4 /* store written value */
58.9 +#define PORT_RW 3
58.10 +#define PORT_MRW 7
58.11 +#define UNDEFINED 0
58.12 +
58.13 +struct mmio_region {
58.14 + char *id, *desc;
58.15 + uint32_t base;
58.16 + char *mem;
58.17 + struct mmio_port {
58.18 + char *id, *desc;
58.19 + int width;
58.20 + uint32_t offset;
58.21 + uint32_t default;
58.22 + int flags;
58.23 + } *ports;
58.24 +};
58.25 +
58.26 +#define _MACROIZE #define
58.27 +
58.28 +#define MMIO_REGION_BEGIN(b,id,d) struct mmio_region mmio_region_##id = { #id, d, b, NULL,
58.29 +#define LONG_PORT( o,id,f,def,d ) { #id, desc, 32, o, def, f }, \
58.30 +_MACROIZE port_##id o \
58.31 +_MACROIZE reg_##id (*(uint32_t *)(mmio_region_##id.mem + o))
58.32 +#define WORD_PORT( o,id,f,def,d ) { #id, desc, 16, o, def, f },
58.33 +#define BYTE_PORT( o,id,f,def,d ) { #id, desc, 8, o, def, f },
58.34 +#define MMIO_REGION_END {NULL, NULL, 0, 0, 0} };
58.35 +
58.36 +MMIO_REGION_BEGIN( 0xFF000000, MMU, "MMU Registers" )
58.37 + LONG_PORT( 0x000, PTEH, PORT_MRW, UNDEFINED, "Page table entry high" ),
58.38 + LONG_PORT( 0x004, PTEL, PORT_MRW, UNDEFINED, "Page table entry low" ),
58.39 +MMIO_REGION_END
58.40 +
58.41 +MMIO_REGION_BEGIN( BSC, 0xFF800000, "I/O Port Registers" )
58.42 + LONG_PORT( 0x000, BCR1, PORT_MRW, 0, "" ),
58.43 + WORD_PORT( 0x004, BCR2, PORT_MRW, 0x3FFC, "" ),
58.44 + LONG_PORT( 0x008, WCR1, PORT_MRW, 0x77777777, "" ),
58.45 + LONG_PORT( 0x00C, WCR2, PORT_MRW, 0xFFFEEFFF, "" ),
58.46 + LONG_PORT( 0x010, WCR3, PORT_MRW, 0x07777777, "" ),
58.47 + LONG_PORT( 0x02C, PCTRA, PORT_MRW, 0, "Port control register A" ),
58.48 + WORD_PORT( 0x030, PDTRA, PORT_RW, UNDEFINED, "Port data register A" ),
58.49 + LONG_PORT( 0x040, PCTRB, PORT_MRW, 0, "Port control register B" ),
58.50 + WORD_PORT( 0x044, PCTRB, PORT_RW, UNDEFINED, "Port data register B" ),
58.51 + WORD_PORT( 0x048, GPIOIC, PORT_MRW, 0, "GPIO interrupt control register" )
58.52 +MMIO_REGION_END
58.53 +
58.54 +MMIO_REGION_BEGIN( SCI, 0xFFE00000, "Serial Controller Registers" )
58.55 +
58.56 +MMIO_REGION_END
58.57 +
58.58 +MMIO_REGIN_BEGIN( SCIF, 0xFFE80000, "Serial Controller (FIFO) Registers" )
58.59 +MMIO_REGION_END
58.60 +
59.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
59.2 +++ b/src/video.c Sat Mar 13 00:03:32 2004 +0000
59.3 @@ -0,0 +1,33 @@
59.4 +#include <gnome.h>
59.5 +
59.6 +GdkImage *img;
59.7 +GtkWindow *video_win;
59.8 +GtkWidget *video_area;
59.9 +char *video_data;
59.10 +
59.11 +void video_open( void )
59.12 +{
59.13 + img = gdk_image_new( GDK_IMAGE_FASTEST, gdk_visual_get_system(),
59.14 + 640, 480 );
59.15 + video_win = GTK_WINDOW(gtk_window_new( GTK_WINDOW_TOPLEVEL ));
59.16 + video_area = gtk_image_new_from_image(img, NULL);
59.17 + gtk_widget_show( video_area );
59.18 + gtk_container_add( GTK_CONTAINER(video_win), video_area );
59.19 + video_data = img->mem;
59.20 +
59.21 + gtk_window_set_title( video_win, "DreamOn! - Emulation Window" );
59.22 + gtk_window_set_policy( video_win, FALSE, FALSE, FALSE );
59.23 + gtk_window_set_default_size( video_win, 640, 480 );
59.24 +
59.25 + gtk_widget_show( GTK_WIDGET(video_win) );
59.26 +}
59.27 +
59.28 +void video_update_frame( void )
59.29 +{
59.30 + gtk_widget_queue_draw( video_area );
59.31 +}
59.32 +
59.33 +void video_update_size( int hres, int vres, int colmode )
59.34 +{
59.35 + /* do something intelligent */
59.36 +}
60.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
60.2 +++ b/src/video.h Sat Mar 13 00:03:32 2004 +0000
60.3 @@ -0,0 +1,6 @@
60.4 +
60.5 +void video_open( void );
60.6 +void video_update_frame( void );
60.7 +void video_update_size( int, int, int );
60.8 +
60.9 +extern char *video_data;
61.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
61.2 +++ b/stamp-h.in Sat Mar 13 00:03:32 2004 +0000
61.3 @@ -0,0 +1,1 @@
61.4 +timestamp
.