diff -urN dillo-0.6.6/AUTHORS dillo2-0.6.6/AUTHORS --- dillo-0.6.6/AUTHORS 2002-05-29 15:26:51.000000000 -0600 +++ dillo2-0.6.6/AUTHORS 2003-04-21 12:35:02.000000000 -0600 @@ -25,10 +25,10 @@ Patches: * Sam Dennis * Andrew McPherson - * Andreas Schweitzer * Sean 'Shaleh' Perry * Marcos Ram�rez * Adam Sampson + * Andreas Schweitzer * Dominic Wong _________________________________________________________________ diff -urN dillo-0.6.6/ChangeLog dillo2-0.6.6/ChangeLog --- dillo-0.6.6/ChangeLog 2002-05-29 15:20:44.000000000 -0600 +++ dillo2-0.6.6/ChangeLog 2003-04-21 12:35:02.000000000 -0600 @@ -3,6 +3,27 @@ ============================================================================= +dillo-0.6.7 [?, 2002] + + - * Added code so that tooltips stay within the screen. + Patch: Pekka Lampila, Sebastian Geerken + - * Fixed a problem occurring when scrolling with the "b" key. + Patch: Livio Baldini + - * Fixed a memory leak in DwAlignedPage. + Patch: J�rgen Viksell, Sebastian Geerken + - * Fixed a bug in DwPage ("height" argument). + Patch: Pekka Lampila + - * Removed space around tables. + * Implemented the <button> tag! (BUG#276) + Patches: Sebastian Geerken + - * Added support for <input type=image...> (BUG#313) + Patch: Madis Janson, Sebastian Geerken, Jorge Arellano + - * Made a better EAGAIN handler, and enabled FreeIOVec operation in IOWrite. + Patch: Jorge Arellano, Livio Baldini + - * Avoided a file lock when cookiesrc disables cookies (BUG#358). + Patch: Jorge Arellano + + dillo-0.6.6 [May 30, 2002] - * Added a few canonical casts to fix some obvious 64bit issues. diff -urN dillo-0.6.6/ChangeLog.old dillo2-0.6.6/ChangeLog.old --- dillo-0.6.6/ChangeLog.old 2000-08-30 10:17:58.000000000 -0600 +++ dillo2-0.6.6/ChangeLog.old 1969-12-31 17:00:00.000000000 -0700 @@ -1,89 +0,0 @@ - -This is the Changelog file that existed before Dillo began. - - -=========================================================================== -Gzilla project - -Wed 28 Oct 1999 Christopher Reid Palmer <chrisp@innerfireworks.com> - Rota Luca - * support for arrow keys - * proper tool bar - * cursor changing - - Randy Maas - * documentation - * URL sub-tree cleanups and speed-ups - - Sammy Mannaert - * bookmarks.c fix - * menu hotkeys, menu pulloffs and Location pull-off - * file:/ URL bugfix, for larger than 12 char names - - David Press - * fix to cursor change - -Fri Jul 23 22:12:14 1999 ObiTuarY <obituary@freshmeat.net> - - * *.*: Upgraded to autoconf 2.13 and automake 1.4. Reorganization - of the source. - * src/interface.{c,h}: Added pixmaps for the buttons. Removed the - open button. Doesn't it feel redundant with the location text entry - just under it ? ;-) - * src/pixmaps.h: New file holding the pixmaps. - -0.2.0 17-18 Jul 1999 Christopher Reid Palmer <chrisp@innerFireWorks.com> - * Restructured menus, beginning to implement functionality of new menu items. - * Closed hole for when ~/.gzilla exists but is not a dir. - * Poked at bookmarks. - - - -=========================================================================== -Raph Levien project - - -Mon Dec 21 00:07:36 1998 Raph Levien <raph@gimp.org> - - * gzilladns.c: fixed a bug (adding the input handler more - than once) that got triggered in Gtk 1.1.x. - * gzillageturl.c: added an "about:" mechanism with simple - redirects. This is 0.1.7. - -Sun Dec 20 22:25:17 1998 Raph Levien <raph@gimp.org> - - * Accelerator group code so that it now compiles with both - Gtk 1.0.x and 1.1.x - * Added directory scanning support to gzilla_file (thanks to Jim - McBeath!) - -0.1.5 (2 Jan 1998 RLL) - * Finished moving junk out of bytesink (mostly into linkblock). - Now, the former abstraction is lean and mean, and the latter - is a junkheap :). - * Tried to hook up most of the abort/destroy logic, so it should - leak a lot less memory now. - * I'm moving images from gtk_preview to gzw_image as well. - -0.1.4 (26 Nov 1997 RLL) - * Pages > 32kpixels actually scroll now. - * Pretty significant rework of the whole abort architecture (see - abort.html for more details). Also separated out some of the - web-specific stuff in bytesink to linkblock. - * It seems relatively stable now, but it's nowhere near freeing - all of the memory it allocates. - -0.1.3 - * Switched page widget from gtk to gzw. - * Significant enhancements in functionality and stability. - -0.0.10 - * Major change is reorganization of network code - all fetches now - go through gzilla_url_get. - - * Aborts (i.e. the implementation of the Stop button) are now - handled by a new bytesink signal ("abort"). The abort logic has - been partially upgraded to handle multiple windows - now, - gzilla_bw_abort_all aborts all bytesinks in a window. - - diff -urN dillo-0.6.6/Makefile dillo2-0.6.6/Makefile --- dillo-0.6.6/Makefile 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/Makefile 2003-04-21 14:26:43.000000000 -0600 @@ -0,0 +1,435 @@ +# Makefile.in generated by automake 1.6.3 from Makefile.am. +# Makefile. Generated from Makefile.in by configure. + +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + +SHELL = /bin/sh + +srcdir = . +top_srcdir = . + +prefix = /usr +exec_prefix = ${prefix} + +bindir = ${exec_prefix}/bin +sbindir = ${exec_prefix}/sbin +libexecdir = ${exec_prefix}/libexec +datadir = ${prefix}/share +sysconfdir = ${prefix}/etc +sharedstatedir = ${prefix}/com +localstatedir = ${prefix}/var +libdir = ${exec_prefix}/lib +infodir = ${prefix}/info +mandir = ${prefix}/man +includedir = ${prefix}/include +oldincludedir = /usr/include +pkgdatadir = $(datadir)/dillo +pkglibdir = $(libdir)/dillo +pkgincludedir = $(includedir)/dillo +top_builddir = . + +ACLOCAL = aclocal-1.6 +AUTOCONF = autoconf +AUTOMAKE = automake-1.6 +AUTOHEADER = autoheader + +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +INSTALL = /usr/bin/install -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_SCRIPT = ${INSTALL} +INSTALL_HEADER = $(INSTALL_DATA) +transform = s,x,x, +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : + +EXEEXT = +OBJEXT = o +PATH_SEPARATOR = : +AMTAR = tar +AWK = gawk +CC = gcc +DEPDIR = .deps +INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s +LIBJPEG_LIB = -ljpeg +PACKAGE = dillo +PKG_CONFIG = /usr/bin/pkg-config +RANLIB = ranlib +STRIP = +VERSION = 0.6.6 +am__include = include +am__quote = +install_sh = /home/pb/dillo2/install-sh +src = +SUBDIRS = doc src + +EXTRA_DIST = ChangeLog.old dillorc +subdir = . +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = config.h +CONFIG_CLEAN_FILES = +DIST_SOURCES = + +RECURSIVE_TARGETS = info-recursive dvi-recursive install-info-recursive \ + uninstall-info-recursive all-recursive install-data-recursive \ + install-exec-recursive installdirs-recursive install-recursive \ + uninstall-recursive check-recursive installcheck-recursive +DIST_COMMON = README AUTHORS COPYING ChangeLog INSTALL Makefile.am \ + Makefile.in NEWS aclocal.m4 config.h.in configure configure.in \ + depcomp install-sh missing mkinstalldirs +DIST_SUBDIRS = $(SUBDIRS) +all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +.SUFFIXES: + +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe) + +$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck +$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) + cd $(srcdir) && $(AUTOCONF) + +$(ACLOCAL_M4): configure.in + cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) + +config.h: stamp-h1 + @if test ! -f $@; then \ + rm -f stamp-h1; \ + $(MAKE) stamp-h1; \ + else :; fi + +stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status + @rm -f stamp-h1 + cd $(top_builddir) && $(SHELL) ./config.status config.h + +$(srcdir)/config.h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOHEADER) + touch $(srcdir)/config.h.in + +distclean-hdr: + -rm -f config.h stamp-h1 +uninstall-info-am: + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @set fnord $$MAKEFLAGS; amf=$$2; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +mostlyclean-recursive clean-recursive distclean-recursive \ +maintainer-clean-recursive: + @set fnord $$MAKEFLAGS; amf=$$2; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +ETAGS = etags +ETAGSFLAGS = + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + mkid -fID $$unique + +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$tags$$unique" \ + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + +top_distdir = . +distdir = $(PACKAGE)-$(VERSION) + +am__remove_distdir = \ + { test ! -d $(distdir) \ + || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -fr $(distdir); }; } + +GZIP_ENV = --best +distcleancheck_listfiles = find . -type f -print + +distdir: $(DISTFILES) + $(am__remove_distdir) + mkdir $(distdir) + @list='$(DISTFILES)'; for file in $$list; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ + if test -d $$d/$$file; then \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" \ + distdir=../$(distdir)/$$subdir \ + distdir) \ + || exit 1; \ + fi; \ + done + -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r $(distdir) +dist-gzip: distdir + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +dist dist-all: distdir + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + $(am__remove_distdir) + GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - + chmod -R a-w $(distdir); chmod a+w $(distdir) + mkdir $(distdir)/=build + mkdir $(distdir)/=inst + chmod a-w $(distdir) + dc_install_base=`$(am__cd) $(distdir)/=inst && pwd` \ + && cd $(distdir)/=build \ + && ../configure --srcdir=.. --prefix=$$dc_install_base \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && (test `find $$dc_install_base -type f -print | wc -l` -le 1 \ + || { echo "ERROR: files left after uninstall:" ; \ + find $$dc_install_base -type f -print ; \ + exit 1; } >&2 ) \ + && $(MAKE) $(AM_MAKEFLAGS) dist-gzip \ + && rm -f $(distdir).tar.gz \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck + $(am__remove_distdir) + @echo "$(distdir).tar.gz is ready for distribution" | \ + sed 'h;s/./=/g;p;x;p;x' +distcleancheck: distclean + if test '$(srcdir)' = . ; then \ + echo "ERROR: distcleancheck can only run from a VPATH build" ; \ + exit 1 ; \ + fi + test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left after distclean:" ; \ + $(distcleancheck_listfiles) ; \ + exit 1; } >&2 +check-am: all-am +check: check-recursive +all-am: Makefile config.h +installdirs: installdirs-recursive +installdirs-am: + +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic mostlyclean-am + +distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) +distclean-am: clean-am distclean-generic distclean-hdr distclean-tags + +dvi: dvi-recursive + +dvi-am: + +info: info-recursive + +info-am: + +install-data-am: install-data-local + +install-exec-am: + +install-info: install-info-recursive + +install-man: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf autom4te.cache +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic + +uninstall-am: uninstall-info-am uninstall-local + +uninstall-info: uninstall-info-recursive + +.PHONY: $(RECURSIVE_TARGETS) GTAGS all all-am check check-am clean \ + clean-generic clean-recursive dist dist-all dist-gzip distcheck \ + distclean distclean-generic distclean-hdr distclean-recursive \ + distclean-tags distcleancheck distdir dvi dvi-am dvi-recursive \ + info info-am info-recursive install install-am install-data \ + install-data-am install-data-local install-data-recursive \ + install-exec install-exec-am install-exec-recursive \ + install-info install-info-am install-info-recursive install-man \ + install-recursive install-strip installcheck installcheck-am \ + installdirs installdirs-am installdirs-recursive \ + maintainer-clean maintainer-clean-generic \ + maintainer-clean-recursive mostlyclean mostlyclean-generic \ + mostlyclean-recursive tags tags-recursive uninstall \ + uninstall-am uninstall-info-am uninstall-info-recursive \ + uninstall-local uninstall-recursive + + +install-data-local: dillorc + -if [ -d $(DESTDIR)$(sysconfdir) ]; then \ + $(INSTALL_DATA) --backup=t $(srcdir)/dillorc $(DESTDIR)$(sysconfdir)/; \ + elif [ -d /etc/ ]; then \ + $(INSTALL_DATA) --backup=t $(srcdir)/dillorc /etc/; \ + fi + +uninstall-local: + -if [ -d $(DESTDIR)$(sysconfdir) ]; then \ + rm -f $(DESTDIR)$(sysconfdir)/dillorc*; \ + elif [ -d /etc/ ]; then \ + rm -f /etc/dillorc* + fi +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -urN dillo-0.6.6/Makefile.am dillo2-0.6.6/Makefile.am --- dillo-0.6.6/Makefile.am 2002-02-14 06:48:46.000000000 -0700 +++ dillo2-0.6.6/Makefile.am 2003-04-21 12:35:04.000000000 -0600 @@ -1,6 +1,6 @@ SUBDIRS = doc src -EXTRA_DIST = ChangeLog dillorc +EXTRA_DIST = ChangeLog.old dillorc install-data-local: dillorc -if [ -d $(DESTDIR)$(sysconfdir) ]; then \ diff -urN dillo-0.6.6/Makefile.in dillo2-0.6.6/Makefile.in --- dillo-0.6.6/Makefile.in 2002-05-29 15:02:18.000000000 -0600 +++ dillo2-0.6.6/Makefile.in 2003-04-21 14:25:02.000000000 -0600 @@ -1,6 +1,8 @@ -# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am +# Makefile.in generated by automake 1.6.3 from Makefile.am. +# @configure_input@ -# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -10,7 +12,7 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. - +@SET_MAKE@ SHELL = @SHELL@ srcdir = @srcdir@ @@ -31,13 +33,9 @@ mandir = @mandir@ includedir = @includedir@ oldincludedir = /usr/include - -DESTDIR = - pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ - top_builddir = . ACLOCAL = @ACLOCAL@ @@ -45,90 +43,97 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_HEADER = $(INSTALL_DATA) transform = @program_transform_name@ - NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : + +EXEEXT = @EXEEXT@ +OBJEXT = @OBJEXT@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +AMTAR = @AMTAR@ +AWK = @AWK@ CC = @CC@ -GTK_CFLAGS = @GTK_CFLAGS@ -GTK_CONFIG = @GTK_CONFIG@ -GTK_LIBS = @GTK_LIBS@ +DEPDIR = @DEPDIR@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LIBJPEG_LIB = @LIBJPEG_LIB@ -MAKEINFO = @MAKEINFO@ PACKAGE = @PACKAGE@ +PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ +STRIP = @STRIP@ VERSION = @VERSION@ -datadir = @datadir@ +am__include = @am__include@ +am__quote = @am__quote@ +install_sh = @install_sh@ src = @src@ - SUBDIRS = doc src -EXTRA_DIST = ChangeLog dillorc +EXTRA_DIST = ChangeLog.old dillorc +subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = -DIST_COMMON = README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \ -Makefile.am Makefile.in NEWS aclocal.m4 config.h.in configure \ -configure.in install-sh missing mkinstalldirs - +CONFIG_CLEAN_FILES = +DIST_SOURCES = -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +RECURSIVE_TARGETS = info-recursive dvi-recursive install-info-recursive \ + uninstall-info-recursive all-recursive install-data-recursive \ + install-exec-recursive installdirs-recursive install-recursive \ + uninstall-recursive check-recursive installcheck-recursive +DIST_COMMON = README AUTHORS COPYING ChangeLog INSTALL Makefile.am \ + Makefile.in NEWS aclocal.m4 config.h.in configure configure.in \ + depcomp install-sh missing mkinstalldirs +DIST_SUBDIRS = $(SUBDIRS) +all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive -TAR = tar -GZIP_ENV = --best -all: all-redirect .SUFFIXES: -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) - cd $(top_builddir) \ - && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe) -$(ACLOCAL_M4): configure.in - cd $(srcdir) && $(ACLOCAL) - -config.status: $(srcdir)/configure.in $(CONFIG_STATUS_DEPENDENCIES) +$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck -$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) +$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) cd $(srcdir) && $(AUTOCONF) -config.h: stamp-h - @if test ! -f $@; then \ - rm -f stamp-h; \ - $(MAKE) stamp-h; \ - else :; fi -stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES= CONFIG_HEADERS=config.h \ - $(SHELL) ./config.status - @echo timestamp > stamp-h 2> /dev/null -$(srcdir)/config.h.in: $(srcdir)/stamp-h.in +$(ACLOCAL_M4): configure.in + cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) + +config.h: stamp-h1 @if test ! -f $@; then \ - rm -f $(srcdir)/stamp-h.in; \ - $(MAKE) $(srcdir)/stamp-h.in; \ + rm -f stamp-h1; \ + $(MAKE) stamp-h1; \ else :; fi -$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOHEADER) - @echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null -mostlyclean-hdr: +stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status + @rm -f stamp-h1 + cd $(top_builddir) && $(SHELL) ./config.status config.h -clean-hdr: +$(srcdir)/config.h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOHEADER) + touch $(srcdir)/config.h.in distclean-hdr: - -rm -f config.h - -maintainer-clean-hdr: + -rm -f config.h stamp-h1 +uninstall-info-am: # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -136,13 +141,8 @@ # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. - -@SET_MAKE@ - -all-recursive install-data-recursive install-exec-recursive \ -installdirs-recursive install-recursive uninstall-recursive \ -check-recursive installcheck-recursive info-recursive dvi-recursive: - @set fnord $(MAKEFLAGS); amf=$$2; \ +$(RECURSIVE_TARGETS): + @set fnord $$MAKEFLAGS; amf=$$2; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ @@ -162,13 +162,18 @@ mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive: - @set fnord $(MAKEFLAGS); amf=$$2; \ + @set fnord $$MAKEFLAGS; amf=$$2; \ dot_seen=no; \ - rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ - rev="$$subdir $$rev"; \ - test "$$subdir" = "." && dot_seen=yes; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ done; \ - test "$$dot_seen" = "no" && rev=". $$rev"; \ + rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ @@ -185,176 +190,231 @@ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done +ETAGS = etags +ETAGSFLAGS = + tags: TAGS -ID: $(HEADERS) $(SOURCES) $(LISP) - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ - here=`pwd` && cd $(srcdir) \ - && mkid -f$$here/ID $$unique $(LISP) + mkid -fID $$unique -TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP) +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ + if test "$$subdir" = .; then :; else \ test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ - fi; \ + fi; \ done; \ - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ + list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ - test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \ - || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS) - -mostlyclean-tags: - -clean-tags: + test -z "$(ETAGS_ARGS)$$tags$$unique" \ + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here distclean-tags: - -rm -f TAGS ID - -maintainer-clean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +top_distdir = . distdir = $(PACKAGE)-$(VERSION) -top_distdir = $(distdir) -# This target untars the dist file and tries a VPATH configuration. Then -# it guarantees that the distribution is self-contained by making another -# tarfile. -distcheck: dist - -rm -rf $(distdir) - GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz - mkdir $(distdir)/=build - mkdir $(distdir)/=inst - dc_install_base=`cd $(distdir)/=inst && pwd`; \ - cd $(distdir)/=build \ - && ../configure --srcdir=.. --prefix=$$dc_install_base \ - && $(MAKE) $(AM_MAKEFLAGS) \ - && $(MAKE) $(AM_MAKEFLAGS) dvi \ - && $(MAKE) $(AM_MAKEFLAGS) check \ - && $(MAKE) $(AM_MAKEFLAGS) install \ - && $(MAKE) $(AM_MAKEFLAGS) installcheck \ - && $(MAKE) $(AM_MAKEFLAGS) dist - -rm -rf $(distdir) - @banner="$(distdir).tar.gz is ready for distribution"; \ - dashes=`echo "$$banner" | sed s/./=/g`; \ - echo "$$dashes"; \ - echo "$$banner"; \ - echo "$$dashes" -dist: distdir - -chmod -R a+r $(distdir) - GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) - -rm -rf $(distdir) -dist-all: distdir - -chmod -R a+r $(distdir) - GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) - -rm -rf $(distdir) +am__remove_distdir = \ + { test ! -d $(distdir) \ + || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -fr $(distdir); }; } + +GZIP_ENV = --best +distcleancheck_listfiles = find . -type f -print + distdir: $(DISTFILES) - -rm -rf $(distdir) + $(am__remove_distdir) mkdir $(distdir) - -chmod 777 $(distdir) - here=`cd $(top_builddir) && pwd`; \ - top_distdir=`cd $(distdir) && pwd`; \ - distdir=`cd $(distdir) && pwd`; \ - cd $(top_srcdir) \ - && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile - @for file in $(DISTFILES); do \ - d=$(srcdir); \ + @list='$(DISTFILES)'; for file in $$list; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ if test -d $$d/$$file; then \ - cp -pr $$d/$$file $(distdir)/$$file; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ fi; \ done - for subdir in $(SUBDIRS); do \ + list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d $(distdir)/$$subdir \ || mkdir $(distdir)/$$subdir \ || exit 1; \ - chmod 777 $(distdir)/$$subdir; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" \ + distdir=../$(distdir)/$$subdir \ + distdir) \ || exit 1; \ fi; \ done -info-am: -info: info-recursive -dvi-am: -dvi: dvi-recursive + -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r $(distdir) +dist-gzip: distdir + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +dist dist-all: distdir + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + $(am__remove_distdir) + GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - + chmod -R a-w $(distdir); chmod a+w $(distdir) + mkdir $(distdir)/=build + mkdir $(distdir)/=inst + chmod a-w $(distdir) + dc_install_base=`$(am__cd) $(distdir)/=inst && pwd` \ + && cd $(distdir)/=build \ + && ../configure --srcdir=.. --prefix=$$dc_install_base \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && (test `find $$dc_install_base -type f -print | wc -l` -le 1 \ + || { echo "ERROR: files left after uninstall:" ; \ + find $$dc_install_base -type f -print ; \ + exit 1; } >&2 ) \ + && $(MAKE) $(AM_MAKEFLAGS) dist-gzip \ + && rm -f $(distdir).tar.gz \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck + $(am__remove_distdir) + @echo "$(distdir).tar.gz is ready for distribution" | \ + sed 'h;s/./=/g;p;x;p;x' +distcleancheck: distclean + if test '$(srcdir)' = . ; then \ + echo "ERROR: distcleancheck can only run from a VPATH build" ; \ + exit 1 ; \ + fi + test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left after distclean:" ; \ + $(distcleancheck_listfiles) ; \ + exit 1; } >&2 check-am: all-am check: check-recursive -installcheck-am: -installcheck: installcheck-recursive -all-recursive-am: config.h - $(MAKE) $(AM_MAKEFLAGS) all-recursive +all-am: Makefile config.h +installdirs: installdirs-recursive +installdirs-am: -install-exec-am: +install: install-recursive install-exec: install-exec-recursive - -install-data-am: install-data-local install-data: install-data-recursive +uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am -install: install-recursive -uninstall-am: uninstall-local -uninstall: uninstall-recursive -all-am: Makefile config.h -all-redirect: all-recursive-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install -installdirs: installdirs-recursive -installdirs-am: - +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -rm -f Makefile $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log stamp-h stamp-h[0-9]* maintainer-clean-generic: -mostlyclean-am: mostlyclean-hdr mostlyclean-tags mostlyclean-generic + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive -mostlyclean: mostlyclean-recursive +clean-am: clean-generic mostlyclean-am -clean-am: clean-hdr clean-tags clean-generic mostlyclean-am +distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) +distclean-am: clean-am distclean-generic distclean-hdr distclean-tags -clean: clean-recursive +dvi: dvi-recursive -distclean-am: distclean-hdr distclean-tags distclean-generic clean-am +dvi-am: -distclean: distclean-recursive - -rm -f config.status +info: info-recursive -maintainer-clean-am: maintainer-clean-hdr maintainer-clean-tags \ - maintainer-clean-generic distclean-am - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." +info-am: + +install-data-am: install-data-local + +install-exec-am: + +install-info: install-info-recursive + +install-man: + +installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -f config.status + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf autom4te.cache +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic -.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \ -install-data-recursive uninstall-data-recursive install-exec-recursive \ -uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ -all-recursive check-recursive installcheck-recursive info-recursive \ -dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ -maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ -distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ -dvi-am dvi check check-am installcheck-am installcheck all-recursive-am \ -install-exec-am install-exec install-data-local install-data-am \ -install-data install-am install uninstall-local uninstall-am uninstall \ -all-redirect all-am all installdirs-am installdirs mostlyclean-generic \ -distclean-generic clean-generic maintainer-clean-generic clean \ -mostlyclean distclean maintainer-clean +uninstall-am: uninstall-info-am uninstall-local + +uninstall-info: uninstall-info-recursive + +.PHONY: $(RECURSIVE_TARGETS) GTAGS all all-am check check-am clean \ + clean-generic clean-recursive dist dist-all dist-gzip distcheck \ + distclean distclean-generic distclean-hdr distclean-recursive \ + distclean-tags distcleancheck distdir dvi dvi-am dvi-recursive \ + info info-am info-recursive install install-am install-data \ + install-data-am install-data-local install-data-recursive \ + install-exec install-exec-am install-exec-recursive \ + install-info install-info-am install-info-recursive install-man \ + install-recursive install-strip installcheck installcheck-am \ + installdirs installdirs-am installdirs-recursive \ + maintainer-clean maintainer-clean-generic \ + maintainer-clean-recursive mostlyclean mostlyclean-generic \ + mostlyclean-recursive tags tags-recursive uninstall \ + uninstall-am uninstall-info-am uninstall-info-recursive \ + uninstall-local uninstall-recursive install-data-local: dillorc @@ -370,7 +430,6 @@ elif [ -d /etc/ ]; then \ rm -f /etc/dillorc* fi - # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -urN dillo-0.6.6/aclocal.m4 dillo2-0.6.6/aclocal.m4 --- dillo-0.6.6/aclocal.m4 2002-05-29 15:02:15.000000000 -0600 +++ dillo2-0.6.6/aclocal.m4 2003-04-21 14:24:42.000000000 -0600 @@ -1,70 +1,233 @@ -dnl aclocal.m4 generated automatically by aclocal 1.4-p4 +# aclocal.m4 generated automatically by aclocal 1.6.3 -*- Autoconf -*- -dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without -dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A -dnl PARTICULAR PURPOSE. - -# Do all the work for Automake. This macro actually does too much -- -# some checks are only needed if your package does certain things. -# But this isn't really a big deal. +# Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +# Do all the work for Automake. -*- Autoconf -*- + +# This macro actually does too much some checks are only needed if +# your package does certain things. But this isn't really a big deal. + +# Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 8 + +# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be +# written in clear, in which case automake, when reading aclocal.m4, +# will think it sees a *use*, and therefore will trigger all it's +# C support machinery. Also note that it means that autoscan, seeing +# CC etc. in the Makefile, will ask for an AC_PROG_CC use... + + +AC_PREREQ([2.52]) + +# Autoconf 2.50 wants to disallow AM_ names. We explicitly allow +# the ones we care about. +m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl + +# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) +# AM_INIT_AUTOMAKE([OPTIONS]) +# ----------------------------------------------- +# The call with PACKAGE and VERSION arguments is the old style +# call (pre autoconf-2.50), which is being phased out. PACKAGE +# and VERSION should now be passed to AC_INIT and removed from +# the call to AM_INIT_AUTOMAKE. +# We support both call styles for the transition. After +# the next Automake release, Autoconf can make the AC_INIT +# arguments mandatory, and then we can depend on a new Autoconf +# release and drop the old call support. +AC_DEFUN([AM_INIT_AUTOMAKE], +[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl + AC_REQUIRE([AC_PROG_INSTALL])dnl +# test to see if srcdir already configured +if test "`cd $srcdir && pwd`" != "`pwd`" && + test -f $srcdir/config.status; then + AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) +fi -# serial 1 +# Define the identity of the package. +dnl Distinguish between old-style and new-style calls. +m4_ifval([$2], +[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl + AC_SUBST([PACKAGE], [$1])dnl + AC_SUBST([VERSION], [$2])], +[_AM_SET_OPTIONS([$1])dnl + AC_SUBST([PACKAGE], [AC_PACKAGE_TARNAME])dnl + AC_SUBST([VERSION], [AC_PACKAGE_VERSION])])dnl + +_AM_IF_OPTION([no-define],, +[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) + AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl + +# Some tools Automake needs. +AC_REQUIRE([AM_SANITY_CHECK])dnl +AC_REQUIRE([AC_ARG_PROGRAM])dnl +AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) +AM_MISSING_PROG(AUTOCONF, autoconf) +AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) +AM_MISSING_PROG(AUTOHEADER, autoheader) +AM_MISSING_PROG(MAKEINFO, makeinfo) +AM_MISSING_PROG(AMTAR, tar) +AM_PROG_INSTALL_SH +AM_PROG_INSTALL_STRIP +# We need awk for the "check" target. The system "awk" is bad on +# some platforms. +AC_REQUIRE([AC_PROG_AWK])dnl +AC_REQUIRE([AC_PROG_MAKE_SET])dnl + +_AM_IF_OPTION([no-dependencies],, +[AC_PROVIDE_IFELSE([AC_PROG_][CC], + [_AM_DEPENDENCIES(CC)], + [define([AC_PROG_][CC], + defn([AC_PROG_][CC])[_AM_DEPENDENCIES(CC)])])dnl +AC_PROVIDE_IFELSE([AC_PROG_][CXX], + [_AM_DEPENDENCIES(CXX)], + [define([AC_PROG_][CXX], + defn([AC_PROG_][CXX])[_AM_DEPENDENCIES(CXX)])])dnl +]) +]) -dnl Usage: -dnl AM_INIT_AUTOMAKE(package,version, [no-define]) +# Copyright 2002 Free Software Foundation, Inc. -AC_DEFUN(AM_INIT_AUTOMAKE, -[AC_REQUIRE([AC_PROG_INSTALL]) -PACKAGE=[$1] -AC_SUBST(PACKAGE) -VERSION=[$2] -AC_SUBST(VERSION) -dnl test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then - AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) -fi -ifelse([$3],, -AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) -AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) -AC_REQUIRE([AM_SANITY_CHECK]) -AC_REQUIRE([AC_ARG_PROGRAM]) -dnl FIXME This is truly gross. -missing_dir=`cd $ac_aux_dir && pwd` -AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) -AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) -AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) -AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) -AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) -AC_REQUIRE([AC_PROG_MAKE_SET])]) +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA + +# AM_AUTOMAKE_VERSION(VERSION) +# ---------------------------- +# Automake X.Y traces this macro to ensure aclocal.m4 has been +# generated from the m4 files accompanying Automake X.Y. +AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.6"]) + +# AM_SET_CURRENT_AUTOMAKE_VERSION +# ------------------------------- +# Call AM_AUTOMAKE_VERSION so it can be traced. +# This function is AC_REQUIREd by AC_INIT_AUTOMAKE. +AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], + [AM_AUTOMAKE_VERSION([1.6.3])]) + +# Helper functions for option handling. -*- Autoconf -*- + +# Copyright 2001, 2002 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 2 + +# _AM_MANGLE_OPTION(NAME) +# ----------------------- +AC_DEFUN([_AM_MANGLE_OPTION], +[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) + +# _AM_SET_OPTION(NAME) +# ------------------------------ +# Set option NAME. Presently that only means defining a flag for this option. +AC_DEFUN([_AM_SET_OPTION], +[m4_define(_AM_MANGLE_OPTION([$1]), 1)]) + +# _AM_SET_OPTIONS(OPTIONS) +# ---------------------------------- +# OPTIONS is a space-separated list of Automake options. +AC_DEFUN([_AM_SET_OPTIONS], +[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) + +# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) +# ------------------------------------------- +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. +AC_DEFUN([_AM_IF_OPTION], +[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # # Check to make sure that the build environment is sane. # -AC_DEFUN(AM_SANITY_CHECK, +# Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 3 + +# AM_SANITY_CHECK +# --------------- +AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Just in case sleep 1 -echo timestamp > conftestfile +echo timestamp > conftest.file # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( - set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` - if test "[$]*" = "X"; then + set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` + if test "$[*]" = "X"; then # -L didn't work. - set X `ls -t $srcdir/configure conftestfile` + set X `ls -t $srcdir/configure conftest.file` fi - if test "[$]*" != "X $srcdir/configure conftestfile" \ - && test "[$]*" != "X conftestfile $srcdir/configure"; then + rm -f conftest.file + if test "$[*]" != "X $srcdir/configure conftest.file" \ + && test "$[*]" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a @@ -74,7 +237,7 @@ alias in your environment]) fi - test "[$]2" = conftestfile + test "$[2]" = conftest.file ) then # Ok. @@ -83,48 +246,611 @@ AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi -rm -f conftest* AC_MSG_RESULT(yes)]) -dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) -dnl The program must properly implement --version. -AC_DEFUN(AM_MISSING_PROG, -[AC_MSG_CHECKING(for working $2) -# Run test in a subshell; some versions of sh will print an error if -# an executable is not found, even if stderr is redirected. -# Redirect stdin to placate older versions of autoconf. Sigh. -if ($2 --version) < /dev/null > /dev/null 2>&1; then - $1=$2 - AC_MSG_RESULT(found) +# -*- Autoconf -*- + + +# Copyright 1997, 1999, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 3 + +# AM_MISSING_PROG(NAME, PROGRAM) +# ------------------------------ +AC_DEFUN([AM_MISSING_PROG], +[AC_REQUIRE([AM_MISSING_HAS_RUN]) +$1=${$1-"${am_missing_run}$2"} +AC_SUBST($1)]) + + +# AM_MISSING_HAS_RUN +# ------------------ +# Define MISSING if not defined so far and test if it supports --run. +# If it does, set am_missing_run to use it, otherwise, to nothing. +AC_DEFUN([AM_MISSING_HAS_RUN], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" +# Use eval to expand $SHELL +if eval "$MISSING --run true"; then + am_missing_run="$MISSING --run " else - $1="$3/missing $2" - AC_MSG_RESULT(missing) + am_missing_run= + AC_MSG_WARN([`missing' script is too old or missing]) fi -AC_SUBST($1)]) +]) + +# AM_AUX_DIR_EXPAND + +# Copyright 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets +# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to +# `$srcdir', `$srcdir/..', or `$srcdir/../..'. +# +# Of course, Automake must honor this variable whenever it calls a +# tool from the auxiliary directory. The problem is that $srcdir (and +# therefore $ac_aux_dir as well) can be either absolute or relative, +# depending on how configure is run. This is pretty annoying, since +# it makes $ac_aux_dir quite unusable in subdirectories: in the top +# source directory, any form will work fine, but in subdirectories a +# relative path needs to be adjusted first. +# +# $ac_aux_dir/missing +# fails when called from a subdirectory if $ac_aux_dir is relative +# $top_srcdir/$ac_aux_dir/missing +# fails if $ac_aux_dir is absolute, +# fails when called from a subdirectory in a VPATH build with +# a relative $ac_aux_dir +# +# The reason of the latter failure is that $top_srcdir and $ac_aux_dir +# are both prefixed by $srcdir. In an in-source build this is usually +# harmless because $srcdir is `.', but things will broke when you +# start a VPATH build or use an absolute $srcdir. +# +# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, +# iff we strip the leading $srcdir from $ac_aux_dir. That would be: +# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` +# and then we would define $MISSING as +# MISSING="\${SHELL} $am_aux_dir/missing" +# This will work as long as MISSING is not called from configure, because +# unfortunately $(top_srcdir) has no meaning in configure. +# However there are other variables, like CC, which are often used in +# configure, and could therefore not use this "fixed" $ac_aux_dir. +# +# Another solution, used here, is to always expand $ac_aux_dir to an +# absolute PATH. The drawback is that using absolute paths prevent a +# configured tree to be moved without reconfiguration. + +# Rely on autoconf to set up CDPATH properly. +AC_PREREQ([2.50]) + +AC_DEFUN([AM_AUX_DIR_EXPAND], [ +# expand $ac_aux_dir to an absolute path +am_aux_dir=`cd $ac_aux_dir && pwd` +]) + +# AM_PROG_INSTALL_SH +# ------------------ +# Define $install_sh. + +# Copyright 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +AC_DEFUN([AM_PROG_INSTALL_SH], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +install_sh=${install_sh-"$am_aux_dir/install-sh"} +AC_SUBST(install_sh)]) + +# AM_PROG_INSTALL_STRIP + +# Copyright 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# One issue with vendor `install' (even GNU) is that you can't +# specify the program used to strip binaries. This is especially +# annoying in cross-compiling environments, where the build's strip +# is unlikely to handle the host's binaries. +# Fortunately install-sh will honor a STRIPPROG variable, so we +# always use install-sh in `make install-strip', and initialize +# STRIPPROG with the value of the STRIP variable (set by the user). +AC_DEFUN([AM_PROG_INSTALL_STRIP], +[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the `STRIP' environment variable to overrule this program. +dnl Don't test for $cross_compiling = yes, because it might be `maybe'. +if test "$cross_compiling" != no; then + AC_CHECK_TOOL([STRIP], [strip], :) +fi +INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" +AC_SUBST([INSTALL_STRIP_PROGRAM])]) + +# serial 4 -*- Autoconf -*- + +# Copyright 1999, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + + +# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be +# written in clear, in which case automake, when reading aclocal.m4, +# will think it sees a *use*, and therefore will trigger all it's +# C support machinery. Also note that it means that autoscan, seeing +# CC etc. in the Makefile, will ask for an AC_PROG_CC use... + + + +# _AM_DEPENDENCIES(NAME) +# ---------------------- +# See how the compiler implements dependency checking. +# NAME is "CC", "CXX", "GCJ", or "OBJC". +# We try a few techniques and use that to set a single cache variable. +# +# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was +# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular +# dependency, and given that the user is not expected to run this macro, +# just rely on AC_PROG_CC. +AC_DEFUN([_AM_DEPENDENCIES], +[AC_REQUIRE([AM_SET_DEPDIR])dnl +AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl +AC_REQUIRE([AM_MAKE_INCLUDE])dnl +AC_REQUIRE([AM_DEP_TRACK])dnl + +ifelse([$1], CC, [depcc="$CC" am_compiler_list=], + [$1], CXX, [depcc="$CXX" am_compiler_list=], + [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], + [depcc="$$1" am_compiler_list=]) + +AC_CACHE_CHECK([dependency style of $depcc], + [am_cv_$1_dependencies_compiler_type], +[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + + am_cv_$1_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` + fi + for depmode in $am_compiler_list; do + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + echo '#include "conftest.h"' > conftest.c + echo 'int i;' > conftest.h + echo "${am__include} ${am__quote}conftest.Po${am__quote}" > confmf + + case $depmode in + nosideeffect) + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + none) break ;; + esac + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. + if depmode=$depmode \ + source=conftest.c object=conftest.o \ + depfile=conftest.Po tmpdepfile=conftest.TPo \ + $SHELL ./depcomp $depcc -c conftest.c -o conftest.o >/dev/null 2>&1 && + grep conftest.h conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + am_cv_$1_dependencies_compiler_type=$depmode + break + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_$1_dependencies_compiler_type=none +fi +]) +AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) +]) -# Like AC_CONFIG_HEADER, but automatically create stamp file. -AC_DEFUN(AM_CONFIG_HEADER, -[AC_PREREQ([2.12]) -AC_CONFIG_HEADER([$1]) -dnl When config.status generates a header, we must update the stamp-h file. -dnl This file resides in the same directory as the config header -dnl that is generated. We must strip everything past the first ":", -dnl and everything past the last "/". -AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl -ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, -<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, -<<am_indx=1 -for am_file in <<$1>>; do - case " <<$>>CONFIG_HEADERS " in - *" <<$>>am_file "*<<)>> - echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx - ;; - esac - am_indx=`expr "<<$>>am_indx" + 1` -done<<>>dnl>>) -changequote([,]))]) +# AM_SET_DEPDIR +# ------------- +# Choose a directory name for dependency files. +# This macro is AC_REQUIREd in _AM_DEPENDENCIES +AC_DEFUN([AM_SET_DEPDIR], +[rm -f .deps 2>/dev/null +mkdir .deps 2>/dev/null +if test -d .deps; then + DEPDIR=.deps +else + # MS-DOS does not allow filenames that begin with a dot. + DEPDIR=_deps +fi +rmdir .deps 2>/dev/null +AC_SUBST([DEPDIR]) +]) + + +# AM_DEP_TRACK +# ------------ +AC_DEFUN([AM_DEP_TRACK], +[AC_ARG_ENABLE(dependency-tracking, +[ --disable-dependency-tracking Speeds up one-time builds + --enable-dependency-tracking Do not reject slow dependency extractors]) +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' +fi +AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) +AC_SUBST([AMDEPBACKSLASH]) +]) + +# Generate code to set up dependency tracking. -*- Autoconf -*- + +# Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +#serial 2 + +# _AM_OUTPUT_DEPENDENCY_COMMANDS +# ------------------------------ +AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], +[for mf in $CONFIG_FILES; do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # So let's grep whole file. + if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then + dirpart=`AS_DIRNAME("$mf")` + else + continue + fi + grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue + # Extract the definition of DEP_FILES from the Makefile without + # running `make'. + DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` + test -z "$DEPDIR" && continue + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n -e '/^U = / s///p' < "$mf"` + test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" + # We invoke sed twice because it is the simplest approach to + # changing $(DEPDIR) to its actual value in the expansion. + for file in `sed -n -e ' + /^DEP_FILES = .*\\\\$/ { + s/^DEP_FILES = // + :loop + s/\\\\$// + p + n + /\\\\$/ b loop + p + } + /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`AS_DIRNAME(["$file"])` + AS_MKDIR_P([$dirpart/$fdir]) + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done +done +])# _AM_OUTPUT_DEPENDENCY_COMMANDS + + +# AM_OUTPUT_DEPENDENCY_COMMANDS +# ----------------------------- +# This macro should only be invoked once -- use via AC_REQUIRE. +# +# This code is only required when automatic dependency tracking +# is enabled. FIXME. This creates each `.P' file that we will +# need in order to bootstrap the dependency handling code. +AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], +[AC_CONFIG_COMMANDS([depfiles], + [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], + [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) +]) + +# Copyright 2001 Free Software Foundation, Inc. -*- Autoconf -*- + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 2 + +# AM_MAKE_INCLUDE() +# ----------------- +# Check to see how make treats includes. +AC_DEFUN([AM_MAKE_INCLUDE], +[am_make=${MAKE-make} +cat > confinc << 'END' +doit: + @echo done +END +# If we don't find an include directive, just comment out the code. +AC_MSG_CHECKING([for style of include used by $am_make]) +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# We grep out `Entering directory' and `Leaving directory' +# messages which can occur if `w' ends up in MAKEFLAGS. +# In particular we don't look at `^make:' because GNU make might +# be invoked under some other name (usually "gmake"), in which +# case it prints its new name instead of `make'. +if test "`$am_make -s -f confmf 2> /dev/null | fgrep -v 'ing directory'`" = "done"; then + am__include=include + am__quote= + _am_result=GNU +fi +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then + am__include=.include + am__quote="\"" + _am_result=BSD + fi +fi +AC_SUBST(am__include) +AC_SUBST(am__quote) +AC_MSG_RESULT($_am_result) +rm -f confinc confmf +]) +# AM_CONDITIONAL -*- Autoconf -*- + +# Copyright 1997, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# serial 5 + +AC_PREREQ(2.52) + +# AM_CONDITIONAL(NAME, SHELL-CONDITION) +# ------------------------------------- +# Define a conditional. +AC_DEFUN([AM_CONDITIONAL], +[ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl +AC_SUBST([$1_TRUE]) +AC_SUBST([$1_FALSE]) +if $2; then + $1_TRUE= + $1_FALSE='#' +else + $1_TRUE='#' + $1_FALSE= +fi +AC_CONFIG_COMMANDS_PRE( +[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then + AC_MSG_ERROR([conditional \"$1\" was never defined. +Usually this means the macro was only invoked conditionally.]) +fi])]) + +# Like AC_CONFIG_HEADER, but automatically create stamp file. -*- Autoconf -*- + +# Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +AC_PREREQ([2.52]) + +# serial 6 + +# When config.status generates a header, we must update the stamp-h file. +# This file resides in the same directory as the config header +# that is generated. We must strip everything past the first ":", +# and everything past the last "/". + +# _AM_DIRNAME(PATH) +# ----------------- +# Like AS_DIRNAME, only do it during macro expansion +AC_DEFUN([_AM_DIRNAME], + [m4_if(regexp([$1], [^.*[^/]//*[^/][^/]*/*$]), -1, + m4_if(regexp([$1], [^//\([^/]\|$\)]), -1, + m4_if(regexp([$1], [^/.*]), -1, + [.], + patsubst([$1], [^\(/\).*], [\1])), + patsubst([$1], [^\(//\)\([^/].*\|$\)], [\1])), + patsubst([$1], [^\(.*[^/]\)//*[^/][^/]*/*$], [\1]))[]dnl +])# _AM_DIRNAME + + +# The stamp files are numbered to have different names. +# We could number them on a directory basis, but that's additional +# complications, let's have a unique counter. +m4_define([_AM_STAMP_Count], [0]) + + +# _AM_STAMP(HEADER) +# ----------------- +# The name of the stamp file for HEADER. +AC_DEFUN([_AM_STAMP], +[m4_define([_AM_STAMP_Count], m4_incr(_AM_STAMP_Count))dnl +AS_ESCAPE(_AM_DIRNAME(patsubst([$1], + [:.*])))/stamp-h[]_AM_STAMP_Count]) + + +# _AM_CONFIG_HEADER(HEADER[:SOURCES], COMMANDS, INIT-COMMANDS) +# ------------------------------------------------------------ +# We used to try to get a real timestamp in stamp-h. But the fear is that +# that will cause unnecessary cvs conflicts. +AC_DEFUN([_AM_CONFIG_HEADER], +[# Add the stamp file to the list of files AC keeps track of, +# along with our hook. +AC_CONFIG_HEADERS([$1], + [# update the timestamp +echo 'timestamp for $1' >"_AM_STAMP([$1])" +$2], + [$3]) +])# _AM_CONFIG_HEADER + + +# AM_CONFIG_HEADER(HEADER[:SOURCES]..., COMMANDS, INIT-COMMANDS) +# -------------------------------------------------------------- +AC_DEFUN([AM_CONFIG_HEADER], +[AC_FOREACH([_AM_File], [$1], [_AM_CONFIG_HEADER(_AM_File, [$2], [$3])]) +])# AM_CONFIG_HEADER + + +# Copyright 1996, 1997, 1999, 2000, 2001 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. # serial 1 @@ -143,7 +869,7 @@ # program @code{ansi2knr}, which comes with Ghostscript. # @end defmac -AC_DEFUN(AM_PROG_CC_STDC, +AC_DEFUN([AM_PROG_CC_STDC], [AC_REQUIRE([AC_PROG_CC]) AC_BEFORE([$0], [AC_C_INLINE]) AC_BEFORE([$0], [AC_C_CONST]) @@ -153,7 +879,7 @@ dnl FIXME: can't do this because then AC_AIX won't work due to a dnl circular dependency. dnl AC_BEFORE([$0], [AC_PROG_CPP]) -AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C) +AC_MSG_CHECKING([for ${CC-cc} option to accept ANSI C]) AC_CACHE_VAL(am_cv_prog_cc_stdc, [am_cv_prog_cc_stdc=no ac_save_CC="$CC" @@ -161,9 +887,10 @@ # breaks some systems' header files. # AIX -qlanglvl=ansi # Ultrix and OSF/1 -std1 -# HP-UX -Aa -D_HPUX_SOURCE +# HP-UX 10.20 and later -Ae +# HP-UX older versions -Aa -D_HPUX_SOURCE # SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" AC_TRY_COMPILE( @@ -205,7 +932,7 @@ if test -z "$am_cv_prog_cc_stdc"; then AC_MSG_RESULT([none needed]) else - AC_MSG_RESULT($am_cv_prog_cc_stdc) + AC_MSG_RESULT([$am_cv_prog_cc_stdc]) fi case "x$am_cv_prog_cc_stdc" in x|xno) ;; @@ -213,198 +940,61 @@ esac ]) -# Configure paths for GTK+ -# Owen Taylor 97-11-3 -dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) -dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS -dnl -AC_DEFUN(AM_PATH_GTK, -[dnl -dnl Get the cflags and libraries from the gtk-config script -dnl -AC_ARG_WITH(gtk-prefix,[ --with-gtk-prefix=PFX Prefix where GTK is installed (optional)], - gtk_config_prefix="$withval", gtk_config_prefix="") -AC_ARG_WITH(gtk-exec-prefix,[ --with-gtk-exec-prefix=PFX Exec prefix where GTK is installed (optional)], - gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="") -AC_ARG_ENABLE(gtktest, [ --disable-gtktest Do not try to compile and run a test GTK program], - , enable_gtktest=yes) - - for module in . $4 - do - case "$module" in - gthread) - gtk_config_args="$gtk_config_args gthread" - ;; - esac - done +dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not) +dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page +dnl also defines GSTUFF_PKG_ERRORS on error +AC_DEFUN(PKG_CHECK_MODULES, [ + succeeded=no - if test x$gtk_config_exec_prefix != x ; then - gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix" - if test x${GTK_CONFIG+set} != xset ; then - GTK_CONFIG=$gtk_config_exec_prefix/bin/gtk-config - fi - fi - if test x$gtk_config_prefix != x ; then - gtk_config_args="$gtk_config_args --prefix=$gtk_config_prefix" - if test x${GTK_CONFIG+set} != xset ; then - GTK_CONFIG=$gtk_config_prefix/bin/gtk-config - fi + if test -z "$PKG_CONFIG"; then + AC_PATH_PROG(PKG_CONFIG, pkg-config, no) fi - AC_PATH_PROG(GTK_CONFIG, gtk-config, no) - min_gtk_version=ifelse([$1], ,0.99.7,$1) - AC_MSG_CHECKING(for GTK - version >= $min_gtk_version) - no_gtk="" - if test "$GTK_CONFIG" = "no" ; then - no_gtk=yes + if test "$PKG_CONFIG" = "no" ; then + echo "*** The pkg-config script could not be found. Make sure it is" + echo "*** in your path, or set the PKG_CONFIG environment variable" + echo "*** to the full path to pkg-config." + echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." else - GTK_CFLAGS=`$GTK_CONFIG $gtk_config_args --cflags` - GTK_LIBS=`$GTK_CONFIG $gtk_config_args --libs` - gtk_config_major_version=`$GTK_CONFIG $gtk_config_args --version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` - gtk_config_minor_version=`$GTK_CONFIG $gtk_config_args --version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` - gtk_config_micro_version=`$GTK_CONFIG $gtk_config_args --version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` - if test "x$enable_gtktest" = "xyes" ; then - ac_save_CFLAGS="$CFLAGS" - ac_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $GTK_CFLAGS" - LIBS="$GTK_LIBS $LIBS" -dnl -dnl Now check if the installed GTK is sufficiently new. (Also sanity -dnl checks the results of gtk-config to some extent -dnl - rm -f conf.gtktest - AC_TRY_RUN([ -#include <gtk/gtk.h> -#include <stdio.h> -#include <stdlib.h> - -int -main () -{ - int major, minor, micro; - char *tmp_version; - - system ("touch conf.gtktest"); + PKG_CONFIG_MIN_VERSION=0.9.0 + if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then + AC_MSG_CHECKING(for $2) + + if $PKG_CONFIG --exists "$2" ; then + AC_MSG_RESULT(yes) + succeeded=yes + + AC_MSG_CHECKING($1_CFLAGS) + $1_CFLAGS=`$PKG_CONFIG --cflags "$2"` + AC_MSG_RESULT($$1_CFLAGS) + + AC_MSG_CHECKING($1_LIBS) + $1_LIBS=`$PKG_CONFIG --libs "$2"` + AC_MSG_RESULT($$1_LIBS) + else + $1_CFLAGS="" + $1_LIBS="" + ## If we have a custom action on failure, don't print errors, but + ## do set a variable so people can do so. + $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` + ifelse([$4], ,echo $$1_PKG_ERRORS,) + fi - /* HP/UX 9 (%@#!) writes to sscanf strings */ - tmp_version = g_strdup("$min_gtk_version"); - if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { - printf("%s, bad version string\n", "$min_gtk_version"); - exit(1); - } - - if ((gtk_major_version != $gtk_config_major_version) || - (gtk_minor_version != $gtk_config_minor_version) || - (gtk_micro_version != $gtk_config_micro_version)) - { - printf("\n*** 'gtk-config --version' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n", - $gtk_config_major_version, $gtk_config_minor_version, $gtk_config_micro_version, - gtk_major_version, gtk_minor_version, gtk_micro_version); - printf ("*** was found! If gtk-config was correct, then it is best\n"); - printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n"); - printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n"); - printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); - printf("*** required on your system.\n"); - printf("*** If gtk-config was wrong, set the environment variable GTK_CONFIG\n"); - printf("*** to point to the correct copy of gtk-config, and remove the file config.cache\n"); - printf("*** before re-running configure\n"); - } -#if defined (GTK_MAJOR_VERSION) && defined (GTK_MINOR_VERSION) && defined (GTK_MICRO_VERSION) - else if ((gtk_major_version != GTK_MAJOR_VERSION) || - (gtk_minor_version != GTK_MINOR_VERSION) || - (gtk_micro_version != GTK_MICRO_VERSION)) - { - printf("*** GTK+ header files (version %d.%d.%d) do not match\n", - GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); - printf("*** library (version %d.%d.%d)\n", - gtk_major_version, gtk_minor_version, gtk_micro_version); - } -#endif /* defined (GTK_MAJOR_VERSION) ... */ - else - { - if ((gtk_major_version > major) || - ((gtk_major_version == major) && (gtk_minor_version > minor)) || - ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro))) - { - return 0; - } + AC_SUBST($1_CFLAGS) + AC_SUBST($1_LIBS) else - { - printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n", - gtk_major_version, gtk_minor_version, gtk_micro_version); - printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n", - major, minor, micro); - printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n"); - printf("***\n"); - printf("*** If you have already installed a sufficiently new version, this error\n"); - printf("*** probably means that the wrong copy of the gtk-config shell script is\n"); - printf("*** being found. The easiest way to fix this is to remove the old version\n"); - printf("*** of GTK+, but you can also set the GTK_CONFIG environment to point to the\n"); - printf("*** correct copy of gtk-config. (In this case, you will have to\n"); - printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); - printf("*** so that the correct libraries are found at run-time))\n"); - } - } - return 1; -} -],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" + echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." + echo "*** See http://www.freedesktop.org/software/pkgconfig" fi fi - if test "x$no_gtk" = x ; then - AC_MSG_RESULT(yes) - ifelse([$2], , :, [$2]) - else - AC_MSG_RESULT(no) - if test "$GTK_CONFIG" = "no" ; then - echo "*** The gtk-config script installed by GTK could not be found" - echo "*** If GTK was installed in PREFIX, make sure PREFIX/bin is in" - echo "*** your path, or set the GTK_CONFIG environment variable to the" - echo "*** full path to gtk-config." - else - if test -f conf.gtktest ; then - : - else - echo "*** Could not run GTK test program, checking why..." - CFLAGS="$CFLAGS $GTK_CFLAGS" - LIBS="$LIBS $GTK_LIBS" - AC_TRY_LINK([ -#include <gtk/gtk.h> -#include <stdio.h> -], [ return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); ], - [ echo "*** The test program compiled, but did not run. This usually means" - echo "*** that the run-time linker is not finding GTK or finding the wrong" - echo "*** version of GTK. If it is not finding GTK, you'll need to set your" - echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" - echo "*** to the installed location Also, make sure you have run ldconfig if that" - echo "*** is required on your system" - echo "***" - echo "*** If you have an old version installed, it is best to remove it, although" - echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" - echo "***" - echo "*** If you have a RedHat 5.0 system, you should remove the GTK package that" - echo "*** came with the system with the command" - echo "***" - echo "*** rpm --erase --nodeps gtk gtk-devel" ], - [ echo "*** The test program failed to compile or link. See the file config.log for the" - echo "*** exact error that occured. This usually means GTK was incorrectly installed" - echo "*** or that you have moved GTK since it was installed. In the latter case, you" - echo "*** may want to edit the gtk-config script: $GTK_CONFIG" ]) - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - fi - fi - GTK_CFLAGS="" - GTK_LIBS="" + + if test $succeeded = yes; then ifelse([$3], , :, [$3]) + else + 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]) fi - AC_SUBST(GTK_CFLAGS) - AC_SUBST(GTK_LIBS) - rm -f conf.gtktest ]) + + diff -urN dillo-0.6.6/config.h dillo2-0.6.6/config.h --- dillo-0.6.6/config.h 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/config.h 2003-04-21 14:24:16.000000000 -0600 @@ -0,0 +1,83 @@ +/* config.h. Generated by configure. */ +/* config.h.in. Generated from configure.in by autoheader. */ + +/* Define to 1 if you have the <fcntl.h> header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the <inttypes.h> header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the <jconfig.h> header file. */ +#define HAVE_JCONFIG_H 1 + +/* Define to 1 if you have the <jerror.h> header file. */ +#define HAVE_JERROR_H 1 + +/* Define to 1 if you have the <jmorecfg.h> header file. */ +#define HAVE_JMORECFG_H 1 + +/* Define to 1 if you have the <jpeglib.h> header file. */ +#define HAVE_JPEGLIB_H 1 + +/* Define to 1 if you have the `png' library (-lpng). */ +#define HAVE_LIBPNG 1 + +/* Define to 1 if you have the `pthread' library (-lpthread). */ +#define HAVE_LIBPTHREAD 1 + +/* Define to 1 if you have the `z' library (-lz). */ +#define HAVE_LIBZ 1 + +/* Define to 1 if you have the <memory.h> header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `socket' function. */ +#define HAVE_SOCKET 1 + +/* Define to 1 if you have the <stdint.h> header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the <stdlib.h> header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the <strings.h> header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the <string.h> header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the <sys/types.h> header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the <sys/uio.h> header file. */ +#define HAVE_SYS_UIO_H 1 + +/* Define to 1 if you have the <unistd.h> header file. */ +#define HAVE_UNISTD_H 1 + +/* Name of package */ +#define PACKAGE "dillo" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "" + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Version number of package */ +#define VERSION "0.6.6" diff -urN dillo-0.6.6/config.h.in dillo2-0.6.6/config.h.in --- dillo-0.6.6/config.h.in 2002-03-02 07:15:36.000000000 -0700 +++ dillo2-0.6.6/config.h.in 2003-04-21 14:27:01.000000000 -0600 @@ -1,42 +1,81 @@ -/* config.h.in. Generated automatically from configure.in by autoheader. */ +/* config.h.in. Generated from configure.in by autoheader. */ -/* Define if you have the <fcntl.h> header file. */ +/* Define to 1 if you have the <fcntl.h> header file. */ #undef HAVE_FCNTL_H -/* Define if you have the <jconfig.h> header file. */ +/* Define to 1 if you have the <inttypes.h> header file. */ +#undef HAVE_INTTYPES_H + +/* Define to 1 if you have the <jconfig.h> header file. */ #undef HAVE_JCONFIG_H -/* Define if you have the <jerror.h> header file. */ +/* Define to 1 if you have the <jerror.h> header file. */ #undef HAVE_JERROR_H -/* Define if you have the <jmorecfg.h> header file. */ +/* Define to 1 if you have the <jmorecfg.h> header file. */ #undef HAVE_JMORECFG_H -/* Define if you have the <jpeglib.h> header file. */ +/* Define to 1 if you have the <jpeglib.h> header file. */ #undef HAVE_JPEGLIB_H -/* Define if you have the `png' library (-lpng). */ +/* Define to 1 if you have the `png' library (-lpng). */ #undef HAVE_LIBPNG -/* Define if you have the `pthread' library (-lpthread). */ +/* Define to 1 if you have the `pthread' library (-lpthread). */ #undef HAVE_LIBPTHREAD -/* Define if you have the `z' library (-lz). */ +/* Define to 1 if you have the `z' library (-lz). */ #undef HAVE_LIBZ -/* Define if you have the `socket' function. */ +/* Define to 1 if you have the <memory.h> header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if you have the `socket' function. */ #undef HAVE_SOCKET -/* Define if you have the <sys/uio.h> header file. */ +/* Define to 1 if you have the <stdint.h> header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the <stdlib.h> header file. */ +#undef HAVE_STDLIB_H + +/* Define to 1 if you have the <strings.h> header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the <string.h> header file. */ +#undef HAVE_STRING_H + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#undef HAVE_SYS_STAT_H + +/* Define to 1 if you have the <sys/types.h> header file. */ +#undef HAVE_SYS_TYPES_H + +/* Define to 1 if you have the <sys/uio.h> header file. */ #undef HAVE_SYS_UIO_H -/* Define if you have the <unistd.h> header file. */ +/* Define to 1 if you have the <unistd.h> header file. */ #undef HAVE_UNISTD_H /* Name of package */ #undef PACKAGE -/* Define if you have the ANSI C header files. */ +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Version number of package */ diff -urN dillo-0.6.6/config.log dillo2-0.6.6/config.log --- dillo-0.6.6/config.log 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/config.log 2003-04-21 14:27:11.000000000 -0600 @@ -0,0 +1,610 @@ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by configure, which was +generated by GNU Autoconf 2.57. Invocation command line was + + $ ./configure --prefix=/usr --enable-ipv6 --no-create --no-recursion + +## --------- ## +## Platform. ## +## --------- ## + +hostname = smackdown +uname -m = armv4l +uname -r = 2.4.19-netwinder +uname -s = Linux +uname -v = #1 Thu Mar 20 03:14:34 CET 2003 + +/usr/bin/uname -p = unknown +/bin/uname -X = unknown + +/bin/arch = armv4l +/usr/bin/arch -k = unknown +/usr/convex/getsysinfo = unknown +hostinfo = unknown +/bin/machine = unknown +/usr/bin/oslevel = unknown +/bin/universe = unknown + +PATH: /usr/local/bin +PATH: /usr/bin +PATH: /bin +PATH: /usr/bin/X11 +PATH: /usr/games + + +## ----------- ## +## Core tests. ## +## ----------- ## + +configure:1315: checking for a BSD-compatible install +configure:1369: result: /usr/bin/install -c +configure:1380: checking whether build environment is sane +configure:1423: result: yes +configure:1448: WARNING: `missing' script is too old or missing +configure:1456: checking for gawk +configure:1472: found /usr/bin/gawk +configure:1482: result: gawk +configure:1492: checking whether make sets $(MAKE) +configure:1512: result: yes +configure:1766: checking for gcc +configure:1782: found /usr/bin/gcc +configure:1792: result: gcc +configure:2036: checking for C compiler version +configure:2039: gcc --version </dev/null >&5 +gcc (GCC) 3.2.3 20030228 (Debian prerelease) +Copyright (C) 2002 Free Software Foundation, Inc. +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +configure:2042: $? = 0 +configure:2044: gcc -v </dev/null >&5 +Reading specs from /usr/lib/gcc-lib/arm-linux/3.2.3/specs +Configured with: ../src/configure -v --enable-languages=c,c++,java,f77,proto,objc --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-gxx-include-dir=/usr/include/c++/3.2 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --enable-__cxa_atexit --enable-clocale=gnu --enable-java-gc=boehm --enable-objc-gc arm-linux +Thread model: posix +gcc version 3.2.3 20030228 (Debian prerelease) +configure:2047: $? = 0 +configure:2049: gcc -V </dev/null >&5 +gcc: argument to `-V' is missing +configure:2052: $? = 1 +configure:2076: checking for C compiler default output +configure:2079: gcc -I/usr/local/include -L/usr/local/lib conftest.c >&5 +configure:2082: $? = 0 +configure:2128: result: a.out +configure:2133: checking whether the C compiler works +configure:2139: ./a.out +configure:2142: $? = 0 +configure:2159: result: yes +configure:2166: checking whether we are cross compiling +configure:2168: result: no +configure:2171: checking for suffix of executables +configure:2173: gcc -o conftest -I/usr/local/include -L/usr/local/lib conftest.c >&5 +configure:2176: $? = 0 +configure:2201: result: +configure:2207: checking for suffix of object files +configure:2229: gcc -c -I/usr/local/include conftest.c >&5 +configure:2232: $? = 0 +configure:2254: result: o +configure:2258: checking whether we are using the GNU C compiler +configure:2283: gcc -c -I/usr/local/include conftest.c >&5 +configure:2286: $? = 0 +configure:2289: test -s conftest.o +configure:2292: $? = 0 +configure:2305: result: yes +configure:2311: checking whether gcc accepts -g +configure:2333: gcc -c -g -I/usr/local/include conftest.c >&5 +configure:2336: $? = 0 +configure:2339: test -s conftest.o +configure:2342: $? = 0 +configure:2353: result: yes +configure:2370: checking for gcc option to accept ANSI C +configure:2431: gcc -c -g -O2 -I/usr/local/include conftest.c >&5 +configure:2434: $? = 0 +configure:2437: test -s conftest.o +configure:2440: $? = 0 +configure:2458: result: none needed +configure:2476: gcc -c -g -O2 -I/usr/local/include conftest.c >&5 +conftest.c:2: syntax error before "me" +configure:2479: $? = 1 +configure: failed program was: +| #ifndef __cplusplus +| choke me +| #endif +configure:2607: checking for style of include used by make +configure:2635: result: GNU +configure:2663: checking dependency style of gcc +configure:2725: result: gcc3 +configure:2734: checking for gcc option to accept ANSI C +configure:2798: gcc -c -g -O2 -I/usr/local/include conftest.c >&5 +configure:2801: $? = 0 +configure:2804: test -s conftest.o +configure:2807: $? = 0 +configure:2822: result: none needed +configure:2874: checking for ranlib +configure:2890: found /usr/bin/ranlib +configure:2901: result: ranlib +configure:2923: checking for pkg-config +configure:2941: found /usr/bin/pkg-config +configure:2954: result: /usr/bin/pkg-config +configure:2971: checking for gtk+-2.0 >= 2.0.0 +configure:2975: result: yes +configure:2979: checking GTK_CFLAGS +configure:2982: result: -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include +configure:2985: checking GTK_LIBS +configure:2988: result: -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 +configure:3041: checking for jpeg_destroy_decompress in -ljpeg +configure:3072: gcc -o conftest -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 conftest.c -ljpeg >&5 +configure:3075: $? = 0 +configure:3078: test -s conftest +configure:3081: $? = 0 +configure:3093: result: yes +configure:3110: checking how to run the C preprocessor +configure:3146: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:3152: $? = 0 +configure:3184: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:3185:28: ac_nonexistent.h: No such file or directory +configure:3190: $? = 1 +configure: failed program was: +| #line 3175 "configure" +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "" +| #define PACKAGE_TARNAME "" +| #define PACKAGE_VERSION "" +| #define PACKAGE_STRING "" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE "dillo" +| #define VERSION "0.6.6" +| /* end confdefs.h. */ +| #include <ac_nonexistent.h> +configure:3228: result: gcc -E +configure:3253: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:3259: $? = 0 +configure:3291: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:3292:28: ac_nonexistent.h: No such file or directory +configure:3297: $? = 1 +configure: failed program was: +| #line 3282 "configure" +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "" +| #define PACKAGE_TARNAME "" +| #define PACKAGE_VERSION "" +| #define PACKAGE_STRING "" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE "dillo" +| #define VERSION "0.6.6" +| /* end confdefs.h. */ +| #include <ac_nonexistent.h> +configure:3340: checking for egrep +configure:3350: result: grep -E +configure:3355: checking for ANSI C header files +configure:3381: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3384: $? = 0 +configure:3387: test -s conftest.o +configure:3390: $? = 0 +configure:3479: gcc -o conftest -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 conftest.c >&5 +configure: In function `main': +configure:3477: warning: implicit declaration of function `exit' +configure:3482: $? = 0 +configure:3484: ./conftest +configure:3487: $? = 0 +configure:3502: result: yes +configure:3526: checking for sys/types.h +configure:3543: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3546: $? = 0 +configure:3549: test -s conftest.o +configure:3552: $? = 0 +configure:3563: result: yes +configure:3526: checking for sys/stat.h +configure:3543: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3546: $? = 0 +configure:3549: test -s conftest.o +configure:3552: $? = 0 +configure:3563: result: yes +configure:3526: checking for stdlib.h +configure:3543: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3546: $? = 0 +configure:3549: test -s conftest.o +configure:3552: $? = 0 +configure:3563: result: yes +configure:3526: checking for string.h +configure:3543: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3546: $? = 0 +configure:3549: test -s conftest.o +configure:3552: $? = 0 +configure:3563: result: yes +configure:3526: checking for memory.h +configure:3543: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3546: $? = 0 +configure:3549: test -s conftest.o +configure:3552: $? = 0 +configure:3563: result: yes +configure:3526: checking for strings.h +configure:3543: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3546: $? = 0 +configure:3549: test -s conftest.o +configure:3552: $? = 0 +configure:3563: result: yes +configure:3526: checking for inttypes.h +configure:3543: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3546: $? = 0 +configure:3549: test -s conftest.o +configure:3552: $? = 0 +configure:3563: result: yes +configure:3526: checking for stdint.h +configure:3543: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3546: $? = 0 +configure:3549: test -s conftest.o +configure:3552: $? = 0 +configure:3563: result: yes +configure:3526: checking for unistd.h +configure:3543: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3546: $? = 0 +configure:3549: test -s conftest.o +configure:3552: $? = 0 +configure:3563: result: yes +configure:3592: checking jpeglib.h usability +configure:3605: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3608: $? = 0 +configure:3611: test -s conftest.o +configure:3614: $? = 0 +configure:3624: result: yes +configure:3628: checking jpeglib.h presence +configure:3639: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:3645: $? = 0 +configure:3664: result: yes +configure:3700: checking for jpeglib.h +configure:3707: result: yes +configure:3592: checking jconfig.h usability +configure:3605: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3608: $? = 0 +configure:3611: test -s conftest.o +configure:3614: $? = 0 +configure:3624: result: yes +configure:3628: checking jconfig.h presence +configure:3639: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:3645: $? = 0 +configure:3664: result: yes +configure:3700: checking for jconfig.h +configure:3707: result: yes +configure:3592: checking jerror.h usability +configure:3605: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3608: $? = 0 +configure:3611: test -s conftest.o +configure:3614: $? = 0 +configure:3624: result: yes +configure:3628: checking jerror.h presence +configure:3639: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:3645: $? = 0 +configure:3664: result: yes +configure:3700: checking for jerror.h +configure:3707: result: yes +configure:3592: checking jmorecfg.h usability +configure:3605: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:3608: $? = 0 +configure:3611: test -s conftest.o +configure:3614: $? = 0 +configure:3624: result: yes +configure:3628: checking jmorecfg.h presence +configure:3639: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:3645: $? = 0 +configure:3664: result: yes +configure:3700: checking for jmorecfg.h +configure:3707: result: yes +configure:3736: checking for pthread_create in -lpthread +configure:3767: gcc -o conftest -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 conftest.c -lpthread >&5 +configure:3770: $? = 0 +configure:3773: test -s conftest +configure:3776: $? = 0 +configure:3788: result: yes +configure:3991: checking for zlibVersion in -lz +configure:4022: gcc -o conftest -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 conftest.c -lz -lpthread >&5 +configure:4025: $? = 0 +configure:4028: test -s conftest +configure:4031: $? = 0 +configure:4043: result: yes +configure:4055: checking for png_check_sig in -lpng +configure:4086: gcc -o conftest -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 conftest.c -lpng -lz -lpthread >&5 +configure:4089: $? = 0 +configure:4092: test -s conftest +configure:4095: $? = 0 +configure:4107: result: yes +configure:4136: checking for ANSI C header files +configure:4283: result: yes +configure:4309: checking fcntl.h usability +configure:4322: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -DENABLE_IPV6 -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:4325: $? = 0 +configure:4328: test -s conftest.o +configure:4331: $? = 0 +configure:4341: result: yes +configure:4345: checking fcntl.h presence +configure:4356: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:4362: $? = 0 +configure:4381: result: yes +configure:4417: checking for fcntl.h +configure:4424: result: yes +configure:4300: checking for unistd.h +configure:4305: result: yes +configure:4309: checking sys/uio.h usability +configure:4322: gcc -c -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -DENABLE_IPV6 -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c >&5 +configure:4325: $? = 0 +configure:4328: test -s conftest.o +configure:4331: $? = 0 +configure:4341: result: yes +configure:4345: checking sys/uio.h presence +configure:4356: gcc -E -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include conftest.c +configure:4362: $? = 0 +configure:4381: result: yes +configure:4417: checking for sys/uio.h +configure:4424: result: yes +configure:4442: checking for socket +configure:4492: gcc -o conftest -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -DENABLE_IPV6 -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 conftest.c -lpng -lz -lpthread >&5 +configure:4495: $? = 0 +configure:4498: test -s conftest +configure:4501: $? = 0 +configure:4512: result: yes +configure:4635: creating ./config.status + +## ---------------- ## +## Cache variables. ## +## ---------------- ## + +ac_cv_c_compiler_gnu=yes +ac_cv_env_CC_set= +ac_cv_env_CC_value= +ac_cv_env_CFLAGS_set= +ac_cv_env_CFLAGS_value= +ac_cv_env_CPPFLAGS_set= +ac_cv_env_CPPFLAGS_value= +ac_cv_env_CPP_set= +ac_cv_env_CPP_value= +ac_cv_env_LDFLAGS_set= +ac_cv_env_LDFLAGS_value= +ac_cv_env_build_alias_set= +ac_cv_env_build_alias_value= +ac_cv_env_host_alias_set= +ac_cv_env_host_alias_value= +ac_cv_env_target_alias_set= +ac_cv_env_target_alias_value= +ac_cv_exeext= +ac_cv_func_socket=yes +ac_cv_header_fcntl_h=yes +ac_cv_header_inttypes_h=yes +ac_cv_header_jconfig_h=yes +ac_cv_header_jerror_h=yes +ac_cv_header_jmorecfg_h=yes +ac_cv_header_jpeglib_h=yes +ac_cv_header_memory_h=yes +ac_cv_header_stdc=yes +ac_cv_header_stdint_h=yes +ac_cv_header_stdlib_h=yes +ac_cv_header_string_h=yes +ac_cv_header_strings_h=yes +ac_cv_header_sys_stat_h=yes +ac_cv_header_sys_types_h=yes +ac_cv_header_sys_uio_h=yes +ac_cv_header_unistd_h=yes +ac_cv_lib_jpeg_jpeg_destroy_decompress=yes +ac_cv_lib_png_png_check_sig=yes +ac_cv_lib_pthread_pthread_create=yes +ac_cv_lib_z_zlibVersion=yes +ac_cv_objext=o +ac_cv_path_PKG_CONFIG=/usr/bin/pkg-config +ac_cv_path_install='/usr/bin/install -c' +ac_cv_prog_AWK=gawk +ac_cv_prog_CPP='gcc -E' +ac_cv_prog_ac_ct_CC=gcc +ac_cv_prog_ac_ct_RANLIB=ranlib +ac_cv_prog_cc_g=yes +ac_cv_prog_cc_stdc= +ac_cv_prog_egrep='grep -E' +ac_cv_prog_make_make_set=yes +am_cv_CC_dependencies_compiler_type=gcc3 +am_cv_prog_cc_stdc= + +## ----------------- ## +## Output variables. ## +## ----------------- ## + +ACLOCAL='aclocal-1.6' +AMDEPBACKSLASH='\' +AMDEP_FALSE='#' +AMDEP_TRUE='' +AMTAR='tar' +AUTOCONF='autoconf' +AUTOHEADER='autoheader' +AUTOMAKE='automake-1.6' +AWK='gawk' +CC='gcc' +CCDEPMODE='depmode=gcc3' +CFLAGS='-g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -DENABLE_IPV6' +CPP='gcc -E' +CPPFLAGS=' -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include ' +DEFS='-DHAVE_CONFIG_H' +DEPDIR='.deps' +ECHO_C='' +ECHO_N='-n' +ECHO_T='' +EGREP='grep -E' +EXEEXT='' +GTK_CFLAGS='-I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include ' +GTK_LIBS='-Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 ' +INSTALL_DATA='${INSTALL} -m 644' +INSTALL_PROGRAM='${INSTALL}' +INSTALL_SCRIPT='${INSTALL}' +INSTALL_STRIP_PROGRAM='${SHELL} $(install_sh) -c -s' +LDFLAGS=' -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 ' +LIBJPEG_LIB='-ljpeg' +LIBOBJS='' +LIBS='-lpng -lz -lpthread ' +LTLIBOBJS='' +MAKEINFO='makeinfo' +OBJEXT='o' +PACKAGE='dillo' +PACKAGE_BUGREPORT='' +PACKAGE_NAME='' +PACKAGE_STRING='' +PACKAGE_TARNAME='' +PACKAGE_VERSION='' +PATH_SEPARATOR=':' +PKG_CONFIG='/usr/bin/pkg-config' +RANLIB='ranlib' +SET_MAKE='' +SHELL='/bin/sh' +STRIP='' +VERSION='0.6.6' +ac_ct_CC='gcc' +ac_ct_RANLIB='ranlib' +ac_ct_STRIP='' +am__include='include' +am__quote='' +bin='' +bindir='${exec_prefix}/bin' +build_alias='' +datadir='${prefix}/share' +doc='' +exec_prefix='${prefix}' +host_alias='' +includedir='${prefix}/include' +infodir='${prefix}/info' +install_sh='/home/pb/dillo2/install-sh' +lib='' +libdir='${exec_prefix}/lib' +libexecdir='${exec_prefix}/libexec' +localstatedir='${prefix}/var' +mandir='${prefix}/man' +oldincludedir='/usr/include' +prefix='/usr' +program_transform_name='s,x,x,' +sbindir='${exec_prefix}/sbin' +sharedstatedir='${prefix}/com' +src='' +sysconfdir='${prefix}/etc' +target_alias='' +util='' + +## ----------- ## +## confdefs.h. ## +## ----------- ## + +#define HAVE_FCNTL_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_JCONFIG_H 1 +#define HAVE_JERROR_H 1 +#define HAVE_JMORECFG_H 1 +#define HAVE_JPEGLIB_H 1 +#define HAVE_LIBPNG 1 +#define HAVE_LIBPTHREAD 1 +#define HAVE_LIBZ 1 +#define HAVE_MEMORY_H 1 +#define HAVE_SOCKET 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_SYS_UIO_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_UNISTD_H 1 +#define PACKAGE "dillo" +#define PACKAGE_BUGREPORT "" +#define PACKAGE_NAME "" +#define PACKAGE_STRING "" +#define PACKAGE_TARNAME "" +#define PACKAGE_VERSION "" +#define STDC_HEADERS 1 +#define STDC_HEADERS 1 +#define VERSION "0.6.6" + +configure: exit 0 + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by config.status, which was +generated by GNU Autoconf 2.57. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status Makefile + +on smackdown + +config.status:662: creating Makefile + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by config.status, which was +generated by GNU Autoconf 2.57. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status config.h + +on smackdown + +config.status:766: creating config.h +config.status:895: config.h is unchanged + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by config.status, which was +generated by GNU Autoconf 2.57. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status doc/Makefile + +on smackdown + +config.status:662: creating doc/Makefile + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by config.status, which was +generated by GNU Autoconf 2.57. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status src/Makefile depfiles + +on smackdown + +config.status:662: creating src/Makefile +config.status:1001: executing depfiles commands + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by config.status, which was +generated by GNU Autoconf 2.57. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status src/IO/Makefile depfiles + +on smackdown + +config.status:662: creating src/IO/Makefile +config.status:1001: executing depfiles commands diff -urN dillo-0.6.6/config.status dillo2-0.6.6/config.status --- dillo-0.6.6/config.status 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/config.status 2003-04-21 14:26:40.000000000 -0600 @@ -0,0 +1,1098 @@ +#! /bin/sh +# Generated by configure. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false +SHELL=${CONFIG_SHELL-/bin/sh} +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be Bourne compatible +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' +elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then + set -o posix +fi + +# Support unset when possible. +if (FOO=FOO; unset FOO) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# Work around bugs in pre-3.0 UWIN ksh. +$as_unset ENV MAIL MAILPATH +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)$' \| \ + . : '\(.\)' 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } + /^X\/\(\/\/\)$/{ s//\1/; q; } + /^X\/\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + + +# PATH needs CR, and LINENO needs CR and PATH. +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" || { + # Find who we are. Look in the path if we contain no path at all + # relative or not. + case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done + + ;; + esac + # We did not find ourselves, most probably we were run as `sh COMMAND' + # in which case we are not to be found in the path. + if test "x$as_myself" = x; then + as_myself=$0 + fi + if test ! -f "$as_myself"; then + { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 +echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} + { (exit 1); exit 1; }; } + fi + case $CONFIG_SHELL in + '') + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for as_base in sh bash ksh sh5; do + case $as_dir in + /*) + if ("$as_dir/$as_base" -c ' + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then + $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } + $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } + CONFIG_SHELL=$as_dir/$as_base + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$0" ${1+"$@"} + fi;; + esac + done +done +;; + esac + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line before each line; the second 'sed' does the real + # work. The second script uses 'N' to pair each line-number line + # with the numbered line, and appends trailing '-' during + # substitution so that $LINENO is not a special case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) + sed '=' <$as_myself | + sed ' + N + s,$,-, + : loop + s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + t loop + s,-$,, + s,^['$as_cr_digits']*\n,, + ' >$as_me.lineno && + chmod +x $as_me.lineno || + { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 +echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensible to this). + . ./$as_me.lineno + # Exit status is that of the last command. + exit +} + + +case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in + *c*,-n*) ECHO_N= ECHO_C=' +' ECHO_T=' ' ;; + *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; + *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +esac + +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +echo >conf$$.file +if ln -s conf$$.file conf$$ 2>/dev/null; then + # We could just check for DJGPP; but this test a) works b) is more generic + # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). + if test -f conf$$.exe; then + # Don't use ln at all; we don't have any links + as_ln_s='cp -p' + else + as_ln_s='ln -s' + fi +elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.file + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + as_mkdir_p=false +fi + +as_executable_p="test -f" + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g" + + +# IFS +# We need space, tab and new line, in precisely that order. +as_nl=' +' +IFS=" $as_nl" + +# CDPATH. +$as_unset CDPATH + +exec 6>&1 + +# Open the log real soon, to keep \$[0] and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. Logging --version etc. is OK. +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX +} >&5 +cat >&5 <<_CSEOF + +This file was extended by $as_me, which was +generated by GNU Autoconf 2.57. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +_CSEOF +echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 +echo >&5 +config_files=" Makefile doc/Makefile src/Makefile src/IO/Makefile" +config_headers=" config.h" +config_commands=" depfiles" + +ac_cs_usage="\ +\`$as_me' instantiates files from templates according to the +current configuration. + +Usage: $0 [OPTIONS] [FILE]... + + -h, --help print this help, then exit + -V, --version print version number, then exit + -q, --quiet do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration commands: +$config_commands + +Report bugs to <bug-autoconf@gnu.org>." +ac_cs_version="\ +config.status +configured by ./configure, generated by GNU Autoconf 2.57, + with options \"'--prefix=/usr' '--enable-ipv6'\" + +Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 +Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." +srcdir=. +INSTALL="/usr/bin/install -c" +# If no file are specified by the user, then we need to provide default +# value. By we need to know if files were specified by the user. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=*) + ac_option=`expr "x$1" : 'x\([^=]*\)='` + ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` + ac_shift=: + ;; + -*) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + *) # This is not an option, so the user has probably given explicit + # arguments. + ac_option=$1 + ac_need_defaults=false;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --vers* | -V ) + echo "$ac_cs_version"; exit 0 ;; + --he | --h) + # Conflict between --help and --header + { { echo "$as_me:$LINENO: error: ambiguous option: $1 +Try \`$0 --help' for more information." >&5 +echo "$as_me: error: ambiguous option: $1 +Try \`$0 --help' for more information." >&2;} + { (exit 1); exit 1; }; };; + --help | --hel | -h ) + echo "$ac_cs_usage"; exit 0 ;; + --debug | --d* | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + CONFIG_FILES="$CONFIG_FILES $ac_optarg" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" + ac_need_defaults=false;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&5 +echo "$as_me: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&2;} + { (exit 1); exit 1; }; } ;; + + *) ac_config_targets="$ac_config_targets $1" ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +if $ac_cs_recheck; then + echo "running /bin/sh ./configure " '--prefix=/usr' '--enable-ipv6' $ac_configure_extra_args " --no-create --no-recursion" >&6 + exec /bin/sh ./configure '--prefix=/usr' '--enable-ipv6' $ac_configure_extra_args --no-create --no-recursion +fi + +# +# INIT-COMMANDS section. +# + +AMDEP_TRUE="" ac_aux_dir="." + +for ac_config_target in $ac_config_targets +do + case "$ac_config_target" in + # Handling of arguments. + "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; + "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; + "src/IO/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/IO/Makefile" ;; + "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 +echo "$as_me: error: invalid argument: $ac_config_target" >&2;} + { (exit 1); exit 1; }; };; + esac +done + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason to put it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Create a temporary directory, and hook for its removal unless debugging. +$debug || +{ + trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 + trap '{ (exit 1); exit 1; }' 1 2 13 15 +} + +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" +} || +{ + tmp=./confstat$$-$RANDOM + (umask 077 && mkdir $tmp) +} || +{ + echo "$me: cannot create a temporary directory in ." >&2 + { (exit 1); exit 1; } +} + + +# +# CONFIG_FILES section. +# + +# No need to generate the scripts if there are no CONFIG_FILES. +# This happens for instance when ./config.status config.h +if test -n "$CONFIG_FILES"; then + # Protect against being on the right side of a sed subst in config.status. + sed 's/,@/@@/; s/@,/@@/; s/,;t t$/@;t t/; /@;t t$/s/[\\&,]/\\&/g; + s/@@/,@/; s/@@/@,/; s/@;t t$/,;t t/' >$tmp/subs.sed <<\CEOF +s,@SHELL@,/bin/sh,;t t +s,@PATH_SEPARATOR@,:,;t t +s,@PACKAGE_NAME@,,;t t +s,@PACKAGE_TARNAME@,,;t t +s,@PACKAGE_VERSION@,,;t t +s,@PACKAGE_STRING@,,;t t +s,@PACKAGE_BUGREPORT@,,;t t +s,@exec_prefix@,${prefix},;t t +s,@prefix@,/usr,;t t +s,@program_transform_name@,s,x,x,,;t t +s,@bindir@,${exec_prefix}/bin,;t t +s,@sbindir@,${exec_prefix}/sbin,;t t +s,@libexecdir@,${exec_prefix}/libexec,;t t +s,@datadir@,${prefix}/share,;t t +s,@sysconfdir@,${prefix}/etc,;t t +s,@sharedstatedir@,${prefix}/com,;t t +s,@localstatedir@,${prefix}/var,;t t +s,@libdir@,${exec_prefix}/lib,;t t +s,@includedir@,${prefix}/include,;t t +s,@oldincludedir@,/usr/include,;t t +s,@infodir@,${prefix}/info,;t t +s,@mandir@,${prefix}/man,;t t +s,@build_alias@,,;t t +s,@host_alias@,,;t t +s,@target_alias@,,;t t +s,@DEFS@,-DHAVE_CONFIG_H,;t t +s,@ECHO_C@,,;t t +s,@ECHO_N@,-n,;t t +s,@ECHO_T@,,;t t +s,@LIBS@,-lpng -lz -lpthread ,;t t +s,@INSTALL_PROGRAM@,${INSTALL},;t t +s,@INSTALL_SCRIPT@,${INSTALL},;t t +s,@INSTALL_DATA@,${INSTALL} -m 644,;t t +s,@PACKAGE@,dillo,;t t +s,@VERSION@,0.6.6,;t t +s,@ACLOCAL@,aclocal-1.6,;t t +s,@AUTOCONF@,autoconf,;t t +s,@AUTOMAKE@,automake-1.6,;t t +s,@AUTOHEADER@,autoheader,;t t +s,@MAKEINFO@,makeinfo,;t t +s,@AMTAR@,tar,;t t +s,@install_sh@,/home/pb/dillo2/install-sh,;t t +s,@STRIP@,,;t t +s,@ac_ct_STRIP@,,;t t +s,@INSTALL_STRIP_PROGRAM@,${SHELL} $(install_sh) -c -s,;t t +s,@AWK@,gawk,;t t +s,@SET_MAKE@,,;t t +s,@CC@,gcc,;t t +s,@CFLAGS@,-g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -DENABLE_IPV6,;t t +s,@LDFLAGS@, -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 ,;t t +s,@CPPFLAGS@, -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include ,;t t +s,@ac_ct_CC@,gcc,;t t +s,@EXEEXT@,,;t t +s,@OBJEXT@,o,;t t +s,@DEPDIR@,.deps,;t t +s,@am__include@,include,;t t +s,@am__quote@,,;t t +s,@AMDEP_TRUE@,,;t t +s,@AMDEP_FALSE@,#,;t t +s,@AMDEPBACKSLASH@,\,;t t +s,@CCDEPMODE@,depmode=gcc3,;t t +s,@RANLIB@,ranlib,;t t +s,@ac_ct_RANLIB@,ranlib,;t t +s,@PKG_CONFIG@,/usr/bin/pkg-config,;t t +s,@GTK_CFLAGS@,-I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include ,;t t +s,@GTK_LIBS@,-Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 ,;t t +s,@CPP@,gcc -E,;t t +s,@EGREP@,grep -E,;t t +s,@LIBJPEG_LIB@,-ljpeg,;t t +s,@src@,,;t t +s,@doc@,,;t t +s,@bin@,,;t t +s,@util@,,;t t +s,@lib@,,;t t +s,@LIBOBJS@,,;t t +s,@LTLIBOBJS@,,;t t +CEOF + + # Split the substitutions into bite-sized pieces for seds with + # small command number limits, like on Digital OSF/1 and HP-UX. + ac_max_sed_lines=48 + ac_sed_frag=1 # Number of current file. + ac_beg=1 # First line for current file. + ac_end=$ac_max_sed_lines # Line after last line for current file. + ac_more_lines=: + ac_sed_cmds= + while $ac_more_lines; do + if test $ac_beg -gt 1; then + sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag + else + sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag + fi + if test ! -s $tmp/subs.frag; then + ac_more_lines=false + else + # The purpose of the label and of the branching condition is to + # speed up the sed processing (if there are no `@' at all, there + # is no need to browse any of the substitutions). + # These are the two extra sed commands mentioned above. + (echo ':t + /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed + if test -z "$ac_sed_cmds"; then + ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" + else + ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" + fi + ac_sed_frag=`expr $ac_sed_frag + 1` + ac_beg=$ac_end + ac_end=`expr $ac_end + $ac_max_sed_lines` + fi + done + if test -z "$ac_sed_cmds"; then + ac_sed_cmds=cat + fi +fi # test -n "$CONFIG_FILES" + +for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case $ac_file in + - | *:- | *:-:* ) # input from stdin + cat >$tmp/stdin + ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; + *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; + * ) ac_file_in=$ac_file.in ;; + esac + + # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. + ac_dir=`(dirname "$ac_file") 2>/dev/null || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + { if $as_mkdir_p; then + mkdir -p "$ac_dir" + else + as_dir="$ac_dir" + as_dirs= + while test ! -d "$as_dir"; do + as_dirs="$as_dir $as_dirs" + as_dir=`(dirname "$as_dir") 2>/dev/null || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + done + test ! -n "$as_dirs" || mkdir $as_dirs + fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 +echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} + { (exit 1); exit 1; }; }; } + + ac_builddir=. + +if test "$ac_dir" != .; then + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A "../" for each directory in $ac_dir_suffix. + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` +else + ac_dir_suffix= ac_top_builddir= +fi + +case $srcdir in + .) # No --srcdir option. We are building in place. + ac_srcdir=. + if test -z "$ac_top_builddir"; then + ac_top_srcdir=. + else + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` + fi ;; + [\\/]* | ?:[\\/]* ) # Absolute path. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir ;; + *) # Relative path. + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_builddir$srcdir ;; +esac +# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be +# absolute. +ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` +ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` +ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` +ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` + + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_builddir$INSTALL ;; + esac + + if test x"$ac_file" != x-; then + { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + rm -f "$ac_file" + fi + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + if test x"$ac_file" = x-; then + configure_input= + else + configure_input="$ac_file. " + fi + configure_input=$configure_input"Generated from `echo $ac_file_in | + sed 's,.*/,,'` by configure." + + # First look for the input files in the build tree, otherwise in the + # src tree. + ac_file_inputs=`IFS=: + for f in $ac_file_in; do + case $f in + -) echo $tmp/stdin ;; + [\\/$]*) + # Absolute (can't be DOS-style, as IFS=:) + test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 +echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + echo $f;; + *) # Relative + if test -f "$f"; then + # Build tree + echo $f + elif test -f "$srcdir/$f"; then + # Source tree + echo $srcdir/$f + else + # /dev/null tree + { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 +echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac + done` || { (exit 1); exit 1; } + sed "/^[ ]*VPATH[ ]*=/{ +s/:*\$(srcdir):*/:/; +s/:*\${srcdir}:*/:/; +s/:*@srcdir@:*/:/; +s/^\([^=]*=[ ]*\):*/\1/; +s/:*$//; +s/^[^=]*=[ ]*$//; +} + +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s,@configure_input@,$configure_input,;t t +s,@srcdir@,$ac_srcdir,;t t +s,@abs_srcdir@,$ac_abs_srcdir,;t t +s,@top_srcdir@,$ac_top_srcdir,;t t +s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t +s,@builddir@,$ac_builddir,;t t +s,@abs_builddir@,$ac_abs_builddir,;t t +s,@top_builddir@,$ac_top_builddir,;t t +s,@abs_top_builddir@,$ac_abs_top_builddir,;t t +s,@INSTALL@,$ac_INSTALL,;t t +" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out + rm -f $tmp/stdin + if test x"$ac_file" != x-; then + mv $tmp/out $ac_file + else + cat $tmp/out + rm -f $tmp/out + fi + +done + +# +# CONFIG_HEADER section. +# + +# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where +# NAME is the cpp macro being defined and VALUE is the value it is being given. +# +# ac_d sets the value in "#define NAME VALUE" lines. +ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' +ac_dB='[ ].*$,\1#\2' +ac_dC=' ' +ac_dD=',;t' +# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". +ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' +ac_uB='$,\1#\2define\3' +ac_uC=' ' +ac_uD=',;t' + +for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case $ac_file in + - | *:- | *:-:* ) # input from stdin + cat >$tmp/stdin + ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; + *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` + ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; + * ) ac_file_in=$ac_file.in ;; + esac + + test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + + # First look for the input files in the build tree, otherwise in the + # src tree. + ac_file_inputs=`IFS=: + for f in $ac_file_in; do + case $f in + -) echo $tmp/stdin ;; + [\\/$]*) + # Absolute (can't be DOS-style, as IFS=:) + test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 +echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + echo $f;; + *) # Relative + if test -f "$f"; then + # Build tree + echo $f + elif test -f "$srcdir/$f"; then + # Source tree + echo $srcdir/$f + else + # /dev/null tree + { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 +echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + fi;; + esac + done` || { (exit 1); exit 1; } + # Remove the trailing spaces. + sed 's/[ ]*$//' $ac_file_inputs >$tmp/in + + # Handle all the #define templates only if necessary. + if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then + # If there are no defines, we may have an empty if/fi + : + cat >$tmp/defines.sed <<CEOF +/^[ ]*#[ ]*define/!b +t clr +: clr +${ac_dA}PACKAGE_NAME${ac_dB}PACKAGE_NAME${ac_dC}""${ac_dD} +${ac_dA}PACKAGE_TARNAME${ac_dB}PACKAGE_TARNAME${ac_dC}""${ac_dD} +${ac_dA}PACKAGE_VERSION${ac_dB}PACKAGE_VERSION${ac_dC}""${ac_dD} +${ac_dA}PACKAGE_STRING${ac_dB}PACKAGE_STRING${ac_dC}""${ac_dD} +${ac_dA}PACKAGE_BUGREPORT${ac_dB}PACKAGE_BUGREPORT${ac_dC}""${ac_dD} +${ac_dA}PACKAGE${ac_dB}PACKAGE${ac_dC}"dillo"${ac_dD} +${ac_dA}VERSION${ac_dB}VERSION${ac_dC}"0.6.6"${ac_dD} +${ac_dA}STDC_HEADERS${ac_dB}STDC_HEADERS${ac_dC}1${ac_dD} +${ac_dA}HAVE_SYS_TYPES_H${ac_dB}HAVE_SYS_TYPES_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_SYS_STAT_H${ac_dB}HAVE_SYS_STAT_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_STDLIB_H${ac_dB}HAVE_STDLIB_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_STRING_H${ac_dB}HAVE_STRING_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_MEMORY_H${ac_dB}HAVE_MEMORY_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_STRINGS_H${ac_dB}HAVE_STRINGS_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_INTTYPES_H${ac_dB}HAVE_INTTYPES_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_STDINT_H${ac_dB}HAVE_STDINT_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_UNISTD_H${ac_dB}HAVE_UNISTD_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_JPEGLIB_H${ac_dB}HAVE_JPEGLIB_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_JCONFIG_H${ac_dB}HAVE_JCONFIG_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_JERROR_H${ac_dB}HAVE_JERROR_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_JMORECFG_H${ac_dB}HAVE_JMORECFG_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_LIBPTHREAD${ac_dB}HAVE_LIBPTHREAD${ac_dC}1${ac_dD} +${ac_dA}HAVE_LIBZ${ac_dB}HAVE_LIBZ${ac_dC}1${ac_dD} +${ac_dA}HAVE_LIBPNG${ac_dB}HAVE_LIBPNG${ac_dC}1${ac_dD} +${ac_dA}STDC_HEADERS${ac_dB}STDC_HEADERS${ac_dC}1${ac_dD} +${ac_dA}HAVE_FCNTL_H${ac_dB}HAVE_FCNTL_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_UNISTD_H${ac_dB}HAVE_UNISTD_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_SYS_UIO_H${ac_dB}HAVE_SYS_UIO_H${ac_dC}1${ac_dD} +${ac_dA}HAVE_SOCKET${ac_dB}HAVE_SOCKET${ac_dC}1${ac_dD} +CEOF + sed -f $tmp/defines.sed $tmp/in >$tmp/out + rm -f $tmp/in + mv $tmp/out $tmp/in + + fi # grep + + # Handle all the #undef templates + cat >$tmp/undefs.sed <<CEOF +/^[ ]*#[ ]*undef/!b +t clr +: clr +${ac_uA}PACKAGE_NAME${ac_uB}PACKAGE_NAME${ac_uC}""${ac_uD} +${ac_uA}PACKAGE_TARNAME${ac_uB}PACKAGE_TARNAME${ac_uC}""${ac_uD} +${ac_uA}PACKAGE_VERSION${ac_uB}PACKAGE_VERSION${ac_uC}""${ac_uD} +${ac_uA}PACKAGE_STRING${ac_uB}PACKAGE_STRING${ac_uC}""${ac_uD} +${ac_uA}PACKAGE_BUGREPORT${ac_uB}PACKAGE_BUGREPORT${ac_uC}""${ac_uD} +${ac_uA}PACKAGE${ac_uB}PACKAGE${ac_uC}"dillo"${ac_uD} +${ac_uA}VERSION${ac_uB}VERSION${ac_uC}"0.6.6"${ac_uD} +${ac_uA}STDC_HEADERS${ac_uB}STDC_HEADERS${ac_uC}1${ac_uD} +${ac_uA}HAVE_SYS_TYPES_H${ac_uB}HAVE_SYS_TYPES_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_SYS_STAT_H${ac_uB}HAVE_SYS_STAT_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_STDLIB_H${ac_uB}HAVE_STDLIB_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_STRING_H${ac_uB}HAVE_STRING_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_MEMORY_H${ac_uB}HAVE_MEMORY_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_STRINGS_H${ac_uB}HAVE_STRINGS_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_INTTYPES_H${ac_uB}HAVE_INTTYPES_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_STDINT_H${ac_uB}HAVE_STDINT_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_UNISTD_H${ac_uB}HAVE_UNISTD_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_JPEGLIB_H${ac_uB}HAVE_JPEGLIB_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_JCONFIG_H${ac_uB}HAVE_JCONFIG_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_JERROR_H${ac_uB}HAVE_JERROR_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_JMORECFG_H${ac_uB}HAVE_JMORECFG_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_LIBPTHREAD${ac_uB}HAVE_LIBPTHREAD${ac_uC}1${ac_uD} +${ac_uA}HAVE_LIBZ${ac_uB}HAVE_LIBZ${ac_uC}1${ac_uD} +${ac_uA}HAVE_LIBPNG${ac_uB}HAVE_LIBPNG${ac_uC}1${ac_uD} +${ac_uA}STDC_HEADERS${ac_uB}STDC_HEADERS${ac_uC}1${ac_uD} +${ac_uA}HAVE_FCNTL_H${ac_uB}HAVE_FCNTL_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_UNISTD_H${ac_uB}HAVE_UNISTD_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_SYS_UIO_H${ac_uB}HAVE_SYS_UIO_H${ac_uC}1${ac_uD} +${ac_uA}HAVE_SOCKET${ac_uB}HAVE_SOCKET${ac_uC}1${ac_uD} +s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, +CEOF + sed -f $tmp/undefs.sed $tmp/in >$tmp/out + rm -f $tmp/in + mv $tmp/out $tmp/in + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + if test x"$ac_file" = x-; then + echo "/* Generated by configure. */" >$tmp/config.h + else + echo "/* $ac_file. Generated by configure. */" >$tmp/config.h + fi + cat $tmp/in >>$tmp/config.h + rm -f $tmp/in + if test x"$ac_file" != x-; then + if diff $ac_file $tmp/config.h >/dev/null 2>&1; then + { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 +echo "$as_me: $ac_file is unchanged" >&6;} + else + ac_dir=`(dirname "$ac_file") 2>/dev/null || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + { if $as_mkdir_p; then + mkdir -p "$ac_dir" + else + as_dir="$ac_dir" + as_dirs= + while test ! -d "$as_dir"; do + as_dirs="$as_dir $as_dirs" + as_dir=`(dirname "$as_dir") 2>/dev/null || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + done + test ! -n "$as_dirs" || mkdir $as_dirs + fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 +echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} + { (exit 1); exit 1; }; }; } + + rm -f $ac_file + mv $tmp/config.h $ac_file + fi + else + cat $tmp/config.h + rm -f $tmp/config.h + fi + # Run the commands associated with the file. + case $ac_file in + config.h ) # update the timestamp +echo 'timestamp for config.h' >"./stamp-h1" + ;; + esac +done + +# +# CONFIG_COMMANDS section. +# +for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue + ac_dest=`echo "$ac_file" | sed 's,:.*,,'` + ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` + ac_dir=`(dirname "$ac_dest") 2>/dev/null || +$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_dest" : 'X\(//\)[^/]' \| \ + X"$ac_dest" : 'X\(//\)$' \| \ + X"$ac_dest" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$ac_dest" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + ac_builddir=. + +if test "$ac_dir" != .; then + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A "../" for each directory in $ac_dir_suffix. + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` +else + ac_dir_suffix= ac_top_builddir= +fi + +case $srcdir in + .) # No --srcdir option. We are building in place. + ac_srcdir=. + if test -z "$ac_top_builddir"; then + ac_top_srcdir=. + else + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` + fi ;; + [\\/]* | ?:[\\/]* ) # Absolute path. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir ;; + *) # Relative path. + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_builddir$srcdir ;; +esac +# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be +# absolute. +ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` +ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` +ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` +ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` + + + { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 +echo "$as_me: executing $ac_dest commands" >&6;} + case $ac_dest in + depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # So let's grep whole file. + if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then + dirpart=`(dirname "$mf") 2>/dev/null || +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$mf" : 'X\(//\)[^/]' \| \ + X"$mf" : 'X\(//\)$' \| \ + X"$mf" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + else + continue + fi + grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue + # Extract the definition of DEP_FILES from the Makefile without + # running `make'. + DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` + test -z "$DEPDIR" && continue + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n -e '/^U = / s///p' < "$mf"` + test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" + # We invoke sed twice because it is the simplest approach to + # changing $(DEPDIR) to its actual value in the expansion. + for file in `sed -n -e ' + /^DEP_FILES = .*\\\\$/ { + s/^DEP_FILES = // + :loop + s/\\\\$// + p + n + /\\\\$/ b loop + p + } + /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`(dirname "$file") 2>/dev/null || +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$file" : 'X\(//\)[^/]' \| \ + X"$file" : 'X\(//\)$' \| \ + X"$file" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + { if $as_mkdir_p; then + mkdir -p $dirpart/$fdir + else + as_dir=$dirpart/$fdir + as_dirs= + while test ! -d "$as_dir"; do + as_dirs="$as_dir $as_dirs" + as_dir=`(dirname "$as_dir") 2>/dev/null || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + done + test ! -n "$as_dirs" || mkdir $as_dirs + fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 +echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} + { (exit 1); exit 1; }; }; } + + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done +done + ;; + esac +done + +{ (exit 0); exit 0; } diff -urN dillo-0.6.6/configure dillo2-0.6.6/configure --- dillo-0.6.6/configure 2002-05-29 15:02:13.000000000 -0600 +++ dillo2-0.6.6/configure 2003-04-21 14:25:39.000000000 -0600 @@ -1,22 +1,195 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by Autoconf 2.50. +# Generated by GNU Autoconf 2.57. # -# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 +# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 # Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi +# Support unset when possible. +if (FOO=FOO; unset FOO) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# Work around bugs in pre-3.0 UWIN ksh. +$as_unset ENV MAIL MAILPATH +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + # Name of the executable. -as_me=`echo "$0" |sed 's,.*[\\/],,'` +as_me=`$as_basename "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)$' \| \ + . : '\(.\)' 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } + /^X\/\(\/\/\)$/{ s//\1/; q; } + /^X\/\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + + +# PATH needs CR, and LINENO needs CR and PATH. +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" || { + # Find who we are. Look in the path if we contain no path at all + # relative or not. + case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done + + ;; + esac + # We did not find ourselves, most probably we were run as `sh COMMAND' + # in which case we are not to be found in the path. + if test "x$as_myself" = x; then + as_myself=$0 + fi + if test ! -f "$as_myself"; then + { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 + { (exit 1); exit 1; }; } + fi + case $CONFIG_SHELL in + '') + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for as_base in sh bash ksh sh5; do + case $as_dir in + /*) + if ("$as_dir/$as_base" -c ' + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then + $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } + $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } + CONFIG_SHELL=$as_dir/$as_base + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$0" ${1+"$@"} + fi;; + esac + done +done +;; + esac + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line before each line; the second 'sed' does the real + # work. The second script uses 'N' to pair each line-number line + # with the numbered line, and appends trailing '-' during + # substitution so that $LINENO is not a special case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) + sed '=' <$as_myself | + sed ' + N + s,$,-, + : loop + s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + t loop + s,-$,, + s,^['$as_cr_digits']*\n,, + ' >$as_me.lineno && + chmod +x $as_me.lineno || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensible to this). + . ./$as_me.lineno + # Exit status is that of the last command. + exit +} + + +case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in + *c*,-n*) ECHO_N= ECHO_C=' +' ECHO_T=' ' ;; + *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; + *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr @@ -42,24 +215,20 @@ fi rm -f conf$$ conf$$.exe conf$$.file -as_executable_p="test -f" - -# Support unset when possible. -if (FOO=FOO; unset FOO) >/dev/null 2>&1; then - as_unset=unset +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: else - as_unset=false + as_mkdir_p=false fi -# NLS nuisances. -$as_unset LANG || test "${LANG+set}" != set || { LANG=C; export LANG; } -$as_unset LC_ALL || test "${LC_ALL+set}" != set || { LC_ALL=C; export LC_ALL; } -$as_unset LC_TIME || test "${LC_TIME+set}" != set || { LC_TIME=C; export LC_TIME; } -$as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set || { LC_CTYPE=C; export LC_CTYPE; } -$as_unset LANGUAGE || test "${LANGUAGE+set}" != set || { LANGUAGE=C; export LANGUAGE; } -$as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set || { LC_COLLATE=C; export LC_COLLATE; } -$as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set || { LC_NUMERIC=C; export LC_NUMERIC; } -$as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set || { LC_MESSAGES=C; export LC_MESSAGES; } +as_executable_p="test -f" + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g" + # IFS # We need space, tab and new line, in precisely that order. @@ -68,7 +237,8 @@ IFS=" $as_nl" # CDPATH. -$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; } +$as_unset CDPATH + # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, @@ -81,9 +251,11 @@ # Initializations. # ac_default_prefix=/usr/local +ac_config_libobj_dir=. cross_compiling=no subdirs= -MFLAGS= MAKEFLAGS= +MFLAGS= +MAKEFLAGS= SHELL=${CONFIG_SHELL-/bin/sh} # Maximum number of lines to put in a shell here document. @@ -91,17 +263,53 @@ # only ac_max_sed_lines should be used. : ${ac_max_here_lines=38} -# Avoid depending upon Character Ranges. -ac_cr_az='abcdefghijklmnopqrstuvwxyz' -ac_cr_AZ='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -ac_cr_09='0123456789' -ac_cr_alnum=$ac_cr_az$ac_cr_AZ$ac_cr_09 - -# Sed expression to map a string onto a valid sh and CPP variable names. -ac_tr_sh="sed y%*+%pp%;s%[^_$ac_cr_alnum]%_%g" -ac_tr_cpp="sed y%*$ac_cr_az%P$ac_cr_AZ%;s%[^_$ac_cr_alnum]%_%g" +# Identity of this package. +PACKAGE_NAME= +PACKAGE_TARNAME= +PACKAGE_VERSION= +PACKAGE_STRING= +PACKAGE_BUGREPORT= ac_unique_file="src/dillo.c" +# Factoring default headers for most tests. +ac_includes_default="\ +#include <stdio.h> +#if HAVE_SYS_TYPES_H +# include <sys/types.h> +#endif +#if HAVE_SYS_STAT_H +# include <sys/stat.h> +#endif +#if STDC_HEADERS +# include <stdlib.h> +# include <stddef.h> +#else +# if HAVE_STDLIB_H +# include <stdlib.h> +# endif +#endif +#if HAVE_STRING_H +# if !STDC_HEADERS && HAVE_MEMORY_H +# include <memory.h> +# endif +# include <string.h> +#endif +#if HAVE_STRINGS_H +# include <strings.h> +#endif +#if HAVE_INTTYPES_H +# include <inttypes.h> +#else +# if HAVE_STDINT_H +# include <stdint.h> +# endif +#endif +#if HAVE_UNISTD_H +# include <unistd.h> +#endif" + +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 PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE RANLIB ac_ct_RANLIB PKG_CONFIG GTK_CFLAGS GTK_LIBS CPP EGREP LIBJPEG_LIB src doc bin util lib LIBOBJS LTLIBOBJS' +ac_subst_files='' # Initialize some variables set by options. ac_init_help= @@ -141,13 +349,6 @@ infodir='${prefix}/info' mandir='${prefix}/man' -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= - ac_prev= for ac_option do @@ -193,7 +394,7 @@ -disable-* | --disable-*) ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$ac_cr_alnum]" >/dev/null && + expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` @@ -202,7 +403,7 @@ -enable-* | --enable-*) ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$ac_cr_alnum]" >/dev/null && + expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` @@ -280,7 +481,7 @@ with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) + | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ @@ -384,7 +585,7 @@ -with-* | --with-*) ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$ac_cr_alnum]" >/dev/null && + expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package| sed 's/-/_/g'` @@ -397,7 +598,7 @@ -without-* | --without-*) ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$ac_cr_alnum]" >/dev/null && + expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package | sed 's/-/_/g'` @@ -429,7 +630,7 @@ *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$ac_cr_alnum]" >/dev/null && + expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 { (exit 1); exit 1; }; } ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` @@ -439,7 +640,7 @@ *) # FIXME: should be removed in autoconf 3.0. echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$ac_cr_alnum]" >/dev/null && + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} ;; @@ -454,26 +655,36 @@ fi # Be sure to have absolute paths. +for ac_var in exec_prefix prefix +do + eval ac_val=$`echo $ac_var` + case $ac_val in + [\\/$]* | ?:[\\/]* | NONE | '' ) ;; + *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; };; + esac +done + +# Be sure to have absolute paths. for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir \ - exec_prefix prefix + localstatedir libdir includedir oldincludedir infodir mandir do eval ac_val=$`echo $ac_var` case $ac_val in [\\/$]* | ?:[\\/]* ) ;; - NONE ) ;; - *) { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2 + *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; };; esac done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. +# FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias -# FIXME: should be removed in autoconf 3.0. +# FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe @@ -489,13 +700,23 @@ test "$silent" = yes && exec 6>/dev/null + # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then its parent. - ac_prog=$0 - ac_confdir=`echo "$ac_prog" | sed 's%[\\/][^\\/][^\\/]*$%%'` - test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. + ac_confdir=`(dirname "$0") 2>/dev/null || +$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$0" : 'X\(//\)[^/]' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$0" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` srcdir=$ac_confdir if test ! -r $srcdir/$ac_unique_file; then srcdir=.. @@ -505,13 +726,16 @@ fi if test ! -r $srcdir/$ac_unique_file; then if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources in $ac_confdir or .." >&2 + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 { (exit 1); exit 1; }; } else - { echo "$as_me: error: cannot find sources in $srcdir" >&2 + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 { (exit 1); exit 1; }; } fi fi +(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || + { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 + { (exit 1); exit 1; }; } srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` ac_env_build_alias_set=${build_alias+set} ac_env_build_alias_value=$build_alias @@ -552,7 +776,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. - cat <<EOF + cat <<_ACEOF \`configure' configures this package to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -573,9 +797,9 @@ -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] -EOF +_ACEOF - cat <<EOF + cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] @@ -602,20 +826,20 @@ --oldincludedir=DIR C header files for non-gcc [/usr/include] --infodir=DIR info documentation [PREFIX/info] --mandir=DIR man documentation [PREFIX/man] -EOF +_ACEOF - cat <<\EOF + cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names -EOF +_ACEOF fi if test -n "$ac_init_help"; then - cat <<\EOF + cat <<\_ACEOF Optional Features: --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) @@ -625,15 +849,15 @@ --enable-insure Try to compile and run with Insure++ --enable-ansi Try to compile and run with ANSI flags --enable-cookies Build with support for cookies - --disable-gtktest Do not try to compile and run a test GTK program + --enable-ipv6 Build with support for IPv6 + --disable-dependency-tracking Speeds up one-time builds + --enable-dependency-tracking Do not reject slow dependency extractors Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-jpeg-lib=DIR Specify where to find libjpeg --with-jpeg-inc=DIR Specify where to find libjpeg's headers - --with-gtk-prefix=PFX Prefix where GTK is installed (optional) - --with-gtk-exec-prefix=PFX Exec prefix where GTK is installed (optional) Some influential environment variables: CC C compiler command @@ -647,40 +871,60 @@ Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. -EOF +_ACEOF fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. ac_popdir=`pwd` - for ac_subdir in : $ac_subdirs_all; do test "x$ac_subdir" = x: && continue - cd $ac_subdir - # A "../" for each directory in /$ac_subdir. - ac_dots=`echo $ac_subdir | - sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'` - - case $srcdir in - .) # No --srcdir option. We are building in place. - ac_sub_srcdir=$srcdir ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_sub_srcdir=$srcdir/$ac_subdir ;; - *) # Relative path. - ac_sub_srcdir=$ac_dots$srcdir/$ac_subdir ;; - esac + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d $ac_dir || continue + ac_builddir=. + +if test "$ac_dir" != .; then + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A "../" for each directory in $ac_dir_suffix. + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` +else + ac_dir_suffix= ac_top_builddir= +fi + +case $srcdir in + .) # No --srcdir option. We are building in place. + ac_srcdir=. + if test -z "$ac_top_builddir"; then + ac_top_srcdir=. + else + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` + fi ;; + [\\/]* | ?:[\\/]* ) # Absolute path. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir ;; + *) # Relative path. + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_builddir$srcdir ;; +esac +# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be +# absolute. +ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` +ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` +ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` +ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` + cd $ac_dir # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_sub_srcdir/configure.gnu; then + if test -f $ac_srcdir/configure.gnu; then echo - $SHELL $ac_sub_srcdir/configure.gnu --help=recursive - elif test -f $ac_sub_srcdir/configure; then + $SHELL $ac_srcdir/configure.gnu --help=recursive + elif test -f $ac_srcdir/configure; then echo - $SHELL $ac_sub_srcdir/configure --help=recursive - elif test -f $ac_sub_srcdir/configure.ac || - test -f $ac_sub_srcdir/configure.in; then + $SHELL $ac_srcdir/configure --help=recursive + elif test -f $ac_srcdir/configure.ac || + test -f $ac_srcdir/configure.in; then echo $ac_configure --help else - echo "$as_me: WARNING: no configuration information is in $ac_subdir" >&2 + echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi cd $ac_popdir done @@ -688,31 +932,31 @@ test -n "$ac_init_help" && exit 0 if $ac_init_version; then - cat <<\EOF + cat <<\_ACEOF -Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 +Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. -EOF +_ACEOF exit 0 fi exec 5>config.log -cat >&5 <<EOF +cat >&5 <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by $as_me, which was -generated by GNU Autoconf 2.50. Invocation command line was +generated by GNU Autoconf 2.57. Invocation command line was $ $0 $@ -EOF +_ACEOF { cat <<_ASUNAME -## ---------- ## -## Platform. ## -## ---------- ## +## --------- ## +## Platform. ## +## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` @@ -731,83 +975,160 @@ /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` -PATH = $PATH - _ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + echo "PATH: $as_dir" +done + } >&5 -cat >&5 <<EOF -## ------------ ## -## Core tests. ## -## ------------ ## +cat >&5 <<_ACEOF + + +## ----------- ## +## Core tests. ## +## ----------- ## + +_ACEOF -EOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= +ac_configure_args0= +ac_configure_args1= ac_sep= -for ac_arg +ac_must_keep_next=false +for ac_pass in 1 2 do - case $ac_arg in - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) ;; - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - ac_sep=" " ;; - *) ac_configure_args="$ac_configure_args$ac_sep$ac_arg" - ac_sep=" " ;; - esac - # Get rid of the leading space. + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) + ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 2) + ac_configure_args1="$ac_configure_args1 '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" + # Get rid of the leading space. + ac_sep=" " + ;; + esac + done done +$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } +$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. +# WARNING: Be sure not to use single quotes in there, as some shells, +# such as our DU 5.0 friend, will then `close' the trap. trap 'exit_status=$? # Save into config.log some information that might help in debugging. - echo >&5 - echo "## ----------------- ##" >&5 - echo "## Cache variables. ##" >&5 - echo "## ----------------- ##" >&5 - echo >&5 - # The following way of writing the cache mishandles newlines in values, + { + echo + + cat <<\_ASBOX +## ---------------- ## +## Cache variables. ## +## ---------------- ## +_ASBOX + echo + # The following way of writing the cache mishandles newlines in values, { (set) 2>&1 | case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in *ac_space=\ *) sed -n \ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$ac_cr_alnum]*_cv_[_$ac_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" ;; *) sed -n \ - "s/^\\([_$ac_cr_alnum]*_cv_[_$ac_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; -} >&5 - sed "/^$/d" confdefs.h >conftest.log - if test -s conftest.log; then - echo >&5 - echo "## ------------ ##" >&5 - echo "## confdefs.h. ##" >&5 - echo "## ------------ ##" >&5 - echo >&5 - cat conftest.log >&5 - fi - (echo; echo) >&5 - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" >&5 - echo "$as_me: exit $exit_status" >&5 - rm -rf conftest* confdefs* core core.* *.core conf$$* $ac_clean_files && +} + echo + + cat <<\_ASBOX +## ----------------- ## +## Output variables. ## +## ----------------- ## +_ASBOX + echo + for ac_var in $ac_subst_vars + do + eval ac_val=$`echo $ac_var` + echo "$ac_var='"'"'$ac_val'"'"'" + done | sort + echo + + if test -n "$ac_subst_files"; then + cat <<\_ASBOX +## ------------- ## +## Output files. ## +## ------------- ## +_ASBOX + echo + for ac_var in $ac_subst_files + do + eval ac_val=$`echo $ac_var` + echo "$ac_var='"'"'$ac_val'"'"'" + done | sort + echo + fi + + if test -s confdefs.h; then + cat <<\_ASBOX +## ----------- ## +## confdefs.h. ## +## ----------- ## +_ASBOX + echo + sed "/^$/d" confdefs.h | sort + echo + fi + test "$ac_signal" != 0 && + echo "$as_me: caught signal $ac_signal" + echo "$as_me: exit $exit_status" + } >&5 + rm -f core core.* *.core && + rm -rf conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do - trap 'ac_status=$?; ac_signal='$ac_signal'; { (exit $ac_status); exit $ac_status; }' $ac_signal + trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal done ac_signal=0 @@ -816,6 +1137,33 @@ # AIX cpp loses on an empty file, so make sure it contains at least a newline. echo >confdefs.h +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + + # Let the site file select an alternate cache file if it wants to. # Prefer explicitly selected file to automatically selected ones. if test -z "$CONFIG_SITE"; then @@ -827,9 +1175,9 @@ fi for ac_site_file in $CONFIG_SITE; do if test -r "$ac_site_file"; then - { echo "$as_me:830: loading site script $ac_site_file" >&5 + { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 echo "$as_me: loading site script $ac_site_file" >&6;} - cat "$ac_site_file" >&5 + sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" fi done @@ -838,7 +1186,7 @@ # Some versions of bash will fail to source /dev/null (special # files actually), so we avoid doing that. if test -f "$cache_file"; then - { echo "$as_me:841: loading cache $cache_file" >&5 + { echo "$as_me:$LINENO: loading cache $cache_file" >&5 echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . $cache_file;; @@ -846,14 +1194,14 @@ esac fi else - { echo "$as_me:849: creating cache $cache_file" >&5 + { echo "$as_me:$LINENO: creating cache $cache_file" >&5 echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. -ac_suggest_removing_cache=false +ac_cache_corrupted=false for ac_var in `(set) 2>&1 | sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do eval ac_old_set=\$ac_cv_env_${ac_var}_set @@ -862,31 +1210,44 @@ eval ac_new_val="\$ac_env_${ac_var}_value" case $ac_old_set,$ac_new_set in set,) - { echo "$as_me:865: WARNING: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: WARNING: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_suggest_removing_cache=: ;; + { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; ,set) - { echo "$as_me:869: WARNING: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: WARNING: \`$ac_var' was not set in the previous run" >&2;} - ac_suggest_removing_cache=: ;; + { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:875: WARNING: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: WARNING: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:877: WARNING: former value: $ac_old_val" >&5 -echo "$as_me: WARNING: former value: $ac_old_val" >&2;} - { echo "$as_me:879: WARNING: current value: $ac_new_val" >&5 -echo "$as_me: WARNING: current value: $ac_new_val" >&2;} - ac_suggest_removing_cache=: + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 +echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 +echo "$as_me: former value: $ac_old_val" >&2;} + { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 +echo "$as_me: current value: $ac_new_val" >&2;} + ac_cache_corrupted=: fi;; esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) + ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + esac + fi done -if $ac_suggest_removing_cache; then - { echo "$as_me:886: WARNING: changes in the environment can compromise the build" >&5 -echo "$as_me: WARNING: changes in the environment can compromise the build" >&2;} - { echo "$as_me:888: WARNING: consider removing $cache_file and starting over" >&5 -echo "$as_me: WARNING: consider removing $cache_file and starting over" >&2;} +if $ac_cache_corrupted; then + { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 +echo "$as_me: error: changes in the environment can compromise the build" >&2;} + { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 +echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} + { (exit 1); exit 1; }; } fi ac_ext=c @@ -895,27 +1256,25 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac -echo "#! $SHELL" >conftest.sh -echo "exit 0" >>conftest.sh -chmod +x conftest.sh -if { (echo "$as_me:907: PATH=\".;.\"; conftest.sh") >&5 - (PATH=".;."; conftest.sh) 2>&5 - ac_status=$? - echo "$as_me:910: \$? = $ac_status" >&5 - (exit $ac_status); }; then - ac_path_separator=';' -else - ac_path_separator=: -fi -PATH_SEPARATOR="$ac_path_separator" -rm -f conftest.sh + + + + + + + + + + + + + + + + + +am__api_version="1.6" ac_aux_dir= for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do if test -f $ac_dir/install-sh; then @@ -933,7 +1292,7 @@ fi done if test -z "$ac_aux_dir"; then - { { echo "$as_me:936: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 + { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} { (exit 1); exit 1; }; } fi @@ -953,43 +1312,48 @@ # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:956: checking for a BSD compatible install" >&5 -echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 +echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - ac_save_IFS=$IFS; IFS=$ac_path_separator - for ac_dir in $PATH; do - IFS=$ac_save_IFS - # Account for people who put trailing slashes in PATH elements. - case $ac_dir/ in - / | ./ | .// | /cC/* \ - | /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* \ - | /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if $as_executable_p "$ac_dir/$ac_prog"; then - if test $ac_prog = install && - grep dspmsg "$ac_dir/$ac_prog" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$ac_dir/$ac_prog" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - ac_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in + ./ | .// | /cC/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi done - ;; - esac - done + done + ;; +esac +done + fi if test "${ac_cv_path_install+set}" = set; then @@ -1002,7 +1366,7 @@ INSTALL=$ac_install_sh fi fi -echo "$as_me:1005: result: $INSTALL" >&5 +echo "$as_me:$LINENO: result: $INSTALL" >&5 echo "${ECHO_T}$INSTALL" >&6 # Use test -z because SunOS4 sh mishandles braces in ${var-val}. @@ -1013,80 +1377,128 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' -echo "$as_me:1016: checking whether build environment is sane" >&5 +echo "$as_me:$LINENO: checking whether build environment is sane" >&5 echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6 # Just in case sleep 1 -echo timestamp > conftestfile +echo timestamp > conftest.file # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( - set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` + set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. - set X `ls -t $srcdir/configure conftestfile` + set X `ls -t $srcdir/configure conftest.file` fi - if test "$*" != "X $srcdir/configure conftestfile" \ - && test "$*" != "X conftestfile $srcdir/configure"; then + rm -f conftest.file + if test "$*" != "X $srcdir/configure conftest.file" \ + && test "$*" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". - { { echo "$as_me:1039: error: ls -t appears to fail. Make sure there is not a broken + { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&5 echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&2;} { (exit 1); exit 1; }; } fi - test "$2" = conftestfile + test "$2" = conftest.file ) then # Ok. : else - { { echo "$as_me:1052: error: newly created file is older than distributed files! + { { echo "$as_me:$LINENO: error: newly created file is older than distributed files! Check your system clock" >&5 echo "$as_me: error: newly created file is older than distributed files! Check your system clock" >&2;} { (exit 1); exit 1; }; } fi -rm -f conftest* -echo "$as_me:1059: result: yes" >&5 +echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 -if test "$program_transform_name" = s,x,x,; then - program_transform_name= -else - # Double any \ or $. echo might interpret backslashes. - cat <<\EOF >conftest.sed -s,\\,\\\\,g; s,\$,$$,g -EOF - program_transform_name=`echo $program_transform_name | sed -f conftest.sed` - rm -f conftest.sed -fi test "$program_prefix" != NONE && - program_transform_name="s,^,${program_prefix},;$program_transform_name" + program_transform_name="s,^,$program_prefix,;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && - program_transform_name="s,\$\$,${program_suffix},;$program_transform_name" + program_transform_name="s,\$,$program_suffix,;$program_transform_name" +# Double any \ or $. echo might interpret backslashes. +# By default was `s,x,x', remove it if useless. +cat <<\_ACEOF >conftest.sed +s/[\\$]/&&/g;s/;s,x,x,$// +_ACEOF +program_transform_name=`echo $program_transform_name | sed -f conftest.sed` +rm conftest.sed + + +# expand $ac_aux_dir to an absolute path +am_aux_dir=`cd $ac_aux_dir && pwd` + +test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" +# Use eval to expand $SHELL +if eval "$MISSING --run true"; then + am_missing_run="$MISSING --run " +else + am_missing_run= + { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 +echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} +fi + +for ac_prog in gawk mawk nawk awk +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_AWK+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$AWK"; then + ac_cv_prog_AWK="$AWK" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AWK="$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + +fi +fi +AWK=$ac_cv_prog_AWK +if test -n "$AWK"; then + echo "$as_me:$LINENO: result: $AWK" >&5 +echo "${ECHO_T}$AWK" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi -# sed with no file args requires a program. -test -z "$program_transform_name" && program_transform_name="s,x,x," + test -n "$AWK" && break +done -echo "$as_me:1080: checking whether ${MAKE-make} sets \${MAKE}" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6 +echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'` if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >conftest.make <<\EOF + cat >conftest.make <<\_ACEOF all: - @echo 'ac_maketemp="${MAKE}"' -EOF + @echo 'ac_maketemp="$(MAKE)"' +_ACEOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` if test -n "$ac_maketemp"; then @@ -1097,129 +1509,176 @@ rm -f conftest.make fi if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:1100: result: yes" >&5 + echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 SET_MAKE= else - echo "$as_me:1104: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 SET_MAKE="MAKE=${MAKE-make}" fi -PACKAGE=dillo - -VERSION=0.6.6 - -if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then - { { echo "$as_me:1114: error: source directory already configured; run \"make distclean\" there first" >&5 + # test to see if srcdir already configured +if test "`cd $srcdir && pwd`" != "`pwd`" && + test -f $srcdir/config.status; then + { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} { (exit 1); exit 1; }; } fi -cat >>confdefs.h <<EOF +# Define the identity of the package. + PACKAGE=dillo + VERSION=0.6.6 + + +cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" -EOF +_ACEOF -cat >>confdefs.h <<EOF + +cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" -EOF +_ACEOF -missing_dir=`cd $ac_aux_dir && pwd` -echo "$as_me:1128: checking for working aclocal" >&5 -echo $ECHO_N "checking for working aclocal... $ECHO_C" >&6 -# Run test in a subshell; some versions of sh will print an error if -# an executable is not found, even if stderr is redirected. -# Redirect stdin to placate older versions of autoconf. Sigh. -if (aclocal --version) < /dev/null > /dev/null 2>&1; then - ACLOCAL=aclocal - echo "$as_me:1135: result: found" >&5 -echo "${ECHO_T}found" >&6 -else - ACLOCAL="$missing_dir/missing aclocal" - echo "$as_me:1139: result: missing" >&5 -echo "${ECHO_T}missing" >&6 -fi - -echo "$as_me:1143: checking for working autoconf" >&5 -echo $ECHO_N "checking for working autoconf... $ECHO_C" >&6 -# Run test in a subshell; some versions of sh will print an error if -# an executable is not found, even if stderr is redirected. -# Redirect stdin to placate older versions of autoconf. Sigh. -if (autoconf --version) < /dev/null > /dev/null 2>&1; then - AUTOCONF=autoconf - echo "$as_me:1150: result: found" >&5 -echo "${ECHO_T}found" >&6 -else - AUTOCONF="$missing_dir/missing autoconf" - echo "$as_me:1154: result: missing" >&5 -echo "${ECHO_T}missing" >&6 -fi - -echo "$as_me:1158: checking for working automake" >&5 -echo $ECHO_N "checking for working automake... $ECHO_C" >&6 -# Run test in a subshell; some versions of sh will print an error if -# an executable is not found, even if stderr is redirected. -# Redirect stdin to placate older versions of autoconf. Sigh. -if (automake --version) < /dev/null > /dev/null 2>&1; then - AUTOMAKE=automake - echo "$as_me:1165: result: found" >&5 -echo "${ECHO_T}found" >&6 -else - AUTOMAKE="$missing_dir/missing automake" - echo "$as_me:1169: result: missing" >&5 -echo "${ECHO_T}missing" >&6 -fi - -echo "$as_me:1173: checking for working autoheader" >&5 -echo $ECHO_N "checking for working autoheader... $ECHO_C" >&6 -# Run test in a subshell; some versions of sh will print an error if -# an executable is not found, even if stderr is redirected. -# Redirect stdin to placate older versions of autoconf. Sigh. -if (autoheader --version) < /dev/null > /dev/null 2>&1; then - AUTOHEADER=autoheader - echo "$as_me:1180: result: found" >&5 -echo "${ECHO_T}found" >&6 -else - AUTOHEADER="$missing_dir/missing autoheader" - echo "$as_me:1184: result: missing" >&5 -echo "${ECHO_T}missing" >&6 -fi - -echo "$as_me:1188: checking for working makeinfo" >&5 -echo $ECHO_N "checking for working makeinfo... $ECHO_C" >&6 -# Run test in a subshell; some versions of sh will print an error if -# an executable is not found, even if stderr is redirected. -# Redirect stdin to placate older versions of autoconf. Sigh. -if (makeinfo --version) < /dev/null > /dev/null 2>&1; then - MAKEINFO=makeinfo - echo "$as_me:1195: result: found" >&5 -echo "${ECHO_T}found" >&6 -else - MAKEINFO="$missing_dir/missing makeinfo" - echo "$as_me:1199: result: missing" >&5 -echo "${ECHO_T}missing" >&6 -fi +# Some tools Automake needs. -ac_config_headers="$ac_config_headers config.h" +ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} -ac_config_commands="$ac_config_commands default-1" -CPPFLAGS="$CPPFLAGS -I/usr/local/include" -LDFLAGS="$LDFLAGS -L/usr/local/lib" +AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} -# Check whether --with-jpeg-lib or --without-jpeg-lib was given. -if test "${with_jpeg_lib+set}" = set; then - withval="$with_jpeg_lib" - LIBJPEG_LIBDIR=$withval -fi; -# Check whether --with-jpeg-inc or --without-jpeg-inc was given. -if test "${with_jpeg_inc+set}" = set; then - withval="$with_jpeg_inc" - LIBJPEG_INCDIR=$withval -fi; +AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} -# Check whether --enable-efence or --disable-efence was given. + +AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} + + +MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} + + +AMTAR=${AMTAR-"${am_missing_run}tar"} + +install_sh=${install_sh-"$am_aux_dir/install-sh"} + +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the `STRIP' environment variable to overrule this program. +if test "$cross_compiling" != no; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_STRIP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + echo "$as_me:$LINENO: result: $STRIP" >&5 +echo "${ECHO_T}$STRIP" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_STRIP="strip" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + + test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 +echo "${ECHO_T}$ac_ct_STRIP" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + + STRIP=$ac_ct_STRIP +else + STRIP="$ac_cv_prog_STRIP" +fi + +fi +INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" + +# We need awk for the "check" target. The system "awk" is bad on +# some platforms. + + + +# Add the stamp file to the list of files AC keeps track of, +# along with our hook. + ac_config_headers="$ac_config_headers config.h" + + + + +CPPFLAGS="$CPPFLAGS -I/usr/local/include" +LDFLAGS="$LDFLAGS -L/usr/local/lib" + + + +# Check whether --with-jpeg-lib or --without-jpeg-lib was given. +if test "${with_jpeg_lib+set}" = set; then + withval="$with_jpeg_lib" + LIBJPEG_LIBDIR=$withval +fi; + +# Check whether --with-jpeg-inc or --without-jpeg-inc was given. +if test "${with_jpeg_inc+set}" = set; then + withval="$with_jpeg_inc" + LIBJPEG_INCDIR=$withval +fi; + +# Check whether --enable-efence or --disable-efence was given. if test "${enable_efence+set}" = set; then enableval="$enable_efence" @@ -1252,6 +1711,11 @@ enableval="$enable_cookies" fi; +# Check whether --enable-ipv6 or --disable-ipv6 was given. +if test "${enable_ipv6+set}" = set; then + enableval="$enable_ipv6" + +fi; ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -1261,7 +1725,7 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:1264: checking for $ac_word" >&5 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -1269,25 +1733,28 @@ if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue -ac_cv_prog_CC="${ac_tool_prefix}gcc" -echo "$as_me:1279: found $ac_dir/$ac_word" >&5 -break +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:1287: result: $CC" >&5 + echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else - echo "$as_me:1290: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -1296,7 +1763,7 @@ ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 -echo "$as_me:1299: checking for $ac_word" >&5 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -1304,25 +1771,28 @@ if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue -ac_cv_prog_ac_ct_CC="gcc" -echo "$as_me:1314: found $ac_dir/$ac_word" >&5 -break +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="gcc" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:1322: result: $ac_ct_CC" >&5 + echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else - echo "$as_me:1325: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -1335,7 +1805,7 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:1338: checking for $ac_word" >&5 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -1343,25 +1813,28 @@ if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue -ac_cv_prog_CC="${ac_tool_prefix}cc" -echo "$as_me:1353: found $ac_dir/$ac_word" >&5 -break +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}cc" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:1361: result: $CC" >&5 + echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else - echo "$as_me:1364: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -1370,7 +1843,7 @@ ac_ct_CC=$CC # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 -echo "$as_me:1373: checking for $ac_word" >&5 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -1378,25 +1851,28 @@ if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue -ac_cv_prog_ac_ct_CC="cc" -echo "$as_me:1388: found $ac_dir/$ac_word" >&5 -break +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="cc" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:1396: result: $ac_ct_CC" >&5 + echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else - echo "$as_me:1399: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -1409,7 +1885,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 -echo "$as_me:1412: checking for $ac_word" >&5 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -1418,19 +1894,22 @@ ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue -if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue -fi -ac_cv_prog_CC="cc" -echo "$as_me:1432: found $ac_dir/$ac_word" >&5 -break +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done if test $ac_prog_rejected = yes; then @@ -1442,19 +1921,17 @@ # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift - set dummy "$ac_dir/$ac_word" ${1+"$@"} - shift - ac_cv_prog_CC="$@" + ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:1454: result: $CC" >&5 + echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else - echo "$as_me:1457: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -1465,7 +1942,7 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:1468: checking for $ac_word" >&5 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -1473,25 +1950,28 @@ if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue -ac_cv_prog_CC="$ac_tool_prefix$ac_prog" -echo "$as_me:1483: found $ac_dir/$ac_word" >&5 -break +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="$ac_tool_prefix$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:1491: result: $CC" >&5 + echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else - echo "$as_me:1494: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -1504,7 +1984,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:1507: checking for $ac_word" >&5 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -1512,25 +1992,28 @@ if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue -ac_cv_prog_ac_ct_CC="$ac_prog" -echo "$as_me:1522: found $ac_dir/$ac_word" >&5 -break +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:1530: result: $ac_ct_CC" >&5 + echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else - echo "$as_me:1533: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -1542,13 +2025,40 @@ fi -test -z "$CC" && { { echo "$as_me:1545: error: no acceptable cc found in \$PATH" >&5 -echo "$as_me: error: no acceptable cc found in \$PATH" >&2;} + +test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH +See \`config.log' for more details." >&5 +echo "$as_me: error: no acceptable C compiler found in \$PATH +See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } +# Provide some information about the compiler. +echo "$as_me:$LINENO:" \ + "checking for C compiler version" >&5 +ac_compiler=`set X $ac_compile; echo $2` +{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5 + (eval $ac_compiler --version </dev/null >&5) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } +{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5 + (eval $ac_compiler -v </dev/null >&5) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } +{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5 + (eval $ac_compiler -V </dev/null >&5) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + cat >conftest.$ac_ext <<_ACEOF -#line 1550 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ int main () @@ -1559,94 +2069,120 @@ } _ACEOF ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe" +ac_clean_files="$ac_clean_files a.out a.exe b.out" # Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compiler, and finding out an intuition +# It will help us diagnose broken compilers, and finding out an intuition # of exeext. -echo "$as_me:1566: checking for C compiler default output" >&5 +echo "$as_me:$LINENO: checking for C compiler default output" >&5 echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6 ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:1569: \"$ac_link_default\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 (eval $ac_link_default) 2>&5 ac_status=$? - echo "$as_me:1572: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - for ac_file in `ls a.exe conftest.exe a.* conftest conftest.* 2>/dev/null`; do + # Find the output, starting from the most likely. This scheme is +# not robust to junk in `.', hence go to wildcards (a.*) only as a last +# resort. + +# Be careful to initialize this variable, since it used to be cached. +# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. +ac_cv_exeext= +# b.out is created by i960 compilers. +for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out +do + test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.o | *.obj | *.xcoff | *.tds | *.d | *.pdb ) ;; - a.out ) # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; - * ) break;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) + ;; + conftest.$ac_ext ) + # This is the source file. + ;; + [ab].out ) + # We found the default executable, but exeext='' is most + # certainly right. + break;; + *.* ) + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + # FIXME: I believe we export ac_cv_exeext for Libtool, + # but it would be cool to find out if it's true. Does anybody + # maintain Libtool? --akim. + export ac_cv_exeext + break;; + * ) + break;; esac done else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 -{ { echo "$as_me:1589: error: C compiler cannot create executables" >&5 -echo "$as_me: error: C compiler cannot create executables" >&2;} +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { echo "$as_me:$LINENO: error: C compiler cannot create executables +See \`config.log' for more details." >&5 +echo "$as_me: error: C compiler cannot create executables +See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } fi ac_exeext=$ac_cv_exeext -echo "$as_me:1595: result: $ac_file" >&5 +echo "$as_me:$LINENO: result: $ac_file" >&5 echo "${ECHO_T}$ac_file" >&6 # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -echo "$as_me:1600: checking whether the C compiler works" >&5 +echo "$as_me:$LINENO: checking whether the C compiler works" >&5 echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' - { (eval echo "$as_me:1606: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:1609: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else - { { echo "$as_me:1616: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'." >&5 + { { echo "$as_me:$LINENO: error: cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details." >&5 echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'." >&2;} +If you meant to cross compile, use \`--host'. +See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi fi fi -echo "$as_me:1624: result: yes" >&5 +echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 -rm -f a.out a.exe conftest$ac_cv_exeext +rm -f a.out a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -echo "$as_me:1631: checking whether we are cross compiling" >&5 +echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:1633: result: $cross_compiling" >&5 +echo "$as_me:$LINENO: result: $cross_compiling" >&5 echo "${ECHO_T}$cross_compiling" >&6 -echo "$as_me:1636: checking for executable suffix" >&5 -echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6 -if { (eval echo "$as_me:1638: \"$ac_link\"") >&5 +echo "$as_me:$LINENO: checking for suffix of executables" >&5 +echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:1641: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. -for ac_file in `(ls conftest.exe; ls conftest; ls conftest.*) 2>/dev/null`; do +for ac_file in conftest.exe conftest conftest.*; do + test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.o | *.obj | *.xcoff | *.tds | *.d | *.pdb ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` export ac_cv_exeext break;; @@ -1654,26 +2190,32 @@ esac done else - { { echo "$as_me:1657: error: cannot compute EXEEXT: cannot compile and link" >&5 -echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;} + { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest$ac_cv_exeext -echo "$as_me:1663: result: $ac_cv_exeext" >&5 +echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 echo "${ECHO_T}$ac_cv_exeext" >&6 rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT -echo "$as_me:1669: checking for object suffix" >&5 -echo $ECHO_N "checking for object suffix... $ECHO_C" >&6 +echo "$as_me:$LINENO: checking for suffix of object files" >&5 +echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 if test "${ac_cv_objext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line 1675 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ int main () @@ -1684,40 +2226,47 @@ } _ACEOF rm -f conftest.o conftest.obj -if { (eval echo "$as_me:1687: \"$ac_compile\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:1690: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 -{ { echo "$as_me:1702: error: cannot compute OBJEXT: cannot compile" >&5 -echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;} +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute suffix of object files: cannot compile +See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi -echo "$as_me:1709: result: $ac_cv_objext" >&5 +echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 echo "${ECHO_T}$ac_cv_objext" >&6 OBJEXT=$ac_cv_objext ac_objext=$OBJEXT -echo "$as_me:1713: checking whether we are using the GNU C compiler" >&5 +echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line 1719 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ int main () @@ -1731,41 +2280,46 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:1734: \"$ac_compile\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:1737: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:1740: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:1743: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_compiler_gnu=no fi rm -f conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -echo "$as_me:1755: result: $ac_cv_c_compiler_gnu" >&5 +echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS CFLAGS="-g" -echo "$as_me:1761: checking whether $CC accepts -g" >&5 +echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line 1767 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ int main () @@ -1776,26 +2330,27 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:1779: \"$ac_compile\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:1782: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:1785: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:1788: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_prog_cc_g=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:1798: result: $ac_cv_prog_cc_g" >&5 +echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS @@ -1812,6 +2367,102 @@ CFLAGS= fi fi +echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 +echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 +if test "${ac_cv_prog_cc_stdc+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_cv_prog_cc_stdc=no +ac_save_CC=$CC +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <stdarg.h> +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ +struct buf { int x; }; +FILE * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); +int argc; +char **argv; +int +main () +{ +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; + ; + return 0; +} +_ACEOF +# Don't try gcc -ansi; that turns off useful extensions and +# breaks some systems' header files. +# AIX -qlanglvl=ansi +# Ultrix and OSF/1 -std1 +# HP-UX 10.20 and later -Ae +# HP-UX older versions -Aa -D_HPUX_SOURCE +# SVR4 -Xc -D__EXTENSIONS__ +for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_prog_cc_stdc=$ac_arg +break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +fi +rm -f conftest.$ac_objext +done +rm -f conftest.$ac_ext conftest.$ac_objext +CC=$ac_save_CC + +fi + +case "x$ac_cv_prog_cc_stdc" in + x|xno) + echo "$as_me:$LINENO: result: none needed" >&5 +echo "${ECHO_T}none needed" >&6 ;; + *) + echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 + CC="$CC $ac_cv_prog_cc_stdc" ;; +esac + # Some people use a C++ compiler to compile C. Since we use `exit', # in C++ we need to declare it. In case someone uses the same compiler # for both compiling C and C++ we need to have the C++ compiler decide @@ -1822,16 +2473,16 @@ #endif _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:1825: \"$ac_compile\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:1828: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:1831: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:1834: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then for ac_declaration in \ ''\ @@ -1843,8 +2494,12 @@ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF -#line 1846 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <stdlib.h> $ac_declaration int @@ -1856,27 +2511,32 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:1859: \"$ac_compile\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:1862: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:1865: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:1868: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + continue fi rm -f conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF -#line 1878 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ $ac_declaration int main () @@ -1887,31 +2547,36 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:1890: \"$ac_compile\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:1893: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:1896: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:1899: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + fi rm -f conftest.$ac_objext conftest.$ac_ext done -echo '#ifdef __cplusplus' >>confdefs.h -echo $ac_declaration >>confdefs.h -echo '#endif' >>confdefs.h +rm -f conftest* +if test -n "$ac_declaration"; then + echo '#ifdef __cplusplus' >>confdefs.h + echo $ac_declaration >>confdefs.h + echo '#endif' >>confdefs.h +fi else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + fi rm -f conftest.$ac_objext conftest.$ac_ext ac_ext=c @@ -1919,8 +2584,154 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu +rm -f .deps 2>/dev/null +mkdir .deps 2>/dev/null +if test -d .deps; then + DEPDIR=.deps +else + # MS-DOS does not allow filenames that begin with a dot. + DEPDIR=_deps +fi +rmdir .deps 2>/dev/null + + + ac_config_commands="$ac_config_commands depfiles" + + +am_make=${MAKE-make} +cat > confinc << 'END' +doit: + @echo done +END +# If we don't find an include directive, just comment out the code. +echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 +echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6 +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# We grep out `Entering directory' and `Leaving directory' +# messages which can occur if `w' ends up in MAKEFLAGS. +# In particular we don't look at `^make:' because GNU make might +# be invoked under some other name (usually "gmake"), in which +# case it prints its new name instead of `make'. +if test "`$am_make -s -f confmf 2> /dev/null | fgrep -v 'ing directory'`" = "done"; then + am__include=include + am__quote= + _am_result=GNU +fi +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then + am__include=.include + am__quote="\"" + _am_result=BSD + fi +fi + + +echo "$as_me:$LINENO: result: $_am_result" >&5 +echo "${ECHO_T}$_am_result" >&6 +rm -f confinc confmf + +# Check whether --enable-dependency-tracking or --disable-dependency-tracking was given. +if test "${enable_dependency_tracking+set}" = set; then + enableval="$enable_dependency_tracking" + +fi; +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' +fi + + +if test "x$enable_dependency_tracking" != xno; then + AMDEP_TRUE= + AMDEP_FALSE='#' +else + AMDEP_TRUE='#' + AMDEP_FALSE= +fi + + + + +depcc="$CC" am_compiler_list= + +echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 +echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 +if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + + am_cv_CC_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` + fi + for depmode in $am_compiler_list; do + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + echo '#include "conftest.h"' > conftest.c + echo 'int i;' > conftest.h + echo "${am__include} ${am__quote}conftest.Po${am__quote}" > confmf + + case $depmode in + nosideeffect) + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + none) break ;; + esac + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. + if depmode=$depmode \ + source=conftest.c object=conftest.o \ + depfile=conftest.Po tmpdepfile=conftest.TPo \ + $SHELL ./depcomp $depcc -c conftest.c -o conftest.o >/dev/null 2>&1 && + grep conftest.h conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + am_cv_CC_dependencies_compiler_type=$depmode + break + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_CC_dependencies_compiler_type=none +fi + +fi +echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 +echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6 +CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type + + -echo "$as_me:1923: checking for ${CC-cc} option to accept ANSI C" >&5 + + + +echo "$as_me:$LINENO: checking for ${CC-cc} option to accept ANSI C" >&5 echo $ECHO_N "checking for ${CC-cc} option to accept ANSI C... $ECHO_C" >&6 if test "${am_cv_prog_cc_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -1931,14 +2742,19 @@ # breaks some systems' header files. # AIX -qlanglvl=ansi # Ultrix and OSF/1 -std1 -# HP-UX -Aa -D_HPUX_SOURCE +# HP-UX 10.20 and later -Ae +# HP-UX older versions -Aa -D_HPUX_SOURCE # SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" cat >conftest.$ac_ext <<_ACEOF -#line 1940 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <stdarg.h> #include <stdio.h> #include <sys/types.h> @@ -1979,21 +2795,22 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:1982: \"$ac_compile\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:1985: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:1988: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:1991: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then am_cv_prog_cc_stdc="$ac_arg"; break else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + fi rm -f conftest.$ac_objext conftest.$ac_ext done @@ -2002,10 +2819,10 @@ fi if test -z "$am_cv_prog_cc_stdc"; then - echo "$as_me:2005: result: none needed" >&5 + echo "$as_me:$LINENO: result: none needed" >&5 echo "${ECHO_T}none needed" >&6 else - echo "$as_me:2008: result: $am_cv_prog_cc_stdc" >&5 + echo "$as_me:$LINENO: result: $am_cv_prog_cc_stdc" >&5 echo "${ECHO_T}$am_cv_prog_cc_stdc" >&6 fi case "x$am_cv_prog_cc_stdc" in @@ -2016,7 +2833,7 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo "$as_me:2019: checking for $ac_word" >&5 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -2024,25 +2841,28 @@ if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue -ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" -echo "$as_me:2034: found $ac_dir/$ac_word" >&5 -break +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then - echo "$as_me:2042: result: $RANLIB" >&5 + echo "$as_me:$LINENO: result: $RANLIB" >&5 echo "${ECHO_T}$RANLIB" >&6 else - echo "$as_me:2045: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -2051,7 +2871,7 @@ ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 -echo "$as_me:2054: checking for $ac_word" >&5 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -2059,15 +2879,18 @@ if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - $as_executable_p "$ac_dir/$ac_word" || continue -ac_cv_prog_ac_ct_RANLIB="ranlib" -echo "$as_me:2069: found $ac_dir/$ac_word" >&5 -break +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_RANLIB="ranlib" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" @@ -2075,10 +2898,10 @@ fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then - echo "$as_me:2078: result: $ac_ct_RANLIB" >&5 + echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 echo "${ECHO_T}$ac_ct_RANLIB" >&6 else - echo "$as_me:2081: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi @@ -2087,300 +2910,112 @@ RANLIB="$ac_cv_prog_RANLIB" fi -if test -z "$GTK_CONFIG"; then - GTK_CONFIG=`which gtk-config || which gtk12-config` -fi - -# Check whether --with-gtk-prefix or --without-gtk-prefix was given. -if test "${with_gtk_prefix+set}" = set; then - withval="$with_gtk_prefix" - gtk_config_prefix="$withval" -else - gtk_config_prefix="" -fi; -# Check whether --with-gtk-exec-prefix or --without-gtk-exec-prefix was given. -if test "${with_gtk_exec_prefix+set}" = set; then - withval="$with_gtk_exec_prefix" - gtk_config_exec_prefix="$withval" -else - gtk_config_exec_prefix="" -fi; -# Check whether --enable-gtktest or --disable-gtktest was given. -if test "${enable_gtktest+set}" = set; then - enableval="$enable_gtktest" -else - enable_gtktest=yes -fi; +GTK_REQUIRED=2.0.0 - for module in . - do - case "$module" in - gthread) - gtk_config_args="$gtk_config_args gthread" - ;; - esac - done - if test x$gtk_config_exec_prefix != x ; then - gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix" - if test x${GTK_CONFIG+set} != xset ; then - GTK_CONFIG=$gtk_config_exec_prefix/bin/gtk-config - fi - fi - if test x$gtk_config_prefix != x ; then - gtk_config_args="$gtk_config_args --prefix=$gtk_config_prefix" - if test x${GTK_CONFIG+set} != xset ; then - GTK_CONFIG=$gtk_config_prefix/bin/gtk-config - fi - fi + succeeded=no - # Extract the first word of "gtk-config", so it can be a program name with args. -set dummy gtk-config; ac_word=$2 -echo "$as_me:2141: checking for $ac_word" >&5 + if test -z "$PKG_CONFIG"; then + # Extract the first word of "pkg-config", so it can be a program name with args. +set dummy pkg-config; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_path_GTK_CONFIG+set}" = set; then +if test "${ac_cv_path_PKG_CONFIG+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - case $GTK_CONFIG in + case $PKG_CONFIG in [\\/]* | ?:[\\/]*) - ac_cv_path_GTK_CONFIG="$GTK_CONFIG" # Let the user override the test with a path. + ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) - ac_save_IFS=$IFS; IFS=$ac_path_separator -ac_dummy="$PATH" -for ac_dir in $ac_dummy; do - IFS=$ac_save_IFS - test -z "$ac_dir" && ac_dir=. - if $as_executable_p "$ac_dir/$ac_word"; then - ac_cv_path_GTK_CONFIG="$ac_dir/$ac_word" - echo "$as_me:2158: found $ac_dir/$ac_word" >&5 - break -fi + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done done - test -z "$ac_cv_path_GTK_CONFIG" && ac_cv_path_GTK_CONFIG="no" + test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" ;; esac fi -GTK_CONFIG=$ac_cv_path_GTK_CONFIG +PKG_CONFIG=$ac_cv_path_PKG_CONFIG -if test -n "$GTK_CONFIG"; then - echo "$as_me:2170: result: $GTK_CONFIG" >&5 -echo "${ECHO_T}$GTK_CONFIG" >&6 +if test -n "$PKG_CONFIG"; then + echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5 +echo "${ECHO_T}$PKG_CONFIG" >&6 else - echo "$as_me:2173: result: no" >&5 + echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi - min_gtk_version=1.2.0 - echo "$as_me:2178: checking for GTK - version >= $min_gtk_version" >&5 -echo $ECHO_N "checking for GTK - version >= $min_gtk_version... $ECHO_C" >&6 - no_gtk="" - if test "$GTK_CONFIG" = "no" ; then - no_gtk=yes + fi + + if test "$PKG_CONFIG" = "no" ; then + echo "*** The pkg-config script could not be found. Make sure it is" + echo "*** in your path, or set the PKG_CONFIG environment variable" + echo "*** to the full path to pkg-config." + echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." else - GTK_CFLAGS=`$GTK_CONFIG $gtk_config_args --cflags` - GTK_LIBS=`$GTK_CONFIG $gtk_config_args --libs` - gtk_config_major_version=`$GTK_CONFIG $gtk_config_args --version | \ - sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'` - gtk_config_minor_version=`$GTK_CONFIG $gtk_config_args --version | \ - sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'` - gtk_config_micro_version=`$GTK_CONFIG $gtk_config_args --version | \ - sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'` - if test "x$enable_gtktest" = "xyes" ; then - ac_save_CFLAGS="$CFLAGS" - ac_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $GTK_CFLAGS" - LIBS="$GTK_LIBS $LIBS" - rm -f conf.gtktest - if test "$cross_compiling" = yes; then - echo $ac_n "cross compiling; assumed OK... $ac_c" -else - cat >conftest.$ac_ext <<_ACEOF -#line 2202 "configure" -#include "confdefs.h" + PKG_CONFIG_MIN_VERSION=0.9.0 + if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then + echo "$as_me:$LINENO: checking for gtk+-2.0 >= $GTK_REQUIRED" >&5 +echo $ECHO_N "checking for gtk+-2.0 >= $GTK_REQUIRED... $ECHO_C" >&6 -#include <gtk/gtk.h> -#include <stdio.h> -#include <stdlib.h> + if $PKG_CONFIG --exists "gtk+-2.0 >= $GTK_REQUIRED" ; then + echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6 + succeeded=yes -int -main () -{ - int major, minor, micro; - char *tmp_version; + echo "$as_me:$LINENO: checking GTK_CFLAGS" >&5 +echo $ECHO_N "checking GTK_CFLAGS... $ECHO_C" >&6 + GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= $GTK_REQUIRED"` + echo "$as_me:$LINENO: result: $GTK_CFLAGS" >&5 +echo "${ECHO_T}$GTK_CFLAGS" >&6 + + echo "$as_me:$LINENO: checking GTK_LIBS" >&5 +echo $ECHO_N "checking GTK_LIBS... $ECHO_C" >&6 + GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= $GTK_REQUIRED"` + echo "$as_me:$LINENO: result: $GTK_LIBS" >&5 +echo "${ECHO_T}$GTK_LIBS" >&6 + else + GTK_CFLAGS="" + GTK_LIBS="" + ## If we have a custom action on failure, don't print errors, but + ## do set a variable so people can do so. + GTK_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gtk+-2.0 >= $GTK_REQUIRED"` + echo $GTK_PKG_ERRORS + fi - system ("touch conf.gtktest"); - /* HP/UX 9 (%@#!) writes to sscanf strings */ - tmp_version = g_strdup("$min_gtk_version"); - if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { - printf("%s, bad version string\n", "$min_gtk_version"); - exit(1); - } - - if ((gtk_major_version != $gtk_config_major_version) || - (gtk_minor_version != $gtk_config_minor_version) || - (gtk_micro_version != $gtk_config_micro_version)) - { - printf("\n*** 'gtk-config --version' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n", - $gtk_config_major_version, $gtk_config_minor_version, $gtk_config_micro_version, - gtk_major_version, gtk_minor_version, gtk_micro_version); - printf ("*** was found! If gtk-config was correct, then it is best\n"); - printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n"); - printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n"); - printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n"); - printf("*** required on your system.\n"); - printf("*** If gtk-config was wrong, set the environment variable GTK_CONFIG\n"); - printf("*** to point to the correct copy of gtk-config, and remove the file config.cache\n"); - printf("*** before re-running configure\n"); - } -#if defined (GTK_MAJOR_VERSION) && defined (GTK_MINOR_VERSION) && defined (GTK_MICRO_VERSION) - else if ((gtk_major_version != GTK_MAJOR_VERSION) || - (gtk_minor_version != GTK_MINOR_VERSION) || - (gtk_micro_version != GTK_MICRO_VERSION)) - { - printf("*** GTK+ header files (version %d.%d.%d) do not match\n", - GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION); - printf("*** library (version %d.%d.%d)\n", - gtk_major_version, gtk_minor_version, gtk_micro_version); - } -#endif /* defined (GTK_MAJOR_VERSION) ... */ - else - { - if ((gtk_major_version > major) || - ((gtk_major_version == major) && (gtk_minor_version > minor)) || - ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro))) - { - return 0; - } - else - { - printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n", - gtk_major_version, gtk_minor_version, gtk_micro_version); - printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n", - major, minor, micro); - printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n"); - printf("***\n"); - printf("*** If you have already installed a sufficiently new version, this error\n"); - printf("*** probably means that the wrong copy of the gtk-config shell script is\n"); - printf("*** being found. The easiest way to fix this is to remove the old version\n"); - printf("*** of GTK+, but you can also set the GTK_CONFIG environment to point to the\n"); - printf("*** correct copy of gtk-config. (In this case, you will have to\n"); - printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); - printf("*** so that the correct libraries are found at run-time))\n"); - } - } - return 1; -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:2281: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:2284: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:2286: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:2289: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 -no_gtk=yes -fi -rm -f core core.* *.core conftest$ac_exeext conftest.$ac_ext -fi - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" + else + echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." + echo "*** See http://www.freedesktop.org/software/pkgconfig" fi fi - if test "x$no_gtk" = x ; then - echo "$as_me:2305: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - LIBS="$LIBS $GTK_LIBS" CFLAGS="$GTK_CFLAGS $CFLAGS" + + if test $succeeded = yes; then + : else - echo "$as_me:2309: result: no" >&5 -echo "${ECHO_T}no" >&6 - if test "$GTK_CONFIG" = "no" ; then - echo "*** The gtk-config script installed by GTK could not be found" - echo "*** If GTK was installed in PREFIX, make sure PREFIX/bin is in" - echo "*** your path, or set the GTK_CONFIG environment variable to the" - echo "*** full path to gtk-config." - else - if test -f conf.gtktest ; then - : - else - echo "*** Could not run GTK test program, checking why..." - CFLAGS="$CFLAGS $GTK_CFLAGS" - LIBS="$LIBS $GTK_LIBS" - cat >conftest.$ac_ext <<_ACEOF -#line 2324 "configure" -#include "confdefs.h" + { { echo "$as_me:$LINENO: error: Library requirements (gtk+-2.0 >= $GTK_REQUIRED) 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 +echo "$as_me: error: Library requirements (gtk+-2.0 >= $GTK_REQUIRED) 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;} + { (exit 1); exit 1; }; } + fi -#include <gtk/gtk.h> -#include <stdio.h> -int -main () -{ - return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:2339: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:2342: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:2345: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:2348: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - echo "*** The test program compiled, but did not run. This usually means" - echo "*** that the run-time linker is not finding GTK or finding the wrong" - echo "*** version of GTK. If it is not finding GTK, you'll need to set your" - echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" - echo "*** to the installed location Also, make sure you have run ldconfig if that" - echo "*** is required on your system" - echo "***" - echo "*** If you have an old version installed, it is best to remove it, although" - echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" - echo "***" - echo "*** If you have a RedHat 5.0 system, you should remove the GTK package that" - echo "*** came with the system with the command" - echo "***" - echo "*** rpm --erase --nodeps gtk gtk-devel" -else - echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 - echo "*** The test program failed to compile or link. See the file config.log for the" - echo "*** exact error that occured. This usually means GTK was incorrectly installed" - echo "*** or that you have moved GTK since it was installed. In the latter case, you" - echo "*** may want to edit the gtk-config script: $GTK_CONFIG" -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - fi - fi - GTK_CFLAGS="" - GTK_LIBS="" - { echo "$as_me:2379: WARNING: Unable to find Gtk+ with a version >= 1.2.0" >&5 -echo "$as_me: WARNING: Unable to find Gtk+ with a version >= 1.2.0" >&2;} - fi +CPPFLAGS="$CPPFLAGS $GTK_CFLAGS" +LDFLAGS="$LDFLAGS $GTK_LIBS" - rm -f conf.gtktest if eval "test x$GCC = xyes"; then if test "`echo $CFLAGS | grep '\-Wall' 2> /dev/null`" = ""; then @@ -2398,10 +3033,12 @@ fi fi + + if test -n "$LIBJPEG_LIBDIR"; then LIBS="$LIBS -L$LIBJPEG_LIBDIR" fi -echo "$as_me:2404: checking for jpeg_destroy_decompress in -ljpeg" >&5 +echo "$as_me:$LINENO: checking for jpeg_destroy_decompress in -ljpeg" >&5 echo $ECHO_N "checking for jpeg_destroy_decompress in -ljpeg... $ECHO_C" >&6 if test "${ac_cv_lib_jpeg_jpeg_destroy_decompress+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -2409,8 +3046,12 @@ ac_check_lib_save_LIBS=$LIBS LIBS="-ljpeg $LIBS" cat >conftest.$ac_ext <<_ACEOF -#line 2412 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus @@ -2428,27 +3069,28 @@ } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:2431: \"$ac_link\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:2434: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:2437: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:2440: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_jpeg_jpeg_destroy_decompress=yes else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_lib_jpeg_jpeg_destroy_decompress=no fi rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:2451: result: $ac_cv_lib_jpeg_jpeg_destroy_decompress" >&5 +echo "$as_me:$LINENO: result: $ac_cv_lib_jpeg_jpeg_destroy_decompress" >&5 echo "${ECHO_T}$ac_cv_lib_jpeg_jpeg_destroy_decompress" >&6 if test $ac_cv_lib_jpeg_jpeg_destroy_decompress = yes; then jpeg_ok=yes @@ -2465,7 +3107,7 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:2468: checking how to run the C preprocessor" >&5 +echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then @@ -2478,27 +3120,36 @@ # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do - # break 2 since there is a loop in there. ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. + # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since + # <limits.h> exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF -#line 2490 "configure" -#include "confdefs.h" -#include <assert.h> +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef __STDC__ +# include <limits.h> +#else +# include <assert.h> +#endif Syntax error _ACEOF -if { (eval echo "$as_me:2495: \"$ac_cpp conftest.$ac_ext\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err + grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 - echo "$as_me:2501: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag @@ -2512,7 +3163,8 @@ : else echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + # Broken: fails on valid input. continue fi @@ -2521,17 +3173,21 @@ # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF -#line 2524 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <ac_nonexistent.h> _ACEOF -if { (eval echo "$as_me:2528: \"$ac_cpp conftest.$ac_ext\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err + grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 - echo "$as_me:2534: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag @@ -2546,7 +3202,8 @@ continue else echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + # Passes both tests. ac_preproc_ok=: break @@ -2557,7 +3214,7 @@ # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then - break 2 + break fi done @@ -2568,28 +3225,38 @@ else ac_cv_prog_CPP=$CPP fi -echo "$as_me:2571: result: $CPP" >&5 +echo "$as_me:$LINENO: result: $CPP" >&5 echo "${ECHO_T}$CPP" >&6 ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. + # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since + # <limits.h> exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF -#line 2581 "configure" -#include "confdefs.h" -#include <assert.h> +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef __STDC__ +# include <limits.h> +#else +# include <assert.h> +#endif Syntax error _ACEOF -if { (eval echo "$as_me:2586: \"$ac_cpp conftest.$ac_ext\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err + grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 - echo "$as_me:2592: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag @@ -2603,7 +3270,8 @@ : else echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + # Broken: fails on valid input. continue fi @@ -2612,17 +3280,21 @@ # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF -#line 2615 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <ac_nonexistent.h> _ACEOF -if { (eval echo "$as_me:2619: \"$ac_cpp conftest.$ac_ext\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err + grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 - echo "$as_me:2625: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag @@ -2637,7 +3309,8 @@ continue else echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + # Passes both tests. ac_preproc_ok=: break @@ -2650,8 +3323,10 @@ if $ac_preproc_ok; then : else - { { echo "$as_me:2653: error: C preprocessor \"$CPP\" fails sanity check" >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;} + { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." >&5 +echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi @@ -2661,26 +3336,316 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -for ac_header in jpeglib.h jconfig.h jerror.h jmorecfg.h + +echo "$as_me:$LINENO: checking for egrep" >&5 +echo $ECHO_N "checking for egrep... $ECHO_C" >&6 +if test "${ac_cv_prog_egrep+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if echo a | (grep -E '(a|b)') >/dev/null 2>&1 + then ac_cv_prog_egrep='grep -E' + else ac_cv_prog_egrep='egrep' + fi +fi +echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 +echo "${ECHO_T}$ac_cv_prog_egrep" >&6 + EGREP=$ac_cv_prog_egrep + + +echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 +if test "${ac_cv_header_stdc+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <stdlib.h> +#include <stdarg.h> +#include <string.h> +#include <float.h> + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_header_stdc=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_cv_header_stdc=no +fi +rm -f conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <string.h> + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <stdlib.h> + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then + : +else + cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <ctype.h> +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + exit(2); + exit (0); +} +_ACEOF +rm -f conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + : +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_header_stdc=no +fi +rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +echo "${ECHO_T}$ac_cv_header_stdc" >&6 +if test $ac_cv_header_stdc = yes; then + +cat >>confdefs.h <<\_ACEOF +#define STDC_HEADERS 1 +_ACEOF + +fi + +# On IRIX 5.3, sys/types and inttypes.h are conflicting. + + + + + + + + + +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h do -ac_ac_Header=`echo "ac_cv_header_$ac_header" | $ac_tr_sh` -echo "$as_me:2667: checking for $ac_header" >&5 +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$ac_ac_Header+set}\" = set"; then +if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line 2673 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default + +#include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + eval "$as_ac_Header=yes" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +eval "$as_ac_Header=no" +fi +rm -f conftest.$ac_objext conftest.$ac_ext +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + + + + + +for ac_header in jpeglib.h jconfig.h jerror.h jmorecfg.h +do +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +else + # Is the header compilable? +echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +#include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_header_compiler=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_header_compiler=no +fi +rm -f conftest.$ac_objext conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6 + +# Is the header present? +echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <$ac_header> _ACEOF -if { (eval echo "$as_me:2677: \"$ac_cpp conftest.$ac_ext\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err + grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 - echo "$as_me:2683: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag @@ -2691,24 +3656,70 @@ ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then - eval "$ac_ac_Header=yes" + ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - eval "$ac_ac_Header=no" +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6 + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc in + yes:no ) + { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + ( + cat <<\_ASBOX +## ------------------------------------ ## +## Report this to bug-autoconf@gnu.org. ## +## ------------------------------------ ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; + no:yes ) + { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + ( + cat <<\_ASBOX +## ------------------------------------ ## +## Report this to bug-autoconf@gnu.org. ## +## ------------------------------------ ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + eval "$as_ac_Header=$ac_header_preproc" fi -echo "$as_me:2702: result: `eval echo '${'$ac_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$ac_ac_Header'}'`" >&6 -if test `eval echo '${'$ac_ac_Header'}'` = yes; then - cat >>confdefs.h <<EOF -#define `echo "HAVE_$ac_header" | $ac_tr_cpp` 1 -EOF +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 + +fi +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF jpeg_ok=yes else jpeg_ok=no fi + done if test "x$jpeg_ok" = "xyes"; then @@ -2716,15 +3727,16 @@ fi fi if test "x$jpeg_ok" = "xno"; then - { echo "$as_me:2719: WARNING: *** JPEG support will not be included ***" >&5 + { echo "$as_me:$LINENO: WARNING: *** JPEG support will not be included ***" >&5 echo "$as_me: WARNING: *** JPEG support will not be included ***" >&2;} fi + system=`uname -s` case $system in Linux|SunOS) -echo "$as_me:2727: checking for pthread_create in -lpthread" >&5 +echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5 echo $ECHO_N "checking for pthread_create in -lpthread... $ECHO_C" >&6 if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -2732,8 +3744,12 @@ ac_check_lib_save_LIBS=$LIBS LIBS="-lpthread $LIBS" cat >conftest.$ac_ext <<_ACEOF -#line 2735 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus @@ -2751,32 +3767,33 @@ } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:2754: \"$ac_link\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:2757: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:2760: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:2763: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_pthread_pthread_create=yes else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_lib_pthread_pthread_create=no fi rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:2774: result: $ac_cv_lib_pthread_pthread_create" >&5 +echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_create" >&5 echo "${ECHO_T}$ac_cv_lib_pthread_pthread_create" >&6 if test $ac_cv_lib_pthread_pthread_create = yes; then - cat >>confdefs.h <<EOF + cat >>confdefs.h <<_ACEOF #define HAVE_LIBPTHREAD 1 -EOF +_ACEOF LIBS="-lpthread $LIBS" @@ -2785,21 +3802,25 @@ ;; OSF1) - echo "$as_me:2788: checking whether pthreads work" >&5 + echo "$as_me:$LINENO: checking whether pthreads work" >&5 echo $ECHO_N "checking whether pthreads work... $ECHO_C" >&6 LDFLAGS="$LDFLAGS -lpthread -lexc -ldb" - { echo "$as_me:2791: WARNING: *** _Untested pthreads_ try setting LDFLAGS manually if it doesn't work ***" >&5 + { echo "$as_me:$LINENO: WARNING: *** _Untested pthreads_ try setting LDFLAGS manually if it doesn't work ***" >&5 echo "$as_me: WARNING: *** _Untested pthreads_ try setting LDFLAGS manually if it doesn't work ***" >&2;} ;; *) - echo "$as_me:2796: checking whether threads work with -pthread" >&5 + echo "$as_me:$LINENO: checking whether threads work with -pthread" >&5 echo $ECHO_N "checking whether threads work with -pthread... $ECHO_C" >&6 LDSAVEFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -pthread" cat >conftest.$ac_ext <<_ACEOF -#line 2801 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus @@ -2817,32 +3838,33 @@ } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:2820: \"$ac_link\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:2823: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:2826: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:2829: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then pthread_ok=yes else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + pthread_ok=no fi rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext if test "x$pthread_ok" = "xyes"; then - echo "$as_me:2839: result: yes" >&5 + echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 else - echo "$as_me:2842: result: no. Now we will try some libraries." >&5 + echo "$as_me:$LINENO: result: no. Now we will try some libraries." >&5 echo "${ECHO_T}no. Now we will try some libraries." >&6 LDFLAGS=$LDSAVEFLAGS - echo "$as_me:2845: checking for library containing pthread_create" >&5 + echo "$as_me:$LINENO: checking for library containing pthread_create" >&5 echo $ECHO_N "checking for library containing pthread_create... $ECHO_C" >&6 if test "${ac_cv_search_pthread_create+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -2850,8 +3872,12 @@ ac_func_search_save_LIBS=$LIBS ac_cv_search_pthread_create=no cat >conftest.$ac_ext <<_ACEOF -#line 2853 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus @@ -2869,29 +3895,34 @@ } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:2872: \"$ac_link\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:2875: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:2878: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:2881: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_pthread_create="none required" else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + fi rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext if test "$ac_cv_search_pthread_create" = no; then for ac_lib in pthread c_r; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" cat >conftest.$ac_ext <<_ACEOF -#line 2893 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus @@ -2909,29 +3940,30 @@ } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:2912: \"$ac_link\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:2915: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:2918: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:2921: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_pthread_create="-l$ac_lib" break else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + fi rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext done fi LIBS=$ac_func_search_save_LIBS fi -echo "$as_me:2934: result: $ac_cv_search_pthread_create" >&5 +echo "$as_me:$LINENO: result: $ac_cv_search_pthread_create" >&5 echo "${ECHO_T}$ac_cv_search_pthread_create" >&6 if test "$ac_cv_search_pthread_create" != no; then test "$ac_cv_search_pthread_create" = "none required" || LIBS="$ac_cv_search_pthread_create $LIBS" @@ -2941,14 +3973,14 @@ fi if test "x$thread_ok" = "xno"; then - { echo "$as_me:2944: WARNING: *** No pthreads found. ***" >&5 + { echo "$as_me:$LINENO: WARNING: *** No pthreads found. ***" >&5 echo "$as_me: WARNING: *** No pthreads found. ***" >&2;} - { { echo "$as_me:2946: error: *** Try setting LIBS or LDFLAGS manually to point to your pthreads library. ***" >&5 + { { echo "$as_me:$LINENO: error: *** Try setting LIBS or LDFLAGS manually to point to your pthreads library. ***" >&5 echo "$as_me: error: *** Try setting LIBS or LDFLAGS manually to point to your pthreads library. ***" >&2;} { (exit 1); exit 1; }; } exit 1 else - { echo "$as_me:2951: WARNING: found a way to link threads" >&5 + { echo "$as_me:$LINENO: WARNING: found a way to link threads" >&5 echo "$as_me: WARNING: found a way to link threads" >&2;} fi fi @@ -2956,7 +3988,10 @@ esac -echo "$as_me:2959: checking for zlibVersion in -lz" >&5 + + + +echo "$as_me:$LINENO: checking for zlibVersion in -lz" >&5 echo $ECHO_N "checking for zlibVersion in -lz... $ECHO_C" >&6 if test "${ac_cv_lib_z_zlibVersion+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -2964,8 +3999,12 @@ ac_check_lib_save_LIBS=$LIBS LIBS="-lz $LIBS" cat >conftest.$ac_ext <<_ACEOF -#line 2967 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus @@ -2983,38 +4022,40 @@ } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:2986: \"$ac_link\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:2989: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:2992: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:2995: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_z_zlibVersion=yes else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_lib_z_zlibVersion=no fi rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:3006: result: $ac_cv_lib_z_zlibVersion" >&5 +echo "$as_me:$LINENO: result: $ac_cv_lib_z_zlibVersion" >&5 echo "${ECHO_T}$ac_cv_lib_z_zlibVersion" >&6 if test $ac_cv_lib_z_zlibVersion = yes; then - cat >>confdefs.h <<EOF + cat >>confdefs.h <<_ACEOF #define HAVE_LIBZ 1 -EOF +_ACEOF LIBS="-lz $LIBS" fi -echo "$as_me:3017: checking for png_check_sig in -lpng" >&5 + +echo "$as_me:$LINENO: checking for png_check_sig in -lpng" >&5 echo $ECHO_N "checking for png_check_sig in -lpng... $ECHO_C" >&6 if test "${ac_cv_lib_png_png_check_sig+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -3022,8 +4063,12 @@ ac_check_lib_save_LIBS=$LIBS LIBS="-lpng $LIBS" cat >conftest.$ac_ext <<_ACEOF -#line 3025 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus @@ -3041,41 +4086,47 @@ } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:3044: \"$ac_link\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:3047: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:3050: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:3053: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_png_png_check_sig=yes else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_lib_png_png_check_sig=no fi rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:3064: result: $ac_cv_lib_png_png_check_sig" >&5 +echo "$as_me:$LINENO: result: $ac_cv_lib_png_png_check_sig" >&5 echo "${ECHO_T}$ac_cv_lib_png_png_check_sig" >&6 if test $ac_cv_lib_png_png_check_sig = yes; then - cat >>confdefs.h <<EOF + cat >>confdefs.h <<_ACEOF #define HAVE_LIBPNG 1 -EOF +_ACEOF LIBS="-lpng $LIBS" fi + if test "x$enable_cookies" = "xno" ; then CFLAGS="$CFLAGS -DDISABLE_COOKIES" fi +if test "x$enable_ipv6" = "xyes" ; then + CFLAGS="$CFLAGS -DENABLE_IPV6" +fi + #dnl Test if test "x$enable_efence" = "xyes" ; then LIBS="-lefence $LIBS" @@ -3084,55 +4135,67 @@ CFLAGS="$CFLAGS -pg" fi -echo "$as_me:3087: checking for ANSI C header files" >&5 + +echo "$as_me:$LINENO: checking for ANSI C header files" >&5 echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line 3093 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <stdlib.h> #include <stdarg.h> #include <string.h> #include <float.h> +int +main () +{ + + ; + return 0; +} _ACEOF -if { (eval echo "$as_me:3101: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:3107: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - ac_cv_header_stdc=no +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_cv_header_stdc=no fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF -#line 3129 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <string.h> _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - egrep "memchr" >/dev/null 2>&1; then + $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no @@ -3144,13 +4207,17 @@ if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF -#line 3147 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <stdlib.h> _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - egrep "free" >/dev/null 2>&1; then + $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no @@ -3165,14 +4232,19 @@ : else cat >conftest.$ac_ext <<_ACEOF -#line 3168 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <ctype.h> #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else -# define ISLOWER(c) (('a' <= (c) && (c) <= 'i') \ +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) @@ -3191,57 +4263,109 @@ } _ACEOF rm -f conftest$ac_exeext -if { (eval echo "$as_me:3194: \"$ac_link\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:3197: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:3199: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:3202: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) ac_cv_header_stdc=no fi -rm -f core core.* *.core conftest$ac_exeext conftest.$ac_ext +rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi -echo "$as_me:3215: result: $ac_cv_header_stdc" >&5 +echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 echo "${ECHO_T}$ac_cv_header_stdc" >&6 if test $ac_cv_header_stdc = yes; then -cat >>confdefs.h <<\EOF +cat >>confdefs.h <<\_ACEOF #define STDC_HEADERS 1 -EOF +_ACEOF fi + + + for ac_header in fcntl.h unistd.h sys/uio.h do -ac_ac_Header=`echo "ac_cv_header_$ac_header" | $ac_tr_sh` -echo "$as_me:3228: checking for $ac_header" >&5 +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$ac_ac_Header+set}\" = set"; then +if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else - cat >conftest.$ac_ext <<_ACEOF -#line 3234 "configure" -#include "confdefs.h" + # Is the header compilable? +echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +#include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_header_compiler=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_header_compiler=no +fi +rm -f conftest.$ac_objext conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6 + +# Is the header present? +echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include <$ac_header> _ACEOF -if { (eval echo "$as_me:3238: \"$ac_cpp conftest.$ac_ext\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? - egrep -v '^ *\+' conftest.er1 >conftest.err + grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 - echo "$as_me:3244: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag @@ -3252,99 +4376,166 @@ ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then - eval "$ac_ac_Header=yes" + ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 - cat conftest.$ac_ext >&5 - eval "$ac_ac_Header=no" +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6 + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc in + yes:no ) + { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + ( + cat <<\_ASBOX +## ------------------------------------ ## +## Report this to bug-autoconf@gnu.org. ## +## ------------------------------------ ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; + no:yes ) + { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + ( + cat <<\_ASBOX +## ------------------------------------ ## +## Report this to bug-autoconf@gnu.org. ## +## ------------------------------------ ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + eval "$as_ac_Header=$ac_header_preproc" fi -echo "$as_me:3263: result: `eval echo '${'$ac_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$ac_ac_Header'}'`" >&6 -if test `eval echo '${'$ac_ac_Header'}'` = yes; then - cat >>confdefs.h <<EOF -#define `echo "HAVE_$ac_header" | $ac_tr_cpp` 1 -EOF +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 + +fi +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF fi + done + + for ac_func in socket do -ac_ac_var=`echo "ac_cv_func_$ac_func" | $ac_tr_sh` -echo "$as_me:3276: checking for $ac_func" >&5 +as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` +echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$ac_ac_var+set}\" = set"; then +if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line 3282 "configure" -#include "confdefs.h" +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. */ -#include <assert.h> + which can conflict with char $ac_func (); below. + Prefer <limits.h> to <assert.h> if __STDC__ is defined, since + <limits.h> exists even on freestanding compilers. */ +#ifdef __STDC__ +# include <limits.h> +#else +# include <assert.h> +#endif /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" +{ #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); -char (*f) (); - -int -main () -{ /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else -f = $ac_func; +char (*f) () = $ac_func; +#endif +#ifdef __cplusplus +} #endif +int +main () +{ +return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:3313: \"$ac_link\"") >&5 +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:3316: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:3319: \"$ac_try\"") >&5 + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? - echo "$as_me:3322: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - eval "$ac_ac_var=yes" + eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 -cat conftest.$ac_ext >&5 -eval "$ac_ac_var=no" +sed 's/^/| /' conftest.$ac_ext >&5 + +eval "$as_ac_var=no" fi rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext fi -echo "$as_me:3332: result: `eval echo '${'$ac_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$ac_ac_var'}'`" >&6 -if test `eval echo '${'$ac_ac_var'}'` = yes; then - cat >>confdefs.h <<EOF -#define `echo "HAVE_$ac_func" | $ac_tr_cpp` 1 -EOF +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 +if test `eval echo '${'$as_ac_var'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF fi done + if test "x$enable_insure" = "xyes" ; then CC="insure -Zoi \"compiler $CC\"" LIBS="$LIBS -lstdc++-2-libc6.1-1-2.9.0" fi -ac_config_files="$ac_config_files Makefile doc/Makefile src/Makefile src/IO/Makefile" + + + + + ac_config_files="$ac_config_files Makefile doc/Makefile src/Makefile src/IO/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure @@ -3355,7 +4546,7 @@ # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # -# `ac_cv_env_foo' variables (set or unset) will be overriden when +# `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. @@ -3374,12 +4565,12 @@ # substitution turns \\\\ into \\, and sed turns \\ into \). sed -n \ "s/'/'\\\\''/g; - s/^\\([_$ac_cr_alnum]*_cv_[_$ac_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n \ - "s/^\\([_$ac_cr_alnum]*_cv_[_$ac_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } | @@ -3390,7 +4581,7 @@ t end /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ : end' >>confcache -if cmp -s $cache_file confcache; then :; else +if diff $cache_file confcache >/dev/null 2>&1; then :; else if test -w $cache_file; then test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" cat confcache >$cache_file @@ -3421,35 +4612,234 @@ DEFS=-DHAVE_CONFIG_H +ac_libobjs= +ac_ltlibobjs= +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_i=`echo "$ac_i" | + sed 's/\$U\././;s/\.o$//;s/\.obj$//'` + # 2. Add them. + ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" + ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' +done +LIBOBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + +if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then + { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." >&5 +echo "$as_me: error: conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." >&2;} + { (exit 1); exit 1; }; } +fi + : ${CONFIG_STATUS=./config.status} ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:3427: creating $CONFIG_STATUS" >&5 +{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 echo "$as_me: creating $CONFIG_STATUS" >&6;} cat >$CONFIG_STATUS <<_ACEOF #! $SHELL -# Generated automatically by configure. +# Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false +ac_cs_recheck=false +ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} -ac_cs_invocation="\$0 \$@" - _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi +# Support unset when possible. +if (FOO=FOO; unset FOO) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# Work around bugs in pre-3.0 UWIN ksh. +$as_unset ENV MAIL MAILPATH +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + # Name of the executable. -as_me=`echo "$0" |sed 's,.*[\\/],,'` +as_me=`$as_basename "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)$' \| \ + . : '\(.\)' 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } + /^X\/\(\/\/\)$/{ s//\1/; q; } + /^X\/\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + + +# PATH needs CR, and LINENO needs CR and PATH. +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" || { + # Find who we are. Look in the path if we contain no path at all + # relative or not. + case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done + + ;; + esac + # We did not find ourselves, most probably we were run as `sh COMMAND' + # in which case we are not to be found in the path. + if test "x$as_myself" = x; then + as_myself=$0 + fi + if test ! -f "$as_myself"; then + { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 +echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} + { (exit 1); exit 1; }; } + fi + case $CONFIG_SHELL in + '') + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for as_base in sh bash ksh sh5; do + case $as_dir in + /*) + if ("$as_dir/$as_base" -c ' + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then + $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } + $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } + CONFIG_SHELL=$as_dir/$as_base + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$0" ${1+"$@"} + fi;; + esac + done +done +;; + esac + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line before each line; the second 'sed' does the real + # work. The second script uses 'N' to pair each line-number line + # with the numbered line, and appends trailing '-' during + # substitution so that $LINENO is not a special case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) + sed '=' <$as_myself | + sed ' + N + s,$,-, + : loop + s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + t loop + s,-$,, + s,^['$as_cr_digits']*\n,, + ' >$as_me.lineno && + chmod +x $as_me.lineno || + { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 +echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensible to this). + . ./$as_me.lineno + # Exit status is that of the last command. + exit +} + + +case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in + *c*,-n*) ECHO_N= ECHO_C=' +' ECHO_T=' ' ;; + *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; + *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr @@ -3475,24 +4865,20 @@ fi rm -f conf$$ conf$$.exe conf$$.file -as_executable_p="test -f" - -# Support unset when possible. -if (FOO=FOO; unset FOO) >/dev/null 2>&1; then - as_unset=unset +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: else - as_unset=false + as_mkdir_p=false fi -# NLS nuisances. -$as_unset LANG || test "${LANG+set}" != set || { LANG=C; export LANG; } -$as_unset LC_ALL || test "${LC_ALL+set}" != set || { LC_ALL=C; export LC_ALL; } -$as_unset LC_TIME || test "${LC_TIME+set}" != set || { LC_TIME=C; export LC_TIME; } -$as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set || { LC_CTYPE=C; export LC_CTYPE; } -$as_unset LANGUAGE || test "${LANGUAGE+set}" != set || { LANGUAGE=C; export LANGUAGE; } -$as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set || { LC_COLLATE=C; export LC_COLLATE; } -$as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set || { LC_NUMERIC=C; export LC_NUMERIC; } -$as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set || { LC_MESSAGES=C; export LC_MESSAGES; } +as_executable_p="test -f" + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g" + # IFS # We need space, tab and new line, in precisely that order. @@ -3501,10 +4887,34 @@ IFS=" $as_nl" # CDPATH. -$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; } +$as_unset CDPATH exec 6>&1 +# Open the log real soon, to keep \$[0] and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. Logging --version etc. is OK. +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX +} >&5 +cat >&5 <<_CSEOF + +This file was extended by $as_me, which was +generated by GNU Autoconf 2.57. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +_CSEOF +echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 +echo >&5 _ACEOF # Files that config.status was made for. @@ -3524,7 +4934,7 @@ echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS fi -cat >>$CONFIG_STATUS <<\EOF +cat >>$CONFIG_STATUS <<\_ACEOF ac_cs_usage="\ \`$as_me' instantiates files from templates according to the @@ -3534,6 +4944,7 @@ -h, --help print this help, then exit -V, --version print version number, then exit + -q, --quiet do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] @@ -3551,12 +4962,12 @@ $config_commands Report bugs to <bug-autoconf@gnu.org>." -EOF +_ACEOF -cat >>$CONFIG_STATUS <<EOF +cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ config.status -configured by $0, generated by GNU Autoconf 2.50, +configured by $0, generated by GNU Autoconf 2.57, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 @@ -3565,9 +4976,9 @@ gives unlimited permission to copy, distribute and modify it." srcdir=$srcdir INSTALL="$INSTALL" -EOF +_ACEOF -cat >>$CONFIG_STATUS <<\EOF +cat >>$CONFIG_STATUS <<\_ACEOF # If no file are specified by the user, then we need to provide default # value. By we need to know if files were specified by the user. ac_need_defaults=: @@ -3577,30 +4988,30 @@ --*=*) ac_option=`expr "x$1" : 'x\([^=]*\)='` ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - shift - set dummy "$ac_option" "$ac_optarg" ${1+"$@"} - shift + ac_shift=: + ;; + -*) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift ;; - -*);; *) # This is not an option, so the user has probably given explicit # arguments. + ac_option=$1 ac_need_defaults=false;; esac - case $1 in + case $ac_option in # Handling of the options. -EOF -cat >>$CONFIG_STATUS <<EOF +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - echo "running $SHELL $0 " $ac_configure_args " --no-create --no-recursion" - exec $SHELL $0 $ac_configure_args --no-create --no-recursion ;; -EOF -cat >>$CONFIG_STATUS <<\EOF + ac_cs_recheck=: ;; --version | --vers* | -V ) echo "$ac_cs_version"; exit 0 ;; --he | --h) # Conflict between --help and --header - { { echo "$as_me:3603: error: ambiguous option: $1 + { { echo "$as_me:$LINENO: error: ambiguous option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: ambiguous option: $1 Try \`$0 --help' for more information." >&2;} @@ -3610,50 +5021,74 @@ --debug | --d* | -d ) debug=: ;; --file | --fil | --fi | --f ) - shift - CONFIG_FILES="$CONFIG_FILES $1" + $ac_shift + CONFIG_FILES="$CONFIG_FILES $ac_optarg" ac_need_defaults=false;; --header | --heade | --head | --hea ) - shift - CONFIG_HEADERS="$CONFIG_HEADERS $1" + $ac_shift + CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" ac_need_defaults=false;; - - # Handling of arguments. - 'Makefile' ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - 'doc/Makefile' ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - 'src/Makefile' ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - 'src/IO/Makefile' ) CONFIG_FILES="$CONFIG_FILES src/IO/Makefile" ;; - 'default-1' ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; - 'config.h' ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; # This is an error. - -*) { { echo "$as_me:3630: error: unrecognized option: $1 + -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: unrecognized option: $1 Try \`$0 --help' for more information." >&2;} { (exit 1); exit 1; }; } ;; - *) { { echo "$as_me:3635: error: invalid argument: $1" >&5 -echo "$as_me: error: invalid argument: $1" >&2;} - { (exit 1); exit 1; }; };; + + *) ac_config_targets="$ac_config_targets $1" ;; + esac shift done -exec 5>>config.log -cat >&5 << _ACEOF +ac_configure_extra_args= -## ----------------------- ## -## Running config.status. ## -## ----------------------- ## +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF +if \$ac_cs_recheck; then + echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 + exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion +fi + +_ACEOF + +cat >>$CONFIG_STATUS <<_ACEOF +# +# INIT-COMMANDS section. +# -This file was extended by $as_me 2.50, executed with - > $ac_cs_invocation -on `(hostname || uname -n) 2>/dev/null | sed 1q` +AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" _ACEOF -EOF -cat >>$CONFIG_STATUS <<\EOF + + +cat >>$CONFIG_STATUS <<\_ACEOF +for ac_config_target in $ac_config_targets +do + case "$ac_config_target" in + # Handling of arguments. + "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; + "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; + "src/IO/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/IO/Makefile" ;; + "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 +echo "$as_me: error: invalid argument: $ac_config_target" >&2;} + { (exit 1); exit 1; }; };; + esac +done + # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely @@ -3664,38 +5099,34 @@ test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason to put it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. # Create a temporary directory, and hook for its removal unless debugging. $debug || { trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit $?); exit $?; }' 1 2 13 15 + trap '{ (exit 1); exit 1; }' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. -: ${TMPDIR=/tmp} + { - tmp=`(umask 077 && mktemp -d -q "$TMPDIR/csXXXXXX") 2>/dev/null` && + tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { - tmp=$TMPDIR/cs$$-$RANDOM + tmp=./confstat$$-$RANDOM (umask 077 && mkdir $tmp) } || { - echo "$me: cannot create a temporary directory in $TMPDIR" >&2 + echo "$me: cannot create a temporary directory in ." >&2 { (exit 1); exit 1; } } -EOF - -cat >>$CONFIG_STATUS <<EOF -# -# INIT-COMMANDS section. -# - -EOF +_ACEOF -cat >>$CONFIG_STATUS <<EOF +cat >>$CONFIG_STATUS <<_ACEOF # # CONFIG_FILES section. @@ -3708,6 +5139,12 @@ sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF s,@SHELL@,$SHELL,;t t +s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t +s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t +s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t +s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t +s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t +s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t s,@exec_prefix@,$exec_prefix,;t t s,@prefix@,$prefix,;t t s,@program_transform_name@,$program_transform_name,;t t @@ -3723,16 +5160,13 @@ s,@oldincludedir@,$oldincludedir,;t t s,@infodir@,$infodir,;t t s,@mandir@,$mandir,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t +s,@build_alias@,$build_alias,;t t +s,@host_alias@,$host_alias,;t t +s,@target_alias@,$target_alias,;t t +s,@DEFS@,$DEFS,;t t s,@ECHO_C@,$ECHO_C,;t t s,@ECHO_N@,$ECHO_N,;t t s,@ECHO_T@,$ECHO_T,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@DEFS@,$DEFS,;t t s,@LIBS@,$LIBS,;t t s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t @@ -3744,6 +5178,12 @@ s,@AUTOMAKE@,$AUTOMAKE,;t t s,@AUTOHEADER@,$AUTOHEADER,;t t s,@MAKEINFO@,$MAKEINFO,;t t +s,@AMTAR@,$AMTAR,;t t +s,@install_sh@,$install_sh,;t t +s,@STRIP@,$STRIP,;t t +s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t +s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t +s,@AWK@,$AWK,;t t s,@SET_MAKE@,$SET_MAKE,;t t s,@CC@,$CC,;t t s,@CFLAGS@,$CFLAGS,;t t @@ -3752,19 +5192,33 @@ s,@ac_ct_CC@,$ac_ct_CC,;t t s,@EXEEXT@,$EXEEXT,;t t s,@OBJEXT@,$OBJEXT,;t t +s,@DEPDIR@,$DEPDIR,;t t +s,@am__include@,$am__include,;t t +s,@am__quote@,$am__quote,;t t +s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t +s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t +s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t +s,@CCDEPMODE@,$CCDEPMODE,;t t s,@RANLIB@,$RANLIB,;t t s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@GTK_CONFIG@,$GTK_CONFIG,;t t +s,@PKG_CONFIG@,$PKG_CONFIG,;t t s,@GTK_CFLAGS@,$GTK_CFLAGS,;t t s,@GTK_LIBS@,$GTK_LIBS,;t t s,@CPP@,$CPP,;t t +s,@EGREP@,$EGREP,;t t s,@LIBJPEG_LIB@,$LIBJPEG_LIB,;t t -s,@src doc bin util lib@,$src doc bin util lib,;t t +s,@src@,$src,;t t +s,@doc@,$doc,;t t +s,@bin@,$bin,;t t +s,@util@,$util,;t t +s,@lib@,$lib,;t t +s,@LIBOBJS@,$LIBOBJS,;t t +s,@LTLIBOBJS@,$LTLIBOBJS,;t t CEOF -EOF +_ACEOF - cat >>$CONFIG_STATUS <<\EOF + cat >>$CONFIG_STATUS <<\_ACEOF # Split the substitutions into bite-sized pieces for seds with # small command number limits, like on Digital OSF/1 and HP-UX. ac_max_sed_lines=48 @@ -3803,8 +5257,8 @@ fi fi # test -n "$CONFIG_FILES" -EOF -cat >>$CONFIG_STATUS <<\EOF +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". case $ac_file in @@ -3818,7 +5272,8 @@ esac # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + ac_dir=`(dirname "$ac_file") 2>/dev/null || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| \ @@ -3829,60 +5284,84 @@ /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` - if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then - { case "$ac_dir" in - [\\/]* | ?:[\\/]* ) as_incr_dir=;; - *) as_incr_dir=.;; -esac -as_dummy="$ac_dir" -for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do - case $as_mkdir_dir in - # Skip DOS drivespec - ?:) as_incr_dir=$as_mkdir_dir ;; - *) - as_incr_dir=$as_incr_dir/$as_mkdir_dir - test -d "$as_incr_dir" || mkdir "$as_incr_dir" - ;; - esac -done; } - - ac_dir_suffix="/`echo $ac_dir|sed 's,^\./,,'`" - # A "../" for each directory in $ac_dir_suffix. - ac_dots=`echo "$ac_dir_suffix" | sed 's,/[^/]*,../,g'` + { if $as_mkdir_p; then + mkdir -p "$ac_dir" else - ac_dir_suffix= ac_dots= - fi - - case $srcdir in - .) ac_srcdir=. - if test -z "$ac_dots"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_dots | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; + as_dir="$ac_dir" + as_dirs= + while test ! -d "$as_dir"; do + as_dirs="$as_dir $as_dirs" + as_dir=`(dirname "$as_dir") 2>/dev/null || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + done + test ! -n "$as_dirs" || mkdir $as_dirs + fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 +echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} + { (exit 1); exit 1; }; }; } + + ac_builddir=. + +if test "$ac_dir" != .; then + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A "../" for each directory in $ac_dir_suffix. + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` +else + ac_dir_suffix= ac_top_builddir= +fi + +case $srcdir in + .) # No --srcdir option. We are building in place. + ac_srcdir=. + if test -z "$ac_top_builddir"; then + ac_top_srcdir=. + else + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` + fi ;; + [\\/]* | ?:[\\/]* ) # Absolute path. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir ;; *) # Relative path. - ac_srcdir=$ac_dots$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_dots$srcdir ;; - esac + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_builddir$srcdir ;; +esac +# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be +# absolute. +ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` +ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` +ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` +ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` + case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_dots$INSTALL ;; + *) ac_INSTALL=$ac_top_builddir$INSTALL ;; esac if test x"$ac_file" != x-; then - { echo "$as_me:3877: creating $ac_file" >&5 + { echo "$as_me:$LINENO: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} rm -f "$ac_file" fi # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: - # /* config.h. Generated automatically by config.status. */ - configure_input="Generated automatically from `echo $ac_file_in | - sed 's,.*/,,'` by configure." + # /* config.h. Generated by config.status. */ + if test x"$ac_file" = x-; then + configure_input= + else + configure_input="$ac_file. " + fi + configure_input=$configure_input"Generated from `echo $ac_file_in | + sed 's,.*/,,'` by configure." # First look for the input files in the build tree, otherwise in the # src tree. @@ -3892,7 +5371,7 @@ -) echo $tmp/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:3895: error: cannot find input file: $f" >&5 + test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } echo $f;; @@ -3905,23 +5384,29 @@ echo $srcdir/$f else # /dev/null tree - { { echo "$as_me:3908: error: cannot find input file: $f" >&5 + { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; esac done` || { (exit 1); exit 1; } -EOF -cat >>$CONFIG_STATUS <<EOF +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF sed "$ac_vpsub $extrasub -EOF -cat >>$CONFIG_STATUS <<\EOF +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s,@configure_input@,$configure_input,;t t s,@srcdir@,$ac_srcdir,;t t +s,@abs_srcdir@,$ac_abs_srcdir,;t t s,@top_srcdir@,$ac_top_srcdir,;t t +s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t +s,@builddir@,$ac_builddir,;t t +s,@abs_builddir@,$ac_abs_builddir,;t t +s,@top_builddir@,$ac_top_builddir,;t t +s,@abs_top_builddir@,$ac_abs_top_builddir,;t t s,@INSTALL@,$ac_INSTALL,;t t " $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out rm -f $tmp/stdin @@ -3933,8 +5418,8 @@ fi done -EOF -cat >>$CONFIG_STATUS <<\EOF +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF # # CONFIG_HEADER section. @@ -3966,7 +5451,7 @@ * ) ac_file_in=$ac_file.in ;; esac - test x"$ac_file" != x- && { echo "$as_me:3969: creating $ac_file" >&5 + test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} # First look for the input files in the build tree, otherwise in the @@ -3977,7 +5462,7 @@ -) echo $tmp/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:3980: error: cannot find input file: $f" >&5 + test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } echo $f;; @@ -3990,7 +5475,7 @@ echo $srcdir/$f else # /dev/null tree - { { echo "$as_me:3993: error: cannot find input file: $f" >&5 + { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; @@ -3999,7 +5484,7 @@ # Remove the trailing spaces. sed 's/[ ]*$//' $ac_file_inputs >$tmp/in -EOF +_ACEOF # Transform confdefs.h into two sed scripts, `conftest.defines' and # `conftest.undefs', that substitutes the proper values into @@ -4015,16 +5500,16 @@ # `end' is used to avoid that the second main sed command (meant for # 0-ary CPP macros) applies to n-ary macro definitions. # See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\EOF +cat >confdef2sed.sed <<\_ACEOF s/[\\&,]/\\&/g s,[\\$`],\\&,g t clear : clear -s,^[ ]*#[ ]*define[ ][ ]*\(\([^ (][^ (]*\)([^)]*)\)[ ]*\(.*\)$,${ac_dA}\2${ac_dB}\1${ac_dC}\3${ac_dD},gp +s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp t end s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp : end -EOF +_ACEOF # If some macros were called several times there might be several times # the same #defines, which is useless. Nevertheless, we may not want to # sort them, since we want the *last* AC-DEFINE to be honored. @@ -4035,14 +5520,14 @@ # This sed command replaces #undef with comments. This is necessary, for # example, in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\EOF +cat >>conftest.undefs <<\_ACEOF s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -EOF +_ACEOF # Break up conftest.defines because some shells have a limit on the size # of here documents, and old seds have small limits too (100 cmds). echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if egrep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS +echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS echo ' :' >>$CONFIG_STATUS rm -f conftest.tail @@ -4066,7 +5551,7 @@ mv conftest.tail conftest.defines done rm -f conftest.defines -echo ' fi # egrep' >>$CONFIG_STATUS +echo ' fi # grep' >>$CONFIG_STATUS echo >>$CONFIG_STATUS # Break up conftest.undefs because some shells have a limit on the size @@ -4094,23 +5579,24 @@ done rm -f conftest.undefs -cat >>$CONFIG_STATUS <<\EOF +cat >>$CONFIG_STATUS <<\_ACEOF # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: - # /* config.h. Generated automatically by config.status. */ + # /* config.h. Generated by config.status. */ if test x"$ac_file" = x-; then - echo "/* Generated automatically by configure. */" >$tmp/config.h + echo "/* Generated by configure. */" >$tmp/config.h else - echo "/* $ac_file. Generated automatically by configure. */" >$tmp/config.h + echo "/* $ac_file. Generated by configure. */" >$tmp/config.h fi cat $tmp/in >>$tmp/config.h rm -f $tmp/in if test x"$ac_file" != x-; then - if cmp -s $ac_file $tmp/config.h 2>/dev/null; then - { echo "$as_me:4110: $ac_file is unchanged" >&5 + if diff $ac_file $tmp/config.h >/dev/null 2>&1; then + { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 echo "$as_me: $ac_file is unchanged" >&6;} else - ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + ac_dir=`(dirname "$ac_file") 2>/dev/null || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| \ @@ -4121,24 +5607,31 @@ /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` - if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then - { case "$ac_dir" in - [\\/]* | ?:[\\/]* ) as_incr_dir=;; - *) as_incr_dir=.;; -esac -as_dummy="$ac_dir" -for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do - case $as_mkdir_dir in - # Skip DOS drivespec - ?:) as_incr_dir=$as_mkdir_dir ;; - *) - as_incr_dir=$as_incr_dir/$as_mkdir_dir - test -d "$as_incr_dir" || mkdir "$as_incr_dir" - ;; - esac -done; } + { if $as_mkdir_p; then + mkdir -p "$ac_dir" + else + as_dir="$ac_dir" + as_dirs= + while test ! -d "$as_dir"; do + as_dirs="$as_dir $as_dirs" + as_dir=`(dirname "$as_dir") 2>/dev/null || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + done + test ! -n "$as_dirs" || mkdir $as_dirs + fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 +echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} + { (exit 1); exit 1; }; }; } - fi rm -f $ac_file mv $tmp/config.h $ac_file fi @@ -4146,9 +5639,15 @@ cat $tmp/config.h rm -f $tmp/config.h fi + # Run the commands associated with the file. + case $ac_file in + config.h ) # update the timestamp +echo 'timestamp for config.h' >"./stamp-h1" + ;; + esac done -EOF -cat >>$CONFIG_STATUS <<\EOF +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF # # CONFIG_COMMANDS section. @@ -4156,20 +5655,157 @@ for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue ac_dest=`echo "$ac_file" | sed 's,:.*,,'` ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` + ac_dir=`(dirname "$ac_dest") 2>/dev/null || +$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_dest" : 'X\(//\)[^/]' \| \ + X"$ac_dest" : 'X\(//\)$' \| \ + X"$ac_dest" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$ac_dest" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + ac_builddir=. + +if test "$ac_dir" != .; then + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A "../" for each directory in $ac_dir_suffix. + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` +else + ac_dir_suffix= ac_top_builddir= +fi + +case $srcdir in + .) # No --srcdir option. We are building in place. + ac_srcdir=. + if test -z "$ac_top_builddir"; then + ac_top_srcdir=. + else + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` + fi ;; + [\\/]* | ?:[\\/]* ) # Absolute path. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir ;; + *) # Relative path. + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_builddir$srcdir ;; +esac +# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be +# absolute. +ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` +ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` +ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` +ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` + + { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 +echo "$as_me: executing $ac_dest commands" >&6;} case $ac_dest in - default-1 ) test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h ;; + depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # So let's grep whole file. + if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then + dirpart=`(dirname "$mf") 2>/dev/null || +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$mf" : 'X\(//\)[^/]' \| \ + X"$mf" : 'X\(//\)$' \| \ + X"$mf" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + else + continue + fi + grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue + # Extract the definition of DEP_FILES from the Makefile without + # running `make'. + DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` + test -z "$DEPDIR" && continue + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n -e '/^U = / s///p' < "$mf"` + test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" + # We invoke sed twice because it is the simplest approach to + # changing $(DEPDIR) to its actual value in the expansion. + for file in `sed -n -e ' + /^DEP_FILES = .*\\\\$/ { + s/^DEP_FILES = // + :loop + s/\\\\$// + p + n + /\\\\$/ b loop + p + } + /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`(dirname "$file") 2>/dev/null || +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$file" : 'X\(//\)[^/]' \| \ + X"$file" : 'X\(//\)$' \| \ + X"$file" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + { if $as_mkdir_p; then + mkdir -p $dirpart/$fdir + else + as_dir=$dirpart/$fdir + as_dirs= + while test ! -d "$as_dir"; do + as_dirs="$as_dir $as_dirs" + as_dir=`(dirname "$as_dir") 2>/dev/null || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + done + test ! -n "$as_dirs" || mkdir $as_dirs + fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 +echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} + { (exit 1); exit 1; }; }; } + + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done +done + ;; esac done -EOF +_ACEOF -cat >>$CONFIG_STATUS <<\EOF +cat >>$CONFIG_STATUS <<\_ACEOF { (exit 0); exit 0; } -EOF +_ACEOF chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save + # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open @@ -4180,8 +5816,11 @@ # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: + ac_config_status_args= + test "$silent" = yes && + ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null - $SHELL $CONFIG_STATUS || ac_cs_success=false + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. diff -urN dillo-0.6.6/configure.in dillo2-0.6.6/configure.in --- dillo-0.6.6/configure.in 2002-05-29 15:01:55.000000000 -0600 +++ dillo2-0.6.6/configure.in 2003-04-21 12:35:09.000000000 -0600 @@ -21,6 +21,7 @@ AC_ARG_ENABLE(ansi, [ --enable-ansi Try to compile and run with ANSI flags], , enable_ansi=no) AC_ARG_ENABLE(cookies,[ --enable-cookies Build with support for cookies], , ) +AC_ARG_ENABLE(ipv6, [ --enable-ipv6 Build with support for IPv6], , ) AC_PROG_CC AM_PROG_CC_STDC @@ -28,11 +29,12 @@ dnl Check for Gtk+ (it checks glib too) -if test -z "$GTK_CONFIG"; then - GTK_CONFIG=`which gtk-config || which gtk12-config` -fi -AM_PATH_GTK(1.2.0, [LIBS="$LIBS $GTK_LIBS" CFLAGS="$GTK_CFLAGS $CFLAGS"], -AC_MSG_WARN(Unable to find Gtk+ with a version >= 1.2.0)) +GTK_REQUIRED=2.0.0 + +PKG_CHECK_MODULES(GTK, gtk+-2.0 >= $GTK_REQUIRED) + +CPPFLAGS="$CPPFLAGS $GTK_CFLAGS" +LDFLAGS="$LDFLAGS $GTK_LIBS" dnl Check for compiler options @@ -119,6 +121,10 @@ CFLAGS="$CFLAGS -DDISABLE_COOKIES" fi +if test "x$enable_ipv6" = "xyes" ; then + CFLAGS="$CFLAGS -DENABLE_IPV6" +fi + #dnl Test if test "x$enable_efence" = "xyes" ; then LIBS="-lefence $LIBS" diff -urN dillo-0.6.6/debian/README.Debian dillo2-0.6.6/debian/README.Debian --- dillo-0.6.6/debian/README.Debian 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/README.Debian 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,5 @@ + +To fully make use of dillo, you will want to copy the provided dillorc +file located in /usr/share/doc/dillo/dillorc into ~/.dillo/ + +This Debian package was created by Ron Farrer <rbf@debian.org>. diff -urN dillo-0.6.6/debian/changelog dillo2-0.6.6/debian/changelog --- dillo-0.6.6/debian/changelog 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/changelog 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,148 @@ +dillo (0.6.6-3) unstable; urgency=low + + * Add build dependency on automake and autoconf, closes: #152820 + + -- Phil Blundell <pb@debian.org> Sat, 13 Jul 2002 13:17:27 +0100 + +dillo (0.6.6-2) unstable; urgency=low + + * Correct menu, closes: #149483 + * Fix typo in description, closes: #150415 + * Don't force CFLAGS in debian/rules. + * Include IPv6 support. + + -- Phil Blundell <pb@debian.org> Fri, 12 Jul 2002 19:23:03 +0100 + +dillo (0.6.6-1) unstable; urgency=low + + * New upstream version, closes: #145294 + * Install in /usr/bin, closes: #142755 + + -- Philip Blundell <pb@debian.org> Thu, 30 May 2002 21:53:16 +0100 + +dillo (0.6.4-4) unstable; urgency=low + + * Update URL in debian/copyright, closes: #142741 + * Set --prefix=/usr, closes: #142755 + * Apply patch containing new pixmaps, closes: #142756 + + -- Philip Blundell <pb@debian.org> Sun, 14 Apr 2002 15:23:59 +0100 + +dillo (0.6.4-3) unstable; urgency=medium + + * New maintainer, closes: #138950 + * Revert previous bogus change to font specification, + closes: #137025 + + -- Philip Blundell <pb@debian.org> Wed, 20 Mar 2002 01:35:24 +0000 + +dillo (0.6.4-2) unstable; urgency=low + + * Fixed font reading problem, (Closes: Bug#134592) + + -- Ron Farrer <rbf@debian.org> Thu, 21 Feb 2002 08:10:14 -0700 + +dillo (0.6.4-1) unstable; urgency=low + + * New upstream release. + * Fixed Long description line, (Closes: Bug#130929) + * Fixed oversized control files, (Closes: Bug#130273) + * New release doesn't leak memory, (Closes: Bug#123437) + + -- Ron Farrer <rbf@debian.org> Wed, 30 Jan 2002 07:22:41 -0700 + +dillo (0.6.3-2) unstable; urgency=low + + * Added a dillo.desktop, (Closes: Bug#121767) + * Dillo 0.6.3 already uploaded, (Closes: Bug#126962) + + -- Ron Farrer <rbf@debian.org> Tue, 01 Jan 2002 11:09:31 -0700 + +dillo (0.6.3-1) unstable; urgency=low + + * New upstream release. + + -- Ron Farrer <rbf@debian.org> Wed, 26 Dec 2001 21:32:29 -0700 + +dillo (0.6.2-1) unstable; urgency=low + + * New upstream release, (Closes: Bug#115604) + + -- Ron Farrer <rbf@debian.org> Thu, 18 Oct 2001 08:20:14 -0700 + +dillo (0.6.1-1) unstable; urgency=low + + * New upstream release. + + -- Ron Farrer <rbf@debian.org> Fri, 14 Sep 2001 10:40:56 -0700 + +dillo (0.6.0-1) unstable; urgency=low + + * New upstream release, (Closes: Bug#107359) + + -- Ron Farrer <rbf@debian.org> Tue, 31 Jul 2001 19:08:40 -0700 + +dillo (0.5.1-2) unstable; urgency=low + + * Fixed build-depends, (Closes: Bug#100669) + + -- Ron Farrer <rbf@debian.org> Fri, 15 Jun 2001 13:49:30 -0700 + +dillo (0.5.1-1) unstable; urgency=low + + * New upstream release. + + -- Ron Farrer <rbf@debian.org> Mon, 04 Jun 2001 10:06:50 -0700 + +dillo (0.5.0-1) unstable; urgency=low + + * New upstream release. + + -- Ron Farrer <rbf@debian.org> Thu, 10 May 2001 21:51:44 -0700 + +dillo (0.4.0-1) unstable; urgency=low + + * New upstream release. + + -- Ron Farrer <rbf@debian.org> Mon, 05 Mar 2001 9:04:17 -0800 + +dillo (0.3.2-1) unstable; urgency=low + + * New upstream release. + + -- Ron Farrer <rbf@debian.org> Thu, 01 Mar 2001 9:33:09 -0800 + +dillo (0.3.1-2) unstable; urgency=low + + * Fixed man page, changed splash screen; Closes bug #82748 + + -- Ron Farrer <rbf@debian.org> Fri, 19 Jan 2001 10:05:27 -0800 + +dillo (0.3.1-1) unstable; urgency=low + + * New upstream release. + + -- Ron Farrer <rbf@debian.org> Wed, 27 Dec 2000 10:14:30 -0800 + +dillo (0.3.0.0-1) unstable; urgency=low + + * New upstream release. + + -- Ron Farrer <rbf@debian.org> Mon, 13 Nov 2000 09:12:54 -0800 + +dillo (0.3.0pre1-1) unstable; urgency=low + + * New upstream release. + * gzilla is now dead upstream, dillo takes it's place. + + -- Ron Farrer <rbf@debian.org> Wed, 8 Nov 2000 08:06:40 -0800 + +dillo (0.2.4-1) unstable; urgency=low + + * Initial Release. + + -- Ron Farrer <rbf@farrer.net> Sun, 3 Sep 2000 13:53:35 -0700 + +Local variables: +mode: debian-changelog +End: diff -urN dillo-0.6.6/debian/control dillo2-0.6.6/debian/control --- dillo-0.6.6/debian/control 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/control 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,17 @@ +Source: dillo +Section: web +Priority: extra +Maintainer: Phil Blundell <pb@debian.org> +Standards-Version: 3.1.1.1 +Build-Depends: debhelper, libgtk1.2-dev, libglib1.2-dev, libpng2-dev, zlib1g-dev, libjpeg62-dev, automake, autoconf + +Package: dillo +Architecture: any +Depends: ${shlibs:Depends} +Replaces: gzilla +Conflicts: gzilla +Provides: www-browser +Description: GTK-based web browser + Dillo aims to be a multiplatform browser alternative that's small, + stable, developer-friendly, usable, fast, and extensible. Dillo is + mainly based on GTK+ (GNOME is NOT required!) Dillo is very fast! diff -urN dillo-0.6.6/debian/copyright dillo2-0.6.6/debian/copyright --- dillo-0.6.6/debian/copyright 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/copyright 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,22 @@ +This package was debianized by Ron Farrer <rbf@debian.org>. + +It was downloaded from http://dillo.cipsga.org.br/ + +Copyright: + +GNU GPL with following additions: + +The gif.c module was adapted from ppmtogif.c as found in the +netpbm-1mar1994 release. That code included the following copyright +notice. + +/* +-------------------------------------------------------------------+ */ +/* | Copyright 1990, 1991, 1993, David Koblas. (koblas@netcom.com) | */ +/* | Permission to use, copy, modify, and distribute this software | */ +/* | and its documentation for any purpose and without fee is hereby | */ +/* | granted, provided that the above copyright notice appear in all | */ +/* | copies and that both that copyright notice and this permission | */ +/* | notice appear in supporting documentation. This software is | */ +/* | provided "as is" without express or implied warranty. | */ +/* +-------------------------------------------------------------------+ */ + diff -urN dillo-0.6.6/debian/dillo.1x dillo2-0.6.6/debian/dillo.1x --- dillo-0.6.6/debian/dillo.1x 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/dillo.1x 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,38 @@ +.TH DILLO 1 +.SH NAME +dillo \- GTK-based web browser +.SH SYNOPSIS +.B dillo +[url] +.SH DESCRIPTION +This manual page documents briefly the +.BR dillo +command. +This manual page was written for the Debian GNU/Linux distribution +because the original program does not have a manual page. +.PP +.B dillo +is based on +.B gzilla +and is a free browser which uses the GTK. It should be considered +"early alpha" software. +.SH OPTIONS +There are no options. Pass a URL on the command line to open the +browser at that location. +.SH EXAMPLES +.I /usr/share/doc/dillo/dillorc +is a sample +.IR ~/.dillo/dillorc . +.SH FILES +.I ~/.dillo/dillorc +.br +.I ~/.dillo/bookmarks.html +.SH AUTHOR +.B dillo +was created by the Dillo project. More information can be found on +the project home page: +.IP +http://dillo.sourceforge.net +.PP +This man page was created by Ron Farrer <rbf@debian.org> for the +Debian GNU/Linux distribution. diff -urN dillo-0.6.6/debian/dillo.desktop dillo2-0.6.6/debian/dillo.desktop --- dillo-0.6.6/debian/dillo.desktop 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/dillo.desktop 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,6 @@ +[Desktop Entry] +Name=Dillo +Comment=Lightweight browser +Exec=dillo +Terminal=false +Type=Appilcation diff -urN dillo-0.6.6/debian/dirs dillo2-0.6.6/debian/dirs --- dillo-0.6.6/debian/dirs 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/dirs 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,3 @@ +usr/share/gnome/apps/Internet/ +usr/X11R6/bin +usr/X11R6/include/X11/pixmaps diff -urN dillo-0.6.6/debian/docs dillo2-0.6.6/debian/docs --- dillo-0.6.6/debian/docs 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/docs 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,20 @@ +ChangeLog +ChangeLog.old +README +AUTHORS +dillorc +NEWS +debian/README.Debian +doc/Cache.txt +doc/Dillo.txt +doc/Dw.txt +doc/DwImage.txt +doc/DwPage.txt +doc/DwStyle.txt +doc/DwTable.txt +doc/DwWidget.txt +doc/HtmlParser.txt +doc/IO.txt +doc/Images.txt +doc/NC_design.txt +doc/README diff -urN dillo-0.6.6/debian/menu dillo2-0.6.6/debian/menu --- dillo-0.6.6/debian/menu 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/menu 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,2 @@ +?package(dillo):needs=X11 section=Apps/Net\ + title="dillo" command="/usr/bin/dillo" diff -urN dillo-0.6.6/debian/rules dillo2-0.6.6/debian/rules --- dillo-0.6.6/debian/rules 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/debian/rules 2003-04-21 12:36:34.000000000 -0600 @@ -0,0 +1,64 @@ +#!/usr/bin/make -f +package=dillo + +build: + $(checkdir) + ./configure --prefix=/usr --enable-ipv6 + make + touch build + +clean: + $(checkdir) + -rm -f build + -make distclean + -rm -f `find . -name "*~"` + -rm -rf debian/tmp debian/files* core debian/substvars debian/prerm.debhelper debian/postinst.debhelper debian/postrm.debhelper + +binary-indep: checkroot build + $(checkdir) + +binary-arch: checkroot build + $(checkdir) + -rm -rf debian/tmp + install -d debian/tmp + cd debian/tmp && install -d `cat ../dirs` + make install prefix=`pwd`/debian/tmp/usr + dh_installdirs + dh_installdocs + dh_installexamples + dh_installchangelogs + dh_installmenu +# dh_installcron + dh_installmanpages -pdillo + install debian/dillo.desktop debian/tmp/usr/share/gnome/apps/Internet/ + dh_movefiles + dh_strip + dh_compress + dh_fixperms +# dh_suidregister + dh_shlibdeps + dh_gencontrol + dh_makeshlibs + dh_installdeb + dh_md5sums + dh_builddeb + +# debstd +# dpkg-gencontrol +# chown -R root.root debian/tmp +# chmod -R go=rX debian/tmp +# dpkg --build debian/tmp .. + +define checkdir + test -f debian/rules +endef + +# Below here is fairly generic really + +binary: binary-indep binary-arch + +checkroot: + $(checkdir) + test root = "`whoami`" + +.PHONY: binary binary-arch binary-indep clean checkroot diff -urN dillo-0.6.6/depcomp dillo2-0.6.6/depcomp --- dillo-0.6.6/depcomp 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/depcomp 2003-04-21 12:35:20.000000000 -0600 @@ -0,0 +1,423 @@ +#! /bin/sh + +# depcomp - compile a program generating dependencies as side-effects +# Copyright 1999, 2000 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>. + +if test -z "$depmode" || test -z "$source" || test -z "$object"; then + echo "depcomp: Variables source, object and depmode must be set" 1>&2 + exit 1 +fi +# `libtool' can also be set to `yes' or `no'. + +if test -z "$depfile"; then + base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'` + dir=`echo "$object" | sed 's,/.*$,/,'` + if test "$dir" = "$object"; then + dir= + fi + # FIXME: should be _deps on DOS. + depfile="$dir.deps/$base" +fi + +tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} + +rm -f "$tmpdepfile" + +# Some modes work just like other modes, but use different flags. We +# parameterize here, but still list the modes in the big case below, +# to make depend.m4 easier to write. Note that we *cannot* use a case +# here, because this file can only contain one case statement. +if test "$depmode" = hp; then + # HP compiler uses -M and no extra arg. + gccflag=-M + depmode=gcc +fi + +if test "$depmode" = dashXmstdout; then + # This is just like dashmstdout with a different argument. + dashmflag=-xM + depmode=dashmstdout +fi + +case "$depmode" in +gcc3) +## gcc 3 implements dependency tracking that does exactly what +## we want. Yay! Note: for some reason libtool 1.4 doesn't like +## it if -MD -MP comes after the -MF stuff. Hmm. + "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + mv "$tmpdepfile" "$depfile" + ;; + +gcc) +## There are various ways to get dependency output from gcc. Here's +## why we pick this rather obscure method: +## - Don't want to use -MD because we'd like the dependencies to end +## up in a subdir. Having to rename by hand is ugly. +## (We might end up doing this anyway to support other compilers.) +## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like +## -MM, not -M (despite what the docs say). +## - Using -M directly means running the compiler twice (even worse +## than renaming). + if test -z "$gccflag"; then + gccflag=-MD, + fi + "$@" -Wp,"$gccflag$tmpdepfile" + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + echo "$object : \\" > "$depfile" + alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz +## The second -e expression handles DOS-style file names with drive letters. + sed -e 's/^[^:]*: / /' \ + -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" +## This next piece of magic avoids the `deleted header file' problem. +## The problem is that when a header file which appears in a .P file +## is deleted, the dependency causes make to die (because there is +## typically no way to rebuild the header). We avoid this by adding +## dummy dependencies for each header file. Too bad gcc doesn't do +## this for us directly. + tr ' ' ' +' < "$tmpdepfile" | +## Some versions of gcc put a space before the `:'. On the theory +## that the space means something, we add a space to the output as +## well. +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +hp) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + +sgi) + if test "$libtool" = yes; then + "$@" "-Wp,-MDupdate,$tmpdepfile" + else + "$@" -MDupdate "$tmpdepfile" + fi + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + + if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files + echo "$object : \\" > "$depfile" + + # Clip off the initial element (the dependent). Don't try to be + # clever and replace this with sed code, as IRIX sed won't handle + # lines with more than a fixed number of characters (4096 in + # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; + # the IRIX cc adds comments like `#:fec' to the end of the + # dependency line. + tr ' ' ' +' < "$tmpdepfile" \ + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ + tr ' +' ' ' >> $depfile + echo >> $depfile + + # The second pass generates a dummy entry for each header file. + tr ' ' ' +' < "$tmpdepfile" \ + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ + >> $depfile + else + # The sourcefile does not contain any dependencies, so just + # store a dummy comment line, to avoid errors with the Makefile + # "include basename.Plo" scheme. + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" + ;; + +aix) + # The C for AIX Compiler uses -M and outputs the dependencies + # in a .u file. This file always lives in the current directory. + # Also, the AIX compiler puts `$object:' at the start of each line; + # $object doesn't have directory information. + stripped=`echo "$object" | sed -e 's,^.*/,,' -e 's/\(.*\)\..*$/\1/'` + tmpdepfile="$stripped.u" + outname="$stripped.o" + if test "$libtool" = yes; then + "$@" -Wc,-M + else + "$@" -M + fi + + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + + if test -f "$tmpdepfile"; then + # Each line is of the form `foo.o: dependent.h'. + # Do two passes, one to just change these to + # `$object: dependent.h' and one to simply `dependent.h:'. + sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" + sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" + else + # The sourcefile does not contain any dependencies, so just + # store a dummy comment line, to avoid errors with the Makefile + # "include basename.Plo" scheme. + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" + ;; + +tru64) + # The Tru64 compiler uses -MD to generate dependencies as a side + # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. + # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put + # dependencies in `foo.d' instead, so we check for that too. + # Subdirectories are respected. + dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` + test "x$dir" = "x$object" && dir= + base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` + + if test "$libtool" = yes; then + tmpdepfile1="$dir.libs/$base.lo.d" + tmpdepfile2="$dir.libs/$base.d" + "$@" -Wc,-MD + else + tmpdepfile1="$dir$base.o.d" + tmpdepfile2="$dir$base.d" + "$@" -MD + fi + + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile1" "$tmpdepfile2" + exit $stat + fi + + if test -f "$tmpdepfile1"; then + tmpdepfile="$tmpdepfile1" + else + tmpdepfile="$tmpdepfile2" + fi + if test -f "$tmpdepfile"; then + sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" + # That's a space and a tab in the []. + sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" + else + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" + ;; + +#nosideeffect) + # This comment above is used by automake to tell side-effect + # dependency tracking mechanisms from slower ones. + +dashmstdout) + # Important note: in order to support this mode, a compiler *must* + # always write the proprocessed file to stdout, regardless of -o. + "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test $1 != '--mode=compile'; do + shift + done + shift + fi + + # Remove `-o $object'. We will use -o /dev/null later, + # however we can't do the remplacement now because + # `-o $object' might simply not be used + IFS=" " + for arg + do + case $arg in + -o) + shift + ;; + $object) + shift + ;; + *) + set fnord "$@" "$arg" + shift # fnord + shift # $arg + ;; + esac + done + + test -z "$dashmflag" && dashmflag=-M + "$@" -o /dev/null $dashmflag | sed 's:^[^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" + rm -f "$depfile" + cat < "$tmpdepfile" > "$depfile" + tr ' ' ' +' < "$tmpdepfile" | \ +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +dashXmstdout) + # This case only exists to satisfy depend.m4. It is never actually + # run, as this mode is specially recognized in the preamble. + exit 1 + ;; + +makedepend) + "$@" || exit $? + # X makedepend + shift + cleared=no + for arg in "$@"; do + case $cleared in + no) + set ""; shift + cleared=yes ;; + esac + case "$arg" in + -D*|-I*) + set fnord "$@" "$arg"; shift ;; + -*) + ;; + *) + set fnord "$@" "$arg"; shift ;; + esac + done + obj_suffix="`echo $object | sed 's/^.*\././'`" + touch "$tmpdepfile" + ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" + rm -f "$depfile" + cat < "$tmpdepfile" > "$depfile" + sed '1,2d' "$tmpdepfile" | tr ' ' ' +' | \ +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" "$tmpdepfile".bak + ;; + +cpp) + # Important note: in order to support this mode, a compiler *must* + # always write the proprocessed file to stdout. + "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test $1 != '--mode=compile'; do + shift + done + shift + fi + + # Remove `-o $object'. + IFS=" " + for arg + do + case $arg in + -o) + shift + ;; + $object) + shift + ;; + *) + set fnord "$@" "$arg" + shift # fnord + shift # $arg + ;; + esac + done + + "$@" -E | + sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | + sed '$ s: \\$::' > "$tmpdepfile" + rm -f "$depfile" + echo "$object : \\" > "$depfile" + cat < "$tmpdepfile" >> "$depfile" + sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +msvisualcpp) + # Important note: in order to support this mode, a compiler *must* + # always write the proprocessed file to stdout, regardless of -o, + # because we must use -o when running libtool. + "$@" || exit $? + IFS=" " + for arg + do + case "$arg" in + "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") + set fnord "$@" + shift + shift + ;; + *) + set fnord "$@" "$arg" + shift + shift + ;; + esac + done + "$@" -E | + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" + rm -f "$depfile" + echo "$object : \\" > "$depfile" + . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" + echo " " >> "$depfile" + . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +none) + exec "$@" + ;; + +*) + echo "Unknown depmode $depmode" 1>&2 + exit 1 + ;; +esac + +exit 0 diff -urN dillo-0.6.6/doc/IO.txt dillo2-0.6.6/doc/IO.txt --- dillo-0.6.6/doc/IO.txt 2001-07-01 19:06:25.000000000 -0600 +++ dillo2-0.6.6/doc/IO.txt 2003-04-21 12:35:26.000000000 -0600 @@ -338,6 +338,7 @@ better understood by examining the request structure: typedef struct { + gint Key; /* Primary Key (for klist) */ gint Op; /* IORead | IOWrite | IOWrites */ gint FD; /* Current File Descriptor */ glong Status; /* Number of bytes read, or -errno code */ diff -urN dillo-0.6.6/doc/Makefile dillo2-0.6.6/doc/Makefile --- dillo-0.6.6/doc/Makefile 2002-05-29 15:03:42.000000000 -0600 +++ dillo2-0.6.6/doc/Makefile 2003-04-21 14:27:05.000000000 -0600 @@ -1,6 +1,8 @@ -# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am +# Makefile.in generated by automake 1.6.3 from Makefile.am. +# doc/Makefile. Generated from Makefile.in by configure. -# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -16,7 +18,7 @@ srcdir = . top_srcdir = .. -prefix = /usr/local +prefix = /usr exec_prefix = ${prefix} bindir = ${exec_prefix}/bin @@ -31,149 +33,184 @@ mandir = ${prefix}/man includedir = ${prefix}/include oldincludedir = /usr/include - -DESTDIR = - pkgdatadir = $(datadir)/dillo pkglibdir = $(libdir)/dillo pkgincludedir = $(includedir)/dillo - top_builddir = .. -ACLOCAL = aclocal +ACLOCAL = aclocal-1.6 AUTOCONF = autoconf -AUTOMAKE = automake +AUTOMAKE = automake-1.6 AUTOHEADER = autoheader -INSTALL = /usr/bin/ginstall -c -INSTALL_PROGRAM = ${INSTALL} $(AM_INSTALL_PROGRAM_FLAGS) +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +INSTALL = /usr/bin/install -c +INSTALL_PROGRAM = ${INSTALL} INSTALL_DATA = ${INSTALL} -m 644 +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c INSTALL_SCRIPT = ${INSTALL} +INSTALL_HEADER = $(INSTALL_DATA) transform = s,x,x, - NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : + +EXEEXT = +OBJEXT = o +PATH_SEPARATOR = : +AMTAR = tar +AWK = gawk CC = gcc -GTK_CFLAGS = -I/opt/gnome/include/gtk-1.2 -I/opt/gnome/include/glib-1.2 -I/opt/gnome/lib/glib/include -I/usr/X11R6/include -GTK_CONFIG = /opt/gnome/bin/gtk-config -GTK_LIBS = -L/opt/gnome/lib -L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule -lglib -ldl -lXext -lX11 -lm +DEPDIR = .deps +INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s LIBJPEG_LIB = -ljpeg -MAKEINFO = makeinfo PACKAGE = dillo +PKG_CONFIG = /usr/bin/pkg-config RANLIB = ranlib +STRIP = VERSION = 0.6.6 -datadir = ${prefix}/share -src = @src@ - -EXTRA_DIST = Cache.txt Cookies.txt Dillo.txt Dw.txt DwImage.txt DwPage.txt DwStyle.txt DwTable.txt DwWidget.txt HtmlParser.txt IO.txt Images.txt Makefile Makefile.am Makefile.in NC_design.txt README +am__include = include +am__quote = +install_sh = /home/pb/dillo2/install-sh +src = +EXTRA_DIST = \ + Cache.txt \ + Cookies.txt \ + Dillo.txt \ + Dw.txt \ + DwImage.txt \ + DwPage.txt \ + DwStyle.txt \ + DwTable.txt \ + DwWidget.txt \ + HtmlParser.txt \ + IO.txt \ + Images.txt \ + NC_design.txt \ + README +subdir = doc mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = ../config.h -CONFIG_CLEAN_FILES = -DIST_COMMON = README Makefile.am Makefile.in +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +DIST_SOURCES = +DIST_COMMON = README Makefile.am Makefile.in +all: all-am - -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) - -TAR = tar -GZIP_ENV = --best -all: all-redirect .SUFFIXES: -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile - -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu doc/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) +uninstall-info-am: tags: TAGS TAGS: +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) - -subdir = doc +top_distdir = .. +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) distdir: $(DISTFILES) - here=`cd $(top_builddir) && pwd`; \ - top_distdir=`cd $(top_distdir) && pwd`; \ - distdir=`cd $(distdir) && pwd`; \ - cd $(top_srcdir) \ - && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu doc/Makefile - @for file in $(DISTFILES); do \ - d=$(srcdir); \ + @list='$(DISTFILES)'; for file in $$list; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ if test -d $$d/$$file; then \ - cp -pr $$d/$$file $(distdir)/$$file; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ fi; \ done -info-am: -info: info-am -dvi-am: -dvi: dvi-am check-am: all-am check: check-am -installcheck-am: -installcheck: installcheck-am -install-exec-am: -install-exec: install-exec-am +all-am: Makefile -install-data-am: -install-data: install-data-am +installdirs: -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am install: install-am -uninstall-am: +install-exec: install-exec-am +install-data: install-data-am uninstall: uninstall-am -all-am: Makefile -all-redirect: all-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install -installdirs: +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -rm -f Makefile $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log stamp-h stamp-h[0-9]* maintainer-clean-generic: -mostlyclean-am: mostlyclean-generic + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am -mostlyclean: mostlyclean-am +clean-am: clean-generic mostlyclean-am -clean-am: clean-generic mostlyclean-am +distclean: distclean-am -clean: clean-am +distclean-am: clean-am distclean-generic -distclean-am: distclean-generic clean-am +dvi: dvi-am -distclean: distclean-am +dvi-am: -maintainer-clean-am: maintainer-clean-generic distclean-am - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." +info: info-am + +info-am: + +install-data-am: + +install-exec-am: + +install-info: install-info-am + +install-man: + +installcheck-am: maintainer-clean: maintainer-clean-am -.PHONY: tags distdir info-am info dvi-am dvi check check-am \ -installcheck-am installcheck install-exec-am install-exec \ -install-data-am install-data install-am install uninstall-am uninstall \ -all-redirect all-am all installdirs mostlyclean-generic \ -distclean-generic clean-generic maintainer-clean-generic clean \ -mostlyclean distclean maintainer-clean +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic + +uninstall-am: uninstall-info-am +.PHONY: all all-am check check-am clean clean-generic distclean \ + distclean-generic distdir dvi dvi-am info info-am install \ + install-am install-data install-data-am install-exec \ + install-exec-am install-info install-info-am install-man \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic uninstall uninstall-am uninstall-info-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -urN dillo-0.6.6/doc/Makefile.am dillo2-0.6.6/doc/Makefile.am --- dillo-0.6.6/doc/Makefile.am 2002-05-27 15:27:46.000000000 -0600 +++ dillo2-0.6.6/doc/Makefile.am 2003-04-21 12:35:27.000000000 -0600 @@ -11,8 +11,5 @@ HtmlParser.txt \ IO.txt \ Images.txt \ - Makefile \ - Makefile.am \ - Makefile.in \ NC_design.txt \ README diff -urN dillo-0.6.6/doc/Makefile.in dillo2-0.6.6/doc/Makefile.in --- dillo-0.6.6/doc/Makefile.in 2002-05-29 15:03:04.000000000 -0600 +++ dillo2-0.6.6/doc/Makefile.in 2003-04-21 12:35:27.000000000 -0600 @@ -1,6 +1,8 @@ -# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am +# Makefile.in generated by automake 1.6.3 from Makefile.am. +# @configure_input@ -# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -10,7 +12,7 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. - +@SET_MAKE@ SHELL = @SHELL@ srcdir = @srcdir@ @@ -31,13 +33,9 @@ mandir = @mandir@ includedir = @includedir@ oldincludedir = /usr/include - -DESTDIR = - pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ - top_builddir = .. ACLOCAL = @ACLOCAL@ @@ -45,135 +43,174 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_HEADER = $(INSTALL_DATA) transform = @program_transform_name@ - NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : + +EXEEXT = @EXEEXT@ +OBJEXT = @OBJEXT@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +AMTAR = @AMTAR@ +AWK = @AWK@ CC = @CC@ -GTK_CFLAGS = @GTK_CFLAGS@ -GTK_CONFIG = @GTK_CONFIG@ -GTK_LIBS = @GTK_LIBS@ +DEPDIR = @DEPDIR@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LIBJPEG_LIB = @LIBJPEG_LIB@ -MAKEINFO = @MAKEINFO@ PACKAGE = @PACKAGE@ +PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ +STRIP = @STRIP@ VERSION = @VERSION@ -datadir = @datadir@ +am__include = @am__include@ +am__quote = @am__quote@ +install_sh = @install_sh@ src = @src@ +EXTRA_DIST = \ + Cache.txt \ + Cookies.txt \ + Dillo.txt \ + Dw.txt \ + DwImage.txt \ + DwPage.txt \ + DwStyle.txt \ + DwTable.txt \ + DwWidget.txt \ + HtmlParser.txt \ + IO.txt \ + Images.txt \ + NC_design.txt \ + README -EXTRA_DIST = Cache.txt Cookies.txt Dillo.txt Dw.txt DwImage.txt DwPage.txt DwStyle.txt DwTable.txt DwWidget.txt HtmlParser.txt IO.txt Images.txt Makefile Makefile.am Makefile.in NC_design.txt README - +subdir = doc mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = ../config.h -CONFIG_CLEAN_FILES = -DIST_COMMON = README Makefile.am Makefile.in - +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +DIST_SOURCES = +DIST_COMMON = README Makefile.am Makefile.in +all: all-am -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) - -TAR = tar -GZIP_ENV = --best -all: all-redirect .SUFFIXES: -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile - -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu doc/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) +uninstall-info-am: tags: TAGS TAGS: +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) - -subdir = doc +top_distdir = .. +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) distdir: $(DISTFILES) - here=`cd $(top_builddir) && pwd`; \ - top_distdir=`cd $(top_distdir) && pwd`; \ - distdir=`cd $(distdir) && pwd`; \ - cd $(top_srcdir) \ - && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu doc/Makefile - @for file in $(DISTFILES); do \ - d=$(srcdir); \ + @list='$(DISTFILES)'; for file in $$list; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ if test -d $$d/$$file; then \ - cp -pr $$d/$$file $(distdir)/$$file; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ fi; \ done -info-am: -info: info-am -dvi-am: -dvi: dvi-am check-am: all-am check: check-am -installcheck-am: -installcheck: installcheck-am -install-exec-am: -install-exec: install-exec-am +all-am: Makefile -install-data-am: -install-data: install-data-am +installdirs: -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am install: install-am -uninstall-am: +install-exec: install-exec-am +install-data: install-data-am uninstall: uninstall-am -all-am: Makefile -all-redirect: all-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install -installdirs: +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -rm -f Makefile $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log stamp-h stamp-h[0-9]* maintainer-clean-generic: -mostlyclean-am: mostlyclean-generic + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am -mostlyclean: mostlyclean-am +clean-am: clean-generic mostlyclean-am -clean-am: clean-generic mostlyclean-am +distclean: distclean-am -clean: clean-am +distclean-am: clean-am distclean-generic -distclean-am: distclean-generic clean-am +dvi: dvi-am -distclean: distclean-am +dvi-am: -maintainer-clean-am: maintainer-clean-generic distclean-am - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." +info: info-am + +info-am: + +install-data-am: + +install-exec-am: + +install-info: install-info-am + +install-man: + +installcheck-am: maintainer-clean: maintainer-clean-am -.PHONY: tags distdir info-am info dvi-am dvi check check-am \ -installcheck-am installcheck install-exec-am install-exec \ -install-data-am install-data install-am install uninstall-am uninstall \ -all-redirect all-am all installdirs mostlyclean-generic \ -distclean-generic clean-generic maintainer-clean-generic clean \ -mostlyclean distclean maintainer-clean +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic + +uninstall-am: uninstall-info-am +.PHONY: all all-am check check-am clean clean-generic distclean \ + distclean-generic distdir dvi dvi-am info info-am install \ + install-am install-data install-data-am install-exec \ + install-exec-am install-info install-info-am install-man \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic uninstall uninstall-am uninstall-info-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -urN dillo-0.6.6/mkinstalldirs dillo2-0.6.6/mkinstalldirs --- dillo-0.6.6/mkinstalldirs 2000-08-29 20:43:34.000000000 -0600 +++ dillo2-0.6.6/mkinstalldirs 2003-04-21 12:35:08.000000000 -0600 @@ -4,7 +4,7 @@ # Created: 1993-05-16 # Public domain -# $Id: mkinstalldirs,v 1.8 2000/08/30 02:43:34 jcid Exp $ +# $Id: mkinstalldirs,v 1.1.1.1 2003/04/21 18:35:08 pb Exp $ errstatus=0 diff -urN dillo-0.6.6/src/IO/IO.c dillo2-0.6.6/src/IO/IO.c --- dillo-0.6.6/src/IO/IO.c 2002-04-25 08:32:05.000000000 -0600 +++ dillo2-0.6.6/src/IO/IO.c 2003-04-21 12:36:30.000000000 -0600 @@ -26,7 +26,7 @@ #include "../klist.h" #include "IO.h" -//#define DEBUG_LEVEL 3 +#define DEBUG_LEVEL 4 #include "../debug.h" @@ -90,7 +90,7 @@ g_return_if_fail(IO_get(io->Key) == NULL); if (io->Flags & IOFlag_FreeIOVec) - g_free(io->IOVec.iov_base); + g_free(io->IOVecStart); g_free(io); } @@ -172,9 +172,7 @@ /* * Write data, from a specific buffer, into a file descriptor - * (** Write operations MUST NOT free the buffer because the buffer - * start is modified.) - * todo: Implement IOWrites, remove the constraint stated above. + * todo: Implement IOWrites. */ static gboolean IO_write(IOData_t *io) { @@ -193,13 +191,15 @@ io->Status = -errno; if (errno == EINTR) ret = TRUE; - else if (errno == EAGAIN) - ret = TRUE; /* todo: ??? */ - + else if (errno == EAGAIN) { + DEBUG_MSG(4, " IO_write: EAGAIN\n"); + ret = FALSE; + } } else if ( St < io->IOVec.iov_len ){ /* Not all data written */ io->IOVec.iov_len -= St; io->IOVec.iov_base = (gchar *)io->IOVec.iov_base + St; + DEBUG_MSG(4, " IO_write: Changing iov_base (%d)\n", St); ret = TRUE; } else { @@ -238,6 +238,9 @@ ret = IO_read(io); } else if ( cond & G_IO_OUT ){ /* Write */ while ( IO_write(io) ); + io = IO_get(io_key); /* IO_write may have freed 'io' */ + if (io && io->Status == -EAGAIN) + ret = TRUE; /* wait for another G_IO_OUT event... */ } if ( cond & G_IO_ERR ){ /* Error */ @@ -262,6 +265,9 @@ */ static void IO_submit(IOData_t *r_io) { + /* Save IOVec's start */ + r_io->IOVecStart = r_io->IOVec.iov_base; + /* Insert this IO in ValidIOs */ IO_ins(r_io); @@ -333,7 +339,7 @@ /* Backwards call */ switch (Op) { case OpAbort: - DEBUG_MSG(3, "IO : OpAbort [-1]\n"); + DEBUG_MSG(4, "IO : OpAbort [-1]\n"); io = Info->LocalKey; IO_abort(io); IO_free(io); diff -urN dillo-0.6.6/src/IO/IO.h dillo2-0.6.6/src/IO/IO.h --- dillo-0.6.6/src/IO/IO.h 2002-01-27 06:44:52.000000000 -0700 +++ dillo2-0.6.6/src/IO/IO.h 2003-04-21 12:36:30.000000000 -0600 @@ -34,13 +34,13 @@ gint Key; /* Primary Key (for klist) */ gint Op; /* IORead | IOWrite | IOWrites */ gint FD; /* Current File Descriptor */ + gint Flags; /* Flag array (look definitions above) */ glong Status; /* Number of bytes read, or -errno code */ struct iovec IOVec; /* Buffer place and length */ - gint Flags; /* Flag array (look definitions above) */ + void *IOVecStart; /* PRIVATE: only used inside IO.c! */ void *ExtData; /* External data reference (not used by IO.c) */ void *Info; /* CCC Info structure for this IO */ GIOChannel *GioCh; /* IO channel */ - gint GdkTag; /* gdk_input tag (used to remove) */ } IOData_t; diff -urN dillo-0.6.6/src/IO/Makefile dillo2-0.6.6/src/IO/Makefile --- dillo-0.6.6/src/IO/Makefile 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/src/IO/Makefile 2003-04-21 14:27:11.000000000 -0600 @@ -0,0 +1,318 @@ +# Makefile.in generated by automake 1.6.3 from Makefile.am. +# src/IO/Makefile. Generated from Makefile.in by configure. + +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + +SHELL = /bin/sh + +srcdir = . +top_srcdir = ../.. + +prefix = /usr +exec_prefix = ${prefix} + +bindir = ${exec_prefix}/bin +sbindir = ${exec_prefix}/sbin +libexecdir = ${exec_prefix}/libexec +datadir = ${prefix}/share +sysconfdir = ${prefix}/etc +sharedstatedir = ${prefix}/com +localstatedir = ${prefix}/var +libdir = ${exec_prefix}/lib +infodir = ${prefix}/info +mandir = ${prefix}/man +includedir = ${prefix}/include +oldincludedir = /usr/include +pkgdatadir = $(datadir)/dillo +pkglibdir = $(libdir)/dillo +pkgincludedir = $(includedir)/dillo +top_builddir = ../.. + +ACLOCAL = aclocal-1.6 +AUTOCONF = autoconf +AUTOMAKE = automake-1.6 +AUTOHEADER = autoheader + +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +INSTALL = /usr/bin/install -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_SCRIPT = ${INSTALL} +INSTALL_HEADER = $(INSTALL_DATA) +transform = s,x,x, +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : + +EXEEXT = +OBJEXT = o +PATH_SEPARATOR = : +AMTAR = tar +AWK = gawk +CC = gcc +DEPDIR = .deps +INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s +LIBJPEG_LIB = -ljpeg +PACKAGE = dillo +PKG_CONFIG = /usr/bin/pkg-config +RANLIB = ranlib +STRIP = +VERSION = 0.6.6 +am__include = include +am__quote = +install_sh = /home/pb/dillo2/install-sh +src = +noinst_LIBRARIES = libDio.a + +libDio_a_SOURCES = \ + mime.c \ + mime.h \ + about.c \ + Url.c \ + Url.h \ + proto.c \ + file.c \ + http.c \ + IO.c \ + IO.h + +subdir = src/IO +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + +libDio_a_AR = $(AR) cru +libDio_a_LIBADD = +am_libDio_a_OBJECTS = mime.$(OBJEXT) about.$(OBJEXT) Url.$(OBJEXT) \ + proto.$(OBJEXT) file.$(OBJEXT) http.$(OBJEXT) IO.$(OBJEXT) +libDio_a_OBJECTS = $(am_libDio_a_OBJECTS) + +DEFS = -DHAVE_CONFIG_H +DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) +CPPFLAGS = -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include +LDFLAGS = -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 +LIBS = -lpng -lz -lpthread +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +DEP_FILES = ./$(DEPDIR)/IO.Po ./$(DEPDIR)/Url.Po \ + ./$(DEPDIR)/about.Po ./$(DEPDIR)/file.Po \ + ./$(DEPDIR)/http.Po ./$(DEPDIR)/mime.Po \ + ./$(DEPDIR)/proto.Po +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +CFLAGS = -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -DENABLE_IPV6 +DIST_SOURCES = $(libDio_a_SOURCES) +DIST_COMMON = Makefile.am Makefile.in +SOURCES = $(libDio_a_SOURCES) + +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .o .obj +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/IO/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) + +AR = ar + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) +libDio.a: $(libDio_a_OBJECTS) $(libDio_a_DEPENDENCIES) + -rm -f libDio.a + $(libDio_a_AR) libDio.a $(libDio_a_OBJECTS) $(libDio_a_LIBADD) + $(RANLIB) libDio.a + +mostlyclean-compile: + -rm -f *.$(OBJEXT) core *.core + +distclean-compile: + -rm -f *.tab.c + +include ./$(DEPDIR)/IO.Po +include ./$(DEPDIR)/Url.Po +include ./$(DEPDIR)/about.Po +include ./$(DEPDIR)/file.Po +include ./$(DEPDIR)/http.Po +include ./$(DEPDIR)/mime.Po +include ./$(DEPDIR)/proto.Po + +distclean-depend: + -rm -rf ./$(DEPDIR) + +.c.o: + source='$<' object='$@' libtool=no \ + depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' \ + $(CCDEPMODE) $(depcomp) \ + $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$< + +.c.obj: + source='$<' object='$@' libtool=no \ + depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' \ + $(CCDEPMODE) $(depcomp) \ + $(COMPILE) -c `cygpath -w $<` +CCDEPMODE = depmode=gcc3 +uninstall-info-am: + +ETAGS = etags +ETAGSFLAGS = + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + mkid -fID $$unique + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$tags$$unique" \ + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + +top_distdir = ../.. +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) + +distdir: $(DISTFILES) + @list='$(DISTFILES)'; for file in $$list; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ + if test -d $$d/$$file; then \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(LIBRARIES) + +installdirs: + +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am + +distclean: distclean-am + +distclean-am: clean-am distclean-compile distclean-depend \ + distclean-generic distclean-tags + +dvi: dvi-am + +dvi-am: + +info: info-am + +info-am: + +install-data-am: + +install-exec-am: + +install-info: install-info-am + +install-man: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic + +uninstall-am: uninstall-info-am + +.PHONY: GTAGS all all-am check check-am clean clean-generic \ + clean-noinstLIBRARIES distclean distclean-compile \ + distclean-depend distclean-generic distclean-tags distdir dvi \ + dvi-am info info-am install install-am install-data \ + install-data-am install-exec install-exec-am install-info \ + install-info-am install-man install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic tags uninstall uninstall-am \ + uninstall-info-am + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -urN dillo-0.6.6/src/IO/Makefile.in dillo2-0.6.6/src/IO/Makefile.in --- dillo-0.6.6/src/IO/Makefile.in 2002-05-29 15:03:02.000000000 -0600 +++ dillo2-0.6.6/src/IO/Makefile.in 2003-04-21 12:36:31.000000000 -0600 @@ -1,6 +1,8 @@ -# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am +# Makefile.in generated by automake 1.6.3 from Makefile.am. +# @configure_input@ -# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -10,7 +12,7 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. - +@SET_MAKE@ SHELL = @SHELL@ srcdir = @srcdir@ @@ -31,13 +33,9 @@ mandir = @mandir@ includedir = @includedir@ oldincludedir = /usr/include - -DESTDIR = - pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ - top_builddir = ../.. ACLOCAL = @ACLOCAL@ @@ -45,257 +43,275 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_HEADER = $(INSTALL_DATA) transform = @program_transform_name@ - NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : + +EXEEXT = @EXEEXT@ +OBJEXT = @OBJEXT@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +AMTAR = @AMTAR@ +AWK = @AWK@ CC = @CC@ -GTK_CFLAGS = @GTK_CFLAGS@ -GTK_CONFIG = @GTK_CONFIG@ -GTK_LIBS = @GTK_LIBS@ +DEPDIR = @DEPDIR@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LIBJPEG_LIB = @LIBJPEG_LIB@ -MAKEINFO = @MAKEINFO@ PACKAGE = @PACKAGE@ +PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ +STRIP = @STRIP@ VERSION = @VERSION@ -datadir = @datadir@ +am__include = @am__include@ +am__quote = @am__quote@ +install_sh = @install_sh@ src = @src@ - noinst_LIBRARIES = libDio.a -libDio_a_SOURCES = mime.c mime.h about.c Url.c Url.h proto.c file.c http.c IO.c IO.h +libDio_a_SOURCES = \ + mime.c \ + mime.h \ + about.c \ + Url.c \ + Url.h \ + proto.c \ + file.c \ + http.c \ + IO.c \ + IO.h +subdir = src/IO mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = ../../config.h -CONFIG_CLEAN_FILES = -LIBRARIES = $(noinst_LIBRARIES) +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +LIBRARIES = $(noinst_LIBRARIES) + +libDio_a_AR = $(AR) cru +libDio_a_LIBADD = +am_libDio_a_OBJECTS = mime.$(OBJEXT) about.$(OBJEXT) Url.$(OBJEXT) \ + proto.$(OBJEXT) file.$(OBJEXT) http.$(OBJEXT) IO.$(OBJEXT) +libDio_a_OBJECTS = $(am_libDio_a_OBJECTS) - -DEFS = @DEFS@ -I. -I$(srcdir) -I../.. +DEFS = @DEFS@ +DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ -libDio_a_LIBADD = -libDio_a_OBJECTS = mime.o about.o Url.o proto.o file.o http.o IO.o -AR = ar -CFLAGS = @CFLAGS@ -COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/IO.Po ./$(DEPDIR)/Url.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/about.Po ./$(DEPDIR)/file.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/http.Po ./$(DEPDIR)/mime.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/proto.Po +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ -DIST_COMMON = Makefile.am Makefile.in - - -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) - -TAR = tar -GZIP_ENV = --best -DEP_FILES = .deps/IO.P .deps/Url.P .deps/about.P .deps/file.P \ -.deps/http.P .deps/mime.P .deps/proto.P +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +CFLAGS = @CFLAGS@ +DIST_SOURCES = $(libDio_a_SOURCES) +DIST_COMMON = Makefile.am Makefile.in SOURCES = $(libDio_a_SOURCES) -OBJECTS = $(libDio_a_OBJECTS) - -all: all-redirect -.SUFFIXES: -.SUFFIXES: .S .c .o .s -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --gnu src/IO/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status +all: all-am +.SUFFIXES: +.SUFFIXES: .c .o .obj +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/IO/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) -mostlyclean-noinstLIBRARIES: +AR = ar clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) - -distclean-noinstLIBRARIES: - -maintainer-clean-noinstLIBRARIES: - -.s.o: - $(COMPILE) -c $< - -.S.o: - $(COMPILE) -c $< +libDio.a: $(libDio_a_OBJECTS) $(libDio_a_DEPENDENCIES) + -rm -f libDio.a + $(libDio_a_AR) libDio.a $(libDio_a_OBJECTS) $(libDio_a_LIBADD) + $(RANLIB) libDio.a mostlyclean-compile: - -rm -f *.o core *.core - -clean-compile: + -rm -f *.$(OBJEXT) core *.core distclean-compile: -rm -f *.tab.c -maintainer-clean-compile: +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/IO.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Url.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/about.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mime.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/proto.Po@am__quote@ -libDio.a: $(libDio_a_OBJECTS) $(libDio_a_DEPENDENCIES) - -rm -f libDio.a - $(AR) cru libDio.a $(libDio_a_OBJECTS) $(libDio_a_LIBADD) - $(RANLIB) libDio.a +distclean-depend: + -rm -rf ./$(DEPDIR) + +.c.o: +@AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ +@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$< + +.c.obj: +@AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ +@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(COMPILE) -c `cygpath -w $<` +CCDEPMODE = @CCDEPMODE@ +uninstall-info-am: + +ETAGS = etags +ETAGSFLAGS = tags: TAGS -ID: $(HEADERS) $(SOURCES) $(LISP) - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ - here=`pwd` && cd $(srcdir) \ - && mkid -f$$here/ID $$unique $(LISP) + mkid -fID $$unique -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ - test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ - || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) - -mostlyclean-tags: - -clean-tags: + test -z "$(ETAGS_ARGS)$$tags$$unique" \ + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here distclean-tags: - -rm -f TAGS ID - -maintainer-clean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) - -subdir = src/IO +top_distdir = ../.. +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) distdir: $(DISTFILES) - here=`cd $(top_builddir) && pwd`; \ - top_distdir=`cd $(top_distdir) && pwd`; \ - distdir=`cd $(distdir) && pwd`; \ - cd $(top_srcdir) \ - && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu src/IO/Makefile - @for file in $(DISTFILES); do \ - d=$(srcdir); \ + @list='$(DISTFILES)'; for file in $$list; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ if test -d $$d/$$file; then \ - cp -pr $$d/$$file $(distdir)/$$file; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ fi; \ done - -DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) - --include $(DEP_FILES) - -mostlyclean-depend: - -clean-depend: - -distclean-depend: - -rm -rf .deps - -maintainer-clean-depend: - -%.o: %.c - @echo '$(COMPILE) -c $<'; \ - $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-cp .deps/$(*F).pp .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm .deps/$(*F).pp - -%.lo: %.c - @echo '$(LTCOMPILE) -c $<'; \ - $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*F).pp > .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm -f .deps/$(*F).pp -info-am: -info: info-am -dvi-am: -dvi: dvi-am check-am: all-am check: check-am -installcheck-am: -installcheck: installcheck-am -install-exec-am: -install-exec: install-exec-am +all-am: Makefile $(LIBRARIES) -install-data-am: -install-data: install-data-am +installdirs: -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am install: install-am -uninstall-am: +install-exec: install-exec-am +install-data: install-data-am uninstall: uninstall-am -all-am: Makefile $(LIBRARIES) -all-redirect: all-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install -installdirs: +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -rm -f Makefile $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log stamp-h stamp-h[0-9]* maintainer-clean-generic: -mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ - mostlyclean-tags mostlyclean-depend mostlyclean-generic + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am -mostlyclean: mostlyclean-am +clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am -clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-depend \ - clean-generic mostlyclean-am +distclean: distclean-am -clean: clean-am +distclean-am: clean-am distclean-compile distclean-depend \ + distclean-generic distclean-tags -distclean-am: distclean-noinstLIBRARIES distclean-compile \ - distclean-tags distclean-depend distclean-generic \ - clean-am +dvi: dvi-am -distclean: distclean-am +dvi-am: -maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ - maintainer-clean-compile maintainer-clean-tags \ - maintainer-clean-depend maintainer-clean-generic \ - distclean-am - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." +info: info-am + +info-am: + +install-data-am: + +install-exec-am: + +install-info: install-info-am + +install-man: + +installcheck-am: maintainer-clean: maintainer-clean-am -.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ -clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ -mostlyclean-compile distclean-compile clean-compile \ -maintainer-clean-compile tags mostlyclean-tags distclean-tags \ -clean-tags maintainer-clean-tags distdir mostlyclean-depend \ -distclean-depend clean-depend maintainer-clean-depend info-am info \ -dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ -install-exec install-data-am install-data install-am install \ -uninstall-am uninstall all-redirect all-am all installdirs \ -mostlyclean-generic distclean-generic clean-generic \ -maintainer-clean-generic clean mostlyclean distclean maintainer-clean +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic + +uninstall-am: uninstall-info-am +.PHONY: GTAGS all all-am check check-am clean clean-generic \ + clean-noinstLIBRARIES distclean distclean-compile \ + distclean-depend distclean-generic distclean-tags distdir dvi \ + dvi-am info info-am install install-am install-data \ + install-data-am install-exec install-exec-am install-info \ + install-info-am install-man install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic tags uninstall uninstall-am \ + uninstall-info-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -urN dillo-0.6.6/src/IO/about.c dillo2-0.6.6/src/IO/about.c --- dillo-0.6.6/src/IO/about.c 2002-05-29 15:38:08.000000000 -0600 +++ dillo2-0.6.6/src/IO/about.c 2003-04-21 12:36:31.000000000 -0600 @@ -51,11 +51,11 @@ </td> <td BGCOLOR=\"#9090F0\"> -<h1><b>Dillo 0.6.6</b></h1> +<h1><b>Dillo 0.6.7-pre</b></h1> <hr> <h1>Dillo project<br> - <h3>Version 0.6.6<BR> <EM>(this is alpha code)</EM> </h3></h1> + <h3>Version 0.6.7-pre<BR> <EM>(this is alpha code)</EM> </h3></h1> <h4> License: </h4> <p> This program is free software; you can redistribute it and/or modify @@ -71,8 +71,7 @@ <hr> <h4> Release overview: </h4> <BLOCKQUOTE> - This is a pure bug-fix release. The main fixes were on cookies, -the others are detailed in the ChangeLog. + [...] </BLOCKQUOTE><BLOCKQUOTE> Remember that dillo project uses a release model where every new browser shall be better than the former. diff -urN dillo-0.6.6/src/IO/http.c dillo2-0.6.6/src/IO/http.c --- dillo-0.6.6/src/IO/http.c 2002-05-01 07:34:56.000000000 -0600 +++ dillo2-0.6.6/src/IO/http.c 2003-04-21 12:36:33.000000000 -0600 @@ -23,6 +23,7 @@ #include <sys/wait.h> #include <sys/socket.h> /* for lots of socket stuff */ #include <netinet/in.h> /* for ntohl and stuff */ +#include <arpa/inet.h> /* for inet_ntop */ #include "Url.h" #include "IO.h" @@ -52,7 +53,8 @@ guint port; /* need a separate port in order to support PROXY */ gboolean use_proxy; /* indicates whether to use proxy or not */ DilloWeb *web; /* reference to client's web structure */ - guint32 ip_addr; /* Holds the DNS answer */ + GSList *addr_list; /* Holds the DNS answer */ + GSList *addr_list_iter; /* Points to address currently being used */ GIOChannel *GioCh; /* GIOChannel to monitor the connecting process */ gint Err; /* Holds the errno of the connect() call */ ChainLink *Info; /* Used for CCC asynchronous operations */ @@ -87,7 +89,7 @@ */ static void Http_send_query(ChainLink *Info, SocketData_t *S); static void Http_expect_answer(SocketData_t *S); - +static int Http_connect_socket(ChainLink *Info); /* @@ -209,6 +211,12 @@ Info = S->Info; if ( cond & G_IO_HUP ) { DEBUG_MSG(3, "--Connection broken\n"); + g_io_channel_close(S->GioCh); + if (S->addr_list_iter->next) { + S->addr_list_iter = S->addr_list_iter->next; + if (Http_connect_socket(Info) == 0) + return FALSE; + } BW_MSG(S->web, 0, "ERROR: unable to connect to remote host"); a_Chain_fcb(OpAbort, 1, Info, NULL, NULL); Http_socket_free(SKey); @@ -236,17 +244,53 @@ static int Http_connect_socket(ChainLink *Info) { gint status; +#ifdef ENABLE_IPV6 + struct sockaddr_storage name; +#else struct sockaddr_in name; +#endif SocketData_t *S; + DilloHost *dh; S = a_Klist_get_data(ValidSocks, GPOINTER_TO_INT(Info->LocalKey)); + dh = S->addr_list_iter->data; + + if ( (S->SockFD = socket(dh->af, SOCK_STREAM, IPPROTO_TCP)) < 0 ) { + S->Err = errno; + DEBUG_MSG(5, "Http_connect_socket ERROR: %s\n", g_strerror(errno)); + return -1; + } + /* set NONBLOCKING */ + fcntl(S->SockFD, F_SETFL, O_NONBLOCK | fcntl(S->SockFD, F_GETFL)); + /* Some OSes require this... */ memset(&name, 0, sizeof(name)); /* Set remaining parms. */ - name.sin_family = AF_INET; - name.sin_port = S->port ? htons(S->port) : htons(DILLO_URL_HTTP_PORT); - name.sin_addr.s_addr = htonl(S->ip_addr); + switch (dh->af) { + case AF_INET: + { + struct sockaddr_in *sin = (struct sockaddr_in *)&name; + sin->sin_family = dh->af; + sin->sin_port = S->port ? htons(S->port) : htons(DILLO_URL_HTTP_PORT); + memcpy(&sin->sin_addr, dh->data, dh->alen); + DEBUG_MSG(5, "Connecting to %s\n", inet_ntoa(sin->sin_addr)); + break; + } +#ifdef ENABLE_IPV6 + case AF_INET6: + { + char buf[128]; + struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)&name; + sin6->sin6_family = dh->af; + sin6->sin6_port = S->port ? htons(S->port) : htons(DILLO_URL_HTTP_PORT); + memcpy(&sin6->sin6_addr, dh->data, dh->alen); + inet_ntop(dh->af, dh->data, buf, sizeof(buf)); + DEBUG_MSG(5, "Connecting to %s\n", buf); + break; + } +#endif + } S->GioCh = g_io_channel_unix_new(S->SockFD); g_io_add_watch(S->GioCh, G_IO_ERR | G_IO_HUP | G_IO_OUT, @@ -357,13 +401,6 @@ /* Set more socket parameters */ S->Url = Url; - if ( (S->SockFD = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0 ) { - S->Err = errno; - DEBUG_MSG(5, "Http_get ERROR: %s\n", g_strerror(errno)); - return -1; - } - /* set NONBLOCKING */ - fcntl(S->SockFD, F_SETFL, O_NONBLOCK | fcntl(S->SockFD, F_GETFL)); /* Let the user know what we'll do */ BW_MSG(S->web, 1, "DNS solving %s", URL_HOST_(S->Url)); @@ -402,8 +439,10 @@ break; case OpSend: /* Successful DNS answer; save the IP */ - if (S) - S->ip_addr = *(int *)Data; + if (S) { + S->addr_list = (GSList *)Data; + S->addr_list_iter = S->addr_list; + } break; case OpEnd: if (S) { @@ -425,7 +464,6 @@ a_Chain_del_link(Info, CCC_BCK); BW_MSG(S->web, 0, "ERROR: Dns can't solve %s", (S->use_proxy) ? URL_HOST_(HTTP_Proxy) : URL_HOST_(S->Url)); - while (close(S->SockFD) == EINTR); Http_socket_free(SKey); /* send abort message to higher-level functions */ a_Chain_fcb(OpAbort, 1, Info, NULL, NULL); diff -urN dillo-0.6.6/src/Makefile dillo2-0.6.6/src/Makefile --- dillo-0.6.6/src/Makefile 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/src/Makefile 2003-04-21 14:27:08.000000000 -0600 @@ -0,0 +1,591 @@ +# Makefile.in generated by automake 1.6.3 from Makefile.am. +# src/Makefile. Generated from Makefile.in by configure. + +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + +SHELL = /bin/sh + +srcdir = . +top_srcdir = .. + +prefix = /usr +exec_prefix = ${prefix} + +bindir = ${exec_prefix}/bin +sbindir = ${exec_prefix}/sbin +libexecdir = ${exec_prefix}/libexec +datadir = ${prefix}/share +sysconfdir = ${prefix}/etc +sharedstatedir = ${prefix}/com +localstatedir = ${prefix}/var +libdir = ${exec_prefix}/lib +infodir = ${prefix}/info +mandir = ${prefix}/man +includedir = ${prefix}/include +oldincludedir = /usr/include +pkgdatadir = $(datadir)/dillo +pkglibdir = $(libdir)/dillo +pkgincludedir = $(includedir)/dillo +top_builddir = .. + +ACLOCAL = aclocal-1.6 +AUTOCONF = autoconf +AUTOMAKE = automake-1.6 +AUTOHEADER = autoheader + +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +INSTALL = /usr/bin/install -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_SCRIPT = ${INSTALL} +INSTALL_HEADER = $(INSTALL_DATA) +transform = s,x,x, +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : + +EXEEXT = +OBJEXT = o +PATH_SEPARATOR = : +AMTAR = tar +AWK = gawk +CC = gcc +DEPDIR = .deps +INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s +LIBJPEG_LIB = -ljpeg +PACKAGE = dillo +PKG_CONFIG = /usr/bin/pkg-config +RANLIB = ranlib +STRIP = +VERSION = 0.6.6 +am__include = include +am__quote = +install_sh = /home/pb/dillo2/install-sh +src = +SUBDIRS = IO + +bin_PROGRAMS = dillo + +dillo_LDADD = IO/libDio.a -ljpeg + +dillo_SOURCES = \ + acconfig.h \ + chain.h \ + chain.c \ + commands.c \ + commands.h \ + cache.c \ + cache.h \ + debug.h \ + dw.h \ + dw.c \ + dw_aligned_page.c \ + dw_aligned_page.h \ + dw_bullet.c \ + dw_bullet.h \ + dw_button.c \ + dw_button.h \ + dw_container.c \ + dw_container.h \ + dw_embed_gtk.c \ + dw_embed_gtk.h \ + dw_ext_iterator.h \ + dw_ext_iterator.c \ + dw_gtk_scrolled_frame.c \ + dw_gtk_scrolled_frame.h \ + dw_gtk_scrolled_window.c \ + dw_gtk_scrolled_window.h \ + dw_gtk_viewport.c \ + dw_gtk_viewport.h \ + dw_hruler.c \ + dw_hruler.h \ + dw_image.c \ + dw_image.h \ + dw_list_item.c \ + dw_list_item.h \ + dw_marshal.c \ + dw_marshal.h \ + dw_page.c \ + dw_page.h \ + dw_style.c \ + dw_style.h \ + dw_table.c \ + dw_table.h \ + dw_tooltip.c \ + dw_tooltip.h \ + dw_widget.c \ + dw_widget.h \ + findtext.c \ + findtext.h \ + web.c \ + web.h \ + progressbar.c \ + progressbar.h \ + dillo.c \ + dillo.h \ + bookmark.c \ + bookmark.h \ + browser.h \ + dicache.c \ + dicache.h \ + dns.c \ + dns.h \ + gif.c \ + jpeg.c \ + png.c \ + html.c \ + html.h \ + image.c \ + image.h \ + misc.c \ + misc.h \ + interface.h \ + interface.c \ + history.c \ + history.h \ + nav.c \ + nav.h \ + plain.c \ + menu.c \ + menu.h \ + prefs.c \ + prefs.h \ + colors.c \ + colors.h \ + bitvec.c \ + bitvec.h \ + klist.c \ + klist.h \ + url.c \ + url.h \ + cookies.c \ + cookies.h \ + list.h \ + pixmaps.h + + +EXTRA_DIST = pixmaps_old.h dw_marshal.sh chg srch +subdir = src +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +bin_PROGRAMS = dillo$(EXEEXT) +PROGRAMS = $(bin_PROGRAMS) + +am_dillo_OBJECTS = chain.$(OBJEXT) commands.$(OBJEXT) cache.$(OBJEXT) \ + dw.$(OBJEXT) dw_aligned_page.$(OBJEXT) dw_bullet.$(OBJEXT) \ + dw_button.$(OBJEXT) dw_container.$(OBJEXT) \ + dw_embed_gtk.$(OBJEXT) dw_ext_iterator.$(OBJEXT) \ + dw_gtk_scrolled_frame.$(OBJEXT) \ + dw_gtk_scrolled_window.$(OBJEXT) dw_gtk_viewport.$(OBJEXT) \ + dw_hruler.$(OBJEXT) dw_image.$(OBJEXT) dw_list_item.$(OBJEXT) \ + dw_marshal.$(OBJEXT) dw_page.$(OBJEXT) dw_style.$(OBJEXT) \ + dw_table.$(OBJEXT) dw_tooltip.$(OBJEXT) dw_widget.$(OBJEXT) \ + findtext.$(OBJEXT) web.$(OBJEXT) progressbar.$(OBJEXT) \ + dillo.$(OBJEXT) bookmark.$(OBJEXT) dicache.$(OBJEXT) \ + dns.$(OBJEXT) gif.$(OBJEXT) jpeg.$(OBJEXT) png.$(OBJEXT) \ + html.$(OBJEXT) image.$(OBJEXT) misc.$(OBJEXT) \ + interface.$(OBJEXT) history.$(OBJEXT) nav.$(OBJEXT) \ + plain.$(OBJEXT) menu.$(OBJEXT) prefs.$(OBJEXT) colors.$(OBJEXT) \ + bitvec.$(OBJEXT) klist.$(OBJEXT) url.$(OBJEXT) \ + cookies.$(OBJEXT) +dillo_OBJECTS = $(am_dillo_OBJECTS) +dillo_DEPENDENCIES = IO/libDio.a +dillo_LDFLAGS = + +DEFS = -DHAVE_CONFIG_H +DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) +CPPFLAGS = -I/usr/local/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include +LDFLAGS = -L/usr/local/lib -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 +LIBS = -lpng -lz -lpthread +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +DEP_FILES = ./$(DEPDIR)/bitvec.Po ./$(DEPDIR)/bookmark.Po \ + ./$(DEPDIR)/cache.Po ./$(DEPDIR)/chain.Po \ + ./$(DEPDIR)/colors.Po ./$(DEPDIR)/commands.Po \ + ./$(DEPDIR)/cookies.Po ./$(DEPDIR)/dicache.Po \ + ./$(DEPDIR)/dillo.Po ./$(DEPDIR)/dns.Po \ + ./$(DEPDIR)/dw.Po ./$(DEPDIR)/dw_aligned_page.Po \ + ./$(DEPDIR)/dw_bullet.Po ./$(DEPDIR)/dw_button.Po \ + ./$(DEPDIR)/dw_container.Po \ + ./$(DEPDIR)/dw_embed_gtk.Po \ + ./$(DEPDIR)/dw_ext_iterator.Po \ + ./$(DEPDIR)/dw_gtk_scrolled_frame.Po \ + ./$(DEPDIR)/dw_gtk_scrolled_window.Po \ + ./$(DEPDIR)/dw_gtk_viewport.Po \ + ./$(DEPDIR)/dw_hruler.Po ./$(DEPDIR)/dw_image.Po \ + ./$(DEPDIR)/dw_list_item.Po \ + ./$(DEPDIR)/dw_marshal.Po ./$(DEPDIR)/dw_page.Po \ + ./$(DEPDIR)/dw_style.Po ./$(DEPDIR)/dw_table.Po \ + ./$(DEPDIR)/dw_tooltip.Po ./$(DEPDIR)/dw_widget.Po \ + ./$(DEPDIR)/findtext.Po ./$(DEPDIR)/gif.Po \ + ./$(DEPDIR)/history.Po ./$(DEPDIR)/html.Po \ + ./$(DEPDIR)/image.Po ./$(DEPDIR)/interface.Po \ + ./$(DEPDIR)/jpeg.Po ./$(DEPDIR)/klist.Po \ + ./$(DEPDIR)/menu.Po ./$(DEPDIR)/misc.Po \ + ./$(DEPDIR)/nav.Po ./$(DEPDIR)/plain.Po \ + ./$(DEPDIR)/png.Po ./$(DEPDIR)/prefs.Po \ + ./$(DEPDIR)/progressbar.Po ./$(DEPDIR)/url.Po \ + ./$(DEPDIR)/web.Po +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +CFLAGS = -g -O2 -D_REENTRANT -D_THREAD_SAFE -Wall -Waggregate-return -DENABLE_IPV6 +DIST_SOURCES = $(dillo_SOURCES) + +RECURSIVE_TARGETS = info-recursive dvi-recursive install-info-recursive \ + uninstall-info-recursive all-recursive install-data-recursive \ + install-exec-recursive installdirs-recursive install-recursive \ + uninstall-recursive check-recursive installcheck-recursive +DIST_COMMON = Makefile.am Makefile.in +DIST_SUBDIRS = $(SUBDIRS) +SOURCES = $(dillo_SOURCES) + +all: all-recursive + +.SUFFIXES: +.SUFFIXES: .c .o .obj +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) +binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(DESTDIR)$(bindir) + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ + if test -f $$p \ + ; then \ + f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ + echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f"; \ + $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f; \ + else :; fi; \ + done + +uninstall-binPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ + echo " rm -f $(DESTDIR)$(bindir)/$$f"; \ + rm -f $(DESTDIR)$(bindir)/$$f; \ + done + +clean-binPROGRAMS: + -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) +dillo$(EXEEXT): $(dillo_OBJECTS) $(dillo_DEPENDENCIES) + @rm -f dillo$(EXEEXT) + $(LINK) $(dillo_LDFLAGS) $(dillo_OBJECTS) $(dillo_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) core *.core + +distclean-compile: + -rm -f *.tab.c + +include ./$(DEPDIR)/bitvec.Po +include ./$(DEPDIR)/bookmark.Po +include ./$(DEPDIR)/cache.Po +include ./$(DEPDIR)/chain.Po +include ./$(DEPDIR)/colors.Po +include ./$(DEPDIR)/commands.Po +include ./$(DEPDIR)/cookies.Po +include ./$(DEPDIR)/dicache.Po +include ./$(DEPDIR)/dillo.Po +include ./$(DEPDIR)/dns.Po +include ./$(DEPDIR)/dw.Po +include ./$(DEPDIR)/dw_aligned_page.Po +include ./$(DEPDIR)/dw_bullet.Po +include ./$(DEPDIR)/dw_button.Po +include ./$(DEPDIR)/dw_container.Po +include ./$(DEPDIR)/dw_embed_gtk.Po +include ./$(DEPDIR)/dw_ext_iterator.Po +include ./$(DEPDIR)/dw_gtk_scrolled_frame.Po +include ./$(DEPDIR)/dw_gtk_scrolled_window.Po +include ./$(DEPDIR)/dw_gtk_viewport.Po +include ./$(DEPDIR)/dw_hruler.Po +include ./$(DEPDIR)/dw_image.Po +include ./$(DEPDIR)/dw_list_item.Po +include ./$(DEPDIR)/dw_marshal.Po +include ./$(DEPDIR)/dw_page.Po +include ./$(DEPDIR)/dw_style.Po +include ./$(DEPDIR)/dw_table.Po +include ./$(DEPDIR)/dw_tooltip.Po +include ./$(DEPDIR)/dw_widget.Po +include ./$(DEPDIR)/findtext.Po +include ./$(DEPDIR)/gif.Po +include ./$(DEPDIR)/history.Po +include ./$(DEPDIR)/html.Po +include ./$(DEPDIR)/image.Po +include ./$(DEPDIR)/interface.Po +include ./$(DEPDIR)/jpeg.Po +include ./$(DEPDIR)/klist.Po +include ./$(DEPDIR)/menu.Po +include ./$(DEPDIR)/misc.Po +include ./$(DEPDIR)/nav.Po +include ./$(DEPDIR)/plain.Po +include ./$(DEPDIR)/png.Po +include ./$(DEPDIR)/prefs.Po +include ./$(DEPDIR)/progressbar.Po +include ./$(DEPDIR)/url.Po +include ./$(DEPDIR)/web.Po + +distclean-depend: + -rm -rf ./$(DEPDIR) + +.c.o: + source='$<' object='$@' libtool=no \ + depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' \ + $(CCDEPMODE) $(depcomp) \ + $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$< + +.c.obj: + source='$<' object='$@' libtool=no \ + depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' \ + $(CCDEPMODE) $(depcomp) \ + $(COMPILE) -c `cygpath -w $<` +CCDEPMODE = depmode=gcc3 +uninstall-info-am: + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. +$(RECURSIVE_TARGETS): + @set fnord $$MAKEFLAGS; amf=$$2; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +mostlyclean-recursive clean-recursive distclean-recursive \ +maintainer-clean-recursive: + @set fnord $$MAKEFLAGS; amf=$$2; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ + done; \ + rev="$$rev ."; \ + target=`echo $@ | sed s/-recursive//`; \ + for subdir in $$rev; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + done + +ETAGS = etags +ETAGSFLAGS = + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + mkid -fID $$unique + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + fi; \ + done; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(ETAGS_ARGS)$$tags$$unique" \ + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + +top_distdir = .. +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) + +distdir: $(DISTFILES) + @list='$(DISTFILES)'; for file in $$list; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ + if test -d $$d/$$file; then \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" \ + distdir=../$(distdir)/$$subdir \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile $(PROGRAMS) +installdirs: installdirs-recursive +installdirs-am: + $(mkinstalldirs) $(DESTDIR)$(bindir) + +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -rm -f Makefile $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-binPROGRAMS clean-generic mostlyclean-am + +distclean: distclean-recursive + +distclean-am: clean-am distclean-compile distclean-depend \ + distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-exec-am: install-binPROGRAMS + +install-info: install-info-recursive + +install-man: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-compile mostlyclean-generic + +uninstall-am: uninstall-binPROGRAMS uninstall-info-am + +uninstall-info: uninstall-info-recursive + +.PHONY: $(RECURSIVE_TARGETS) GTAGS all all-am check check-am clean \ + clean-binPROGRAMS clean-generic clean-recursive distclean \ + distclean-compile distclean-depend distclean-generic \ + distclean-recursive distclean-tags distdir dvi dvi-am \ + dvi-recursive info info-am info-recursive install install-am \ + install-binPROGRAMS install-data install-data-am \ + install-data-recursive install-exec install-exec-am \ + install-exec-recursive install-info install-info-am \ + install-info-recursive install-man install-recursive \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am installdirs-recursive maintainer-clean \ + maintainer-clean-generic maintainer-clean-recursive mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-recursive \ + tags tags-recursive uninstall uninstall-am \ + uninstall-binPROGRAMS uninstall-info-am \ + uninstall-info-recursive uninstall-recursive + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -urN dillo-0.6.6/src/Makefile.am dillo2-0.6.6/src/Makefile.am --- dillo-0.6.6/src/Makefile.am 2002-05-27 15:27:14.000000000 -0600 +++ dillo2-0.6.6/src/Makefile.am 2003-04-21 12:35:28.000000000 -0600 @@ -25,12 +25,12 @@ dw_container.h \ dw_embed_gtk.c \ dw_embed_gtk.h \ + dw_ext_iterator.h \ + dw_ext_iterator.c \ dw_gtk_scrolled_frame.c \ dw_gtk_scrolled_frame.h \ dw_gtk_scrolled_window.c \ dw_gtk_scrolled_window.h \ - dw_gtk_statuslabel.c \ - dw_gtk_statuslabel.h \ dw_gtk_viewport.c \ dw_gtk_viewport.h \ dw_hruler.c \ @@ -99,4 +99,4 @@ list.h \ pixmaps.h -EXTRA_DIST = pixmaps_old.h chg srch +EXTRA_DIST = pixmaps_old.h dw_marshal.sh chg srch diff -urN dillo-0.6.6/src/Makefile.in dillo2-0.6.6/src/Makefile.in --- dillo-0.6.6/src/Makefile.in 2002-05-29 15:02:56.000000000 -0600 +++ dillo2-0.6.6/src/Makefile.in 2003-04-21 12:35:29.000000000 -0600 @@ -1,6 +1,8 @@ -# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am +# Makefile.in generated by automake 1.6.3 from Makefile.am. +# @configure_input@ -# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -10,7 +12,7 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. - +@SET_MAKE@ SHELL = @SHELL@ srcdir = @srcdir@ @@ -31,13 +33,9 @@ mandir = @mandir@ includedir = @includedir@ oldincludedir = /usr/include - -DESTDIR = - pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ - top_builddir = .. ACLOCAL = @ACLOCAL@ @@ -45,142 +43,327 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_HEADER = $(INSTALL_DATA) transform = @program_transform_name@ - NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : + +EXEEXT = @EXEEXT@ +OBJEXT = @OBJEXT@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +AMTAR = @AMTAR@ +AWK = @AWK@ CC = @CC@ -GTK_CFLAGS = @GTK_CFLAGS@ -GTK_CONFIG = @GTK_CONFIG@ -GTK_LIBS = @GTK_LIBS@ +DEPDIR = @DEPDIR@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LIBJPEG_LIB = @LIBJPEG_LIB@ -MAKEINFO = @MAKEINFO@ PACKAGE = @PACKAGE@ +PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ +STRIP = @STRIP@ VERSION = @VERSION@ -datadir = @datadir@ +am__include = @am__include@ +am__quote = @am__quote@ +install_sh = @install_sh@ src = @src@ - SUBDIRS = IO bin_PROGRAMS = dillo dillo_LDADD = IO/libDio.a @LIBJPEG_LIB@ -dillo_SOURCES = acconfig.h chain.h chain.c commands.c commands.h cache.c cache.h debug.h dw.h dw.c dw_aligned_page.c dw_aligned_page.h dw_bullet.c dw_bullet.h dw_button.c dw_button.h dw_container.c dw_container.h dw_embed_gtk.c dw_embed_gtk.h dw_gtk_scrolled_frame.c dw_gtk_scrolled_frame.h dw_gtk_scrolled_window.c dw_gtk_scrolled_window.h dw_gtk_statuslabel.c dw_gtk_statuslabel.h dw_gtk_viewport.c dw_gtk_viewport.h dw_hruler.c dw_hruler.h dw_image.c dw_image.h dw_list_item.c dw_list_item.h dw_marshal.c dw_marshal.h dw_page.c dw_page.h dw_style.c dw_style.h dw_table.c dw_table.h dw_tooltip.c dw_tooltip.h dw_widget.c dw_widget.h findtext.c findtext.h web.c web.h progressbar.c progressbar.h dillo.c dillo.h bookmark.c bookmark.h browser.h dicache.c dicache.h dns.c dns.h gif.c jpeg.c png.c html.c html.h image.c image.h misc.c misc.h interface.h interface.c history.c history.h nav.c nav.h plain.c menu.c menu.h prefs.c prefs.h colors.c colors.h bitvec.c bitvec.h klist.c klist.h url.c url.h cookies.c cookies.h list.h pixmaps.h +dillo_SOURCES = \ + acconfig.h \ + chain.h \ + chain.c \ + commands.c \ + commands.h \ + cache.c \ + cache.h \ + debug.h \ + dw.h \ + dw.c \ + dw_aligned_page.c \ + dw_aligned_page.h \ + dw_bullet.c \ + dw_bullet.h \ + dw_button.c \ + dw_button.h \ + dw_container.c \ + dw_container.h \ + dw_embed_gtk.c \ + dw_embed_gtk.h \ + dw_ext_iterator.h \ + dw_ext_iterator.c \ + dw_gtk_scrolled_frame.c \ + dw_gtk_scrolled_frame.h \ + dw_gtk_scrolled_window.c \ + dw_gtk_scrolled_window.h \ + dw_gtk_viewport.c \ + dw_gtk_viewport.h \ + dw_hruler.c \ + dw_hruler.h \ + dw_image.c \ + dw_image.h \ + dw_list_item.c \ + dw_list_item.h \ + dw_marshal.c \ + dw_marshal.h \ + dw_page.c \ + dw_page.h \ + dw_style.c \ + dw_style.h \ + dw_table.c \ + dw_table.h \ + dw_tooltip.c \ + dw_tooltip.h \ + dw_widget.c \ + dw_widget.h \ + findtext.c \ + findtext.h \ + web.c \ + web.h \ + progressbar.c \ + progressbar.h \ + dillo.c \ + dillo.h \ + bookmark.c \ + bookmark.h \ + browser.h \ + dicache.c \ + dicache.h \ + dns.c \ + dns.h \ + gif.c \ + jpeg.c \ + png.c \ + html.c \ + html.h \ + image.c \ + image.h \ + misc.c \ + misc.h \ + interface.h \ + interface.c \ + history.c \ + history.h \ + nav.c \ + nav.h \ + plain.c \ + menu.c \ + menu.h \ + prefs.c \ + prefs.h \ + colors.c \ + colors.h \ + bitvec.c \ + bitvec.h \ + klist.c \ + klist.h \ + url.c \ + url.h \ + cookies.c \ + cookies.h \ + list.h \ + pixmaps.h -EXTRA_DIST = pixmaps_old.h chg srch +EXTRA_DIST = pixmaps_old.h dw_marshal.sh chg srch +subdir = src mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = ../config.h -CONFIG_CLEAN_FILES = -PROGRAMS = $(bin_PROGRAMS) - +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +bin_PROGRAMS = dillo$(EXEEXT) +PROGRAMS = $(bin_PROGRAMS) + +am_dillo_OBJECTS = chain.$(OBJEXT) commands.$(OBJEXT) cache.$(OBJEXT) \ + dw.$(OBJEXT) dw_aligned_page.$(OBJEXT) dw_bullet.$(OBJEXT) \ + dw_button.$(OBJEXT) dw_container.$(OBJEXT) \ + dw_embed_gtk.$(OBJEXT) dw_ext_iterator.$(OBJEXT) \ + dw_gtk_scrolled_frame.$(OBJEXT) \ + dw_gtk_scrolled_window.$(OBJEXT) dw_gtk_viewport.$(OBJEXT) \ + dw_hruler.$(OBJEXT) dw_image.$(OBJEXT) dw_list_item.$(OBJEXT) \ + dw_marshal.$(OBJEXT) dw_page.$(OBJEXT) dw_style.$(OBJEXT) \ + dw_table.$(OBJEXT) dw_tooltip.$(OBJEXT) dw_widget.$(OBJEXT) \ + findtext.$(OBJEXT) web.$(OBJEXT) progressbar.$(OBJEXT) \ + dillo.$(OBJEXT) bookmark.$(OBJEXT) dicache.$(OBJEXT) \ + dns.$(OBJEXT) gif.$(OBJEXT) jpeg.$(OBJEXT) png.$(OBJEXT) \ + html.$(OBJEXT) image.$(OBJEXT) misc.$(OBJEXT) \ + interface.$(OBJEXT) history.$(OBJEXT) nav.$(OBJEXT) \ + plain.$(OBJEXT) menu.$(OBJEXT) prefs.$(OBJEXT) colors.$(OBJEXT) \ + bitvec.$(OBJEXT) klist.$(OBJEXT) url.$(OBJEXT) \ + cookies.$(OBJEXT) +dillo_OBJECTS = $(am_dillo_OBJECTS) +dillo_DEPENDENCIES = IO/libDio.a +dillo_LDFLAGS = -DEFS = @DEFS@ -I. -I$(srcdir) -I.. +DEFS = @DEFS@ +DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ -dillo_OBJECTS = chain.o commands.o cache.o dw.o dw_aligned_page.o \ -dw_bullet.o dw_button.o dw_container.o dw_embed_gtk.o \ -dw_gtk_scrolled_frame.o dw_gtk_scrolled_window.o dw_gtk_statuslabel.o \ -dw_gtk_viewport.o dw_hruler.o dw_image.o dw_list_item.o dw_marshal.o \ -dw_page.o dw_style.o dw_table.o dw_tooltip.o dw_widget.o findtext.o \ -web.o progressbar.o dillo.o bookmark.o dicache.o dns.o gif.o jpeg.o \ -png.o html.o image.o misc.o interface.o history.o nav.o plain.o menu.o \ -prefs.o colors.o bitvec.o klist.o url.o cookies.o -dillo_DEPENDENCIES = IO/libDio.a -dillo_LDFLAGS = -CFLAGS = @CFLAGS@ -COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/bitvec.Po ./$(DEPDIR)/bookmark.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/cache.Po ./$(DEPDIR)/chain.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/colors.Po ./$(DEPDIR)/commands.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/cookies.Po ./$(DEPDIR)/dicache.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dillo.Po ./$(DEPDIR)/dns.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw.Po ./$(DEPDIR)/dw_aligned_page.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_bullet.Po ./$(DEPDIR)/dw_button.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_container.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_embed_gtk.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_ext_iterator.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_gtk_scrolled_frame.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_gtk_scrolled_window.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_gtk_viewport.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_hruler.Po ./$(DEPDIR)/dw_image.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_list_item.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_marshal.Po ./$(DEPDIR)/dw_page.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_style.Po ./$(DEPDIR)/dw_table.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/dw_tooltip.Po ./$(DEPDIR)/dw_widget.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/findtext.Po ./$(DEPDIR)/gif.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/history.Po ./$(DEPDIR)/html.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/image.Po ./$(DEPDIR)/interface.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/jpeg.Po ./$(DEPDIR)/klist.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/menu.Po ./$(DEPDIR)/misc.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/nav.Po ./$(DEPDIR)/plain.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/png.Po ./$(DEPDIR)/prefs.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/progressbar.Po ./$(DEPDIR)/url.Po \ +@AMDEP_TRUE@ ./$(DEPDIR)/web.Po +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ -DIST_COMMON = Makefile.am Makefile.in - - -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +CFLAGS = @CFLAGS@ +DIST_SOURCES = $(dillo_SOURCES) -TAR = tar -GZIP_ENV = --best -DEP_FILES = .deps/bitvec.P .deps/bookmark.P .deps/cache.P .deps/chain.P \ -.deps/colors.P .deps/commands.P .deps/cookies.P .deps/dicache.P \ -.deps/dillo.P .deps/dns.P .deps/dw.P .deps/dw_aligned_page.P \ -.deps/dw_bullet.P .deps/dw_button.P .deps/dw_container.P \ -.deps/dw_embed_gtk.P .deps/dw_gtk_scrolled_frame.P \ -.deps/dw_gtk_scrolled_window.P .deps/dw_gtk_statuslabel.P \ -.deps/dw_gtk_viewport.P .deps/dw_hruler.P .deps/dw_image.P \ -.deps/dw_list_item.P .deps/dw_marshal.P .deps/dw_page.P \ -.deps/dw_style.P .deps/dw_table.P .deps/dw_tooltip.P .deps/dw_widget.P \ -.deps/findtext.P .deps/gif.P .deps/history.P .deps/html.P .deps/image.P \ -.deps/interface.P .deps/jpeg.P .deps/klist.P .deps/menu.P .deps/misc.P \ -.deps/nav.P .deps/plain.P .deps/png.P .deps/prefs.P .deps/progressbar.P \ -.deps/url.P .deps/web.P +RECURSIVE_TARGETS = info-recursive dvi-recursive install-info-recursive \ + uninstall-info-recursive all-recursive install-data-recursive \ + install-exec-recursive installdirs-recursive install-recursive \ + uninstall-recursive check-recursive installcheck-recursive +DIST_COMMON = Makefile.am Makefile.in +DIST_SUBDIRS = $(SUBDIRS) SOURCES = $(dillo_SOURCES) -OBJECTS = $(dillo_OBJECTS) - -all: all-redirect -.SUFFIXES: -.SUFFIXES: .S .c .o .s -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile - -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status +all: all-recursive -mostlyclean-binPROGRAMS: - -clean-binPROGRAMS: - -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) - -distclean-binPROGRAMS: - -maintainer-clean-binPROGRAMS: - +.SUFFIXES: +.SUFFIXES: .c .o .obj +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) +binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) $(mkinstalldirs) $(DESTDIR)$(bindir) @list='$(bin_PROGRAMS)'; for p in $$list; do \ - if test -f $$p; then \ - echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ - $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ + p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ + if test -f $$p \ + ; then \ + f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ + echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f"; \ + $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f; \ else :; fi; \ done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) - list='$(bin_PROGRAMS)'; for p in $$list; do \ - rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ + echo " rm -f $(DESTDIR)$(bindir)/$$f"; \ + rm -f $(DESTDIR)$(bindir)/$$f; \ done -.s.o: - $(COMPILE) -c $< - -.S.o: - $(COMPILE) -c $< +clean-binPROGRAMS: + -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) +dillo$(EXEEXT): $(dillo_OBJECTS) $(dillo_DEPENDENCIES) + @rm -f dillo$(EXEEXT) + $(LINK) $(dillo_LDFLAGS) $(dillo_OBJECTS) $(dillo_LDADD) $(LIBS) mostlyclean-compile: - -rm -f *.o core *.core - -clean-compile: + -rm -f *.$(OBJEXT) core *.core distclean-compile: -rm -f *.tab.c -maintainer-clean-compile: +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bitvec.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bookmark.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cache.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chain.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/colors.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/commands.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cookies.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dicache.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dillo.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dns.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_aligned_page.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_bullet.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_button.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_container.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_embed_gtk.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_ext_iterator.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_gtk_scrolled_frame.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_gtk_scrolled_window.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_gtk_viewport.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_hruler.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_image.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_list_item.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_marshal.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_page.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_style.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_table.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_tooltip.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dw_widget.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/findtext.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gif.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/history.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/html.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/image.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/interface.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jpeg.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/klist.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/menu.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/misc.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nav.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/plain.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/png.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/prefs.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/progressbar.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/url.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/web.Po@am__quote@ -dillo: $(dillo_OBJECTS) $(dillo_DEPENDENCIES) - @rm -f dillo - $(LINK) $(dillo_LDFLAGS) $(dillo_OBJECTS) $(dillo_LDADD) $(LIBS) +distclean-depend: + -rm -rf ./$(DEPDIR) + +.c.o: +@AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ +@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$< + +.c.obj: +@AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ +@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(COMPILE) -c `cygpath -w $<` +CCDEPMODE = @CCDEPMODE@ +uninstall-info-am: # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -188,13 +371,8 @@ # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. - -@SET_MAKE@ - -all-recursive install-data-recursive install-exec-recursive \ -installdirs-recursive install-recursive uninstall-recursive \ -check-recursive installcheck-recursive info-recursive dvi-recursive: - @set fnord $(MAKEFLAGS); amf=$$2; \ +$(RECURSIVE_TARGETS): + @set fnord $$MAKEFLAGS; amf=$$2; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ @@ -214,13 +392,18 @@ mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive: - @set fnord $(MAKEFLAGS); amf=$$2; \ + @set fnord $$MAKEFLAGS; amf=$$2; \ dot_seen=no; \ - rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ - rev="$$subdir $$rev"; \ - test "$$subdir" = "." && dot_seen=yes; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + rev=''; for subdir in $$list; do \ + if test "$$subdir" = "."; then :; else \ + rev="$$subdir $$rev"; \ + fi; \ done; \ - test "$$dot_seen" = "no" && rev=". $$rev"; \ + rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ @@ -237,181 +420,171 @@ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done +ETAGS = etags +ETAGSFLAGS = + tags: TAGS -ID: $(HEADERS) $(SOURCES) $(LISP) - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ - here=`pwd` && cd $(srcdir) \ - && mkid -f$$here/ID $$unique $(LISP) + mkid -fID $$unique -TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ + if test "$$subdir" = .; then :; else \ test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ - fi; \ + fi; \ done; \ - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ - test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ - || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) - -mostlyclean-tags: - -clean-tags: + test -z "$(ETAGS_ARGS)$$tags$$unique" \ + || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here distclean-tags: - -rm -f TAGS ID + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -maintainer-clean-tags: - -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) - -subdir = src +top_distdir = .. +distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) distdir: $(DISTFILES) - here=`cd $(top_builddir) && pwd`; \ - top_distdir=`cd $(top_distdir) && pwd`; \ - distdir=`cd $(distdir) && pwd`; \ - cd $(top_srcdir) \ - && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu src/Makefile - @for file in $(DISTFILES); do \ - d=$(srcdir); \ + @list='$(DISTFILES)'; for file in $$list; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkinstalldirs) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ if test -d $$d/$$file; then \ - cp -pr $$d/$$file $(distdir)/$$file; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ fi; \ done - for subdir in $(SUBDIRS); do \ + list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d $(distdir)/$$subdir \ || mkdir $(distdir)/$$subdir \ || exit 1; \ - chmod 777 $(distdir)/$$subdir; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" \ + distdir=../$(distdir)/$$subdir \ + distdir) \ || exit 1; \ fi; \ done - -DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) - --include $(DEP_FILES) - -mostlyclean-depend: - -clean-depend: - -distclean-depend: - -rm -rf .deps - -maintainer-clean-depend: - -%.o: %.c - @echo '$(COMPILE) -c $<'; \ - $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-cp .deps/$(*F).pp .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm .deps/$(*F).pp - -%.lo: %.c - @echo '$(LTCOMPILE) -c $<'; \ - $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $< - @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*F).pp > .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm -f .deps/$(*F).pp -info-am: -info: info-recursive -dvi-am: -dvi: dvi-recursive check-am: all-am check: check-recursive -installcheck-am: -installcheck: installcheck-recursive -install-exec-am: install-binPROGRAMS -install-exec: install-exec-recursive +all-am: Makefile $(PROGRAMS) +installdirs: installdirs-recursive +installdirs-am: + $(mkinstalldirs) $(DESTDIR)$(bindir) -install-data-am: +install: install-recursive +install-exec: install-exec-recursive install-data: install-data-recursive +uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am -install: install-recursive -uninstall-am: uninstall-binPROGRAMS -uninstall: uninstall-recursive -all-am: Makefile $(PROGRAMS) -all-redirect: all-recursive -install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install -installdirs: installdirs-recursive -installdirs-am: - $(mkinstalldirs) $(DESTDIR)$(bindir) - +installcheck: installcheck-recursive +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -rm -f Makefile $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log stamp-h stamp-h[0-9]* maintainer-clean-generic: -mostlyclean-am: mostlyclean-binPROGRAMS mostlyclean-compile \ - mostlyclean-tags mostlyclean-depend mostlyclean-generic + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive -mostlyclean: mostlyclean-recursive +clean-am: clean-binPROGRAMS clean-generic mostlyclean-am -clean-am: clean-binPROGRAMS clean-compile clean-tags clean-depend \ - clean-generic mostlyclean-am +distclean: distclean-recursive -clean: clean-recursive +distclean-am: clean-am distclean-compile distclean-depend \ + distclean-generic distclean-tags -distclean-am: distclean-binPROGRAMS distclean-compile distclean-tags \ - distclean-depend distclean-generic clean-am +dvi: dvi-recursive -distclean: distclean-recursive +dvi-am: -maintainer-clean-am: maintainer-clean-binPROGRAMS \ - maintainer-clean-compile maintainer-clean-tags \ - maintainer-clean-depend maintainer-clean-generic \ - distclean-am - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." +info: info-recursive + +info-am: + +install-data-am: + +install-exec-am: install-binPROGRAMS + +install-info: install-info-recursive + +install-man: + +installcheck-am: maintainer-clean: maintainer-clean-recursive -.PHONY: mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \ -maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \ -mostlyclean-compile distclean-compile clean-compile \ -maintainer-clean-compile install-data-recursive \ -uninstall-data-recursive install-exec-recursive \ -uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ -all-recursive check-recursive installcheck-recursive info-recursive \ -dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ -maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ -distclean-tags clean-tags maintainer-clean-tags distdir \ -mostlyclean-depend distclean-depend clean-depend \ -maintainer-clean-depend info-am info dvi-am dvi check check-am \ -installcheck-am installcheck install-exec-am install-exec \ -install-data-am install-data install-am install uninstall-am uninstall \ -all-redirect all-am all installdirs-am installdirs mostlyclean-generic \ -distclean-generic clean-generic maintainer-clean-generic clean \ -mostlyclean distclean maintainer-clean +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-compile mostlyclean-generic + +uninstall-am: uninstall-binPROGRAMS uninstall-info-am + +uninstall-info: uninstall-info-recursive +.PHONY: $(RECURSIVE_TARGETS) GTAGS all all-am check check-am clean \ + clean-binPROGRAMS clean-generic clean-recursive distclean \ + distclean-compile distclean-depend distclean-generic \ + distclean-recursive distclean-tags distdir dvi dvi-am \ + dvi-recursive info info-am info-recursive install install-am \ + install-binPROGRAMS install-data install-data-am \ + install-data-recursive install-exec install-exec-am \ + install-exec-recursive install-info install-info-am \ + install-info-recursive install-man install-recursive \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am installdirs-recursive maintainer-clean \ + maintainer-clean-generic maintainer-clean-recursive mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-recursive \ + tags tags-recursive uninstall uninstall-am \ + uninstall-binPROGRAMS uninstall-info-am \ + uninstall-info-recursive uninstall-recursive # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -urN dillo-0.6.6/src/bookmark.c dillo2-0.6.6/src/bookmark.c --- dillo-0.6.6/src/bookmark.c 2002-04-09 19:04:54.000000000 -0600 +++ dillo2-0.6.6/src/bookmark.c 2003-04-21 12:35:30.000000000 -0600 @@ -93,13 +93,14 @@ /* * ? */ -static void Bookmarks_goto_bookmark(GtkWidget *widget, CallbackInfo *CbInfo) +static gboolean Bookmarks_goto_bookmark(GtkWidget *widget, CallbackInfo *CbInfo) { if (CbInfo->index >= num_bookmarks) { g_warning("bookmark not found!\n"); - return; + return FALSE; } a_Nav_push(CbInfo->bw, bookmarks[CbInfo->index].url); + return TRUE; } /* @@ -117,8 +118,8 @@ CbInfo->index = index; /* accelerator goes here */ - gtk_signal_connect(GTK_OBJECT (menuitem), "activate", - (GtkSignalFunc)Bookmarks_goto_bookmark, CbInfo); + g_signal_connect(G_OBJECT (menuitem), "activate", + G_CALLBACK(Bookmarks_goto_bookmark), CbInfo); } /* @@ -260,11 +261,12 @@ */ static void Bookmarks_load_to_menu(FILE *fp) { - gchar *title, *url_str; + gchar *title, *utf8_title, *url_str; DilloUrl *url; char buf[4096]; gint i = 0; GtkWidget *menuitem; + GError *err = NULL; rewind(fp); @@ -284,13 +286,19 @@ continue; } + /* Temporary solution, in future bookmarks.html should be UTF8 */ + utf8_title = g_convert(title, -1, "utf8", "iso8859-1", NULL, NULL, &err); + if (err != NULL) g_warning ("Bookmarks_load_to_menu(): %s\n", + err->message); + g_free(title); + url = a_Url_new(url_str, NULL, 0, 0); - menuitem = Bookmarks_insert(title, url); + menuitem = Bookmarks_insert(utf8_title, url); /* for (i = 0; i < num_bw; i++) * Bookmarks_add_to_menu(browser_window[i], menuitem); */ Bookmarks_add_to_menu(browser_window[0], menuitem, i); g_free(url_str); - g_free(title); + g_free(utf8_title); a_Url_free(url); i++; } diff -urN dillo-0.6.6/src/browser.h dillo2-0.6.6/src/browser.h --- dillo-0.6.6/src/browser.h 2002-03-26 16:26:06.000000000 -0700 +++ dillo2-0.6.6/src/browser.h 2003-04-21 12:35:30.000000000 -0600 @@ -117,7 +117,7 @@ gboolean nav_expecting; /* The tag for the idle function that sets button sensitivity. */ - gint sens_idle_tag; + guint sens_idle_tag; }; diff -urN dillo-0.6.6/src/cache.c dillo2-0.6.6/src/cache.c --- dillo-0.6.6/src/cache.c 2002-04-09 19:23:56.000000000 -0600 +++ dillo2-0.6.6/src/cache.c 2003-04-21 12:35:32.000000000 -0600 @@ -44,6 +44,7 @@ typedef struct { const DilloUrl *Url; /* Cached Url. Url is used as a primary Key */ const char *Type; /* MIME type string */ + char *Encoding; GString *Header; /* HTTP header */ const DilloUrl *Location; /* New URI for redirects */ void *Data; /* Pointer to raw data */ @@ -135,6 +136,7 @@ NewClient->Key = ClientKey; NewClient->Url = Url; NewClient->Buf = NULL; + NewClient->Encoding = NULL; NewClient->Callback = Callback; NewClient->CbData = CbData; NewClient->Web = Web; @@ -184,6 +186,7 @@ if ( Client ) { ClientQueue = g_slist_remove(ClientQueue, Client); a_Web_free(Client->Web); + g_free(Client->Encoding); g_free(Client); } } @@ -198,6 +201,7 @@ { NewEntry->Url = a_Url_dup(Url); NewEntry->Type = NULL; + NewEntry->Encoding = NULL; NewEntry->Header = g_string_new(""); NewEntry->Location = NULL; NewEntry->Data = NULL; @@ -239,6 +243,7 @@ { a_Url_free((DilloUrl *)entry->Url); g_free((gchar *)entry->Type); + g_free(entry->Encoding); g_string_free(entry->Header, TRUE); a_Url_free((DilloUrl *)entry->Location); g_free(entry->Data); @@ -651,6 +656,17 @@ if ( (Type = Cache_parse_field(header, "Content-Type")) == NULL ) { DEBUG_HTTP_MSG("Server didn't send Content-Type in header.\n"); Type = Cache_get_type_from_data(entry->Data, entry->ValidSize); + } else { + char *enc; + guint i; + + /* Look for a specified encoding */ + if ((enc = strstr(Type, "charset="))) { + for (i = 8; enc[i] != '\0' && enc[i] != ';'; i++) + ; + + entry->Encoding = g_strndup(enc + 8, i - 8); + } } entry->Type = Type; } @@ -842,6 +858,10 @@ EntryHasClients = TRUE; ClientWeb = Client->Web; /* It was a (void*) */ + /* Pass on the encoding */ + if (entry->Encoding && !Client->Encoding) + Client->Encoding = g_strdup(entry->Encoding); + /* For root URLs, clear the "expecting for reply..." message */ if (ClientWeb->flags & WEB_RootUrl && !(entry->Flags & CA_MsgErased)){ a_Interface_msg(ClientWeb->bw, ""); diff -urN dillo-0.6.6/src/cache.h dillo2-0.6.6/src/cache.h --- dillo-0.6.6/src/cache.h 2002-02-20 08:54:02.000000000 -0700 +++ dillo2-0.6.6/src/cache.h 2003-04-21 12:35:33.000000000 -0600 @@ -39,6 +39,7 @@ gint Key; /* Primary Key for this client */ const DilloUrl *Url; /* Pointer to a cache entry Url */ guchar *Buf; /* Pointer to cache-data */ + char *Encoding; /* A charset encoding obtained from the header */ guint BufSize; /* Valid size of cache-data */ CA_Callback_t Callback; /* Client function */ void *CbData; /* Client function data */ diff -urN dillo-0.6.6/src/commands.c dillo2-0.6.6/src/commands.c --- dillo-0.6.6/src/commands.c 2002-04-09 19:04:54.000000000 -0600 +++ dillo2-0.6.6/src/commands.c 2003-04-21 12:35:34.000000000 -0600 @@ -97,9 +97,11 @@ void a_Commands_viewsource_callback (GtkWidget *widget, gpointer client_data) { BrowserWindow *bw = (BrowserWindow *)client_data; - char *buf; - gint size, xsize, ysize; + gchar *buf, *utf8_buf; + gint size, xsize, ysize, written; GtkWidget *window, *box1, *button, *scrolled_window, *text; + GtkTextBuffer *buffer; + GError *err = NULL; if (bw->viewsource_window) gtk_widget_destroy (bw->viewsource_window); @@ -114,10 +116,6 @@ gtk_widget_set_usize (window, xsize, ysize); gtk_window_set_policy (GTK_WINDOW(window), TRUE, TRUE, FALSE); - gtk_signal_connect (GTK_OBJECT (window), "destroy", - GTK_SIGNAL_FUNC(gtk_widget_destroyed), - &bw->viewsource_window); - gtk_window_set_title (GTK_WINDOW (window), "View Source"); gtk_container_border_width (GTK_CONTAINER (window), 0); @@ -132,20 +130,24 @@ GTK_POLICY_ALWAYS); gtk_widget_show (scrolled_window); - text = gtk_text_new (NULL, NULL); - gtk_text_set_editable (GTK_TEXT (text), FALSE); + text = gtk_text_view_new (); + gtk_text_view_set_editable (GTK_TEXT_VIEW(text), FALSE); + gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW(text), GTK_WRAP_CHAR); gtk_container_add (GTK_CONTAINER (scrolled_window), text); gtk_widget_show (text); - gtk_text_freeze (GTK_TEXT (text)); + buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)); buf = a_Cache_url_read(a_History_get_url(NAV_TOP(bw)), &size); - gtk_text_insert (GTK_TEXT (text), NULL, NULL, NULL, buf, size); - gtk_text_thaw (GTK_TEXT (text)); + utf8_buf = g_convert(buf, size, "utf8", "iso8859-1", NULL, &written,&err); + if (err != NULL) g_warning ("a_Commands_viewsource_callback(): %s\n", + err->message); + gtk_text_buffer_set_text(buffer, utf8_buf, written); + g_free (utf8_buf); button = gtk_button_new_with_label ("close"); - gtk_signal_connect_object (GTK_OBJECT (button), "clicked", - GTK_SIGNAL_FUNC(gtk_widget_destroy), - GTK_OBJECT (window)); + g_signal_connect_object (G_OBJECT (button), "clicked", + G_CALLBACK(gtk_widget_destroy), + G_OBJECT(window), G_CONNECT_SWAPPED); gtk_box_pack_start (GTK_BOX (box1), button, FALSE, FALSE, 0); GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT); gtk_widget_grab_default (button); @@ -211,7 +213,7 @@ /* * Second handler for button-press-event in the toolbar */ -void a_Commands_navpress_callback(GtkWidget *widget, +gboolean a_Commands_navpress_callback(GtkWidget *widget, GdkEventButton *event, gpointer client_data) { @@ -231,22 +233,24 @@ bw->menu_popup.over_back = a_Menu_popup_history_new(bw, -1); gtk_menu_popup(GTK_MENU (bw->menu_popup.over_back), NULL, NULL, NULL, NULL, event->button, event->time); - + return TRUE; } else if (widget == bw->forw_button) { if (bw->menu_popup.over_forw) gtk_widget_destroy(bw->menu_popup.over_forw); bw->menu_popup.over_forw = a_Menu_popup_history_new(bw, +1); gtk_menu_popup(GTK_MENU (bw->menu_popup.over_forw), NULL, NULL, NULL, NULL, event->button, event->time); + return TRUE; } break; } + return FALSE; } /* * Second handler for button-press-event in history menus. */ -void a_Commands_historypress_callback(GtkWidget *widget, +gboolean a_Commands_historypress_callback(GtkWidget *widget, GdkEventButton *event, gpointer client_data) { @@ -256,15 +260,19 @@ case 1: /* Open link in the same bw */ a_Nav_jump_callback(widget, bw, 0); + return TRUE; break; case 2: /* Open link in a new bw */ a_Nav_jump_callback(widget, bw, 1); + return TRUE; break; case 3: /* Not used */ break; } + + return FALSE; } /* diff -urN dillo-0.6.6/src/commands.h dillo2-0.6.6/src/commands.h --- dillo-0.6.6/src/commands.h 2002-04-09 19:24:40.000000000 -0600 +++ dillo2-0.6.6/src/commands.h 2003-04-21 12:35:34.000000000 -0600 @@ -13,9 +13,9 @@ void a_Commands_findtext_callback (GtkWidget *widget, gpointer client_data); void a_Commands_print_callback (GtkWidget *widget, gpointer client_data); -void a_Commands_navpress_callback ( +gboolean a_Commands_navpress_callback ( GtkWidget *widget, GdkEventButton *event, gpointer client_data); -void a_Commands_historypress_callback( +gboolean a_Commands_historypress_callback( GtkWidget *widget, GdkEventButton *event, gpointer client_data); void a_Commands_back_callback (GtkWidget *widget, gpointer client_data); diff -urN dillo-0.6.6/src/cookies.c dillo2-0.6.6/src/cookies.c --- dillo-0.6.6/src/cookies.c 2002-05-27 14:47:49.000000000 -0600 +++ dillo2-0.6.6/src/cookies.c 2003-04-21 12:35:37.000000000 -0600 @@ -78,14 +78,13 @@ static FILE *Cookies_fopen(const char *file, gchar *init_str); static CookieControlAction Cookies_control_check(const DilloUrl *url); static CookieControlAction Cookies_control_check_domain(const char *domain); -static void Cookie_control_init(); +static int Cookie_control_init(); static void Cookies_parse_ports(CookieData_t *cookie, const char *port_str); static char *Cookies_build_ports_str(CookieData_t *cookie); /* * Return a file pointer. If the file doesn't exist, try to create it, * with the optional 'init_str' as its content. - * This function is either successful or exits Dillo. */ static FILE *Cookies_fopen(const char *filename, gchar *init_str) { @@ -124,6 +123,10 @@ } } +/* + * Initialize the cookies module + * (The 'disabled' variable is writable only within a_Cookies_init) + */ void a_Cookies_init() { CookieData_t *cookie; @@ -131,7 +134,14 @@ char *filename; char line[LINE_MAXLEN]; - Cookie_control_init(); + /* Default setting */ + disabled = TRUE; + + /* Read and parse the cookie control file (cookiesrc) */ + if (Cookie_control_init() != 0) { + DEBUG_MSG(10, "Disabling cookies.\n"); + return; + } /* Get a stream for the cookies file */ filename = a_Misc_prepend_user_home(".dillo/cookies"); @@ -139,8 +149,7 @@ g_free(filename); if (!file_stream) { - /* Can't open the file, so we disable cookies */ - disabled = TRUE; + DEBUG_MSG(10, "ERROR: Can't open ~/.dillo/cookies, disabling cookies\n"); return; } @@ -153,6 +162,8 @@ return; } + DEBUG_MSG(10, "Enabling cookies as from cookiesrc...\n"); + cookies = g_hash_table_new(g_str_hash, g_str_equal); /* Get all lines in the file */ @@ -976,9 +987,13 @@ /* - * Get the cookie control rules + * Get the cookie control rules (from cookiesrc). + * Return value: + * 0 = Parsed OK, with cookies enabled + * 1 = Parsed OK, with cookies disabled + * 2 = Can't open the control file */ -static void Cookie_control_init() +static int Cookie_control_init() { CookieControl cc; FILE *stream; @@ -987,6 +1002,7 @@ char domain[LINE_MAXLEN]; char rule[LINE_MAXLEN]; int i, j; + gboolean enabled = FALSE; /* Get a file pointer */ filename = a_Misc_prepend_user_home(".dillo/cookiesrc"); @@ -994,7 +1010,7 @@ g_free(filename); if (!stream) - return; + return 2; /* Get all lines in the file */ while (!feof(stream)) { @@ -1045,10 +1061,15 @@ a_List_add(ccontrol, num_ccontrol, num_ccontrol_max); ccontrol[num_ccontrol++] = cc; } + + if (cc.action != COOKIE_DENY) + enabled = TRUE; } } fclose(stream); + + return (enabled ? 0 : 1); } /* diff -urN dillo-0.6.6/src/dillo.c dillo2-0.6.6/src/dillo.c --- dillo-0.6.6/src/dillo.c 2002-03-18 08:02:50.000000000 -0700 +++ dillo2-0.6.6/src/dillo.c 2003-04-21 12:35:38.000000000 -0600 @@ -33,7 +33,6 @@ #include "dillo.h" #include "misc.h" -#include "dw_gtk_statuslabel.h" #include "nav.h" #include "history.h" #include "bookmark.h" @@ -68,7 +67,6 @@ * todo: implement a cleaner mechanism (in file.c) */ signal(SIGPIPE, SIG_IGN); - g_print("Setting locale to %s\n", gtk_set_locale()); gtk_init(&argc, &argv); gdk_rgb_init(); diff -urN dillo-0.6.6/src/dns.c dillo2-0.6.6/src/dns.c --- dillo-0.6.6/src/dns.c 2002-02-14 12:17:08.000000000 -0700 +++ dillo2-0.6.6/src/dns.c 2003-04-21 12:35:39.000000000 -0600 @@ -57,7 +57,7 @@ gint channel; /* Index of this channel [0 based] */ gboolean in_use; /* boolean to tell if server is doing a lookup */ gboolean ip_ready; /* boolean: is IP lookup done? */ - guint32 ip_addr; /* IP address */ + GSList *addr_list; /* IP address */ char *hostname; /* Adress to resolve */ guint timeout_id; /* gtk timeout function ID */ #ifdef G_DNS_THREADED @@ -67,7 +67,7 @@ typedef struct { char *hostname; /* host name for cache */ - guint32 ip_addr; /* address of host */ + GSList *addr_list; /* address of host */ } GDnsCache; typedef struct { @@ -93,6 +93,7 @@ static gint dns_queue_size, dns_queue_size_max; /* A list for hostnames that haven't been solved */ static GSList *PendingHosts = NULL; +static gboolean ipv6_enabled; /* ---------------------------------------------------------------------- @@ -171,11 +172,11 @@ /* * Add an IP/hostname pair to Dns-cache */ -static void Dns_cache_add(char *hostname, guint32 ip_addr) +static void Dns_cache_add(char *hostname, GSList *addr_list) { a_List_add(dns_cache, dns_cache_size, dns_cache_size_max); dns_cache[dns_cache_size].hostname = g_strdup(hostname); - dns_cache[dns_cache_size].ip_addr = ip_addr; + dns_cache[dns_cache_size].addr_list = addr_list; ++dns_cache_size; DEBUG_MSG(1, "Cache objects: %d\n", dns_cache_size); } @@ -204,13 +205,45 @@ dns_server[i].channel = i; dns_server[i].in_use = FALSE; dns_server[i].ip_ready = FALSE; - dns_server[i].ip_addr = 0; + dns_server[i].addr_list = NULL; dns_server[i].hostname = NULL; dns_server[i].timeout_id = -1; #ifdef G_DNS_THREADED dns_server[i].th1 = (pthread_t) -1; #endif } + +#ifdef ENABLE_IPV6 + { + /* If the IPv6 address family is not available there is no point + wasting time trying to connect to v6 addresses. */ + int fd = socket(AF_INET6, SOCK_STREAM, 0); + if (fd >= 0) { + close(fd); + ipv6_enabled = TRUE; + } + } +#endif +} + +/* + * Allocate a host structure and add it to the list + */ +static GSList *note_hosts(GSList *list, int af, struct hostent *host) +{ + int i; + if (host->h_length > DILLO_ADDR_MAX) + return list; + for (i = 0; host->h_addr_list[i]; i++) { + DilloHost *dh = g_malloc(sizeof(DilloHost)); + memset(dh, 0, sizeof(dh)); + dh->af = af; + dh->alen = host->h_length; + memcpy(&dh->data[0], host->h_addr_list[i], host->h_length); + printf("adding address, length %d\n", host->h_length); + list = g_slist_append(list, dh); + } + return list; } /* @@ -219,13 +252,13 @@ static void *Dns_server(void *data) { struct hostent *host; - guint32 ip_addr; gint channel = GPOINTER_TO_INT(data); #ifdef LIBC5 gint h_err; char buff[1024]; struct hostent sh; #endif + GSList *hosts = NULL; #ifdef G_DNS_THREADED /* Set this thread to detached state */ @@ -235,6 +268,14 @@ DEBUG_MSG(3, "Dns_server: starting...\n ch: %d host: %s\n", channel, dns_server[channel].hostname); +#ifdef ENABLE_IPV6 + if (ipv6_enabled) { + host = gethostbyname2(dns_server[channel].hostname, AF_INET6); + if (host) + hosts = note_hosts(hosts, AF_INET6, host); + } +#endif + #ifdef LIBC5 host = gethostbyname_r(dns_server[channel].hostname, &sh, buff, sizeof(buff), &h_err); @@ -242,17 +283,13 @@ host = gethostbyname(dns_server[channel].hostname); #endif - if (host == NULL) { - ip_addr = 0; - } else { - memcpy(&ip_addr, host->h_addr_list[0], sizeof(ip_addr)); - ip_addr = ntohl(ip_addr); - } + if (host) + hosts = note_hosts(hosts, AF_INET, host); /* write hostname to client */ - DEBUG_MSG(5, "Dns_server [%d]: %s is %x\n", channel, - dns_server[channel].hostname, ip_addr); - dns_server[channel].ip_addr = ip_addr; + DEBUG_MSG(5, "Dns_server [%d]: %s is %p\n", channel, + dns_server[channel].hostname, hosts); + dns_server[channel].addr_list = hosts; dns_server[channel].ip_ready = TRUE; return NULL; /* (avoids a compiler warning) */ @@ -267,8 +304,8 @@ static void Dns_blocking_server(void) { struct hostent *host; - guint32 ip_addr; gint index; + GSList *hosts = NULL; index = 0; DEBUG_MSG(3, "Dns_blocking_server: starting...\n"); @@ -278,17 +315,15 @@ host = gethostbyname(dns_server[index].hostname); if (host == NULL) { DEBUG_MSG(3, "--> Dns_blocking_server: gethostbyname NULL return\n"); - ip_addr = 0; } else { DEBUG_MSG(3, "--> Dns_blocking_server - good return\n"); - memcpy(&ip_addr, host->h_addr_list[0], sizeof(ip_addr)); - ip_addr = ntohl(ip_addr); + hosts = note_hosts(hosts, AF_INET, host); } /* write IP to server data channel */ - DEBUG_MSG(3, "Dns_blocking_server: IP of %s is %x\n", - dns_server[index].hostname, ip_addr); - dns_server[index].ip_addr = ip_addr; + DEBUG_MSG(3, "Dns_blocking_server: IP of %s is %p\n", + dns_server[index].hostname, hosts); + dns_server[index].ip_addr = hosts; dns_server[index].ip_ready = TRUE; DEBUG_MSG(3, "Dns_blocking_server: leaving...\n"); @@ -337,7 +372,7 @@ /* if it hits already resolved, call the Callback inmediately. */ if (i < dns_cache_size) { - a_Dns_ccc(OpSend, 1, Info, &dns_cache[i].ip_addr, NULL); + a_Dns_ccc(OpSend, 1, Info, dns_cache[i].addr_list, NULL); a_Dns_ccc(OpEnd, 1, Info, NULL, NULL); return; } @@ -374,10 +409,10 @@ for (i = 0; i < dns_queue_size; i++) { if (dns_queue[i].channel == channel) { Info = dns_queue[i].Info; - if ( srv->ip_addr == 0 ) { + if ( srv->addr_list == NULL ) { a_Dns_ccc(OpAbort, 1, Info, NULL, NULL); } else { - a_Dns_ccc(OpSend, 1, Info, &srv->ip_addr, NULL); + a_Dns_ccc(OpSend, 1, Info, srv->addr_list, NULL); a_Dns_ccc(OpEnd, 1, Info, NULL, NULL); } Dns_queue_remove(i); @@ -426,9 +461,9 @@ DnsServer *srv = &dns_server[channel]; if ( srv->ip_ready ){ - if (srv->ip_addr != 0) { + if (srv->addr_list != NULL) { /* DNS succeeded, let's cache it */ - Dns_cache_add(srv->hostname, srv->ip_addr); + Dns_cache_add(srv->hostname, srv->addr_list); } Dns_serve_channel(channel); Dns_assign_channels(); diff -urN dillo-0.6.6/src/dns.h dillo2-0.6.6/src/dns.h --- dillo-0.6.6/src/dns.h 2002-01-08 06:49:14.000000000 -0700 +++ dillo2-0.6.6/src/dns.h 2003-04-21 12:35:39.000000000 -0600 @@ -12,6 +12,15 @@ void a_Dns_freeall(void); void a_Dns_ccc(int Op, int Br, ChainLink *Info, void *Data, void *ExtraData); +#define DILLO_ADDR_MAX 16 + +typedef struct _DilloHost +{ + int af; + int alen; + char data[DILLO_ADDR_MAX]; +} DilloHost; + #ifdef __cplusplus } #endif /* __cplusplus */ diff -urN dillo-0.6.6/src/dw_aligned_page.c dillo2-0.6.6/src/dw_aligned_page.c --- dillo-0.6.6/src/dw_aligned_page.c 2002-03-18 08:02:50.000000000 -0700 +++ dillo2-0.6.6/src/dw_aligned_page.c 2003-04-21 12:35:40.000000000 -0600 @@ -44,25 +44,27 @@ /* * Standard Gtk+ function. */ -GtkType a_Dw_aligned_page_get_type (void) +GType a_Dw_aligned_page_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwAlignedPage", - sizeof (DwAlignedPage), + GTypeInfo info = { sizeof (DwAlignedPageClass), - (GtkClassInitFunc) Dw_aligned_page_class_init, - (GtkObjectInitFunc) Dw_aligned_page_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_aligned_page_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwAlignedPage), + 0, + (GInstanceInitFunc) Dw_aligned_page_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_PAGE, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_PAGE, "DwAlignedPage", + &info, flags); } - return type; } @@ -96,7 +98,7 @@ DwAlignedPage *aligned_page = DW_ALIGNED_PAGE (object); if (aligned_page->list) { - if (aligned_page->list->num == 1) { + if (aligned_page->list->refcount == 1) { /* This is the last page in the array, so the list is removed. */ g_free (aligned_page->list->pages); g_free (aligned_page->list->values); @@ -106,10 +108,11 @@ NULL and 0. */ aligned_page->list->pages[aligned_page->list_pos] = NULL; aligned_page->list->values[aligned_page->list_pos] = 0; + aligned_page->list->refcount--; } } - (* GTK_OBJECT_CLASS(parent_class)->destroy) (object); + GTK_OBJECT_CLASS(parent_class)->destroy (object); } @@ -124,8 +127,9 @@ DwAlignedPageList *list; if (ref_page == NULL) { - list = g_new(DwAlignedPageList, 1); + list = g_new (DwAlignedPageList, 1); list->num = 0; + list->refcount = 0; list->pages = NULL; list->values = NULL; list->num_pages_max = 4; @@ -135,9 +139,10 @@ list = ref_page->list; list->num++; - a_List_add(list->pages, list->num, list->num_pages_max); + list->refcount++; + a_List_add (list->pages, list->num, list->num_pages_max); list->pages[list->num - 1] = aligned_page; - a_List_add(list->values, list->num, list->num_values_max); + a_List_add (list->values, list->num, list->num_values_max); list->values[list->num - 1] = 0; aligned_page->list = list; aligned_page->list_pos = list->num - 1; @@ -155,7 +160,7 @@ int i; if (aligned_page->list) { - klass = DW_ALIGNED_PAGE_CLASS (GTK_OBJECT(aligned_page)->klass); + klass = DW_ALIGNED_PAGE_CLASS(G_OBJECT_GET_CLASS(G_OBJECT(aligned_page))); aligned_page->list->values[aligned_page->list_pos] = klass->get_value (aligned_page); @@ -165,16 +170,17 @@ aligned_page->list->max_value = aligned_page->list->values[aligned_page->list_pos]; - for(i = 0; i < aligned_page->list->num; i++) + for (i = 0; i < aligned_page->list->num; i++) if (aligned_page->list->pages[i]) { - klass = DW_ALIGNED_PAGE_CLASS - (GTK_OBJECT(aligned_page->list->pages[i])->klass); + klass = DW_ALIGNED_PAGE_CLASS(G_OBJECT_GET_CLASS( + G_OBJECT(aligned_page->list->pages[i]))); klass->set_max_value (aligned_page->list->pages[i], aligned_page->list->max_value); } } else { /* No change, apply old max_value only to this page. */ - klass = DW_ALIGNED_PAGE_CLASS (GTK_OBJECT(aligned_page)->klass); + klass = DW_ALIGNED_PAGE_CLASS(G_OBJECT_GET_CLASS( + G_OBJECT(aligned_page))); klass->set_max_value (aligned_page, aligned_page->list->max_value); } } diff -urN dillo-0.6.6/src/dw_aligned_page.h dillo2-0.6.6/src/dw_aligned_page.h --- dillo-0.6.6/src/dw_aligned_page.h 2002-03-13 05:08:40.000000000 -0700 +++ dillo2-0.6.6/src/dw_aligned_page.h 2003-04-21 12:35:40.000000000 -0600 @@ -40,7 +40,10 @@ struct _DwAlignedPageList { - gint num; + gint num; /* The index of the last page added (minus one). */ + gint refcount; /* The numbers of non-NULL pages, may be smaller than num. + * The distinction is necessary, because removing is + * simply done by assigning NULL. */ DwAlignedPage **pages; gint32 *values; gint num_pages_max; diff -urN dillo-0.6.6/src/dw_bullet.c dillo2-0.6.6/src/dw_bullet.c --- dillo-0.6.6/src/dw_bullet.c 2002-03-13 05:08:40.000000000 -0700 +++ dillo2-0.6.6/src/dw_bullet.c 2003-04-21 12:35:40.000000000 -0600 @@ -22,25 +22,27 @@ GdkEventExpose *event); -GtkType a_Dw_bullet_get_type (void) +GType a_Dw_bullet_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwBullet", - sizeof (DwBullet), + GTypeInfo info = { sizeof (DwBulletClass), - (GtkClassInitFunc) Dw_bullet_class_init, - (GtkObjectInitFunc) Dw_bullet_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_bullet_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwBullet), + 0, + (GInstanceInitFunc) Dw_bullet_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_WIDGET, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_WIDGET, "DwBullet", + &info, flags); } - return type; } @@ -89,21 +91,21 @@ GdkGC *gc; GdkWindow *window; - x = p_Dw_widget_x_world_to_viewport (widget, widget->allocation.x); - y = p_Dw_widget_y_world_to_viewport (widget, widget->allocation.y); + x = widget->allocation.x; + y = widget->allocation.y; gc = widget->style->color->gc; window = DW_WIDGET_WINDOW (widget); switch (DW_BULLET(widget)->type) { case DW_BULLET_DISC: - gdk_draw_arc(window, gc, TRUE, x + 2, y + 1, 4, 4, 0, 360 * 64); - gdk_draw_arc(window, gc, FALSE, x + 2, y + 1, 4, 4, 0, 360 * 64); + gdk_draw_arc (window, gc, TRUE, x + 2, y + 1, 4, 4, 0, 360 * 64); + gdk_draw_arc (window, gc, FALSE, x + 2, y + 1, 4, 4, 0, 360 * 64); break; case DW_BULLET_CIRCLE: - gdk_draw_arc(window, gc, FALSE, x + 1, y, 6, 6, 0, 360 * 64); + gdk_draw_arc (window, gc, FALSE, x + 1, y, 6, 6, 0, 360 * 64); break; case DW_BULLET_SQUARE: - gdk_draw_rectangle(window, gc, FALSE, x + 1, y, 6, 6); + gdk_draw_rectangle (window, gc, FALSE, x + 1, y, 6, 6); break; default: /* Should/could the numeric bullets be treated here ? */ break; diff -urN dillo-0.6.6/src/dw_button.c dillo2-0.6.6/src/dw_button.c --- dillo-0.6.6/src/dw_button.c 2002-03-18 08:02:50.000000000 -0700 +++ dillo2-0.6.6/src/dw_button.c 2003-04-21 12:35:41.000000000 -0600 @@ -13,9 +13,10 @@ * This widget imitates the look and behavior of GtkButton. */ +#include <gtk/gtk.h> #include "dw_button.h" #include "dw_gtk_viewport.h" -#include <gtk/gtk.h> +#include "dw_marshal.h" static void Dw_button_init (DwButton *button); static void Dw_button_class_init (DwButtonClass *klass); @@ -59,9 +60,16 @@ DwCallback callback, gpointer callback_data); +static DwIterator* Dw_button_iterator (DwWidget *widget, + gint mask); +static gboolean Dw_button_iterator_next (DwIterator *it); +static DwIterator* Dw_button_iterator_clone (DwIterator *it); + + enum { CLICKED, + CLICKED_AT, LAST_SIGNAL }; @@ -72,38 +80,50 @@ /* * Return the type of DwButton */ -GtkType a_Dw_button_get_type (void) +GType a_Dw_button_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwButton", - sizeof (DwButton), + GTypeInfo info = { sizeof (DwButtonClass), - (GtkClassInitFunc) Dw_button_class_init, - (GtkObjectInitFunc) Dw_button_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_button_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwButton), + 0, + (GInstanceInitFunc) Dw_button_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_CONTAINER, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_CONTAINER, "DwButton", + &info, flags); } - return type; } /* * Standard Gtk+ function. - */ -DwWidget* a_Dw_button_new (void) -{ - GtkObject *object; + * + * - "flags" is a mask for the window flags, it should be the mask the + * child uses (e.g. DW_USES_HINT for DwPage, 0 for DwImage). (Will + * hopefully be removed soon.) + * - When passing FALSE for "relief", the button will neither have a + * border, nor paint a background. + */ +DwWidget* a_Dw_button_new (gint flags, + gboolean relief) +{ + DwButton *button; + + button = DW_BUTTON (gtk_object_new (DW_TYPE_BUTTON, NULL)); + DW_WIDGET_SET_FLAGS (button, flags); + button->relief = relief; - object = gtk_object_new (DW_TYPE_BUTTON, NULL); - return DW_WIDGET (object); + return DW_WIDGET (button); } @@ -112,7 +132,6 @@ */ static void Dw_button_init (DwButton *button) { - DW_WIDGET_SET_FLAGS (button, DW_USES_HINTS); button->child = NULL; button->in_button = FALSE; button->pressed = FALSE; @@ -134,13 +153,24 @@ parent_class = gtk_type_class (DW_TYPE_CONTAINER); button_signals[CLICKED] = - gtk_signal_new ("clicked", - GTK_RUN_FIRST | GTK_RUN_ACTION, - object_class->type, - GTK_SIGNAL_OFFSET (DwButtonClass, clicked), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); - gtk_object_class_add_signals (object_class, button_signals, LAST_SIGNAL); + g_signal_new ("clicked", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwButtonClass, clicked), + NULL, + NULL, + p_Dw_marshal_VOID__VOID, + G_TYPE_NONE, 0, NULL); + button_signals[CLICKED_AT] = + g_signal_new ("clicked_at", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST | G_SIGNAL_ACTION, + G_STRUCT_OFFSET (DwButtonClass, clicked_at), + NULL, + NULL, + p_Dw_marshal_VOID__INT_INT, + G_TYPE_NONE, + 2, G_TYPE_INT, G_TYPE_INT); widget_class->size_request = Dw_button_size_request; widget_class->get_extremes = Dw_button_get_extremes; @@ -153,12 +183,14 @@ widget_class->button_release_event = Dw_button_button_release; widget_class->enter_notify_event = Dw_button_enter_notify; widget_class->leave_notify_event = Dw_button_leave_notify; + widget_class->iterator = Dw_button_iterator; container_class->add = Dw_button_add; container_class->remove = Dw_button_remove; container_class->forall = Dw_button_forall; klass->clicked = NULL; + klass->clicked_at = NULL; } @@ -170,19 +202,22 @@ { DwButton *button = DW_BUTTON (widget); DwRequisition child_requisition; - GtkStyleClass *styleclass = widget->viewport->style->klass; + GtkStyle *style = widget->viewport->style; - if (button->child) + if (button->child) { a_Dw_widget_size_request (button->child, &child_requisition); - else { - child_requisition.width = 0; - child_requisition.ascent = 0; - child_requisition.descent = 0; + *requisition = child_requisition; + } else { + requisition->width = 0; + requisition->ascent = 0; + requisition->descent = 0; } - requisition->width = child_requisition.width + 2 * styleclass->xthickness; - requisition->ascent = child_requisition.ascent + styleclass->ythickness; - requisition->descent = child_requisition.descent + styleclass->ythickness; + if (button->relief) { + requisition->width += 2 * style->xthickness; + requisition->ascent += style->ythickness; + requisition->descent += style->ythickness; + } } @@ -194,17 +229,20 @@ { DwButton *button = DW_BUTTON (widget); DwExtremes child_extremes; - GtkStyleClass *styleclass = widget->viewport->style->klass; + GtkStyle *style = widget->viewport->style; - if (button->child) + if (button->child) { a_Dw_widget_get_extremes (button->child, &child_extremes); - else { - child_extremes.min_width = 0; - child_extremes.max_width = 0; + *extremes = child_extremes; + } else { + extremes->min_width = 0; + extremes->max_width = 0; } - extremes->min_width = child_extremes.min_width + 2 * styleclass->xthickness; - extremes->max_width = child_extremes.max_width + 2 * styleclass->xthickness; + if (button->relief) { + extremes->min_width += 2 * style->xthickness; + extremes->max_width += 2 * style->xthickness; + } } @@ -216,14 +254,19 @@ { DwButton *button = DW_BUTTON (widget); DwAllocation child_allocation; - GtkStyleClass *styleclass = widget->viewport->style->klass; + GtkStyle *style = widget->viewport->style; if (button->child) { - child_allocation. x = allocation->x + styleclass->xthickness; - child_allocation. y = allocation->y + styleclass->ythickness; - child_allocation.width = allocation->width - 2 * styleclass->xthickness; - child_allocation.ascent = allocation->ascent - styleclass->ythickness; - child_allocation.descent = allocation->descent - styleclass->ythickness; + child_allocation = *allocation; + + if (button->relief) { + child_allocation.x += style->xthickness; + child_allocation.y += style->ythickness; + child_allocation.width -= 2 * style->xthickness; + child_allocation.ascent -= style->ythickness; + child_allocation.descent -= style->ythickness; + } + a_Dw_widget_size_allocate (button->child, &child_allocation); } } @@ -240,7 +283,8 @@ if (button->child) a_Dw_widget_set_width (button->child, - width - 2 * widget->viewport->style->klass->xthickness); + width - (button->relief ? + (2 * widget->viewport->style->xthickness) : 0)); } @@ -255,7 +299,8 @@ if (button->child) a_Dw_widget_set_ascent (button->child, - ascent - widget->viewport->style->klass->ythickness); + ascent - (button->relief ? + widget->viewport->style->ythickness : 0)); } @@ -270,7 +315,8 @@ if (button->child) a_Dw_widget_set_descent (button->child, - descent - widget->viewport->style->klass->ythickness); + descent - (button->relief ? + widget->viewport->style->ythickness : 0)); } @@ -287,40 +333,45 @@ GdkRectangle gdk_area; DwRectangle child_area; - if (button->sensitive) { - if (button->in_button) { - if (button->pressed) { - state = GTK_STATE_ACTIVE; - shadow = GTK_SHADOW_IN; + if (button->relief) { + if (button->sensitive) { + if (button->in_button) { + if (button->pressed) { + state = GTK_STATE_ACTIVE; + shadow = GTK_SHADOW_IN; + } else { + state = GTK_STATE_PRELIGHT; + shadow = GTK_SHADOW_OUT; + } } else { - state = GTK_STATE_PRELIGHT; + state = GTK_STATE_NORMAL; shadow = GTK_SHADOW_OUT; } } else { - state = GTK_STATE_NORMAL; + state = GTK_STATE_INSENSITIVE; shadow = GTK_SHADOW_OUT; } - } else { - state = GTK_STATE_INSENSITIVE; - shadow = GTK_SHADOW_OUT; + + gdk_area.x = + p_Dw_widget_x_world_to_viewport (widget, + area->x + widget->allocation.x); + gdk_area.y = + p_Dw_widget_y_world_to_viewport (widget, + area->y + widget->allocation.y); + gdk_area.width = area->width; + gdk_area.height = area->height; + + gtk_paint_box (widget->viewport->style, DW_WIDGET_WINDOW (widget), + state, shadow, &gdk_area, widget->viewport, + "buttondefault", + p_Dw_widget_x_world_to_viewport (widget, + widget->allocation.x), + p_Dw_widget_y_world_to_viewport (widget, + widget->allocation.y), + widget->allocation.width, + widget->allocation.ascent + widget->allocation.descent); } - - gdk_area.x = - p_Dw_widget_x_world_to_viewport (widget, area->x + widget->allocation.x); - gdk_area.y = - p_Dw_widget_y_world_to_viewport (widget, area->y + widget->allocation.y); - gdk_area.width = area->width; - gdk_area.height = area->height; - - gtk_paint_box (widget->viewport->style, DW_WIDGET_WINDOW (widget), - state, shadow, &gdk_area, widget->viewport, "buttondefault", - p_Dw_widget_x_world_to_viewport (widget, - widget->allocation.x), - p_Dw_widget_y_world_to_viewport (widget, - widget->allocation.y), - widget->allocation.width, - widget->allocation.ascent + widget->allocation.descent); - + if (button->child && p_Dw_widget_intersect (button->child, area, &child_area)) a_Dw_widget_draw (button->child, &child_area, event); @@ -338,7 +389,8 @@ DwButton *button = DW_BUTTON (widget); button->pressed = TRUE; - p_Dw_widget_queue_draw (widget); + if (button->relief) + p_Dw_widget_queue_draw (widget); return TRUE; } @@ -357,12 +409,40 @@ * Dw). This results in a different behavior. */ DwButton *button = DW_BUTTON (widget); + gint32 cx, cy; button->pressed = FALSE; - p_Dw_widget_queue_draw (widget); + if (button->relief) + p_Dw_widget_queue_draw (widget); - if (button->in_button && button->sensitive) - gtk_signal_emit (GTK_OBJECT (widget), button_signals[CLICKED]); + if (button->in_button && button->sensitive) { + /* simple "click" */ + g_signal_emit (G_OBJECT (widget), button_signals[CLICKED], 0); + + /* "clicked_at": like "clicked", but position is passed, relative + * to the child widget. */ + if (button->child) { + cx = x + widget->allocation.x - button->child->allocation.x; + cy = y + widget->allocation.y - button->child->allocation.y; + + /* If position is outside of the child, clip at the child + allocation */ + if (cx < 0) + cx = 0; + else if (cx > button->child->allocation.width - 1) + cx = button->child->allocation.width - 1; + + if (cy < 0) + cy = 0; + else if (cy > (button->child->allocation.ascent + + button->child->allocation.descent - 1)) + cy = (button->child->allocation.ascent + + button->child->allocation.descent - 1); + + g_signal_emit (G_OBJECT (widget), button_signals[CLICKED_AT], 0, + cx, cy); + } + } return TRUE; } @@ -378,7 +458,8 @@ DwButton *button = DW_BUTTON (widget); button->in_button = TRUE; - p_Dw_widget_queue_draw (widget); + if (button->relief) + p_Dw_widget_queue_draw (widget); return TRUE; } @@ -392,9 +473,10 @@ { DwButton *button = DW_BUTTON (widget); - if(button->child == NULL || next_widget != button->child) { + if (button->child == NULL || next_widget != button->child) { button->in_button = FALSE; - p_Dw_widget_queue_draw (widget); + if (button->relief) + p_Dw_widget_queue_draw (widget); } return TRUE; } @@ -406,7 +488,7 @@ static void Dw_button_add (DwContainer *container, DwWidget *widget) { - DwButton *button = DW_BUTTON(container); + DwButton *button = DW_BUTTON (container); g_return_if_fail (button->child == NULL); button->child = widget; @@ -420,7 +502,7 @@ static void Dw_button_remove (DwContainer *container, DwWidget *widget) { - DwButton *button = DW_BUTTON(container); + DwButton *button = DW_BUTTON (container); g_return_if_fail (button->child != NULL); g_return_if_fail (widget == button->child); @@ -435,7 +517,7 @@ DwCallback callback, gpointer callback_data) { - DwButton *button = DW_BUTTON(container); + DwButton *button = DW_BUTTON (container); if (button->child) callback (button->child, callback_data); @@ -451,5 +533,43 @@ gboolean sensitive) { button->sensitive = sensitive; - p_Dw_widget_queue_draw (DW_WIDGET (button)); + if (button->relief) + p_Dw_widget_queue_draw (DW_WIDGET (button)); +} + + +static DwIterator *Dw_button_iterator (DwWidget *widget, + gint mask) +{ + DwIterator *it = g_new (DwIterator, 1); + it->widget = widget; + it->mask = mask; + it->content.type = DW_CONTENT_START; + it->next = Dw_button_iterator_next; + it->clone = Dw_button_iterator_clone; + it->free = p_Dw_iterator_free_std; + return it; } + + +static gboolean Dw_button_iterator_next (DwIterator *it) +{ + if (it->content.type == DW_CONTENT_START && + (it->mask & DW_CONTENT_WIDGET) && + DW_BUTTON(it->widget)->child) { + it->content.type = DW_CONTENT_WIDGET; + it->content.data.widget = DW_BUTTON(it->widget)->child; + return TRUE; + } else { + it->content.type = DW_CONTENT_END; + return FALSE; + } +} + +static DwIterator* Dw_button_iterator_clone (DwIterator *it) +{ + DwIterator *it2 = g_new (DwIterator, 1); + *it2 = *it; + return it2; +} + diff -urN dillo-0.6.6/src/dw_button.h dillo2-0.6.6/src/dw_button.h --- dillo-0.6.6/src/dw_button.h 2002-03-18 08:02:50.000000000 -0700 +++ dillo2-0.6.6/src/dw_button.h 2003-04-21 12:35:41.000000000 -0600 @@ -30,7 +30,7 @@ DwContainer container; DwWidget *child; - gboolean in_button, pressed, sensitive; + gboolean relief, in_button, pressed, sensitive; }; @@ -38,12 +38,16 @@ { DwContainerClass parent_class; - void (*clicked) (DwButton *button); + void (*clicked) (DwButton *button); + void (*clicked_at) (DwButton *button, + gint32 x, + gint32 y); }; GtkType a_Dw_button_get_type (void); -DwWidget* a_Dw_button_new (void); +DwWidget* a_Dw_button_new (gint flags, + gboolean relief); void a_Dw_button_set_sensitive (DwButton *button, gboolean sensitive); diff -urN dillo-0.6.6/src/dw_container.c dillo2-0.6.6/src/dw_container.c --- dillo-0.6.6/src/dw_container.c 2001-12-22 13:51:08.000000000 -0700 +++ dillo2-0.6.6/src/dw_container.c 2003-04-21 12:35:41.000000000 -0600 @@ -21,25 +21,27 @@ /* * Standard Gtk+ function */ -GtkType a_Dw_container_get_type (void) +GType a_Dw_container_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwContainer", - sizeof (DwContainer), + GTypeInfo info = { sizeof (DwContainerClass), - (GtkClassInitFunc) Dw_container_class_init, - (GtkObjectInitFunc) Dw_container_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_container_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwContainer), + 0, + (GInstanceInitFunc) Dw_container_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_WIDGET, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_WIDGET, "DwContainer", + &info, flags); } - return type; } @@ -94,21 +96,20 @@ (DwCallback) gtk_object_destroy, NULL); - (* GTK_OBJECT_CLASS(parent_class)->destroy) (object); + GTK_OBJECT_CLASS(parent_class)->destroy (object); } /* - * Add a widget in a "standard" way. Currently not used in dillo, - * perhaps never needed. + * Add a widget in a "standard" way. */ void a_Dw_container_add (DwContainer *container, DwWidget *child) { DwContainerClass *klass; - klass = DW_CONTAINER_CLASS (GTK_OBJECT (container)->klass); + klass = DW_CONTAINER_CLASS (G_OBJECT_GET_CLASS (G_OBJECT (container))); if (klass->add) (* (klass->add)) (container, child); } @@ -122,10 +123,23 @@ gpointer callback_data) { DwContainerClass *klass; - - klass = DW_CONTAINER_CLASS (GTK_OBJECT (container)->klass); + + klass = DW_CONTAINER_CLASS(G_OBJECT_GET_CLASS(G_OBJECT(container))); if (klass->forall) (* (klass->forall)) (container, callback, callback_data); + + /* The following code is handy for testing DwIterator: */ + + /* + DwIterator *it; + + if ((it = a_Dw_widget_iterator (DW_WIDGET (container), + DW_CONTENT_WIDGET))) { + while (a_Dw_iterator_next(it)) + callback (it->content.data.widget, callback_data); + a_Dw_iterator_free (it); + } + */ } @@ -138,7 +152,7 @@ { DwContainerClass *klass; - klass = DW_CONTAINER_CLASS (GTK_OBJECT (container)->klass); + klass = DW_CONTAINER_CLASS (G_OBJECT_GET_CLASS (G_OBJECT (container))); if (klass->findtext) return (* (klass->findtext)) (container, FP, KP, NewKey); return 0; @@ -153,7 +167,7 @@ { DwContainerClass *klass; - klass = DW_CONTAINER_CLASS (GTK_OBJECT (container)->klass); + klass = DW_CONTAINER_CLASS (G_OBJECT_GET_CLASS (G_OBJECT (container))); if (klass->remove) (* (klass->remove)) (container, child); } diff -urN dillo-0.6.6/src/dw_embed_gtk.c dillo2-0.6.6/src/dw_embed_gtk.c --- dillo-0.6.6/src/dw_embed_gtk.c 2002-03-13 05:08:42.000000000 -0700 +++ dillo2-0.6.6/src/dw_embed_gtk.c 2003-04-21 12:35:42.000000000 -0600 @@ -17,32 +17,32 @@ DwRectangle *area, GdkEventExpose *event); -static void Dw_embed_gtk_remove_gtk (DwEmbedGtk *embed_gtk); - static GtkWidgetClass *parent_class; /* * Standard Gtk+ function */ -GtkType a_Dw_embed_gtk_get_type (void) +GType a_Dw_embed_gtk_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwEmbedGtk", - sizeof (DwEmbedGtk), + GTypeInfo info = { sizeof (DwEmbedGtkClass), - (GtkClassInitFunc) Dw_embed_gtk_class_init, - (GtkObjectInitFunc) Dw_embed_gtk_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_embed_gtk_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwEmbedGtk), + 0, + (GInstanceInitFunc) Dw_embed_gtk_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_WIDGET, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_WIDGET, "DwEmbedGtk", + &info, flags); } - return type; } @@ -102,7 +102,7 @@ if (embed_gtk->idle_id != -1) gtk_idle_remove (embed_gtk->idle_id); - (* GTK_OBJECT_CLASS(parent_class)->destroy) (object); + GTK_OBJECT_CLASS(parent_class)->destroy (object); } @@ -206,10 +206,11 @@ * This function is called when the embedded Gtk+ widget is destroyed. * Don't use this function directly! */ -static void Dw_embed_gtk_remove_gtk (DwEmbedGtk *embed_gtk) +static gboolean Dw_embed_gtk_remove_gtk (DwEmbedGtk *embed_gtk) { embed_gtk->child = NULL; p_Dw_widget_queue_resize (DW_WIDGET (embed_gtk), 0, TRUE); + return FALSE; } @@ -218,7 +219,7 @@ * will set the adjustments of the viewport. * Don't use this function directly! */ -static int Dw_embed_gtk_child_focus_in (DwEmbedGtk *embed_gtk) +static gboolean Dw_embed_gtk_child_focus_in (DwEmbedGtk *embed_gtk) { DwWidget *widget; GtkLayout *layout; @@ -227,8 +228,8 @@ widget = DW_WIDGET (embed_gtk); layout = GTK_LAYOUT (widget->viewport); - vx = layout->xoffset; - vy = layout->yoffset; + vx = p_Dw_widget_x_viewport_to_world(widget, 0); + vy = p_Dw_widget_y_viewport_to_world(widget, 0); vw = GTK_WIDGET(layout)->allocation.width; vh = GTK_WIDGET(layout)->allocation.height; @@ -274,23 +275,20 @@ /* This is to recognize size changes of the embedded Gtk+ widget, but this simple implementation causes too much page rewraps, so it is currently deactivated */ - gtk_signal_connect_object (GTK_OBJECT (embed_gtk->child), - "size_request", - GTK_SIGNAL_FUNC (Dw_widget_queue_resize), - GTK_OBJECT (embed_gtk)); + g_signal_connect_object (G_OBJECT (embed_gtk->child), "size_request", + G_CALLBACK(Dw_widget_queue_resize), + G_OBJECT (embed_gtk), 0); #endif /* for setting the adjustments */ - gtk_signal_connect_object (GTK_OBJECT (embed_gtk->child), - "focus_in_event", - GTK_SIGNAL_FUNC (Dw_embed_gtk_child_focus_in), - GTK_OBJECT (embed_gtk)); + g_signal_connect_object(G_OBJECT (embed_gtk->child), "focus_in_event", + G_CALLBACK(Dw_embed_gtk_child_focus_in), + G_OBJECT (embed_gtk), G_CONNECT_SWAPPED); /* todo: An idea: use "remove" signal of DwGtkContainer instead. */ - gtk_signal_connect_object (GTK_OBJECT (embed_gtk->child), - "destroy", - GTK_SIGNAL_FUNC (Dw_embed_gtk_remove_gtk), - GTK_OBJECT (embed_gtk)); + g_signal_connect_object(G_OBJECT (embed_gtk->child), "destroy", + G_CALLBACK (Dw_embed_gtk_remove_gtk), + G_OBJECT (embed_gtk), G_CONNECT_SWAPPED); p_Dw_widget_queue_resize (DW_WIDGET (embed_gtk), 0, TRUE); } diff -urN dillo-0.6.6/src/dw_ext_iterator.c dillo2-0.6.6/src/dw_ext_iterator.c --- dillo-0.6.6/src/dw_ext_iterator.c 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/src/dw_ext_iterator.c 2003-04-21 12:35:42.000000000 -0600 @@ -0,0 +1,131 @@ +/* + * File: dw_ext_iterator.c + * + * Copyright (C) 2002 Sebastian Geerken <S.Geerken@ping.de> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + */ + +/* + * DwExtIterator is an extension of DwIterator, which stores + * DwIterator's in a stack, for cases where recursions are not + * possible. + */ + +#include "dw_ext_iterator.h" +#include "list.h" + +/* + * Create a new DwExtIterator from an existing DwIterator. + * The content of the return value will be the content of "it". + * NOTES: + * (i) If you want to continue using "it", pass a_Dw_iterator_clone (it). + * (ii) The mask of "it" must include DW_CONTENT_WIDGET, but + * a_Dw_ext_iterator_next will never return widgets. + */ +DwExtIterator* a_Dw_ext_iterator_new (DwIterator *it) +{ + DwExtIterator *eit = g_new (DwExtIterator, 1); + DwWidget *w; + int sp; + + eit->stack_top = 0; + /* If this widget has parents, we must construct appropiate + * iterators. TODO: There should be a faster way instead of + * iterating through the parent widgets. */ + /* NOTE: This has not yet been tested fully! */ + for (w = it->widget; w->parent != NULL; w = w->parent) + eit->stack_top++; + eit->stack_max = 4; + while (eit->stack_top >= eit->stack_max) + eit->stack_max <<= 1; + + /* Construct the iterators. */ + for (w = it->widget, sp = eit->stack_top - 1; + w->parent != NULL; + w = w->parent, sp--) { + eit->stack[sp] = a_Dw_widget_iterator (w->parent, it->mask); + while (TRUE) { + while (!a_Dw_iterator_next(eit->stack[sp])) { + g_warning ("BUG in DwExtIterator!"); + return NULL; + } + if (eit->stack[sp]->content.type == DW_CONTENT_WIDGET && + eit->stack[sp]->content.data.widget == w) + break; + } + } + + eit->stack = g_new (DwIterator*, eit->stack_max); + eit->stack[eit->stack_top] = it; + eit->content = it->content; + return eit; +} + +/* + * Move iterator forward and store content it. Returns TRUE on + * success. + */ +gboolean a_Dw_ext_iterator_next (DwExtIterator *eit) +{ + DwIterator *it = eit->stack[eit->stack_top]; + + if (a_Dw_iterator_next(it)) { + if (it->content.type == DW_CONTENT_WIDGET) { + /* Widget: new iterator on stack, to search in this widget. */ + eit->stack_top++; + a_List_add (eit->stack, eit->stack_top, eit->stack_max); + eit->stack[eit->stack_top] = + a_Dw_widget_iterator (it->content.data.widget, it->mask); + return a_Dw_ext_iterator_next (eit); + } else { + /* Simply return the content of the iterartor. */ + eit->content = it->content; + return TRUE; + } + } else { + /* No more data in the top-most widget. */ + if (eit->stack_top > 0) { + /* Pop iterator from stack, and move to next item in the old one. */ + a_Dw_iterator_free (it); + eit->stack_top--; + return a_Dw_ext_iterator_next (eit); + } else + /* Stack is empty. */ + return FALSE; + } +} + +/* + * Create an exact copy of the iterator, which then can be used + * independantly of the original one. + */ +DwExtIterator* a_Dw_ext_iterator_clone (DwExtIterator *eit) +{ + int i; + DwExtIterator *eit2 = g_new (DwExtIterator, 1); + eit2->stack_top = eit->stack_top; + eit2->stack_max = eit->stack_max; + eit2->content = eit->content; + + eit2->stack = g_new (DwIterator*, eit2->stack_max); + for (i = 0; i < eit2->stack_top; i++) + eit2->stack[i] = a_Dw_iterator_clone (eit->stack[i]); + + return eit2; +} + +/* + * Free memory of iterator. + */ +void a_Dw_ext_iterator_free (DwExtIterator *eit) +{ + int i; + for (i = 0; i < eit->stack_top; i++) + a_Dw_iterator_clone (eit->stack[i]); + g_free (eit->stack); + g_free (eit); +} diff -urN dillo-0.6.6/src/dw_ext_iterator.h dillo2-0.6.6/src/dw_ext_iterator.h --- dillo-0.6.6/src/dw_ext_iterator.h 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/src/dw_ext_iterator.h 2003-04-21 12:35:42.000000000 -0600 @@ -0,0 +1,28 @@ +#ifndef __DW_EXT_ITERATOR_H__ +#define __DW_EXT_ITERATOR_H__ + +#include "dw_widget.h" + +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +typedef struct _DwExtIterator +{ + DwIterator **stack; + gint stack_top; + gint stack_max; + + DwContent content; +} DwExtIterator; + +DwExtIterator* a_Dw_ext_iterator_new (DwIterator *it); +gboolean a_Dw_ext_iterator_next (DwExtIterator *eit); +DwExtIterator* a_Dw_ext_iterator_clone (DwExtIterator *eit); +void a_Dw_ext_iterator_free (DwExtIterator *eit); + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* __DW_EXT_ITERATOR_H__ */ diff -urN dillo-0.6.6/src/dw_gtk_scrolled_frame.c dillo2-0.6.6/src/dw_gtk_scrolled_frame.c --- dillo-0.6.6/src/dw_gtk_scrolled_frame.c 2002-04-30 10:27:51.000000000 -0600 +++ dillo2-0.6.6/src/dw_gtk_scrolled_frame.c 2003-04-21 12:35:44.000000000 -0600 @@ -17,7 +17,9 @@ #include <gtk/gtk.h> #include <gdk/gdkkeysyms.h> +#include <gdk/gdkx.h> #include "dw_gtk_scrolled_frame.h" +#include "dw_marshal.h" static GtkBinClass *parent_class = NULL; @@ -36,28 +38,21 @@ GtkRequisition *requisition); static void Dw_gtk_scrolled_frame_size_allocate (GtkWidget *widget, GtkAllocation *allocation); -static void Dw_gtk_scrolled_frame_draw (GtkWidget *widget, - GdkRectangle *area); -static void Dw_gtk_scrolled_frame_draw_focus (GtkWidget *widget); -static gint Dw_gtk_scrolled_frame_expose (GtkWidget *widget, +static gboolean Dw_gtk_scrolled_frame_expose (GtkWidget *widget, GdkEventExpose *event); -static gint Dw_gtk_scrolled_frame_key_press (GtkWidget *widget, +static gboolean Dw_gtk_scrolled_frame_key_press (GtkWidget *widget, GdkEventKey *event); -static gint Dw_gtk_scrolled_frame_focus_in (GtkWidget *widget, - GdkEventFocus *event); -static gint Dw_gtk_scrolled_frame_focus_out (GtkWidget *widget, - GdkEventFocus *event); -static gint Dw_gtk_scrolled_frame_button_press (GtkWidget *widget, - GdkEventButton *event); -static gint Dw_gtk_scrolled_frame_button_release(GtkWidget *widget, - GdkEventButton *event); -static gint Dw_gtk_scrolled_frame_motion_notify (GtkWidget *widget, - GdkEventMotion *event); +static gboolean Dw_gtk_scrolled_frame_button_press (GtkWidget *widget, + GdkEventButton *event); +static gboolean Dw_gtk_scrolled_frame_button_release(GtkWidget *widget, + GdkEventButton *event); +static gboolean Dw_gtk_scrolled_frame_motion_notify (GtkWidget *widget, + GdkEventMotion *event); /* GtkContainer methods */ static void Dw_gtk_scrolled_frame_add (GtkContainer *container, GtkWidget *widget); -static gint Dw_gtk_scrolled_frame_focus (GtkContainer *container, +static gboolean Dw_gtk_scrolled_frame_focus (GtkWidget *widget, GtkDirectionType direction); /* GtkDwScrolledFrame methods */ @@ -95,25 +90,27 @@ /* * Standard Gtk+ function */ -GtkType a_Dw_gtk_scrolled_frame_get_type (void) +GType a_Dw_gtk_scrolled_frame_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "GtkDwScrolledFrame", - sizeof (GtkDwScrolledFrame), + GTypeInfo info = { sizeof (GtkDwScrolledFrameClass), - (GtkClassInitFunc) Dw_gtk_scrolled_frame_class_init, - (GtkObjectInitFunc) Dw_gtk_scrolled_frame_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_gtk_scrolled_frame_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (GtkDwScrolledFrame), + 0, + (GInstanceInitFunc) Dw_gtk_scrolled_frame_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (GTK_TYPE_BIN, &info); + GTypeFlags flags = 0; + type = g_type_register_static(GTK_TYPE_BIN, "GtkDwScrolledFrame", + &info, flags); } - return type; } @@ -173,35 +170,36 @@ container_class = (GtkContainerClass*) klass; frame_signals[SET_SCROLL_ADJUSTMENTS] = - gtk_signal_new ("set_scroll_adjustments", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (GtkDwScrolledFrameClass, - set_scroll_adjustments), - gtk_marshal_NONE__POINTER_POINTER, - GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, - GTK_TYPE_ADJUSTMENT); + g_signal_new ("set_scroll_adjustments", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (GtkDwScrolledFrameClass, + set_scroll_adjustments), + NULL, + NULL, + p_Dw_marshal_VOID__POINTER_POINTER, + GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, + GTK_TYPE_ADJUSTMENT); widget_class->set_scroll_adjustments_signal = frame_signals[SET_SCROLL_ADJUSTMENTS]; - frame_signals[USER_HCHANGED] = - gtk_signal_new ("user_hchanged", - GTK_RUN_LAST | GTK_RUN_ACTION, - object_class->type, - GTK_SIGNAL_OFFSET (GtkDwScrolledFrameClass, - user_hchanged), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); + g_signal_new ("user_hchanged", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, + G_STRUCT_OFFSET (GtkDwScrolledFrameClass, user_hchanged), + NULL, + NULL, + p_Dw_marshal_VOID__VOID, + GTK_TYPE_NONE, 0); frame_signals[USER_VCHANGED] = - gtk_signal_new ("user_vchanged", - GTK_RUN_LAST | GTK_RUN_ACTION, - object_class->type, - GTK_SIGNAL_OFFSET (GtkDwScrolledFrameClass, - user_vchanged), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); - - gtk_object_class_add_signals (object_class, frame_signals, LAST_SIGNAL); + g_signal_new ("user_vchanged", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, + G_STRUCT_OFFSET (GtkDwScrolledFrameClass, user_vchanged), + NULL, + NULL, + p_Dw_marshal_VOID__VOID, + GTK_TYPE_NONE, 0); object_class->destroy = Dw_gtk_scrolled_frame_destroy; @@ -209,21 +207,16 @@ widget_class->unrealize = Dw_gtk_scrolled_frame_unrealize; widget_class->size_request = Dw_gtk_scrolled_frame_size_request; widget_class->size_allocate = Dw_gtk_scrolled_frame_size_allocate; - widget_class->draw_focus = Dw_gtk_scrolled_frame_draw_focus; - widget_class->draw = Dw_gtk_scrolled_frame_draw; widget_class->expose_event = Dw_gtk_scrolled_frame_expose; widget_class->key_press_event = Dw_gtk_scrolled_frame_key_press; - widget_class->focus_in_event = Dw_gtk_scrolled_frame_focus_in; - widget_class->focus_out_event = Dw_gtk_scrolled_frame_focus_out; + widget_class->focus = Dw_gtk_scrolled_frame_focus; widget_class->button_press_event = Dw_gtk_scrolled_frame_button_press; widget_class->button_release_event = Dw_gtk_scrolled_frame_button_release; widget_class->motion_notify_event = Dw_gtk_scrolled_frame_motion_notify; container_class->add = Dw_gtk_scrolled_frame_add; - container_class->focus = Dw_gtk_scrolled_frame_focus; - klass->set_scroll_adjustments = - Dw_gtk_scrolled_frame_set_scroll_adjustments; + klass->set_scroll_adjustments = Dw_gtk_scrolled_frame_set_scroll_adjustments; klass->user_hchanged = NULL; klass->user_vchanged = NULL; } @@ -246,7 +239,7 @@ if (frame->move_idle_id != -1) gtk_idle_remove (frame->move_idle_id); - (* GTK_OBJECT_CLASS(parent_class)->destroy) (object); + GTK_OBJECT_CLASS(parent_class)->destroy (object); } @@ -286,6 +279,11 @@ widget->style = gtk_style_attach (widget->style, widget->window); gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL); + /* evil workaround */ + GTK_DW_SCROLLED_FRAME(widget)->vadjustment->step_increment = 10; + GTK_DW_SCROLLED_FRAME(widget)->hadjustment->step_increment = 10; + /* end evil workaround */ + GTK_DW_SCROLLED_FRAME(widget)->drag_cursor = gdk_cursor_new (GDK_FLEUR); } @@ -321,11 +319,11 @@ border_width = GTK_CONTAINER(widget)->border_width; child_allocation.width = - MAX (allocation->width - 2 * (widget->style->klass->xthickness + + MAX (allocation->width - 2 * (widget->style->xthickness + border_width), 1); child_allocation.height = - MAX (allocation->height - 2 * (widget->style->klass->ythickness + + MAX (allocation->height - 2 * (widget->style->ythickness + border_width), 1); child_allocation.x = (allocation->width - child_allocation.width) / 2; @@ -353,10 +351,10 @@ gtk_widget_size_request (bin->child, &child_requisition); requisition->width = - child_requisition.width + 2 * (widget->style->klass->xthickness + + child_requisition.width + 2 * (widget->style->xthickness + border_width); requisition->height = - child_requisition.height + 2 * (widget->style->klass->ythickness + + child_requisition.height + 2 * (widget->style->ythickness + border_width); } else { requisition->width = 100; @@ -385,7 +383,7 @@ /* "text" is probably next to what we need */ gtk_paint_focus (widget->style, widget->window, - area, widget, "text", + GTK_STATE_SELECTED, area, widget, "text", border_width, border_width, widget->allocation.width - 2 * border_width - 1, widget->allocation.height - 2 * border_width - 1); @@ -399,37 +397,15 @@ } } - /* * Standard Gtk+ function */ -static void Dw_gtk_scrolled_frame_draw_focus (GtkWidget *widget) +static gboolean Dw_gtk_scrolled_frame_expose (GtkWidget *widget, + GdkEventExpose *event) { - Dw_gtk_scrolled_frame_paint_shadow (widget, NULL); -} + gboolean ret_val; - -/* - * Standard Gtk+ function - */ -static void Dw_gtk_scrolled_frame_draw (GtkWidget *widget, - GdkRectangle *area) -{ - (* (GTK_WIDGET_CLASS(parent_class)->draw)) (widget, area); - Dw_gtk_scrolled_frame_paint_shadow (widget, area); -} - - -/* - * Standard Gtk+ function - */ -static gint Dw_gtk_scrolled_frame_expose (GtkWidget *widget, - GdkEventExpose *event) -{ - gint ret_val; - - ret_val = - (* (GTK_WIDGET_CLASS(parent_class)->expose_event)) (widget, event); + ret_val = GTK_WIDGET_CLASS(parent_class)->expose_event (widget, event); Dw_gtk_scrolled_frame_paint_shadow (widget, &(event->area)); return ret_val; @@ -439,77 +415,77 @@ /* * Standard Gtk+ function */ -static gint Dw_gtk_scrolled_frame_key_press (GtkWidget *widget, - GdkEventKey *event) +static gboolean Dw_gtk_scrolled_frame_key_press (GtkWidget *widget, + GdkEventKey *event) { - GtkContainer *container; GtkDwScrolledFrame *frame; - container = GTK_CONTAINER (widget); frame = GTK_DW_SCROLLED_FRAME (widget); switch (event->keyval) { case GDK_Up: - Dw_gtk_scrolled_frame_move_by(frame, 0, - - frame->vadjustment->step_increment); + Dw_gtk_scrolled_frame_move_by (frame, 0, + - frame->vadjustment->step_increment); return TRUE; case GDK_Down: - Dw_gtk_scrolled_frame_move_by(frame, 0, - + frame->vadjustment->step_increment); + Dw_gtk_scrolled_frame_move_by (frame, 0, + + frame->vadjustment->step_increment); return TRUE; case GDK_Left: - Dw_gtk_scrolled_frame_move_by(frame, - - frame->hadjustment->step_increment, 0); + Dw_gtk_scrolled_frame_move_by (frame, + - frame->hadjustment->step_increment, 0); return TRUE; case GDK_Right: - Dw_gtk_scrolled_frame_move_by(frame, - + frame->hadjustment->step_increment, 0); + Dw_gtk_scrolled_frame_move_by (frame, + + frame->hadjustment->step_increment, 0); return TRUE; case GDK_Tab: if (event->state & GDK_SHIFT_MASK) - return gtk_container_focus (container, GTK_DIR_TAB_BACKWARD); + return gtk_widget_child_focus (widget, GTK_DIR_TAB_BACKWARD); else - return gtk_container_focus (container, GTK_DIR_TAB_FORWARD); + return gtk_widget_child_focus (widget, GTK_DIR_TAB_FORWARD); case GDK_b: case GDK_B: - if (event->state & (GDK_MOD1_MASK | GDK_MOD2_MASK)) + if (event->state & GDK_MOD1_MASK) return FALSE; /* continues */ case GDK_Page_Up: if (event->state & GDK_CONTROL_MASK) - Dw_gtk_scrolled_frame_move_by(frame, - - frame->hadjustment->page_increment, 0); + Dw_gtk_scrolled_frame_move_by (frame, + - frame->hadjustment->page_increment, + 0); else - Dw_gtk_scrolled_frame_move_by(frame, 0, - - frame->vadjustment->page_increment); + Dw_gtk_scrolled_frame_move_by (frame, 0, + - frame->vadjustment->page_increment); return TRUE; case GDK_Page_Down: case GDK_space: if (event->state & GDK_CONTROL_MASK) - Dw_gtk_scrolled_frame_move_by(frame, - + frame->hadjustment->page_increment, 0); + Dw_gtk_scrolled_frame_move_by (frame, + + frame->hadjustment->page_increment, + 0); else - Dw_gtk_scrolled_frame_move_by(frame, 0, - + frame->vadjustment->page_increment); + Dw_gtk_scrolled_frame_move_by (frame, 0, + + frame->vadjustment->page_increment); return TRUE; case GDK_Home: if (event->state & GDK_CONTROL_MASK) - Dw_gtk_scrolled_frame_move_x_to(frame, 0); + Dw_gtk_scrolled_frame_move_x_to (frame, 0); else - Dw_gtk_scrolled_frame_move_y_to(frame, 0); + Dw_gtk_scrolled_frame_move_y_to (frame, 0); return TRUE; case GDK_End: if (event->state & GDK_CONTROL_MASK) - Dw_gtk_scrolled_frame_move_x_to(frame, G_MAXFLOAT); + Dw_gtk_scrolled_frame_move_x_to (frame, G_MAXFLOAT); else - Dw_gtk_scrolled_frame_move_y_to(frame, G_MAXFLOAT); + Dw_gtk_scrolled_frame_move_y_to (frame, G_MAXFLOAT); return TRUE; default: @@ -517,36 +493,11 @@ } } - -/* - * Standard Gtk+ function - */ -static gint Dw_gtk_scrolled_frame_focus_in (GtkWidget *widget, - GdkEventFocus *event) -{ - GTK_WIDGET_SET_FLAGS (widget, GTK_HAS_FOCUS); - gtk_widget_draw_focus (widget); - return FALSE; -} - - /* * Standard Gtk+ function */ -static gint Dw_gtk_scrolled_frame_focus_out (GtkWidget *widget, - GdkEventFocus *event) -{ - GTK_WIDGET_UNSET_FLAGS (widget, GTK_HAS_FOCUS); - gtk_widget_draw_focus (widget); - return FALSE; -} - - -/* - * Standard Gtk+ function - */ -static gint Dw_gtk_scrolled_frame_button_press (GtkWidget *widget, - GdkEventButton *event) +static gboolean Dw_gtk_scrolled_frame_button_press (GtkWidget *widget, + GdkEventButton *event) { GtkDwScrolledFrame *frame; @@ -557,8 +508,8 @@ frame = GTK_DW_SCROLLED_FRAME (widget); frame->button2_pressed = TRUE; - frame->start_lmx = event->x; - frame->start_lmy = event->y; + frame->start_lmx = event->x - frame->hadjustment->value; + frame->start_lmy = event->y - frame->vadjustment->value; gdk_pointer_grab (widget->window, FALSE, GDK_BUTTON_RELEASE_MASK | GDK_BUTTON2_MOTION_MASK, @@ -573,8 +524,8 @@ /* * Standard Gtk+ function */ -static gint Dw_gtk_scrolled_frame_button_release (GtkWidget *widget, - GdkEventButton *event) +static gboolean Dw_gtk_scrolled_frame_button_release (GtkWidget *widget, + GdkEventButton *event) { GTK_DW_SCROLLED_FRAME(widget)->button2_pressed = FALSE; gdk_pointer_ungrab (event->time); @@ -585,14 +536,22 @@ /* * Standard Gtk+ function */ -static gint Dw_gtk_scrolled_frame_motion_notify (GtkWidget *widget, - GdkEventMotion *event) +static gboolean Dw_gtk_scrolled_frame_motion_notify (GtkWidget *widget, + GdkEventMotion *event) { GtkDwScrolledFrame *frame = GTK_DW_SCROLLED_FRAME (widget); /* frame->button2_pressed makes sure that the button was pressed in the GtkDwScrolledFrame */ if ((event->state & GDK_BUTTON2_MASK) && frame->button2_pressed) { + if (event->window == GTK_LAYOUT(GTK_BIN(frame)->child)->bin_window) { + /* Evil evil hack ... Sometimes event->window is + * viewport->bin_window and sometimes frame->window, former + * gets x and y in world coordinates and latter in viewport + * coordinates, really don't know why this happens -- Medar */ + event->x -= frame->hadjustment->value; + event->y -= frame->vadjustment->value; + } Dw_gtk_scrolled_frame_move_by (frame, frame->start_lmx - event->x, frame->start_lmy - event->y); @@ -619,12 +578,12 @@ { GtkDwScrolledFrame *frame; - (* (GTK_CONTAINER_CLASS(parent_class)->add)) (container, widget); + GTK_CONTAINER_CLASS(parent_class)->add (container, widget); frame = GTK_DW_SCROLLED_FRAME (container); - if ( !gtk_widget_set_scroll_adjustments( + if ( !gtk_widget_set_scroll_adjustments ( GTK_WIDGET (container), frame->hadjustment, frame->vadjustment) ) - g_warning ("Dw_gtk_scrolled_frame_set_scroll_adjustments(): " + g_warning ("Dw_gtk_scrolled_frame_add(): " "child is non scrollable"); } @@ -632,8 +591,8 @@ /* * Standard Gtk+ function */ -static gint Dw_gtk_scrolled_frame_focus (GtkContainer *container, - GtkDirectionType direction) +static gboolean Dw_gtk_scrolled_frame_focus (GtkWidget *widget, + GtkDirectionType direction) { /* todo: * This crashed if the child is not a container (what will never happen @@ -641,32 +600,33 @@ */ GtkDwScrolledFrame *frame; - frame = GTK_DW_SCROLLED_FRAME (container); + frame = GTK_DW_SCROLLED_FRAME (widget); switch (direction) { case GTK_DIR_TAB_FORWARD: case GTK_DIR_RIGHT: case GTK_DIR_DOWN: - if (container->focus_child == NULL && !GTK_WIDGET_HAS_FOCUS (container)){ + if (GTK_CONTAINER(widget)->focus_child == NULL && + !GTK_WIDGET_HAS_FOCUS (widget)){ /* no focus of the GtkDwScrolledFrame or a child widget -> focus */ - gtk_widget_grab_focus (GTK_WIDGET (container)); + gtk_widget_grab_focus (widget); return TRUE; } else /* deliver to child */ - return gtk_container_focus (GTK_CONTAINER (GTK_BIN(container)->child), - direction); + return gtk_widget_child_focus (GTK_BIN(widget)->child, + direction); case GTK_DIR_TAB_BACKWARD: case GTK_DIR_LEFT: case GTK_DIR_UP: - if (GTK_WIDGET_HAS_FOCUS (container)) + if (GTK_WIDGET_HAS_FOCUS (widget)) /* will focus the widget "before" */ return FALSE; else { - if (!gtk_container_focus (GTK_CONTAINER (GTK_BIN(container)->child), - GTK_DIR_TAB_BACKWARD)) + if (!gtk_widget_child_focus (GTK_BIN(widget)->child, + GTK_DIR_TAB_BACKWARD)) /* first child of the child unfocussed */ - gtk_widget_grab_focus (GTK_WIDGET (container)); + gtk_widget_grab_focus (widget); return TRUE; } @@ -692,9 +652,9 @@ * Standard Gtk+ function */ static void -Dw_gtk_scrolled_frame_set_scroll_adjustments(GtkDwScrolledFrame *frame, - GtkAdjustment *hadjustment, - GtkAdjustment *vadjustment) +Dw_gtk_scrolled_frame_set_scroll_adjustments (GtkDwScrolledFrame *frame, + GtkAdjustment *hadjustment, + GtkAdjustment *vadjustment) { GtkBin *bin; @@ -722,7 +682,7 @@ /* * The idle function. */ -static gint Dw_gtk_scrolled_frame_move_idle (gpointer data) +static gboolean Dw_gtk_scrolled_frame_move_idle (gpointer data) { GtkDwScrolledFrame *frame; @@ -733,12 +693,12 @@ if (frame->moveto_x != frame->hadjustment->value) { gtk_adjustment_set_value (frame->hadjustment, frame->moveto_x); - gtk_signal_emit (GTK_OBJECT (frame), frame_signals[USER_HCHANGED]); + g_signal_emit (G_OBJECT (frame), frame_signals[USER_HCHANGED], 0); } if (frame->moveto_y != frame->vadjustment->value) { gtk_adjustment_set_value (frame->vadjustment, frame->moveto_y); - gtk_signal_emit (GTK_OBJECT (frame), frame_signals[USER_VCHANGED]); + g_signal_emit (G_OBJECT (frame), frame_signals[USER_VCHANGED], 0); } frame->move_idle_id = -1; @@ -815,6 +775,8 @@ { if (pos < adj->lower) return adj->lower; + else if (adj->upper < adj->page_size) + return 0.0; else if (pos > adj->upper - adj->page_size) return adj->upper - adj->page_size; else diff -urN dillo-0.6.6/src/dw_gtk_scrolled_window.c dillo2-0.6.6/src/dw_gtk_scrolled_window.c --- dillo-0.6.6/src/dw_gtk_scrolled_window.c 2002-03-18 08:02:50.000000000 -0700 +++ dillo2-0.6.6/src/dw_gtk_scrolled_window.c 2003-04-21 12:35:45.000000000 -0600 @@ -25,32 +25,34 @@ static void Dw_gtk_scrolled_window_size_allocate (GtkWidget *widget, GtkAllocation *allocation); -static void Dw_gtk_scrolled_window_changed1 (GtkDwScrolledWindow *scrolled); -static void Dw_gtk_scrolled_window_changed2 (GtkDwScrolledWindow *scrolled); +static gboolean Dw_gtk_scrolled_window_changed1 (GtkDwScrolledWindow *scrolled); +static gboolean Dw_gtk_scrolled_window_changed2 (GtkDwScrolledWindow *scrolled); /* * Standard Gtk+ function */ -GtkType a_Dw_gtk_scrolled_window_get_type (void) +GType a_Dw_gtk_scrolled_window_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "GtkDwScrolledWindow", - sizeof (GtkDwScrolledWindow), + GTypeInfo info = { sizeof (GtkDwScrolledWindowClass), - (GtkClassInitFunc) Dw_gtk_scrolled_window_class_init, - (GtkObjectInitFunc) Dw_gtk_scrolled_window_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_gtk_scrolled_window_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (GtkDwScrolledWindow), + 0, + (GInstanceInitFunc) Dw_gtk_scrolled_window_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (GTK_TYPE_SCROLLED_WINDOW, &info); + GTypeFlags flags = 0; + type = g_type_register_static(GTK_TYPE_SCROLLED_WINDOW, + "GtkDwScrolledWindow", &info, flags); } - return type; } @@ -108,20 +110,20 @@ * users could change the scrollbar adjustments. ... */ for (i = 0; i < sizeof (signals) / sizeof (signals[0]); i++) { - gtk_signal_connect_object - (GTK_OBJECT (GTK_SCROLLED_WINDOW(scrolled)->vscrollbar), - signals[i], GTK_SIGNAL_FUNC (Dw_gtk_scrolled_window_changed1), - GTK_OBJECT (scrolled)); - gtk_signal_connect_object_after - (GTK_OBJECT (GTK_SCROLLED_WINDOW(scrolled)->vscrollbar), - signals[i], GTK_SIGNAL_FUNC (Dw_gtk_scrolled_window_changed2), - GTK_OBJECT (scrolled)); + g_signal_connect_object + (G_OBJECT (GTK_SCROLLED_WINDOW(scrolled)->vscrollbar), + signals[i], G_CALLBACK(Dw_gtk_scrolled_window_changed1), + G_OBJECT (scrolled), G_CONNECT_SWAPPED); + g_signal_connect_object + (G_OBJECT (GTK_SCROLLED_WINDOW(scrolled)->vscrollbar), + signals[i], G_CALLBACK(Dw_gtk_scrolled_window_changed2), + G_OBJECT (scrolled), G_CONNECT_SWAPPED | G_CONNECT_AFTER); } /* ... The GtkDwScrolledFrame has a signal for this. */ - gtk_signal_connect_object (GTK_OBJECT (frame), "user_vchanged", - GTK_SIGNAL_FUNC (Dw_gtk_viewport_remove_anchor), - GTK_OBJECT (viewport)); + g_signal_connect_object (G_OBJECT(frame), "user_vchanged", + G_CALLBACK(Dw_gtk_viewport_remove_anchor), + G_OBJECT (viewport), G_CONNECT_SWAPPED); #if 0 /* This does not seem to work for GtkLayout's (see also dw_embed_gtk.c): */ gtk_container_set_focus_hadjustment (GTK_CONTAINER (viewport), @@ -185,8 +187,10 @@ viewport = GTK_BIN(GTK_BIN(scrolled)->child)->child; - if ((old_child = GTK_DW_VIEWPORT (viewport)->child)) + if ((old_child = GTK_DW_VIEWPORT (viewport)->child)) { gtk_object_destroy (GTK_OBJECT (old_child)); + GTK_DW_VIEWPORT (viewport)->child = NULL; + } a_Dw_gtk_viewport_add_dw (GTK_DW_VIEWPORT (viewport), widget); } @@ -243,9 +247,10 @@ * See also Dw_gtk_scrolled_window_init. * Called before possible change, save the old value. */ -static void Dw_gtk_scrolled_window_changed1 (GtkDwScrolledWindow *scrolled) +static gboolean Dw_gtk_scrolled_window_changed1 (GtkDwScrolledWindow *scrolled) { scrolled->old_vadjustment_value = scrolled->vadjustment->value; + return FALSE; } @@ -253,7 +258,7 @@ * See also Dw_gtk_scrolled_window_init. * Called after possible change, compare old and new values. */ -static void Dw_gtk_scrolled_window_changed2 (GtkDwScrolledWindow *scrolled) +static gboolean Dw_gtk_scrolled_window_changed2 (GtkDwScrolledWindow *scrolled) { GtkWidget *viewport; @@ -261,4 +266,5 @@ viewport = GTK_BIN(GTK_BIN(scrolled)->child)->child; Dw_gtk_viewport_remove_anchor (GTK_DW_VIEWPORT (viewport)); } + return FALSE; } diff -urN dillo-0.6.6/src/dw_gtk_scrolled_window.h dillo2-0.6.6/src/dw_gtk_scrolled_window.h --- dillo-0.6.6/src/dw_gtk_scrolled_window.h 2002-01-10 11:59:42.000000000 -0700 +++ dillo2-0.6.6/src/dw_gtk_scrolled_window.h 2003-04-21 12:35:45.000000000 -0600 @@ -39,7 +39,7 @@ }; -GtkType a_Dw_gtk_scrolled_window_get_type (void); +GType a_Dw_gtk_scrolled_window_get_type (void); GtkWidget* a_Dw_gtk_scrolled_window_new (void); void a_Dw_gtk_scrolled_window_set_dw ( GtkDwScrolledWindow *scrolled, DwWidget *widget); diff -urN dillo-0.6.6/src/dw_gtk_viewport.c dillo2-0.6.6/src/dw_gtk_viewport.c --- dillo-0.6.6/src/dw_gtk_viewport.c 2002-03-13 05:08:43.000000000 -0700 +++ dillo2-0.6.6/src/dw_gtk_viewport.c 2003-04-21 12:35:47.000000000 -0600 @@ -25,47 +25,47 @@ static void Dw_gtk_viewport_destroy (GtkObject *object); /* GtkWidget methods */ -static void Dw_gtk_viewport_realize (GtkWidget *widget); -static void Dw_gtk_viewport_unrealize (GtkWidget *widget); -static void Dw_gtk_viewport_draw (GtkWidget *widget, - GdkRectangle *area); -static gint Dw_gtk_viewport_expose (GtkWidget *widget, - GdkEventExpose *event); -static gint Dw_gtk_viewport_button_press (GtkWidget *widget, - GdkEventButton *event); -static gint Dw_gtk_viewport_button_release(GtkWidget *widget, - GdkEventButton *event); -static gint Dw_gtk_viewport_motion_notify (GtkWidget *widget, - GdkEventMotion *event); -static gint Dw_gtk_viewport_enter_notify (GtkWidget *widget, - GdkEventCrossing *event); -static gint Dw_gtk_viewport_leave_notify (GtkWidget *widget, - GdkEventCrossing *event); -static void Dw_gtk_viewport_adj_changed (GtkAdjustment *adj, - GtkDwViewport *viewport); +static void Dw_gtk_viewport_realize (GtkWidget *widget); +static void Dw_gtk_viewport_unrealize (GtkWidget *widget); +static gboolean Dw_gtk_viewport_expose (GtkWidget *widget, + GdkEventExpose *event); +static gboolean Dw_gtk_viewport_button_press (GtkWidget *widget, + GdkEventButton *event); +static gboolean Dw_gtk_viewport_button_release (GtkWidget *widget, + GdkEventButton *event); +static gboolean Dw_gtk_viewport_motion_notify (GtkWidget *widget, + GdkEventMotion *event); +static gboolean Dw_gtk_viewport_enter_notify (GtkWidget *widget, + GdkEventCrossing *event); +static gboolean Dw_gtk_viewport_leave_notify (GtkWidget *widget, + GdkEventCrossing *event); +static gboolean Dw_gtk_viewport_adj_changed (GtkAdjustment *adj, + GtkDwViewport *viewport); /* * Standard Gtk+ function */ -GtkType a_Dw_gtk_viewport_get_type (void) +GType a_Dw_gtk_viewport_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "GtkDwViewport", - sizeof (GtkDwViewport), + GTypeInfo info = { sizeof (GtkDwViewportClass), - (GtkClassInitFunc) Dw_gtk_viewport_class_init, - (GtkObjectInitFunc) Dw_gtk_viewport_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_gtk_viewport_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (GtkDwViewport), + 0, + (GInstanceInitFunc) Dw_gtk_viewport_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (GTK_TYPE_LAYOUT, &info); + GTypeFlags flags = 0; + type = g_type_register_static(GTK_TYPE_LAYOUT, + "GtkDwViewport", &info, flags); } - return type; } @@ -87,12 +87,12 @@ * however, for more general perposes, the signal function * "set_scroll_adjustments" had to be redefined. */ - gtk_signal_connect (GTK_OBJECT (hadjustment), "value_changed", - GTK_SIGNAL_FUNC (Dw_gtk_viewport_adj_changed), - (gpointer) widget); - gtk_signal_connect (GTK_OBJECT (vadjustment), "value_changed", - GTK_SIGNAL_FUNC (Dw_gtk_viewport_adj_changed), - (gpointer) widget); + g_signal_connect(G_OBJECT(hadjustment), "value_changed", + G_CALLBACK(Dw_gtk_viewport_adj_changed), + widget); + g_signal_connect(G_OBJECT(vadjustment), "value_changed", + G_CALLBACK(Dw_gtk_viewport_adj_changed), + widget); return widget; } @@ -115,11 +115,9 @@ Look at gtklayout.c */ GTK_WIDGET_SET_FLAGS (viewport, GTK_APP_PAINTABLE); - viewport->back_pixmap = NULL; viewport->child = NULL; viewport->last_entered = NULL; viewport->resize_idle_id = -1; - viewport->back_pixmap = NULL; viewport->anchor = NULL; viewport->anchor_idle_id = -1; } @@ -133,7 +131,7 @@ GtkObjectClass *object_class; GtkWidgetClass *widget_class; - parent_class = gtk_type_class (gtk_layout_get_type ()); + parent_class = gtk_type_class (GTK_TYPE_LAYOUT); object_class = (GtkObjectClass*) klass; widget_class = (GtkWidgetClass*) klass; @@ -142,7 +140,6 @@ widget_class->realize = Dw_gtk_viewport_realize; widget_class->unrealize = Dw_gtk_viewport_unrealize; - widget_class->draw = Dw_gtk_viewport_draw; widget_class->expose_event = Dw_gtk_viewport_expose; widget_class->button_press_event = Dw_gtk_viewport_button_press; widget_class->button_release_event = Dw_gtk_viewport_button_release; @@ -167,18 +164,20 @@ viewport = GTK_DW_VIEWPORT (object); - if (viewport->back_pixmap) - gdk_pixmap_unref (viewport->back_pixmap); - if (viewport->child) + if (viewport->child) { gtk_object_destroy (GTK_OBJECT (viewport->child)); + viewport->child = NULL; + } if (viewport->resize_idle_id) gtk_idle_remove (viewport->resize_idle_id); - if (viewport->anchor) + if (viewport->anchor) { g_free (viewport->anchor); + viewport->anchor = NULL; + } if (viewport->anchor_idle_id != -1) gtk_idle_remove (viewport->anchor_idle_id); - (* GTK_OBJECT_CLASS(parent_class)->destroy) (object); + GTK_OBJECT_CLASS(parent_class)->destroy (object); } @@ -195,7 +194,7 @@ { GtkDwViewport *viewport; - (* (GTK_WIDGET_CLASS(parent_class)->realize)) (widget); + GTK_WIDGET_CLASS(parent_class)->realize (widget); gdk_window_set_events (widget->window, gdk_window_get_events (widget->window) @@ -204,6 +203,13 @@ | GDK_POINTER_MOTION_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK); + gdk_window_set_events (GTK_LAYOUT(widget)->bin_window, + gdk_window_get_events (GTK_LAYOUT(widget)->bin_window) + | GDK_BUTTON_PRESS_MASK + | GDK_BUTTON_RELEASE_MASK + | GDK_POINTER_MOTION_MASK + | GDK_ENTER_NOTIFY_MASK + | GDK_LEAVE_NOTIFY_MASK); viewport = GTK_DW_VIEWPORT (widget); if (viewport->child) @@ -220,7 +226,7 @@ { GtkDwViewport *viewport; - (* (GTK_WIDGET_CLASS(parent_class)->unrealize)) (widget); + GTK_WIDGET_CLASS(parent_class)->unrealize (widget); viewport = GTK_DW_VIEWPORT (widget); if (viewport->child) @@ -236,9 +242,8 @@ GdkEventExpose *event) { GtkLayout *layout; - DwRectangle parent_area, child_area, intersection; + DwRectangle child_area, intersection; GtkDwViewport *viewport; - gboolean new_back_pixmap; if (GTK_WIDGET_DRAWABLE (widget)) { layout = GTK_LAYOUT (widget); @@ -247,58 +252,20 @@ DEBUG_MSG (2, "Drawing (%d, %d), %d x %d\n", area->x, area->y, area->width, area->height); - /* Make sure the backing pixmap is large enough. */ if (viewport->child) { - if (viewport->back_pixmap) - new_back_pixmap = - (widget->allocation.width > viewport->back_width || - widget->allocation.height > viewport->back_height); - else - new_back_pixmap = TRUE; - - if (new_back_pixmap) { - if (viewport->back_pixmap) - gdk_pixmap_ref (viewport->back_pixmap); - viewport->back_pixmap = gdk_pixmap_new (widget->window, - widget->allocation.width, - widget->allocation.height, - viewport->depth); - viewport->back_width = widget->allocation.width; - viewport->back_height = widget->allocation.height; - DEBUG_MSG (1, " Creating new pixmap, size = %d x %d\n", - widget->allocation.width, widget->allocation.height); - } - /* Draw top-level Dw widget. */ - parent_area.x = - p_Dw_widget_x_viewport_to_world (viewport->child, area->x); - parent_area.y = - p_Dw_widget_y_viewport_to_world (viewport->child, area->y); - parent_area.width = area->width; - parent_area.height = area->height; - child_area.x = viewport->child->allocation.x; child_area.y = viewport->child->allocation.y; child_area.width = viewport->child->allocation.width; child_area.height = (viewport->child->allocation.ascent + viewport->child->allocation.descent); - if (p_Dw_rectangle_intersect (&parent_area, &child_area, + if (p_Dw_rectangle_intersect ((DwRectangle *)area, &child_area, &intersection)) { intersection.x -= viewport->child->allocation.x; intersection.y -= viewport->child->allocation.y; - /* "Clear" backing pixmap. */ - gdk_draw_rectangle (viewport->back_pixmap, - viewport->child->style->background_color->gc, - TRUE, area->x, area->y, - area->width, area->height); - /* Widgets draw in backing pixmap. */ a_Dw_widget_draw (viewport->child, &intersection, event); - /* Copy backing pixmap into window. */ - gdk_draw_pixmap (layout->bin_window, widget->style->black_gc, - viewport->back_pixmap, area->x, area->y, - area->x, area->y, area->width, area->height); } } else gdk_window_clear_area (layout->bin_window, @@ -310,48 +277,32 @@ /* * Standard Gtk+ function */ -static void Dw_gtk_viewport_draw (GtkWidget *widget, - GdkRectangle *area) -{ - Dw_gtk_viewport_paint (widget, area, NULL); - (* (GTK_WIDGET_CLASS(parent_class)->draw)) (widget, area); -} - - -/* - * Standard Gtk+ function - */ -static gint Dw_gtk_viewport_expose (GtkWidget *widget, - GdkEventExpose *event) +static gboolean Dw_gtk_viewport_expose (GtkWidget *widget, + GdkEventExpose *event) { Dw_gtk_viewport_paint (widget, &(event->area), event); - return (* (GTK_WIDGET_CLASS(parent_class)->expose_event)) (widget, event); + return GTK_WIDGET_CLASS(parent_class)->expose_event (widget, event); } /* * Handle the mouse event and deliver it to the Dw widget. - * Most is done in a_Dw_widget_mouse_event. + * Most is done in Dw_widget_mouse_event. */ -static gint Dw_gtk_viewport_mouse_event (GtkWidget *widget, - gint32 x, - gint32 y, - GdkEvent *event) +static gboolean Dw_gtk_viewport_mouse_event (GtkWidget *widget, + gint32 x, gint32 y, + GdkEventAny *event) { GtkDwViewport *viewport; DwWidget *dw_widget; - gint32 world_x, world_y; - if (event == NULL || event->any.window == widget->window) { + if (event == NULL || event->window == widget->window || + event->window == GTK_LAYOUT(widget)->bin_window) { viewport = GTK_DW_VIEWPORT (widget); if (viewport->child) { - world_x = x + gtk_layout_get_hadjustment(GTK_LAYOUT(viewport))->value; - world_y = y + gtk_layout_get_vadjustment(GTK_LAYOUT(viewport))->value; dw_widget = - Dw_gtk_viewport_widget_at_point (viewport, world_x, world_y); - - return Dw_widget_mouse_event (dw_widget, widget, - world_x, world_y, event); + Dw_gtk_viewport_widget_at_point (viewport, x, y); + return Dw_widget_mouse_event (dw_widget, widget, x, y, event); } } @@ -362,37 +313,37 @@ /* * Standard Gtk+ function */ -static gint Dw_gtk_viewport_button_press (GtkWidget *widget, - GdkEventButton *event) +static gboolean Dw_gtk_viewport_button_press (GtkWidget *widget, + GdkEventButton *event) { return Dw_gtk_viewport_mouse_event (widget, event->x, event->y, - (GdkEvent*) event); + (GdkEventAny*) event); } /* * Standard Gtk+ function */ -static gint Dw_gtk_viewport_button_release (GtkWidget *widget, - GdkEventButton *event) +static gboolean Dw_gtk_viewport_button_release (GtkWidget *widget, + GdkEventButton *event) { return Dw_gtk_viewport_mouse_event (widget, event->x, event->y, - (GdkEvent*) event); + (GdkEventAny*) event); } /* * Standard Gtk+ function */ -static gint Dw_gtk_viewport_motion_notify (GtkWidget *widget, - GdkEventMotion *event) +static gboolean Dw_gtk_viewport_motion_notify (GtkWidget *widget, + GdkEventMotion *event) { GtkDwViewport *viewport = GTK_DW_VIEWPORT (widget); viewport->mouse_x = event->x; viewport->mouse_y = event->y; return Dw_gtk_viewport_mouse_event (widget, event->x, event->y, - (GdkEvent*) event); + (GdkEventAny*) event); } @@ -421,11 +372,12 @@ * This function is called when the viewport changes, and causes * motion_notify events to be simulated. */ -static void Dw_gtk_viewport_adj_changed (GtkAdjustment *adj, - GtkDwViewport *viewport) +static gboolean Dw_gtk_viewport_adj_changed (GtkAdjustment *adj, + GtkDwViewport *viewport) { - Dw_gtk_viewport_mouse_event (GTK_WIDGET (viewport), - viewport->mouse_x, viewport->mouse_y, NULL); + return Dw_gtk_viewport_mouse_event (GTK_WIDGET (viewport), + viewport->mouse_x, viewport->mouse_y, + NULL); } /********************** @@ -545,8 +497,9 @@ widget = GTK_WIDGET (viewport); scrolled = GTK_SCROLLED_WINDOW (widget->parent->parent); - space = GTK_SCROLLED_WINDOW_CLASS(GTK_OBJECT(scrolled)->klass) - ->scrollbar_spacing; + space = GTK_SCROLLED_WINDOW_CLASS(G_OBJECT_GET_CLASS( + G_OBJECT(scrolled)))->scrollbar_spacing; + if (space < 0) space = 3; /* Bad solution, check gtkscrolledwindow.c */ border_width = GTK_CONTAINER(viewport)->border_width; gtk_widget_size_request (scrolled->vscrollbar, &bar_requisition); @@ -747,7 +700,7 @@ g_hash_table_lookup_extended (widget->anchors_table, viewport->anchor, NULL, &p)) Dw_gtk_viewport_scroll_to (viewport, - GPOINTER_TO_INT(p) + widget->allocation.y); + GPOINTER_TO_INT (p) + widget->allocation.y); else { if (DW_IS_CONTAINER (widget)) a_Dw_container_forall (DW_CONTAINER (widget), @@ -777,7 +730,7 @@ Dw_gtk_viewport_remove_anchor (viewport); if (anchor) { - viewport->anchor = g_strdup(anchor); + viewport->anchor = g_strdup (anchor); Dw_gtk_viewport_update_anchor (viewport); } else { viewport->anchor = NULL; @@ -813,7 +766,7 @@ /* * Remove anchor and idle function. */ -void Dw_gtk_viewport_remove_anchor (GtkDwViewport *viewport) +gboolean Dw_gtk_viewport_remove_anchor (GtkDwViewport *viewport) { if (viewport->anchor) { g_free (viewport->anchor); @@ -824,4 +777,5 @@ gtk_idle_remove (viewport->anchor_idle_id); viewport->anchor_idle_id = -1; } + return TRUE; } diff -urN dillo-0.6.6/src/dw_gtk_viewport.h dillo2-0.6.6/src/dw_gtk_viewport.h --- dillo-0.6.6/src/dw_gtk_viewport.h 2001-12-22 13:51:08.000000000 -0700 +++ dillo2-0.6.6/src/dw_gtk_viewport.h 2003-04-21 12:35:47.000000000 -0600 @@ -25,8 +25,6 @@ { GtkLayout layout; - GdkPixmap *back_pixmap; /* backing pixmap for buffering */ - gint back_width, back_height; gint depth; DwWidget *child; @@ -71,7 +69,7 @@ void Dw_gtk_viewport_update_anchor (GtkDwViewport *viewport); void Dw_gtk_viewport_scroll_to (GtkDwViewport *viewport, gint32 y); -void Dw_gtk_viewport_remove_anchor (GtkDwViewport *viewport); +gboolean Dw_gtk_viewport_remove_anchor (GtkDwViewport *viewport); #ifdef __cplusplus } diff -urN dillo-0.6.6/src/dw_hruler.c dillo2-0.6.6/src/dw_hruler.c --- dillo-0.6.6/src/dw_hruler.c 2002-03-13 05:08:43.000000000 -0700 +++ dillo2-0.6.6/src/dw_hruler.c 2003-04-21 12:35:48.000000000 -0600 @@ -29,25 +29,27 @@ GdkEventExpose *event); -GtkType a_Dw_hruler_get_type (void) +GType a_Dw_hruler_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwHruler", - sizeof (DwHruler), + GTypeInfo info = { sizeof (DwHrulerClass), - (GtkClassInitFunc) Dw_hruler_class_init, - (GtkObjectInitFunc) Dw_hruler_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_hruler_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwHruler), + 0, + (GInstanceInitFunc) Dw_hruler_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_WIDGET, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_WIDGET, + "DwHruler", &info, flags); } - return type; } @@ -71,7 +73,7 @@ object_class = GTK_OBJECT_CLASS (klass); - widget_class = (DwWidgetClass*)klass; + widget_class = DW_WIDGET_CLASS (klass); widget_class->size_request = Dw_hruler_size_request; widget_class->draw = Dw_hruler_draw; } diff -urN dillo-0.6.6/src/dw_image.c dillo2-0.6.6/src/dw_image.c --- dillo-0.6.6/src/dw_image.c 2002-04-09 18:56:26.000000000 -0600 +++ dillo2-0.6.6/src/dw_image.c 2003-04-21 12:35:49.000000000 -0600 @@ -88,25 +88,27 @@ /* * Standard Gtk+ function. */ -GtkType a_Dw_image_get_type (void) +GType a_Dw_image_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwImage", - sizeof (DwImage), + GTypeInfo info = { sizeof (DwImageClass), - (GtkClassInitFunc) Dw_image_class_init, - (GtkObjectInitFunc) Dw_image_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_image_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwImage), + 0, + (GInstanceInitFunc) Dw_image_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_WIDGET, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_WIDGET, + "DwImage", &info, flags); } - return type; } @@ -119,8 +121,9 @@ GtkObject *object; object = gtk_object_new (DW_TYPE_IMAGE, NULL); - if (alt && alt[0] && prefs.show_alt) + if (alt && alt[0] && prefs.show_alt) { DW_IMAGE(object)->alt_tooltip = a_Dw_tooltip_new (alt); + } return DW_WIDGET (object); } @@ -154,41 +157,48 @@ object_class->destroy = Dw_image_destroy; image_signals[LINK_ENTERED] = - gtk_signal_new ("link_entered", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwImageClass, link_entered), - p_Dw_marshal_link_enter, - GTK_TYPE_NONE, - 3, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT); + g_signal_new ("link_entered", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwImageClass, link_entered), + NULL, + NULL, + p_Dw_marshal_VOID__INT_INT_INT, + GTK_TYPE_NONE, + 3, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT); image_signals[LINK_PRESSED] = - gtk_signal_new ("link_pressed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwImageClass, link_pressed), - p_Dw_marshal_link_button, - GTK_TYPE_NONE, - 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, - GTK_TYPE_GDK_EVENT); + g_signal_new ("link_pressed", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwImageClass, link_pressed), + NULL, + NULL, + p_Dw_marshal_VOID__INT_INT_INT_POINTER, + GTK_TYPE_NONE, + 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, + GDK_TYPE_EVENT); image_signals[LINK_RELEASED] = - gtk_signal_new ("link_released", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwImageClass, link_released), - p_Dw_marshal_link_button, - GTK_TYPE_NONE, - 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, - GTK_TYPE_GDK_EVENT); + g_signal_new ("link_released", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwImageClass, link_released), + NULL, + NULL, + p_Dw_marshal_VOID__INT_INT_INT_POINTER, + GTK_TYPE_NONE, + 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, + GDK_TYPE_EVENT); image_signals[LINK_CLICKED] = - gtk_signal_new ("link_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwImageClass, link_clicked), - p_Dw_marshal_link_button, - GTK_TYPE_NONE, - 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, - GTK_TYPE_GDK_EVENT); - gtk_object_class_add_signals (object_class, image_signals, LAST_SIGNAL); + g_signal_new ("link_clicked", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwImageClass, link_clicked), + NULL, + NULL, + p_Dw_marshal_VOID__INT_INT_INT_POINTER, + GTK_TYPE_NONE, + 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, + GDK_TYPE_EVENT); widget_class = (DwWidgetClass*)klass; widget_class->size_request = Dw_image_size_request; @@ -214,11 +224,11 @@ if (image->scaled_buffer) g_free (image->scaled_buffer); if (image->usemap_url) - a_Url_free(image->usemap_url); + a_Url_free (image->usemap_url); if (image->url) - a_Dicache_unref(image->url, image->version); + a_Dicache_unref (image->url, image->version); - (* GTK_OBJECT_CLASS(parent_class)->destroy) (object); + GTK_OBJECT_CLASS(parent_class)->destroy (object); } @@ -231,11 +241,19 @@ DwImage *image; image = DW_IMAGE (widget); - requisition->width = - image->width + p_Dw_style_box_diff_width (widget->style); - requisition->ascent = - image->height + p_Dw_style_box_diff_height (widget->style); - requisition->descent = 0; + if (prefs.halfsize_images) { + requisition->width = + image->width/2 + p_Dw_style_box_diff_width (widget->style); + requisition->ascent = + image->height/2 + p_Dw_style_box_diff_height (widget->style); + requisition->descent = 0; + } else { + requisition->width = + image->width + p_Dw_style_box_diff_width (widget->style); + requisition->ascent = + image->height + p_Dw_style_box_diff_height (widget->style); + requisition->descent = 0; + } } @@ -276,8 +294,8 @@ DwImage *image = DW_IMAGE (widget); guchar *buffer, *bstart; - //g_print(">Area x=%d y=%d w=%d h=%d\n", area->x, area->y, - // area->width, area->height); + //g_print (">Area x=%d y=%d w=%d h=%d\n", area->x, area->y, + // area->width, area->height); p_Dw_widget_draw_widget_box (widget, area); @@ -290,8 +308,8 @@ p_Dw_style_box_diff_height (widget->style); if (p_Dw_rectangle_intersect (area, &content, &intersection)) { - vx = p_Dw_widget_x_world_to_viewport (widget, widget->allocation.x); - vy = p_Dw_widget_y_world_to_viewport (widget, widget->allocation.y); + vx = widget->allocation.x; + vy = widget->allocation.y; gc = widget->style->color->gc; if (image->scaled_buffer) @@ -304,7 +322,7 @@ content.width * (intersection.y - p_Dw_style_box_offset_y (widget->style)) ); - gdk_draw_rgb_image( + gdk_draw_rgb_image ( DW_WIDGET_WINDOW (widget), gc, vx + intersection.x, vy + intersection.y, intersection.width, intersection.height, GDK_RGB_DITHER_MAX, @@ -343,8 +361,8 @@ if (image->hover_link != -1) { image->hover_link = -1; - gtk_signal_emit (GTK_OBJECT (widget), image_signals[LINK_ENTERED], - -1, -1, -1); + g_signal_emit (G_OBJECT (widget), image_signals[LINK_ENTERED], 0, + -1, -1, -1); } return FALSE; @@ -365,8 +383,8 @@ Dw_image_find_link (image, x, y, &image->pressed_link, &link_x, &link_y); if (image->pressed_link >= 0) { - gtk_signal_emit (GTK_OBJECT (widget), image_signals[LINK_PRESSED], - image->pressed_link, link_x, link_y, event); + g_signal_emit (G_OBJECT (widget), image_signals[LINK_PRESSED], 0, + image->pressed_link, link_x, link_y, event); return TRUE; } else return FALSE; @@ -389,11 +407,11 @@ image->pressed_link = -1; if (link_released >= 0) { - gtk_signal_emit (GTK_OBJECT (widget), image_signals[LINK_RELEASED], - link_released, link_x, link_y, event); + g_signal_emit (G_OBJECT (widget), image_signals[LINK_RELEASED], 0, + link_released, link_x, link_y, event); if (link_pressed == link_released) - gtk_signal_emit (GTK_OBJECT (widget), image_signals[LINK_CLICKED], - link_released, link_x, link_y, event); + g_signal_emit (G_OBJECT (widget), image_signals[LINK_CLICKED], 0, + link_released, link_x, link_y, event); return TRUE; } else return FALSE; @@ -419,8 +437,8 @@ /* In case of a ISMAP image, the signal has to be emitted always */ if (link_x != -1 || link != link_old) { - gtk_signal_emit (GTK_OBJECT (widget), image_signals[LINK_ENTERED], - link, link_x, link_y); + g_signal_emit (G_OBJECT (widget), image_signals[LINK_ENTERED], 0, + link, link_x, link_y); return TRUE; } else return (link != -1); @@ -463,14 +481,14 @@ /* * Set or resize a image. */ -void a_Dw_image_size(DwImage *image, gint width, gint height) +void a_Dw_image_size (DwImage *image, gint width, gint height) { gint Resize = (image->width != width || image->height != height); image->width = width; image->height = height; - if ( Resize ) - p_Dw_widget_queue_resize(DW_WIDGET (image), 0, TRUE); + if (Resize) + p_Dw_widget_queue_resize (DW_WIDGET (image), 0, TRUE); if (image->buffer) /* if a_Dw_image_set_buffer has been called before */ @@ -481,8 +499,8 @@ * Called after the RGB line buffer has been copied into the full * image buffer. Uses for drawing and scaling. */ -void a_Dw_image_draw_row(DwImage *image, - gint Width, gint Height, gint x, gint y) +void a_Dw_image_draw_row (DwImage *image, + gint Width, gint Height, gint x, gint y) { DwWidget *widget = DW_WIDGET (image); gint dy1, dy2; @@ -509,8 +527,8 @@ /* * Set the widget buffer to reference the dicache entry buffer */ -void a_Dw_image_set_buffer(DwImage *image, guchar *ImageBuffer, - DilloUrl *url, gint version) +void a_Dw_image_set_buffer (DwImage *image, guchar *ImageBuffer, + DilloUrl *url, gint version) { image->buffer = ImageBuffer; image->url = url; @@ -538,7 +556,7 @@ image->map_list = map_list; if (image->usemap_url) - a_Url_free(image->usemap_url); + a_Url_free (image->usemap_url); image->usemap_url = usemap_url ? a_Url_dup (usemap_url) : NULL; } @@ -649,11 +667,11 @@ { list->num_maps = 0; list->num_maps_max = 8; - list->maps = g_new(DwImageMap, list->num_maps_max); + list->maps = g_new (DwImageMap, list->num_maps_max); list->num_shapes = 0; list->num_shapes_max = 8; - list->shapes = g_new(DwImageMapShape, list->num_shapes_max); + list->shapes = g_new (DwImageMapShape, list->num_shapes_max); } @@ -684,7 +702,7 @@ DilloUrl *url) { list->num_maps++; - a_List_add(list->maps, list->num_maps, list->num_maps_max); + a_List_add (list->maps, list->num_maps, list->num_maps_max); list->maps[list->num_maps - 1].url = a_Url_dup (url); list->maps[list->num_maps - 1].start_shape = list->num_shapes; } @@ -718,7 +736,7 @@ if (correct_args) { list->num_shapes++; - a_List_add(list->shapes, list->num_shapes, list->num_shapes_max); + a_List_add (list->shapes, list->num_shapes, list->num_shapes_max); shape = &list->shapes[list->num_shapes - 1]; shape->type = type; shape->link = link; diff -urN dillo-0.6.6/src/dw_image.h dillo2-0.6.6/src/dw_image.h --- dillo-0.6.6/src/dw_image.h 2001-12-22 13:51:08.000000000 -0700 +++ dillo2-0.6.6/src/dw_image.h 2003-04-21 12:35:49.000000000 -0600 @@ -36,6 +36,7 @@ gint version; DwImageType type; guchar *buffer; + /* true width and height */ gint width; gint height; diff -urN dillo-0.6.6/src/dw_list_item.c dillo2-0.6.6/src/dw_list_item.c --- dillo-0.6.6/src/dw_list_item.c 2002-03-18 08:02:50.000000000 -0700 +++ dillo2-0.6.6/src/dw_list_item.c 2003-04-21 12:35:50.000000000 -0600 @@ -21,25 +21,27 @@ /* * Standard Gtk+ function. */ -GtkType a_Dw_list_item_get_type (void) +GType a_Dw_list_item_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwListItem", - sizeof (DwListItem), + GTypeInfo info = { sizeof (DwListItemClass), - (GtkClassInitFunc) Dw_list_item_class_init, - (GtkObjectInitFunc) Dw_list_item_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_list_item_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwListItem), + 0, + (GInstanceInitFunc) Dw_list_item_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_ALIGNED_PAGE, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_ALIGNED_PAGE, + "DwListItem", &info, flags); } - return type; } @@ -51,9 +53,9 @@ */ DwWidget* a_Dw_list_item_new (DwListItem *ref_list_item) { - GtkObject *object; + GObject *object; - object = gtk_object_new (DW_TYPE_LIST_ITEM, NULL); + object = g_object_new (DW_TYPE_LIST_ITEM, NULL); p_Dw_aligned_page_set_ref_page (DW_ALIGNED_PAGE (object), (DwAlignedPage*)ref_list_item); return DW_WIDGET (object); diff -urN dillo-0.6.6/src/dw_marshal.c dillo2-0.6.6/src/dw_marshal.c --- dillo-0.6.6/src/dw_marshal.c 2002-03-13 05:08:45.000000000 -0700 +++ dillo2-0.6.6/src/dw_marshal.c 2003-04-21 12:35:50.000000000 -0600 @@ -1,36 +1,252 @@ -#include "dw_marshal.h" +#include <glib-object.h> -typedef void (*GtkSignal_NONE__INT_INT_INT) (GtkObject * object, - gint arg1, gint arg2, - gint arg3, gpointer user_data); -void p_Dw_marshal_NONE__INT_INT_INT (GtkObject * object, - GtkSignalFunc Func, - gpointer FuncData, GtkArg * args) +#ifdef G_ENABLE_DEBUG +#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) +#define g_marshal_value_peek_char(v) g_value_get_char (v) +#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) +#define g_marshal_value_peek_int(v) g_value_get_int (v) +#define g_marshal_value_peek_uint(v) g_value_get_uint (v) +#define g_marshal_value_peek_long(v) g_value_get_long (v) +#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) +#define g_marshal_value_peek_int64(v) g_value_get_int64 (v) +#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) +#define g_marshal_value_peek_enum(v) g_value_get_enum (v) +#define g_marshal_value_peek_flags(v) g_value_get_flags (v) +#define g_marshal_value_peek_float(v) g_value_get_float (v) +#define g_marshal_value_peek_double(v) g_value_get_double (v) +#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) +#define g_marshal_value_peek_param(v) g_value_get_param (v) +#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) +#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) +#define g_marshal_value_peek_object(v) g_value_get_object (v) +#else /* !G_ENABLE_DEBUG */ +/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. + * Do not access GValues directly in your code. Instead, use the + * g_value_get_*() functions + */ +#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int +#define g_marshal_value_peek_char(v) (v)->data[0].v_int +#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint +#define g_marshal_value_peek_int(v) (v)->data[0].v_int +#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint +#define g_marshal_value_peek_long(v) (v)->data[0].v_long +#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 +#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 +#define g_marshal_value_peek_enum(v) (v)->data[0].v_int +#define g_marshal_value_peek_flags(v) (v)->data[0].v_uint +#define g_marshal_value_peek_float(v) (v)->data[0].v_float +#define g_marshal_value_peek_double(v) (v)->data[0].v_double +#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer +#endif /* !G_ENABLE_DEBUG */ + + +/* VOID:VOID (dw_marshal.list:25) */ + +/* VOID:POINTER (dw_marshal.list:26) */ + +/* VOID:POINTER,POINTER (dw_marshal.list:27) */ +void +p_Dw_marshal_VOID__POINTER_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - GtkSignal_NONE__INT_INT_INT rfunc; - rfunc = (GtkSignal_NONE__INT_INT_INT) Func; - rfunc (object, - GTK_VALUE_INT (args[0]), GTK_VALUE_INT (args[1]), - GTK_VALUE_INT (args[2]), FuncData); + typedef void (*GMarshalFunc_VOID__POINTER_POINTER) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_VOID__POINTER_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__POINTER_POINTER) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_pointer (param_values + 1), + g_marshal_value_peek_pointer (param_values + 2), + data2); } +/* VOID:INT,INT (dw_marshal.list:28) */ +void +p_Dw_marshal_VOID__INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__INT_INT) (gpointer data1, + gint arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_VOID__INT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_int (param_values + 1), + g_marshal_value_peek_int (param_values + 2), + data2); +} + +/* VOID:INT,INT,INT (dw_marshal.list:29) */ +void +p_Dw_marshal_VOID__INT_INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__INT_INT_INT) (gpointer data1, + gint arg_1, + gint arg_2, + gint arg_3, + gpointer data2); + register GMarshalFunc_VOID__INT_INT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_int (param_values + 1), + g_marshal_value_peek_int (param_values + 2), + g_marshal_value_peek_int (param_values + 3), + data2); +} -typedef void (*GtkSignal_NONE__INT_INT_INT_POINTER) (GtkObject * object, - gint arg1, gint arg2, - gint arg3, - gpointer arg4, - gpointer user_data); - -void p_Dw_marshal_NONE__INT_INT_INT_POINTER (GtkObject * object, - GtkSignalFunc Func, - gpointer FuncData, GtkArg * args) +/* VOID:INT,INT,INT,POINTER (dw_marshal.list:30) */ +void +p_Dw_marshal_VOID__INT_INT_INT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) { - GtkSignal_NONE__INT_INT_INT_POINTER rfunc; - rfunc = (GtkSignal_NONE__INT_INT_INT_POINTER) Func; - rfunc (object, - GTK_VALUE_INT (args[0]), GTK_VALUE_INT (args[1]), - GTK_VALUE_INT (args[2]), GTK_VALUE_POINTER (args[3]), FuncData); + typedef void (*GMarshalFunc_VOID__INT_INT_INT_POINTER) (gpointer data1, + gint arg_1, + gint arg_2, + gint arg_3, + gpointer arg_4, + gpointer data2); + register GMarshalFunc_VOID__INT_INT_INT_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 5); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT_INT_POINTER) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_int (param_values + 1), + g_marshal_value_peek_int (param_values + 2), + g_marshal_value_peek_int (param_values + 3), + g_marshal_value_peek_pointer (param_values + 4), + data2); +} + +/* VOID:UINT (dw_marshal.list:31) */ + +/* BOOL:UINT,UINT,POINTER (dw_marshal.list:33) */ +void +p_Dw_marshal_BOOLEAN__UINT_UINT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__UINT_UINT_POINTER) (gpointer data1, + guint arg_1, + guint arg_2, + gpointer arg_3, + gpointer data2); + register GMarshalFunc_BOOLEAN__UINT_UINT_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__UINT_UINT_POINTER) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_uint (param_values + 1), + g_marshal_value_peek_uint (param_values + 2), + g_marshal_value_peek_pointer (param_values + 3), + data2); + + g_value_set_boolean (return_value, v_return); } diff -urN dillo-0.6.6/src/dw_marshal.h dillo2-0.6.6/src/dw_marshal.h --- dillo-0.6.6/src/dw_marshal.h 2002-03-13 05:08:46.000000000 -0700 +++ dillo2-0.6.6/src/dw_marshal.h 2003-04-21 12:35:50.000000000 -0600 @@ -1,21 +1,62 @@ -#ifndef __DW_MARSHAL_H__ -#define __DW_MARSHAL_H__ -#include <gtk/gtktypeutils.h> -#include <gtk/gtkobject.h> +#ifndef __p_Dw_marshal_MARSHAL_H__ +#define __p_Dw_marshal_MARSHAL_H__ -void p_Dw_marshal_NONE__INT_INT_INT (GtkObject * object, - GtkSignalFunc Func, - gpointer FuncData, GtkArg * args); -void p_Dw_marshal_NONE__INT_INT_INT_POINTER (GtkObject * object, - GtkSignalFunc Func, - gpointer FuncData, GtkArg * args); - -/* - * Marshal fuctions for standard link signals. - */ -#define p_Dw_marshal_link_enter p_Dw_marshal_NONE__INT_INT_INT -#define p_Dw_marshal_link_button p_Dw_marshal_NONE__INT_INT_INT_POINTER +#include <glib-object.h> +G_BEGIN_DECLS + +/* VOID:VOID (dw_marshal.list:25) */ +#define p_Dw_marshal_VOID__VOID g_cclosure_marshal_VOID__VOID + +/* VOID:POINTER (dw_marshal.list:26) */ +#define p_Dw_marshal_VOID__POINTER g_cclosure_marshal_VOID__POINTER + +/* VOID:POINTER,POINTER (dw_marshal.list:27) */ +extern void p_Dw_marshal_VOID__POINTER_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:INT,INT (dw_marshal.list:28) */ +extern void p_Dw_marshal_VOID__INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:INT,INT,INT (dw_marshal.list:29) */ +extern void p_Dw_marshal_VOID__INT_INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:INT,INT,INT,POINTER (dw_marshal.list:30) */ +extern void p_Dw_marshal_VOID__INT_INT_INT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:UINT (dw_marshal.list:31) */ +#define p_Dw_marshal_VOID__UINT g_cclosure_marshal_VOID__UINT + +/* BOOL:UINT,UINT,POINTER (dw_marshal.list:33) */ +extern void p_Dw_marshal_BOOLEAN__UINT_UINT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +#define p_Dw_marshal_BOOL__UINT_UINT_POINTER p_Dw_marshal_BOOLEAN__UINT_UINT_POINTER + +G_END_DECLS + +#endif /* __p_Dw_marshal_MARSHAL_H__ */ -#endif /* __DW_MARSHAL_H__ */ diff -urN dillo-0.6.6/src/dw_marshal.list dillo2-0.6.6/src/dw_marshal.list --- dillo-0.6.6/src/dw_marshal.list 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/src/dw_marshal.list 2003-04-21 12:35:28.000000000 -0600 @@ -0,0 +1,33 @@ +# see glib-genmarshal(1) for a detailed description of the file format, +# possible parameter types are: +# VOID indicates no return type, or no extra +# parameters. if VOID is used as the parameter +# list, no additional parameters may be present. +# BOOLEAN for boolean types (gboolean) +# CHAR for signed char types (gchar) +# UCHAR for unsigned char types (guchar) +# INT for signed integer types (gint) +# UINT for unsigned integer types (guint) +# LONG for signed long integer types (glong) +# ULONG for unsigned long integer types (gulong) +# ENUM for enumeration types (gint) +# FLAGS for flag enumeration types (guint) +# FLOAT for single-precision float types (gfloat) +# DOUBLE for double-precision float types (gdouble) +# STRING for string types (gchar*) +# BOXED for boxed (anonymous but reference counted) types (GBoxed*) +# POINTER for anonymous pointer types (gpointer) +# PARAM for GParamSpec or derived types (GParamSpec*) +# OBJECT for GObject or derived types (GObject*) +# NONE deprecated alias for VOID +# BOOL deprecated alias for BOOLEAN + +VOID: VOID +VOID: POINTER +VOID: POINTER, POINTER +VOID: INT, INT +VOID: INT, INT, INT +VOID: INT, INT, INT, POINTER +VOID: UINT + +BOOL: UINT, UINT, POINTER diff -urN dillo-0.6.6/src/dw_marshal.sh dillo2-0.6.6/src/dw_marshal.sh --- dillo-0.6.6/src/dw_marshal.sh 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/src/dw_marshal.sh 2003-04-21 12:35:45.000000000 -0600 @@ -0,0 +1,4 @@ +#!/bin/sh + +glib-genmarshal --body --stdinc --prefix=p_Dw_marshal dw_marshal.list > dw_marshal.c +glib-genmarshal --header --stdinc --prefix=p_Dw_marshal dw_marshal.list > dw_marshal.h diff -urN dillo-0.6.6/src/dw_page.c dillo2-0.6.6/src/dw_page.c --- dillo-0.6.6/src/dw_page.c 2002-04-05 08:18:17.000000000 -0700 +++ dillo2-0.6.6/src/dw_page.c 2003-04-21 14:22:14.000000000 -0600 @@ -53,19 +53,19 @@ static void Dw_page_draw (DwWidget *page, DwRectangle *area, GdkEventExpose *event); -static gint Dw_page_button_press (DwWidget *widget, +static gboolean Dw_page_button_press (DwWidget *widget, gint32 x, gint32 y, GdkEventButton *event); -static gint Dw_page_button_release (DwWidget *widget, +static gboolean Dw_page_button_release(DwWidget *widget, gint32 x, gint32 y, GdkEventButton *event); -static gint Dw_page_motion_notify (DwWidget *widget, +static gboolean Dw_page_motion_notify (DwWidget *widget, gint32 x, gint32 y, GdkEventMotion *event); -static gint Dw_page_leave_notify (DwWidget *widget, +static gboolean Dw_page_leave_notify (DwWidget *widget, DwWidget *next_widget, GdkEventMotion *event); @@ -77,10 +77,15 @@ static void Dw_page_forall (DwContainer *container, DwCallback callback, gpointer callback_data); -static gint Dw_page_findtext (DwContainer *container, +static gboolean Dw_page_findtext (DwContainer *container, gpointer FP, gpointer KP, gchar *NewKey); +static DwIterator* Dw_page_iterator (DwWidget *widget, + gint mask); +static gboolean Dw_page_iterator_next (DwIterator *it); +static DwIterator* Dw_page_iterator_clone (DwIterator *it); + static void Dw_page_rewrap (DwPage *page); /* @@ -117,25 +122,27 @@ /* * Return the type of DwPage */ -GtkType a_Dw_page_get_type (void) +GType a_Dw_page_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwPage", - sizeof (DwPage), + GTypeInfo info = { sizeof (DwPageClass), - (GtkClassInitFunc) Dw_page_class_init, - (GtkObjectInitFunc) Dw_page_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_page_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwPage), + 0, + (GInstanceInitFunc) Dw_page_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_CONTAINER, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_CONTAINER, "DwPage", + &info, flags); } - return type; } @@ -189,6 +196,8 @@ page->avail_width = 100; page->avail_ascent = 100; page->avail_descent = 0; + + page->context = gdk_pango_context_get(); } /* @@ -211,41 +220,48 @@ * --SG */ page_signals[LINK_ENTERED] = - gtk_signal_new ("link_entered", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwPageClass, link_entered), - p_Dw_marshal_link_enter, - GTK_TYPE_NONE, - 3, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT); + g_signal_new ("link_entered", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwPageClass, link_entered), + NULL, + NULL, + p_Dw_marshal_VOID__INT_INT_INT, + GTK_TYPE_NONE, + 3, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT); page_signals[LINK_PRESSED] = - gtk_signal_new ("link_pressed", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwPageClass, link_pressed), - p_Dw_marshal_link_button, - GTK_TYPE_NONE, - 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, - GTK_TYPE_GDK_EVENT); + g_signal_new ("link_pressed", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwPageClass, link_pressed), + NULL, + NULL, + p_Dw_marshal_VOID__INT_INT_INT_POINTER, + GTK_TYPE_NONE, + 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, + GDK_TYPE_EVENT); page_signals[LINK_RELEASED] = - gtk_signal_new ("link_released", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwPageClass, link_released), - p_Dw_marshal_link_button, - GTK_TYPE_NONE, - 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, - GTK_TYPE_GDK_EVENT); + g_signal_new ("link_released", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwPageClass, link_released), + NULL, + NULL, + p_Dw_marshal_VOID__INT_INT_INT_POINTER, + GTK_TYPE_NONE, + 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, + GDK_TYPE_EVENT); page_signals[LINK_CLICKED] = - gtk_signal_new ("link_clicked", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwPageClass, link_clicked), - p_Dw_marshal_link_button, - GTK_TYPE_NONE, - 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, - GTK_TYPE_GDK_EVENT); - gtk_object_class_add_signals (object_class, page_signals, LAST_SIGNAL); + g_signal_new ("link_clicked", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwPageClass, link_clicked), + NULL, + NULL, + p_Dw_marshal_VOID__INT_INT_INT_POINTER, + GTK_TYPE_NONE, + 4, GTK_TYPE_INT, GTK_TYPE_INT, GTK_TYPE_INT, + GDK_TYPE_EVENT); object_class->destroy = Dw_page_destroy; @@ -262,6 +278,7 @@ widget_class->button_release_event = Dw_page_button_release; widget_class->motion_notify_event = Dw_page_motion_notify; widget_class->leave_notify_event = Dw_page_leave_notify; + widget_class->iterator = Dw_page_iterator; container_class->add = Dw_page_add; container_class->remove = Dw_page_remove; @@ -284,16 +301,16 @@ DwPageWord *word; gint i; - DEBUG_MSG(10, "Dw_page_destroy\n"); + DEBUG_MSG (10, "Dw_page_destroy\n"); for (i = 0; i < page->num_words; i++) { word = &page->words[i]; - if (word->content_type == DW_PAGE_CONTENT_WIDGET) - gtk_object_unref(GTK_OBJECT(word->content.widget)); - else if (word->content_type == DW_PAGE_CONTENT_TEXT) - g_free(word->content.text); - else if (word->content_type == DW_PAGE_CONTENT_ANCHOR) - g_free(word->content.anchor); + if (word->content.type == DW_CONTENT_WIDGET) + gtk_object_unref (GTK_OBJECT(word->content.data.widget)); + else if (word->content.type == DW_CONTENT_TEXT) { + g_free(word->content.data.text.str); + } else if (word->content.type == DW_CONTENT_ANCHOR) + g_free (word->content.data.anchor); a_Dw_style_unref (word->style); a_Dw_style_unref (word->space_style); @@ -307,7 +324,7 @@ page->num_words = 0; page->num_lines = 0; - (* GTK_OBJECT_CLASS(parent_class)->destroy) (object); + GTK_OBJECT_CLASS(parent_class)->destroy (object); } @@ -325,7 +342,7 @@ DwPageLine *last_line; gint height; - Dw_page_rewrap(page); + Dw_page_rewrap (page); if (page->num_lines > 0) { last_line = &page->lines[page->num_lines - 1]; @@ -357,22 +374,24 @@ static void Dw_page_get_word_extremes (DwPageWord *word, DwExtremes *extremes) { - if (word->content_type == DW_PAGE_CONTENT_WIDGET) { - if (DW_WIDGET_USES_HINTS (word->content.widget)) - a_Dw_widget_get_extremes (word->content.widget, extremes); + if (word->content.type == DW_CONTENT_WIDGET) { + if (DW_WIDGET_USES_HINTS (word->content.data.widget)) + a_Dw_widget_get_extremes (word->content.data.widget, extremes); else { - if (DW_STYLE_IS_PERCENTAGE (word->content.widget->style->width)) { + if (DW_STYLE_IS_PERCENTAGE + (word->content.data.widget->style->width)) { extremes->min_width = 0; - if (DW_WIDGET_HAS_CONTENT (word->content.widget)) + if (DW_WIDGET_HAS_CONTENT (word->content.data.widget)) extremes->max_width = DW_INFINITY; else extremes->max_width = 0; - } else if (DW_STYLE_IS_LENGTH (word->content.widget->style->width)) { + } else if (DW_STYLE_IS_LENGTH + (word->content.data.widget->style->width)) { extremes->min_width = extremes->max_width = - DW_STYLE_GET_LENGTH(word->content.widget->style->width, - word->style->font); + DW_STYLE_GET_LENGTH (word->content.data.widget->style->width, + word->style->font); } else - a_Dw_widget_get_extremes (word->content.widget, extremes); + a_Dw_widget_get_extremes (word->content.data.widget, extremes); } } else { extremes->min_width = word->size.width; @@ -449,21 +468,21 @@ par_max += word_extremes.max_width + word->orig_space; DEBUG_MSG (1, " word \"%s\": max_width = %d\n", - word->content_type == DW_PAGE_CONTENT_TEXT ? + word->content.type == DW_CONTENT_TEXT ? word->content.text : "<no text>", word_extremes.max_width); } if ( ( line->last_word > line->first_word && - page->words[line->last_word - 1].content_type - == DW_PAGE_CONTENT_BREAK ) || + page->words[line->last_word - 1].content.type + == DW_CONTENT_BREAK ) || line_index == page->num_lines - 1 ) { word = &page->words[line->last_word - 1]; par_max -= word->orig_space; DEBUG_MSG (2, " par_max = %d, after word %d (\"%s\")\n", par_max, line->last_word - 1, - word->content_type == DW_PAGE_CONTENT_TEXT ? + word->content.type == DW_CONTENT_TEXT ? word->content.text : "<no text>"); if (extremes->max_width < par_max) @@ -508,13 +527,13 @@ for (line_index = 0; line_index < page->num_lines; line_index++) { line = &(page->lines[line_index]); - x_cursor = Dw_page_line_total_x_offset(page, line); + x_cursor = Dw_page_line_total_x_offset (page, line); for (word_index = line->first_word; word_index < line->last_word; word_index++) { word = &(page->words[word_index]); - if (word->content_type == DW_PAGE_CONTENT_WIDGET) { + if (word->content.type == DW_CONTENT_WIDGET) { /* todo: justification within the line is done here! */ child_allocation.x = x_cursor + allocation->x; @@ -527,7 +546,7 @@ child_allocation.width = word->size.width; child_allocation.ascent = word->size.ascent; child_allocation.descent = word->size.descent; - a_Dw_widget_size_allocate (word->content.widget, + a_Dw_widget_size_allocate (word->content.data.widget, &child_allocation); } @@ -550,7 +569,7 @@ if (page->wrap_ref == -1) page->wrap_ref = ref; else - page->wrap_ref = MIN(page->wrap_ref, ref); + page->wrap_ref = MIN (page->wrap_ref, ref); } } @@ -644,11 +663,11 @@ page = DW_PAGE (container); - for(word_index = 0; word_index < page->num_words; word_index++) { + for (word_index = 0; word_index < page->num_words; word_index++) { word = &page->words[word_index]; - if (word->content_type == DW_PAGE_CONTENT_WIDGET) - (*callback) (word->content.widget, callback_data); + if (word->content.type == DW_CONTENT_WIDGET) + (*callback) (word->content.data.widget, callback_data); } } @@ -667,7 +686,7 @@ DwExtremes word_extremes; avail_width = - page->avail_width - p_Dw_style_box_diff_width(widget->style) + page->avail_width - p_Dw_style_box_diff_width (widget->style) - page->inner_padding; if (prefs.limit_text_width && avail_width > widget->viewport->allocation.width - 10) @@ -684,7 +703,7 @@ if (page->num_words > 0) { last_word = &page->words[word_ind - 1]; - if (last_word->content_type == DW_PAGE_CONTENT_BREAK) { + if (last_word->content.type == DW_CONTENT_BREAK) { /* last word is a break */ new_line = TRUE; new_par = TRUE; @@ -740,7 +759,7 @@ if (new_line) { /* Add a new line. */ page->num_lines++; - a_List_add(page->lines, page->num_lines, page->num_lines_max); + a_List_add (page->lines, page->num_lines, page->num_lines_max); last_line = &page->lines[page->num_lines - 1]; @@ -804,8 +823,8 @@ Dw_page_get_word_extremes (word, &word_extremes); last_space = (word_ind > 0) ? page->words[word_ind - 1].orig_space : 0; - if (word->content_type == DW_PAGE_CONTENT_BREAK) - last_line->break_space = MAX (word->content.break_space, + if (word->content.type == DW_CONTENT_BREAK) + last_line->break_space = MAX (word->content.data.break_space, last_line->break_space); page->last_line_width += word->size.width; @@ -824,7 +843,7 @@ /* Finally, justify the line. Breaks are ignored, since the HTML * parser sometimes assignes the wrong style to them. (todo: ) */ - if (word->content_type != DW_PAGE_CONTENT_BREAK) { + if (word->content.type != DW_CONTENT_BREAK) { switch (word->style->text_align) { case DW_STYLE_TEXT_ALIGN_LEFT: case DW_STYLE_TEXT_ALIGN_JUSTIFY: /* see some lines above */ @@ -873,9 +892,9 @@ gint32 avail_width, avail_ascent, avail_descent; avail_width = - page->avail_width - p_Dw_style_box_diff_width(DW_WIDGET(page)->style); + page->avail_width - p_Dw_style_box_diff_width (DW_WIDGET(page)->style); avail_ascent = - page->avail_ascent - p_Dw_style_box_diff_height(DW_WIDGET(page)->style); + page->avail_ascent - p_Dw_style_box_diff_height (DW_WIDGET(page)->style); avail_descent = page->avail_descent; if (DW_WIDGET_USES_HINTS (widget)) { @@ -901,7 +920,7 @@ if (widget->style->height == DW_STYLE_UNDEF_LENGTH) { size->ascent = requisition.ascent; size->descent = requisition.descent; - } else if (DW_STYLE_IS_LENGTH (widget->style->width)) { + } else if (DW_STYLE_IS_LENGTH (widget->style->height)) { size->ascent = DW_STYLE_GET_LENGTH (widget->style->height, widget->style->font) + p_Dw_style_box_diff_height (widget->style); @@ -922,7 +941,7 @@ * either when the viewport is resized, or when the size changes on one * of the child widgets. */ -static void Dw_page_rewrap(DwPage *page) +static void Dw_page_rewrap (DwPage *page) { DwWidget *widget; gint word_index; @@ -944,15 +963,16 @@ for (; word_index < page->num_words; word_index++) { word = &page->words[word_index]; - if (word->content_type == DW_PAGE_CONTENT_WIDGET) - Dw_page_calc_widget_size (page, word->content.widget, &word->size); - Dw_page_word_wrap(page, word_index); - if (word->content_type == DW_PAGE_CONTENT_WIDGET) - word->content.widget->parent_ref = page->num_lines - 1; - - if ( word->content_type == DW_PAGE_CONTENT_ANCHOR ) { - p_Dw_widget_set_anchor(widget, word->content.anchor, - page->lines[page->num_lines - 1].top); + if (word->content.type == DW_CONTENT_WIDGET) + Dw_page_calc_widget_size (page, word->content.data.widget, + &word->size); + Dw_page_word_wrap (page, word_index); + if (word->content.type == DW_CONTENT_WIDGET) + word->content.data.widget->parent_ref = page->num_lines - 1; + + if ( word->content.type == DW_CONTENT_ANCHOR ) { + p_Dw_widget_set_anchor (widget, word->content.data.anchor, + page->lines[page->num_lines - 1].top); } } } @@ -987,90 +1007,116 @@ widget = DW_WIDGET (page); window = DW_WIDGET_WINDOW (widget); - x_cursor = - p_Dw_widget_x_world_to_viewport (widget, - widget->allocation.x + - Dw_page_line_total_x_offset(page,line)); - y_cursor = - p_Dw_widget_y_world_to_viewport (widget, - widget->allocation.y - + line->top + line->ascent); + x_cursor = widget->allocation.x + Dw_page_line_total_x_offset(page, line); + y_cursor = widget->allocation.y + line->top + line->ascent; for (word_index = line->first_word; word_index < line->last_word; word_index++) { word = &page->words[word_index]; diff = 0; - switch (word->content_type) { - case DW_PAGE_CONTENT_TEXT: + switch (word->content.type) { + case DW_CONTENT_TEXT: /* Adjust the text baseline if the word is <SUP>-ed or <SUB>-ed */ if (word->style->SubSup == TEXT_SUB) diff = word->size.ascent / 2; else if (word->style->SubSup == TEXT_SUP) diff -= word->size.ascent / 3; - gdk_draw_string(window, - word->style->font->font, - word->style->color->gc, - x_cursor, - y_cursor + diff, - word->content.text); + { + GList *items; + PangoGlyphString *glyphs; + PangoAttrList *attr_list; + PangoAttribute *attr; + size_t len; + + glyphs = pango_glyph_string_new(); + + attr_list = pango_attr_list_new(); + + attr = pango_attr_font_desc_new(word->style->font->font_desc); + attr->start_index = 0; + attr->end_index = 1; + pango_attr_list_insert(attr_list, attr); + + len = strlen(word->content.data.text.str); + + /* Shape the text into glyphs */ + items = pango_itemize(page->context, word->content.data.text.str, 0, len, attr_list, NULL); + pango_shape(word->content.data.text.str, len, &(((PangoItem *)items->data)->analysis), glyphs); + + while (items) + { + GList *next = items->next; + pango_item_free (items->data); + g_list_free_1 (items); + items = next; + } + + gdk_draw_glyphs(window, word->style->color->gc, + word->content.data.text.font, + x_cursor, y_cursor + diff, + glyphs); + + pango_attr_list_unref(attr_list); + pango_glyph_string_free(glyphs); + } /* underline */ if (word->style->uline) - gdk_draw_line(window, - word->style->color->gc, - x_cursor, - y_cursor + 1 + diff, - x_cursor + word->size.width - 1, - y_cursor + 1 + diff); + gdk_draw_line (window, + word->style->color->gc, + x_cursor, + y_cursor + 1 + diff, + x_cursor + word->size.width - 1, + y_cursor + 1 + diff); if (word_index + 1 < line->last_word && word->space_style->uline) - gdk_draw_line(window, - word->style->color->gc, - x_cursor + word->size.width, - y_cursor + 1 + diff, - x_cursor + word->size.width + word->eff_space - 1, - y_cursor + 1 + diff); + gdk_draw_line (window, + word->style->color->gc, + x_cursor + word->size.width, + y_cursor + 1 + diff, + x_cursor + word->size.width + word->eff_space - 1, + y_cursor + 1 + diff); /* strike-through */ if (word->style->strike) - gdk_draw_line(window, - word->style->color->gc, - x_cursor, - y_cursor - word->size.ascent / 2 + diff, - x_cursor + word->size.width - 1, - y_cursor - word->size.ascent / 2 + diff); + gdk_draw_line (window, + word->style->color->gc, + x_cursor, + y_cursor - word->size.ascent / 2 + diff, + x_cursor + word->size.width - 1, + y_cursor - word->size.ascent / 2 + diff); if (word_index + 1 < line->last_word && word->space_style->strike) - gdk_draw_line(window, - word->style->color->gc, - x_cursor + word->size.width, - y_cursor - word->size.ascent / 2 + diff, - x_cursor + word->size.width + word->eff_space - 1, - y_cursor - word->size.ascent / 2 + diff); + gdk_draw_line (window, + word->style->color->gc, + x_cursor + word->size.width, + y_cursor - word->size.ascent / 2 + diff, + x_cursor + word->size.width + word->eff_space - 1, + y_cursor - word->size.ascent / 2 + diff); break; - case DW_PAGE_CONTENT_WIDGET: - child = word->content.widget; + case DW_CONTENT_WIDGET: + child = word->content.data.widget; if (p_Dw_widget_intersect (child, area, &child_area)) a_Dw_widget_draw (child, &child_area, event); break; - case DW_PAGE_CONTENT_ANCHOR: case DW_PAGE_CONTENT_BREAK: + case DW_CONTENT_ANCHOR: case DW_CONTENT_BREAK: /* nothing - an anchor/break isn't seen */ /* BUG: sometimes anchors have x_space; * we subtract that just in case --EG */ x_cursor -= word->size.width + word->eff_space; #if 0 /* Useful for testing: draw breaks. */ - if (word->content_type == DW_PAGE_CONTENT_BREAK) + if (word->content.type == DW_CONTENT_BREAK) gdk_draw_rectangle (window, word->style->color->gc, TRUE, - Dw_widget_x_world_to_viewport(widget, + Dw_widget_x_world_to_viewport (widget, widget->allocation.x + Dw_page_line_total_x_offset(page, line)), y_cursor + line->descent, widget->allocation.width - - Dw_style_box_diff_width(widget->style), + Dw_style_box_diff_width (widget->style), word->content.break_space); #endif break; @@ -1086,7 +1132,7 @@ /* * Find the first line index that includes y, relative to top of widget. */ -static gint Dw_page_find_line_index(DwPage *page, gint y) +static gint Dw_page_find_line_index (DwPage *page, gint y) { gint max_index = page->num_lines - 1; gint step, index, low = 0; @@ -1129,7 +1175,7 @@ p_Dw_widget_draw_widget_box (widget, area); page = DW_PAGE (widget); - line_index = Dw_page_find_line_index(page, area->y); + line_index = Dw_page_find_line_index (page, area->y); for (; line_index < page->num_lines; line_index++) { line = &(page->lines[line_index]); @@ -1144,20 +1190,20 @@ /* * Find a link given a coordinate location relative to the window */ -static gint Dw_page_find_link(DwPage *page, gint x, gint y) +static gint Dw_page_find_link (DwPage *page, gint x, gint y) { gint line_index, word_index; gint x_cursor, last_x_cursor; DwPageLine *line; DwPageWord *word; - if ( (line_index = Dw_page_find_line_index(page, y)) >= page->num_lines ) + if ( (line_index = Dw_page_find_line_index (page, y)) >= page->num_lines ) return -1; line = &page->lines[line_index]; if (line->top + line->ascent + line->descent <= y) return -1; - x_cursor = Dw_page_line_total_x_offset(page, line); + x_cursor = Dw_page_line_total_x_offset (page, line); for (word_index = line->first_word; word_index < line->last_word; word_index++) { word = &page->words[word_index]; @@ -1174,22 +1220,20 @@ /* * Standard Dw function. */ -static gint Dw_page_button_press (DwWidget *widget, - gint32 x, - gint32 y, - GdkEventButton *event) +static gboolean Dw_page_button_press (DwWidget *widget, gint32 x, gint32 y, + GdkEventButton *event) { DwPage *page = DW_PAGE (widget); #ifdef VERBOSE - g_print("Dw_page_button_press: button (%d, %d) +%d\n", - x, y, button->button); + g_print ("Dw_page_button_press: button (%d, %d) +%d\n", + x, y, event->button); #endif - page->link_pressed = Dw_page_find_link(page, x, y); + page->link_pressed = Dw_page_find_link (page, x, y); if (page->link_pressed >= 0) { - gtk_signal_emit (GTK_OBJECT (widget), page_signals[LINK_PRESSED], - page->link_pressed, -1, -1, event); + g_signal_emit (G_OBJECT (widget), page_signals[LINK_PRESSED], 0, + page->link_pressed, -1, -1, event); return TRUE; } else return FALSE; @@ -1199,42 +1243,40 @@ /* * Standard Dw function. */ -static gint Dw_page_button_release(DwWidget *widget, - gint32 x, - gint32 y, - GdkEventButton *event) +static gboolean Dw_page_button_release (DwWidget *widget, gint32 x, gint32 y, + GdkEventButton *event) { DwPage *page = DW_PAGE (widget); gint link_pressed, link_released; #ifdef VERBOSE - g_print("Dw_page_button_release: button (%d, %d) +%d\n", - x, y, event->button); + g_print ("Dw_page_button_release: button (%d, %d) +%d\n", + x, y, event->button); #endif link_pressed = page->link_pressed; - link_released = Dw_page_find_link(page, x, y); + link_released = Dw_page_find_link (page, x, y); page->link_pressed = -1; if (link_released >= 0) { - gtk_signal_emit (GTK_OBJECT (widget), page_signals[LINK_RELEASED], - link_released, -1, -1, event); + g_signal_emit (G_OBJECT (widget), page_signals[LINK_RELEASED], 0, + link_released, -1, -1, event); if (link_pressed == link_released) { - gtk_signal_emit (GTK_OBJECT (widget), page_signals[LINK_CLICKED], - link_released, -1, -1, event); + g_signal_emit (G_OBJECT (widget), page_signals[LINK_CLICKED], 0, + link_released, -1, -1, event); } return TRUE; - } else - return FALSE; + } + return FALSE; } /* * Standard Dw function. */ -static gint Dw_page_motion_notify (DwWidget *widget, +static gboolean Dw_page_motion_notify (DwWidget *widget, gint32 x, gint32 y, GdkEventMotion *event) @@ -1243,15 +1285,15 @@ gint link, link_old; link_old = page->hover_link; - link = Dw_page_find_link(page, x, y); + link = Dw_page_find_link (page, x, y); page->hover_link = link; if (link != link_old) { - gtk_signal_emit (GTK_OBJECT (widget), page_signals[LINK_ENTERED], - link, -1, -1); + g_signal_emit (G_OBJECT (widget), page_signals[LINK_ENTERED], 0, + link, -1, -1); return TRUE; - } else - return (link != -1); + } + return (link != -1); } @@ -1266,8 +1308,8 @@ if (page->hover_link != -1) { page->hover_link = -1; - gtk_signal_emit (GTK_OBJECT (widget), page_signals[LINK_ENTERED], - -1, -1, -1); + g_signal_emit (G_OBJECT (widget), page_signals[LINK_ENTERED], 0, + -1, -1, -1); } return FALSE; @@ -1277,16 +1319,16 @@ /* * Add a new word (text, widget etc.) to a page. */ -static DwPageWord *Dw_page_add_word(DwPage *page, - gint width, - gint ascent, - gint descent, - DwStyle *style) +static DwPageWord *Dw_page_add_word (DwPage *page, + gint width, + gint ascent, + gint descent, + DwStyle *style) { DwPageWord *word; page->num_words++; - a_List_add(page->words, page->num_words, page->num_words_max); + a_List_add (page->words, page->num_words, page->num_words_max); word = &page->words[page->num_words - 1]; word->size.width = width; @@ -1308,14 +1350,55 @@ * Add a word to the page structure. Stashes the argument pointer in * the page data structure so that it will be deallocated on destroy. */ -void a_Dw_page_add_text(DwPage *page, char *text, DwStyle *style) +void a_Dw_page_add_text (DwPage *page, char *text, DwStyle *style) { DwPageWord *word; - gint width, ascent, descent; + gint width, ascent, descent, len; + GList *items; + PangoGlyphString *glyphs; + PangoRectangle rect; + PangoFont *font; + PangoAttrList *attr_list; + PangoAttribute *attr; + + if (*text == '\0') + return; + + if (!g_utf8_validate(text, -1, NULL)) { + g_warning("Invalid UTF-8\n"); + } + + glyphs = pango_glyph_string_new(); + len = strlen(text); + + attr_list = pango_attr_list_new(); - width = gdk_string_width(style->font->font, text); - ascent = style->font->font->ascent; - descent = style->font->font->descent; + attr = pango_attr_font_desc_new(style->font->font_desc); + attr->start_index = 0; + attr->end_index = 1; + pango_attr_list_insert(attr_list, attr); + + /* Shape the text into glyphs */ + items = pango_itemize(page->context, text, 0, len, attr_list, NULL); + pango_shape(text, len, &(((PangoItem *)items->data)->analysis), glyphs); + + while (items) + { + GList *next = items->next; + pango_item_free (items->data); + g_list_free_1 (items); + items = next; + } + + font = pango_context_load_font(page->context, style->font->font_desc); + + /* Get the sizes */ + pango_glyph_string_extents(glyphs, font, NULL, &rect); + width = rect.width / PANGO_SCALE; + ascent = PANGO_ASCENT(rect) / PANGO_SCALE; + descent = PANGO_DESCENT(rect) / PANGO_SCALE; + + pango_glyph_string_free(glyphs); /* In case of a sub or super script we increase the word's height and * potentially the line's height. @@ -1325,10 +1408,13 @@ else if (style->SubSup == TEXT_SUP) ascent += (ascent / 3); - word = Dw_page_add_word(page, width, ascent, descent, style); - word->content_type = DW_PAGE_CONTENT_TEXT; - word->content.text = text; + word = Dw_page_add_word (page, width, ascent, descent, style); + word->content.type = DW_CONTENT_TEXT; + word->content.data.text.str = text; + word->content.data.text.font = font; Dw_page_word_wrap (page, page->num_words - 1); + + pango_attr_list_unref(attr_list); } /* @@ -1345,13 +1431,14 @@ a_Dw_widget_set_style (widget, style); Dw_page_calc_widget_size (page, widget, &size); - word = Dw_page_add_word(page, size.width, size.ascent, size.descent, style); + word = + Dw_page_add_word (page, size.width, size.ascent, size.descent, style); - word->content_type = DW_PAGE_CONTENT_WIDGET; - word->content.widget = widget; + word->content.type = DW_CONTENT_WIDGET; + word->content.data.widget = widget; Dw_page_word_wrap (page, page->num_words - 1); - word->content.widget->parent_ref = page->num_lines - 1; + word->content.data.widget->parent_ref = page->num_lines - 1; } @@ -1359,24 +1446,24 @@ * Add an anchor to the page. name is copied, so no strdup is neccessary for * the caller. */ -void a_Dw_page_add_anchor(DwPage *page, const char *name, DwStyle *style) +void a_Dw_page_add_anchor (DwPage *page, const char *name, DwStyle *style) { DwPageWord *word; - word = Dw_page_add_word(page, 0, 0, 0, style); - word->content_type = DW_PAGE_CONTENT_ANCHOR; - word->content.anchor = g_strdup(name); + word = Dw_page_add_word (page, 0, 0, 0, style); + word->content.type = DW_CONTENT_ANCHOR; + word->content.data.anchor = g_strdup (name); Dw_page_word_wrap (page, page->num_words - 1); - p_Dw_widget_set_anchor(DW_WIDGET(page), word->content.anchor, - page->lines[page->num_lines - 1].top); + p_Dw_widget_set_anchor (DW_WIDGET(page), word->content.data.anchor, + page->lines[page->num_lines - 1].top); } /* * ? */ -void a_Dw_page_add_space(DwPage *page, DwStyle *style) +void a_Dw_page_add_space (DwPage *page, DwStyle *style) { gint nl, nw; gint space; @@ -1400,7 +1487,7 @@ /* * Cause a paragraph break */ -void a_Dw_page_add_parbreak(DwPage *page, gint space, DwStyle *style) +void a_Dw_page_add_parbreak (DwPage *page, gint space, DwStyle *style) { DwPageWord *word, *word2; DwWidget *widget; @@ -1421,25 +1508,25 @@ way that the space is in any case visible. */ /* Find the widget where to adjust the break_space. */ - for (widget = DW_WIDGET(page); + for (widget = DW_WIDGET (page); widget->parent && DW_IS_PAGE (widget->parent); widget = widget->parent) { - page2 = DW_PAGE(widget->parent); + page2 = DW_PAGE (widget->parent); if (page2->list_item) - isfirst = (page2->words[1].content_type == DW_PAGE_CONTENT_WIDGET - && page2->words[1].content.widget == widget); + isfirst = (page2->words[1].content.type == DW_CONTENT_WIDGET + && page2->words[1].content.data.widget == widget); else - isfirst = (page2->words[0].content_type == DW_PAGE_CONTENT_WIDGET - && page2->words[0].content.widget == widget); + isfirst = (page2->words[0].content.type == DW_CONTENT_WIDGET + && page2->words[0].content.data.widget == widget); if (!isfirst) { /* The page we searched for has been found. */ lineno = widget->parent_ref; if (lineno > 0 && (word2 = &page2->words[page2->lines[lineno - 1].first_word]) && - word2->content_type == DW_PAGE_CONTENT_BREAK) { - if(word2->content.break_space < space) { - word2->content.break_space = space; - p_Dw_widget_queue_resize (DW_WIDGET(page2), lineno, FALSE); + word2->content.type == DW_CONTENT_BREAK) { + if (word2->content.data.break_space < space) { + word2->content.data.break_space = space; + p_Dw_widget_queue_resize (DW_WIDGET (page2), lineno, FALSE); page2->must_queue_resize = FALSE; } } @@ -1453,14 +1540,15 @@ /* Another break before? */ if ((word = &page->words[page->num_words - 1]) && - word->content_type == DW_PAGE_CONTENT_BREAK) { - word->content.break_space = MAX (word->content.break_space, space); + word->content.type == DW_CONTENT_BREAK) { + word->content.data.break_space = + MAX (word->content.data.break_space, space); return; } - word = Dw_page_add_word(page, 0, 0, 0, style); - word->content_type = DW_PAGE_CONTENT_BREAK; - word->content.break_space = space; + word = Dw_page_add_word (page, 0, 0, 0, style); + word->content.type = DW_CONTENT_BREAK; + word->content.data.break_space = space; Dw_page_word_wrap (page, page->num_words - 1); } @@ -1471,10 +1559,11 @@ { DwPageWord *word; - word = Dw_page_add_word(page, 0, style->font->font->ascent, - style->font->font->descent, style); - word->content_type = DW_PAGE_CONTENT_BREAK; - word->content.break_space = 0; + /* word = Dw_page_add_word (page, 0, style->font->font->ascent, + style->font->font->descent, style); */ + word = Dw_page_add_word(page, 0, 0, 0, style); + word->content.type = DW_CONTENT_BREAK; + word->content.data.break_space = 0; word->style = style; //a_Dw_style_ref (style); Dw_page_word_wrap (page, page->num_words - 1); @@ -1504,7 +1593,7 @@ void a_Dw_page_flush (DwPage *page) { if (page->must_queue_resize) { - p_Dw_widget_queue_resize (DW_WIDGET(page), -1, TRUE); + p_Dw_widget_queue_resize (DW_WIDGET (page), -1, TRUE); page->must_queue_resize = FALSE; } } @@ -1514,9 +1603,9 @@ * Find the text in the page. * (Standar DwContainer function) -- todo: move near forall */ -static gint Dw_page_findtext(DwContainer *container, - gpointer FP, gpointer KP, - gchar *NewKey) +static gboolean Dw_page_findtext (DwContainer *container, + gpointer FP, gpointer KP, + gchar *NewKey) { gint i; DwPageWord *word; @@ -1525,7 +1614,7 @@ g_return_val_if_fail ((DW_WIDGET(page))->viewport != NULL, 0); if (!NewKey || !*NewKey) - return 0; + return FALSE; if ( !(F = *(FindData**)FP) ) *(FindData **)FP = F = g_new0(FindData, 1); @@ -1555,17 +1644,17 @@ case F_Seek: for ( ; F->WordNum < page->num_words; F->WordNum++) { word = &page->words[F->WordNum]; - if (word->content_type == DW_PAGE_CONTENT_TEXT && - a_Findtext_compare(word->content.text, F->Key)) { + if (word->content.type == DW_CONTENT_TEXT && + a_Findtext_compare(word->content.data.text.str, F->Key)) { F->State = F_GetPos; break; - } else if (word->content_type == DW_PAGE_CONTENT_WIDGET && - DW_IS_CONTAINER (word->content.widget)) { + } else if (word->content.type == DW_CONTENT_WIDGET && + DW_IS_CONTAINER (word->content.data.widget)) { if ( a_Dw_container_findtext( - DW_CONTAINER(word->content.widget), + DW_CONTAINER(word->content.data.widget), (gpointer)&F->next, (gpointer)F->Key, NewKey) ) { F->State = F_Seek; - return 1; + return TRUE; } } } @@ -1585,17 +1674,58 @@ a_Dw_widget_scroll_to(DW_WIDGET (page), F->Key->y_pos); //g_print(">>>[Wn %d]\n", F->WordNum); F->State = F_Seek; - return 1; + return TRUE; case F_End: /* free memory */ if (!KP && F->Key) a_Findtext_key_free(F->Key); g_free(F); *(FindData **)FP = NULL; - return 0; + return FALSE; } } /* compiler happiness */ - return 0; + return FALSE; } + + +static DwIterator *Dw_page_iterator (DwWidget *widget, + gint mask) +{ + DwIteratorInt *it = g_new (DwIteratorInt, 1); + it->it.widget = widget; + it->it.mask = mask; + it->it.content.type = DW_CONTENT_START; + it->it.next = Dw_page_iterator_next; + it->it.clone = Dw_page_iterator_clone; + it->it.free = p_Dw_iterator_free_std; + it->pos = -1; + return (DwIterator*)it; +} + +static gboolean Dw_page_iterator_next (DwIterator *it) +{ + DwPage *page = DW_PAGE (it->widget); + DwIteratorInt *ii = (DwIteratorInt*)it; + + do { + ii->pos++; + if (ii->pos >= page->num_words) { + it->content.type = DW_CONTENT_END; + return FALSE; + } + } while ((page->words[ii->pos].content.type & it->mask) == 0); + + it->content = page->words[ii->pos].content; + return TRUE; +} + + +static DwIterator* Dw_page_iterator_clone (DwIterator *it) +{ + DwIteratorInt *it2 = g_new (DwIteratorInt, 1); + *it2 = *(DwIteratorInt*)it; + return (DwIterator*)it2; +} + diff -urN dillo-0.6.6/src/dw_page.h dillo2-0.6.6/src/dw_page.h --- dillo-0.6.6/src/dw_page.h 2002-03-11 09:45:00.000000000 -0700 +++ dillo2-0.6.6/src/dw_page.h 2003-04-21 12:35:55.000000000 -0600 @@ -46,10 +46,6 @@ paragraph start */ }; -#define DW_PAGE_CONTENT_TEXT 0 -#define DW_PAGE_CONTENT_WIDGET 1 -#define DW_PAGE_CONTENT_ANCHOR 2 -#define DW_PAGE_CONTENT_BREAK 3 struct _DwPageWord { /* todo: perhaps add a x_left? */ @@ -59,15 +55,7 @@ gint32 eff_space; /* effective space, set by Dw_page_word_wrap, used for drawing etc. */ - /* This is a variant record (i.e. it could point to a widget - * instead of just being text). */ - gint content_type; - union { - char *text; - DwWidget *widget; - char *anchor; - gint break_space; - } content; + DwContent content; DwStyle *style; DwStyle *space_style; /* initially the same as of the word, later @@ -109,6 +97,8 @@ /* The link under the button */ gint hover_link; + + PangoContext *context; }; diff -urN dillo-0.6.6/src/dw_style.c dillo2-0.6.6/src/dw_style.c --- dillo-0.6.6/src/dw_style.c 2002-05-27 19:14:03.000000000 -0600 +++ dillo2-0.6.6/src/dw_style.c 2003-04-21 12:35:56.000000000 -0600 @@ -241,51 +241,36 @@ */ static void Dw_style_font_realize (DwStyleFont *font, gboolean try_all) { - char fontname[256], *ItalicChar; + PangoLayout *layout; - ItalicChar = prefs.use_oblique ? "o" : "i"; - sprintf (fontname, "-*-%s-%s-%s-*-*-%d-*-75-75-*-*-iso8859-1", - font->name, - font->bold ? "bold" : "medium", - font->italic ? ItalicChar : "r", - font->size); - font->font = gdk_font_load(fontname); - - if (font->font == NULL && font->italic) { - sprintf(fontname, "-*-%s-%s-%s-*-*-%d-*-75-75-*-*-iso8859-1", - font->name, - font->bold ? "bold" : "medium", - (*ItalicChar == 'o') ? "i" : "o", - font->size); - font->font = gdk_font_load(fontname); - } - - if (try_all) { - if (font->font == NULL) { - /* Can't load the font - substitute the default instead. */ - font->font = - gdk_font_load - ("-adobe-helvetica-medium-r-normal--*-100-*-*-*-*-iso8859-1"); - } + font->font_desc = pango_font_description_new(); - if (font->font == NULL) { - /* Try another platform-font that should be available. (iPaq) */ - font->font = - gdk_font_load - ("-misc-fixed-medium-r-normal--13-120-75-75-c-80-iso8859-1"); - } + if (font->font_desc) { + pango_font_description_set_family(font->font_desc, font->name); - if (font->font == NULL) { - /* Can't load any suitable font! */ - g_warning ("Can't load any ISO8859-1 font!?! :("); - font->font = - gdk_font_load("-adobe-helvetica-*-*-*--*-*-*-*-*-*-*-*"); + if(font->italic) { + pango_font_description_set_style(font->font_desc, + (prefs.use_oblique ? + PANGO_STYLE_OBLIQUE : + PANGO_STYLE_ITALIC)); } - } - if (font->font) { - font->space_width = gdk_char_width (font->font, ' '); - font->x_height = gdk_char_height (font->font, 'x'); + if(font->bold) + pango_font_description_set_weight(font->font_desc, PANGO_WEIGHT_BOLD); + + pango_font_description_set_size(font->font_desc, + PANGO_SCALE * font->size); + + /* Get space width */ + layout = pango_layout_new(gdk_pango_context_get()); + pango_layout_set_font_description(layout, font->font_desc); + pango_layout_set_text(layout, " ", 1); + pango_layout_get_pixel_size(layout, &font->space_width, NULL); + + /* Get x_height */ + pango_layout_set_text(layout, "x", 1); + pango_layout_get_pixel_size(layout, NULL, &font->x_height); + g_object_unref(layout); } } @@ -300,7 +285,7 @@ return (font1->size == font2->size && EQUIV (font1->bold, font2->bold) && EQUIV (font1->italic, font2->italic) && - strcmp(font1->name, font2->name) == 0); + strcmp (font1->name, font2->name) == 0); } @@ -347,7 +332,7 @@ font->ref_count = 0; Dw_style_font_realize (font, try_all); - if (font->font) { + if (font->font_desc) { g_hash_table_insert (fonts_table, font, font); return font; } else { @@ -386,10 +371,10 @@ char *comma, *list, *current; font_attrs2 = *font_attrs; - current = list = g_strdup(font_attrs->name); + current = list = g_strdup (font_attrs->name); while (current && (font == NULL)) { - comma = strchr(current, ','); + comma = strchr (current, ','); if (comma) *comma = 0; font_attrs2.name = current; @@ -425,7 +410,7 @@ { g_hash_table_remove (fonts_table, font); g_free (font->name); - gdk_font_unref (font->font); + pango_font_description_free(font->font_desc); g_free (font); } @@ -642,7 +627,7 @@ color->red = red; color->green = green; color->blue = blue; - gdk_color_alloc(gdk_window_get_colormap (window), color); + gdk_color_alloc (gdk_window_get_colormap (window), color); *gc = gdk_gc_new (window); gdk_gc_set_foreground (*gc, color); @@ -657,7 +642,7 @@ { DwStyleColor *color; - color = g_hash_table_lookup (colors_table, GINT_TO_POINTER(color_val)); + color = g_hash_table_lookup (colors_table, GINT_TO_POINTER (color_val)); if (color == NULL) { color = g_new (DwStyleColor, 1); color->ref_count = 0; @@ -665,7 +650,7 @@ Dw_style_color_create (color_val, window, &color->color, &color->gc, 0); - g_hash_table_insert (colors_table, GINT_TO_POINTER(color_val), color); + g_hash_table_insert (colors_table, GINT_TO_POINTER (color_val), color); } return color; @@ -676,7 +661,7 @@ */ static void Dw_style_color_remove (DwStyleColor *color) { - g_hash_table_remove (colors_table, GINT_TO_POINTER(color->color_val)); + g_hash_table_remove (colors_table, GINT_TO_POINTER (color->color_val)); gdk_gc_destroy (color->gc); g_free (color); } @@ -691,7 +676,8 @@ { DwStyleShadedColor *color; - color = g_hash_table_lookup(shaded_colors_table,GINT_TO_POINTER(color_val)); + color = + g_hash_table_lookup (shaded_colors_table, GINT_TO_POINTER (color_val)); if (color == NULL) { color = g_new (DwStyleShadedColor, 1); color->ref_count = 0; @@ -704,7 +690,7 @@ Dw_style_color_create (color_val, window, &color->color_light, &color->gc_light, +1); g_hash_table_insert (shaded_colors_table, - GINT_TO_POINTER(color_val), color); + GINT_TO_POINTER (color_val), color); } return color; @@ -715,7 +701,8 @@ */ static void Dw_style_shaded_color_remove (DwStyleShadedColor *color) { - g_hash_table_remove(shaded_colors_table, GINT_TO_POINTER(color->color_val)); + g_hash_table_remove (shaded_colors_table, + GINT_TO_POINTER (color->color_val)); gdk_gc_destroy (color->gc); gdk_gc_destroy (color->gc_dark); gdk_gc_destroy (color->gc_light); @@ -785,8 +772,6 @@ void p_Dw_style_draw_border (GdkWindow *window, GdkRectangle *area, - gint32 vx, - gint32 vy, gint32 x, gint32 y, gint32 width, @@ -797,8 +782,8 @@ GdkGC *top_gc, *right_gc, *bottom_gc, *left_gc; gint32 xb1, yb1, xb2, yb2, xp1, yp1, xp2, yp2; - xb1 = x + style->margin.left - vx; - yb1 = y + style->margin.top - vy; + xb1 = x + style->margin.left; + yb1 = y + style->margin.top; xb2 = xb1 + width - style->margin.left - style->margin.right; yb2 = yb1 + height - style->margin.top - style->margin.bottom; @@ -865,8 +850,6 @@ */ void p_Dw_style_draw_background (GdkWindow *window, GdkRectangle *area, - gint32 vx, - gint32 vy, gint32 x, gint32 y, gint32 width, @@ -876,8 +859,8 @@ DwRectangle dw_area, bg_area, intersection; if (style->background_color) { - dw_area.x = area->x + vx; - dw_area.y = area->y + vy; + dw_area.x = area->x; + dw_area.y = area->y; dw_area.width = area->width; dw_area.height = area->height; @@ -892,7 +875,7 @@ if (p_Dw_rectangle_intersect (&dw_area, &bg_area, &intersection)) gdk_draw_rectangle (window, style->background_color->gc, TRUE, - intersection.x - vx, intersection.y - vy, + intersection.x, intersection.y, intersection.width, intersection.height); } } diff -urN dillo-0.6.6/src/dw_style.h dillo2-0.6.6/src/dw_style.h --- dillo-0.6.6/src/dw_style.h 2002-04-05 08:18:19.000000000 -0700 +++ dillo2-0.6.6/src/dw_style.h 2003-04-21 12:35:57.000000000 -0600 @@ -1,7 +1,7 @@ #ifndef __DW_STYLE_H__ #define __DW_STYLE_H__ -#include <gdk/gdktypes.h> +#include <gdk/gdk.h> #define TEXT_SUB 0 #define TEXT_SUP 1 @@ -77,11 +77,8 @@ gchar bold; gchar italic; -#ifdef USE_TYPE1 - gint t1fontid; -#else - GdkFont *font; -#endif + PangoFontDescription *font_desc; + gint space_width; gint x_height; }; @@ -168,8 +165,6 @@ void p_Dw_style_draw_border (GdkWindow *window, GdkRectangle *area, - gint32 vx, - gint32 vy, gint32 x, gint32 y, gint32 width, @@ -177,8 +172,6 @@ DwStyle *style); void p_Dw_style_draw_background (GdkWindow *window, GdkRectangle *area, - gint32 vx, - gint32 vy, gint32 x, gint32 y, gint32 width, diff -urN dillo-0.6.6/src/dw_table.c dillo2-0.6.6/src/dw_table.c --- dillo-0.6.6/src/dw_table.c 2002-03-28 11:06:40.000000000 -0700 +++ dillo2-0.6.6/src/dw_table.c 2003-04-21 12:36:01.000000000 -0600 @@ -77,6 +77,12 @@ gpointer FP, gpointer KP, gchar *NewKey); +static DwIterator* Dw_table_iterator (DwWidget *widget, + gint mask); +static gboolean Dw_table_iterator_next (DwIterator *it); +static DwIterator* Dw_table_iterator_clone (DwIterator *it); + + static void Dw_table_realloc_children (DwTable *table); static void Dw_table_sub_create (DwTable *table); @@ -106,25 +112,27 @@ /* * Standard Gtk+ function. */ -GtkType a_Dw_table_get_type (void) +GType a_Dw_table_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwTable", - sizeof (DwTable), + GTypeInfo info = { sizeof (DwTableClass), - (GtkClassInitFunc) Dw_table_class_init, - (GtkObjectInitFunc) Dw_table_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_table_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwTable), + 0, + (GInstanceInitFunc) Dw_table_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (DW_TYPE_CONTAINER, &info); + GTypeFlags flags = 0; + type = g_type_register_static(DW_TYPE_CONTAINER, "DwTable", + &info, flags); } - return type; } @@ -197,6 +205,7 @@ widget_class->set_ascent = Dw_table_set_ascent; widget_class->set_descent = Dw_table_set_descent; widget_class->draw = Dw_table_draw; + widget_class->iterator = Dw_table_iterator; container_class->add = Dw_table_add; container_class->remove = Dw_table_remove; @@ -233,7 +242,7 @@ if (table->sub) Dw_table_sub_free (table->sub); - (* GTK_OBJECT_CLASS(parent_class)->destroy) (object); + GTK_OBJECT_CLASS(parent_class)->destroy (object); } @@ -508,7 +517,8 @@ offx = p_Dw_style_box_offset_x (widget->style); offy = p_Dw_style_box_offset_y (widget->style); - width = widget->allocation.width - p_Dw_style_box_diff_width(widget->style); + width = + widget->allocation.width - p_Dw_style_box_diff_width (widget->style); for (i = 0; i < table->num_rows; i++) if (table->row_style[i]) p_Dw_widget_draw_box (widget, table->row_style[i], area, @@ -1070,7 +1080,7 @@ if (sub->table->sub == sub) { /* Adjust width argument of the table (fixed, percentages later in the code). */ - widget = DW_WIDGET(sub->table); + widget = DW_WIDGET (sub->table); if (DW_STYLE_IS_LENGTH (widget->style->width)) { col_width = DW_STYLE_GET_LENGTH (widget->style->width, widget->style->font); @@ -1232,7 +1242,7 @@ "(total = %d)\n", sub->start_col, sub->end_col, width, total_width); - border_spacing = DW_WIDGET(sub->table)->style->border_spacing; + border_spacing = DW_WIDGET (sub->table)->style->border_spacing; diff = (sub->num_subs - 1) * border_spacing; avail_width = width - diff; @@ -1441,3 +1451,52 @@ g_free (sub_extremes); } } + + +static DwIterator *Dw_table_iterator (DwWidget *widget, + gint mask) +{ + DwIteratorInt *it = g_new (DwIteratorInt, 1); + it->it.widget = widget; + it->it.mask = mask; + it->it.content.type = DW_CONTENT_START; + it->it.next = Dw_table_iterator_next; + it->it.clone = Dw_table_iterator_clone; + it->it.free = p_Dw_iterator_free_std; + it->pos = -1; + return (DwIterator*)it; +} + +static gboolean Dw_table_iterator_next (DwIterator *it) +{ + DwTable *table = DW_TABLE (it->widget); + DwIteratorInt *ii = (DwIteratorInt*)it; + + /* tables only contain widgets: */ + if ((it->mask & DW_CONTENT_WIDGET) == 0) { + it->content.type = DW_CONTENT_END; + return FALSE; + } + + do { + ii->pos++; + if (ii->pos >= table->num_children) { + it->content.type = DW_CONTENT_END; + return FALSE; + } + } while (table->children[ii->pos] == NULL || + table->children[ii->pos]->type != DW_TABLE_CELL); + + it->content.type = DW_CONTENT_WIDGET; + it->content.data.widget = table->children[ii->pos]->data.cell.widget; + return TRUE; +} + +static DwIterator* Dw_table_iterator_clone (DwIterator *it) +{ + DwIteratorInt *it2 = g_new (DwIteratorInt, 1); + *it2 = *(DwIteratorInt*)it; + return (DwIterator*)it2; +} + + diff -urN dillo-0.6.6/src/dw_tooltip.c dillo2-0.6.6/src/dw_tooltip.c --- dillo-0.6.6/src/dw_tooltip.c 2001-12-22 13:51:09.000000000 -0700 +++ dillo2-0.6.6/src/dw_tooltip.c 2003-04-21 12:36:01.000000000 -0600 @@ -15,6 +15,13 @@ #include <gtk/gtk.h> #include "dw_tooltip.h" +/* The amount of space around the text, including the border. */ +#define PADDING 4 + +/* The difference between pointer position and upper left corner of the + * tooltip. */ +#define DIFF 10 + static gint Dw_tooltip_draw (DwTooltip *tooltip); /* @@ -49,8 +56,8 @@ void a_Dw_tooltip_on_enter (DwTooltip *tooltip) { a_Dw_tooltip_on_leave (tooltip); - tooltip->timeout_id = gtk_timeout_add(500, (GtkFunction)Dw_tooltip_draw, - tooltip); + tooltip->timeout_id = gtk_timeout_add (500, (GtkFunction)Dw_tooltip_draw, + tooltip); } @@ -60,12 +67,12 @@ void a_Dw_tooltip_on_leave (DwTooltip *tooltip) { if (tooltip->timeout_id != -1) { - gtk_timeout_remove(tooltip->timeout_id); + gtk_timeout_remove (tooltip->timeout_id); tooltip->timeout_id = -1; } if (tooltip->window != NULL) { - gtk_widget_destroy(tooltip->window); + gtk_widget_destroy (tooltip->window); tooltip->window = NULL; } } @@ -80,36 +87,69 @@ } /* + * Connected to the expose_event signal + */ +static gint Dw_tooltip_expose (GtkWidget *window) +{ + gtk_widget_ensure_style (window); + gtk_paint_flat_box(window->style, window->window, + GTK_STATE_NORMAL, GTK_SHADOW_OUT, + NULL, GTK_WIDGET(window), "tooltip", + 0, 0, -1, -1); + return FALSE; +} + +/* * Draw the tooltip. Called as a timeout function. */ static gint Dw_tooltip_draw (DwTooltip *tooltip) { - GtkStyle *style; - gint x, y, width, ascent, descent; - - gdk_window_get_pointer (NULL, &x, &y, NULL); + GtkWidget *label; + gint x, y, px, py, screen_w, screen_h, ttw, tth; tooltip->window = gtk_window_new(GTK_WINDOW_POPUP); gtk_widget_set_app_paintable (tooltip->window, TRUE); gtk_widget_set_name (tooltip->window, "gtk-tooltips"); - gtk_widget_ensure_style (tooltip->window); - style = tooltip->window->style; - width = gdk_string_width (style->font, tooltip->text); - ascent = style->font->ascent; - descent = style->font->descent; - gtk_widget_set_usize (tooltip->window, width + 8, ascent + descent + 8); - - gtk_widget_popup(tooltip->window, x + 10, y + 10); - style = tooltip->window->style; - gtk_paint_flat_box(style, tooltip->window->window, - GTK_STATE_NORMAL, GTK_SHADOW_OUT, - NULL, GTK_WIDGET(tooltip->window), "tooltip", - 0, 0, -1, -1); - gtk_paint_string(style, tooltip->window->window, - GTK_STATE_NORMAL, - NULL, GTK_WIDGET(tooltip->window), "tooltip", - 4, ascent + 4, - tooltip->text); + gtk_container_set_border_width (GTK_CONTAINER (tooltip->window), PADDING); + g_signal_connect(G_OBJECT(tooltip->window), "expose_event", + G_CALLBACK(Dw_tooltip_expose), NULL); + + label = gtk_label_new(tooltip->text); + gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); + gtk_misc_set_alignment (GTK_MISC (label), 0.5, 0.5); + gtk_widget_show (label); + + gtk_container_add (GTK_CONTAINER(tooltip->window), label); + /* Realize the window, so we can get it's size */ + gtk_widget_realize (GTK_WIDGET(tooltip->window)); + + gdk_drawable_get_size (GDK_DRAWABLE (tooltip->window->window), &ttw, &tth); + gdk_window_get_pointer (NULL, &px, &py, NULL); + x = px + DIFF; + y = py + DIFF; + + screen_w = gdk_screen_width(); + screen_h = gdk_screen_height(); + + if (ttw >= screen_w) + /* If the width of a tooltips does not fit into the screen, put + * them at x = 0. (Yes, that's far from perfect ...) */ + x = 0; + else if (x + ttw > screen_w) + /* If they would otherwise reach out of the screen, move them + * a bit left. */ + x = screen_w - ttw; + + /* The case that the height of a tooltip of the screen is greater + * that the screen height is ignored ;-) If the tooltip reaches + * out of the screen at the bottom, it is displayed *above* the + * pointer: to process events properly, it is necessary to keep + * the pointer out of the tooltip. */ + if (y + tth > screen_h) + y = py - tth - DIFF; + + gtk_window_move(GTK_WINDOW(tooltip->window), x, y); + gtk_widget_show(tooltip->window); tooltip->timeout_id = -1; return FALSE; diff -urN dillo-0.6.6/src/dw_widget.c dillo2-0.6.6/src/dw_widget.c --- dillo-0.6.6/src/dw_widget.c 2002-03-18 08:02:50.000000000 -0700 +++ dillo2-0.6.6/src/dw_widget.c 2003-04-21 12:36:03.000000000 -0600 @@ -13,11 +13,11 @@ #include "dw_widget.h" #include "dw_container.h" #include "dw_gtk_viewport.h" +#include "dw_marshal.h" static void Dw_widget_init (DwWidget *widget); static void Dw_widget_class_init (DwWidgetClass *klass); -static void Dw_widget_shutdown (GtkObject *object); static void Dw_widget_destroy (GtkObject *object); static void Dw_widget_real_size_request (DwWidget *widget, @@ -86,25 +86,27 @@ /* * Standard Gtk+ function */ -GtkType a_Dw_widget_get_type (void) +GType a_Dw_widget_get_type (void) { - static GtkType type = 0; + static GType type = 0; if (!type) { - GtkTypeInfo info = { - "DwWidget", - sizeof (DwWidget), + GTypeInfo info = { sizeof (DwWidgetClass), - (GtkClassInitFunc) Dw_widget_class_init, - (GtkObjectInitFunc) Dw_widget_init, - (GtkArgSetFunc) NULL, - (GtkArgGetFunc) NULL, - (GtkClassInitFunc) NULL + (GBaseInitFunc) NULL, + (GBaseFinalizeFunc) NULL, + (GClassInitFunc) Dw_widget_class_init, + (GClassFinalizeFunc) NULL, + (gconstpointer) NULL, + sizeof (DwWidget), + 0, + (GInstanceInitFunc) Dw_widget_init, + (GTypeValueTable *) NULL }; - - type = gtk_type_unique (GTK_TYPE_OBJECT, &info); + GTypeFlags flags = 0; + type = g_type_register_static(GTK_TYPE_OBJECT, "DwWidget", + &info, flags); } - return type; } @@ -138,114 +140,129 @@ { GtkObjectClass *object_class; - parent_class = gtk_type_class (gtk_object_get_type ()); + parent_class = gtk_type_class (GTK_TYPE_OBJECT); object_class = GTK_OBJECT_CLASS (klass); widget_signals[SIZE_REQUEST] = - gtk_signal_new ("size_request", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, size_request), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, - 1, GTK_TYPE_POINTER); + g_signal_new ("size_request", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwWidgetClass, size_request), + NULL, + NULL, + p_Dw_marshal_VOID__POINTER, + GTK_TYPE_NONE, + 1, GTK_TYPE_POINTER); widget_signals[SIZE_ALLOCATE] = - gtk_signal_new ("size_allocate", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, size_allocate), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, - 1, GTK_TYPE_POINTER); + g_signal_new ("size_allocate", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwWidgetClass, size_allocate), + NULL, + NULL, + p_Dw_marshal_VOID__POINTER, + GTK_TYPE_NONE, + 1, GTK_TYPE_POINTER); widget_signals[SET_WIDTH] = - gtk_signal_new ("set_width", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, set_width), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, - 1, GTK_TYPE_UINT); + g_signal_new ("set_width", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwWidgetClass, set_width), + NULL, + NULL, + p_Dw_marshal_VOID__UINT, + GTK_TYPE_NONE, + 1, GTK_TYPE_UINT); widget_signals[SET_ASCENT] = - gtk_signal_new ("set_ascent", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, set_ascent), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, - 1, GTK_TYPE_UINT); + g_signal_new ("set_ascent", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwWidgetClass, set_ascent), + NULL, + NULL, + p_Dw_marshal_VOID__UINT, + GTK_TYPE_NONE, + 1, GTK_TYPE_UINT); widget_signals[SET_DESCENT] = - gtk_signal_new ("set_descent", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, set_descent), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, - 1, GTK_TYPE_UINT); + g_signal_new ("set_descent", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwWidgetClass, set_descent), + NULL, + NULL, + p_Dw_marshal_VOID__UINT, + GTK_TYPE_NONE, + 1, GTK_TYPE_UINT); widget_signals[DRAW] = - gtk_signal_new ("draw", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, draw), - gtk_marshal_NONE__POINTER, - GTK_TYPE_NONE, - 2, GTK_TYPE_POINTER, GTK_TYPE_GDK_EVENT); + g_signal_new ("draw", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwWidgetClass, draw), + NULL, + NULL, + p_Dw_marshal_VOID__POINTER_POINTER, + GTK_TYPE_NONE, + 2, GTK_TYPE_POINTER, GDK_TYPE_EVENT); widget_signals[REALIZE] = - gtk_signal_new ("realize", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, realize), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); + g_signal_new ("realize", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwWidgetClass, realize), + NULL, + NULL, + p_Dw_marshal_VOID__VOID, + GTK_TYPE_NONE, 0); widget_signals[UNREALIZE] = - gtk_signal_new ("unrealize", - GTK_RUN_FIRST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, unrealize), - gtk_marshal_NONE__NONE, - GTK_TYPE_NONE, 0); - widget_signals[BUTTON_PRESS_EVENT] = - gtk_signal_new ("button_press_event", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, button_press_event), - gtk_marshal_BOOL__POINTER, - GTK_TYPE_BOOL, - 3, GTK_TYPE_UINT, GTK_TYPE_UINT, GTK_TYPE_GDK_EVENT); - widget_signals[BUTTON_RELEASE_EVENT] = - gtk_signal_new ("button_release_event", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, button_release_event), - gtk_marshal_BOOL__POINTER, - GTK_TYPE_BOOL, - 3, GTK_TYPE_UINT, GTK_TYPE_UINT, GTK_TYPE_GDK_EVENT); - widget_signals[MOTION_NOTIFY_EVENT] = - gtk_signal_new ("motion_notify_event", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, motion_notify_event), - gtk_marshal_BOOL__POINTER, - GTK_TYPE_BOOL, - 3, GTK_TYPE_UINT, GTK_TYPE_UINT, GTK_TYPE_GDK_EVENT); - widget_signals[ENTER_NOTIFY_EVENT] = - gtk_signal_new ("enter_notify_event", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, enter_notify_event), - gtk_marshal_BOOL__POINTER, - GTK_TYPE_BOOL, - 3, GTK_TYPE_UINT, GTK_TYPE_UINT, GTK_TYPE_GDK_EVENT); - widget_signals[LEAVE_NOTIFY_EVENT] = - gtk_signal_new ("leave_notify_event", - GTK_RUN_LAST, - object_class->type, - GTK_SIGNAL_OFFSET (DwWidgetClass, leave_notify_event), - gtk_marshal_BOOL__POINTER, - GTK_TYPE_BOOL, - 3, GTK_TYPE_UINT, GTK_TYPE_UINT, GTK_TYPE_GDK_EVENT); + g_signal_new ("unrealize", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_FIRST, + G_STRUCT_OFFSET (DwWidgetClass, unrealize), + NULL, + NULL, + p_Dw_marshal_VOID__VOID, + GTK_TYPE_NONE, 0); + widget_signals[BUTTON_PRESS_EVENT] = + g_signal_new ("button_press_event", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (DwWidgetClass, button_press_event), + NULL, + NULL, + p_Dw_marshal_BOOL__UINT_UINT_POINTER, + GTK_TYPE_BOOL, + 3, GTK_TYPE_UINT, GTK_TYPE_UINT, GDK_TYPE_EVENT); + widget_signals[BUTTON_RELEASE_EVENT] = + g_signal_new ("button_release_event", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (DwWidgetClass, button_release_event), + NULL, + NULL, + p_Dw_marshal_BOOL__UINT_UINT_POINTER, + GTK_TYPE_BOOL, + 3, GTK_TYPE_UINT, GTK_TYPE_UINT, GDK_TYPE_EVENT); + widget_signals[MOTION_NOTIFY_EVENT] = + g_signal_new ("motion_notify_event", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (DwWidgetClass, motion_notify_event), + NULL, + NULL, + p_Dw_marshal_BOOL__UINT_UINT_POINTER, + GTK_TYPE_BOOL, + 3, GTK_TYPE_UINT, GTK_TYPE_UINT, GDK_TYPE_EVENT); + widget_signals[LEAVE_NOTIFY_EVENT] = + g_signal_new ("leave_notify_event", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (DwWidgetClass, leave_notify_event), + NULL, + NULL, + p_Dw_marshal_BOOL__UINT_UINT_POINTER, + GTK_TYPE_BOOL, + 3, GTK_TYPE_UINT, GTK_TYPE_UINT, GDK_TYPE_EVENT); - object_class->shutdown = Dw_widget_shutdown; object_class->destroy = Dw_widget_destroy; klass->size_request = Dw_widget_real_size_request; @@ -264,27 +281,7 @@ klass->motion_notify_event = Dw_widget_real_motion_notify; klass->enter_notify_event = Dw_widget_real_enter_notify; klass->leave_notify_event = Dw_widget_real_leave_notify; -} - - - -/* - * Standard Gtk+ function - */ -static void Dw_widget_shutdown (GtkObject *object) -{ - DwWidget *widget; - - widget = DW_WIDGET (object); - - a_Dw_widget_unrealize (widget); - - if (widget->parent) - Dw_container_remove (DW_CONTAINER (widget->parent), widget); - else - Dw_gtk_viewport_remove_dw (GTK_DW_VIEWPORT (widget->viewport)); - - parent_class->shutdown (object); + klass->iterator = NULL; } /* @@ -296,7 +293,7 @@ widget = DW_WIDGET (object); if (widget->anchors_table) { - g_hash_table_destroy(widget->anchors_table); + g_hash_table_destroy (widget->anchors_table); } /* The widget the pointer is in? */ @@ -318,7 +315,7 @@ DwRequisition *requisition) { g_warning ("DwWidget::size_request not implemented for `%s'", - gtk_type_name (GTK_OBJECT_TYPE (widget))); + g_type_name (GTK_OBJECT_TYPE (widget))); /* return random size to prevent crashes*/ requisition->width = 50; @@ -484,8 +481,8 @@ { if (DW_WIDGET_NEEDS_RESIZE (widget)) { /* todo: check requisition == &(widget->requisition) and do what? */ - gtk_signal_emit (GTK_OBJECT (widget), widget_signals[SIZE_REQUEST], - requisition); + g_signal_emit (G_OBJECT (widget), widget_signals[SIZE_REQUEST], + 0, requisition); widget->requisition = *requisition; DW_WIDGET_UNSET_FLAGS (widget, DW_NEEDS_RESIZE); } else @@ -501,7 +498,7 @@ DwWidgetClass *klass; if (DW_WIDGET_EXTREMES_CHANGED (widget)) { - klass = DW_WIDGET_CLASS (GTK_OBJECT(widget)->klass); + klass = DW_WIDGET_GET_CLASS(widget); (* (klass->get_extremes)) (widget, extremes); widget->extremes = *extremes; DW_WIDGET_UNSET_FLAGS (widget, DW_EXTREMES_CHANGED); @@ -523,8 +520,8 @@ allocation->ascent != widget->allocation.ascent || allocation->descent != widget->allocation.descent) { - gtk_signal_emit (GTK_OBJECT (widget), widget_signals[SIZE_ALLOCATE], - allocation); + g_signal_emit (G_OBJECT (widget), widget_signals[SIZE_ALLOCATE], 0, + allocation); widget->allocation = *allocation; } @@ -535,21 +532,21 @@ void a_Dw_widget_set_width (DwWidget *widget, gint32 width) { - gtk_signal_emit (GTK_OBJECT (widget), widget_signals[SET_WIDTH], width); + g_signal_emit (G_OBJECT (widget), widget_signals[SET_WIDTH], 0, width); } void a_Dw_widget_set_ascent (DwWidget *widget, gint32 ascent) { - gtk_signal_emit (GTK_OBJECT (widget), widget_signals[SET_ASCENT], ascent); + g_signal_emit (G_OBJECT (widget), widget_signals[SET_ASCENT], 0, ascent); } void a_Dw_widget_set_descent (DwWidget *widget, gint32 descent) { - gtk_signal_emit (GTK_OBJECT (widget), widget_signals[SET_DESCENT], descent); + g_signal_emit (G_OBJECT (widget), widget_signals[SET_DESCENT], 0, descent); } @@ -557,15 +554,14 @@ DwRectangle *area, GdkEventExpose *event) { - gtk_signal_emit (GTK_OBJECT (widget), widget_signals[DRAW], - area, event); + g_signal_emit (G_OBJECT (widget), widget_signals[DRAW], 0, area, event); } void a_Dw_widget_realize (DwWidget *widget) { if (!DW_WIDGET_REALIZED (widget)) { - gtk_signal_emit (GTK_OBJECT (widget), widget_signals[REALIZE]); + g_signal_emit (G_OBJECT (widget), widget_signals[REALIZE], 0); DW_WIDGET_SET_FLAGS (widget, DW_REALIZED); if (DW_IS_CONTAINER (widget)) @@ -576,8 +572,8 @@ Dw_widget_update_cursor (widget); if (widget->parent == NULL && widget->style->background_color != NULL) - gdk_window_set_background(GTK_LAYOUT(widget->viewport)->bin_window, - &widget->style->background_color->color); + gdk_window_set_background (GTK_LAYOUT(widget->viewport)->bin_window, + &widget->style->background_color->color); } } @@ -586,7 +582,7 @@ { if (DW_WIDGET_REALIZED (widget)) { a_Dw_widget_set_cursor (widget, NULL); - gtk_signal_emit (GTK_OBJECT (widget), widget_signals[UNREALIZE]); + g_signal_emit (G_OBJECT (widget), widget_signals[UNREALIZE], 0); DW_WIDGET_UNSET_FLAGS (widget, DW_REALIZED); if (DW_IS_CONTAINER (widget)) @@ -608,11 +604,11 @@ * soon be the case when GDK_MOTION_NOTIFY events are simulated as a * result of viewport changes (bug #94) */ -gint Dw_widget_mouse_event (DwWidget *widget, - GtkWidget *viewwidget, - gint32 x, - gint32 y, - GdkEvent *event) +gboolean Dw_widget_mouse_event (DwWidget *widget, + GtkWidget *viewwidget, + gint32 x, + gint32 y, + GdkEventAny *event) { /* todo: implement as signals */ gint (*function)(); @@ -642,30 +638,30 @@ * viewport->last_entered => anchestor => (current) widget */ track_len = 0; if (viewport->last_entered) - for(w1 = viewport->last_entered; w1 != ancestor; w1 = w1->parent) + for (w1 = viewport->last_entered; w1 != ancestor; w1 = w1->parent) track_len++; if (ancestor) track_len++; /* for the ancestor */ if (widget) - for(w1 = widget; w1 != ancestor; w1 = w1->parent) + for (w1 = widget; w1 != ancestor; w1 = w1->parent) track_len++; track = g_new (DwWidget*, track_len); i = 0; if (viewport->last_entered) - for(w1 = viewport->last_entered; w1 != ancestor; w1 = w1->parent) + for (w1 = viewport->last_entered; w1 != ancestor; w1 = w1->parent) track[i++] = w1; if (ancestor) track[i++] = ancestor; if (widget) { i = track_len - 1; - for(w1 = widget; w1 != ancestor; w1 = w1->parent) + for (w1 = widget; w1 != ancestor; w1 = w1->parent) track[i--] = w1; } /* Send events to all events on the track */ for (i = 0; i < track_len; i++) { - klass = DW_WIDGET_CLASS (GTK_OBJECT(track[i])->klass); + klass = DW_WIDGET_GET_CLASS(track[i]); if (i != 0) klass->enter_notify_event (track[i], track[i - 1], (GdkEventMotion*) event); @@ -683,7 +679,7 @@ event_type = event ? event->type : GDK_MOTION_NOTIFY; while (widget) { - klass = DW_WIDGET_CLASS (GTK_OBJECT (widget)->klass); + klass = DW_WIDGET_GET_CLASS(widget); switch (event_type) { case GDK_BUTTON_PRESS: @@ -736,8 +732,8 @@ if (widget->parent == NULL && DW_WIDGET_REALIZED (widget) && widget->style->background_color != NULL) - gdk_window_set_background(GTK_LAYOUT(widget->viewport)->bin_window, - &widget->style->background_color->color); + gdk_window_set_background (GTK_LAYOUT(widget->viewport)->bin_window, + &widget->style->background_color->color); } @@ -801,6 +797,30 @@ pos + widget->allocation.y); } +/* + * Retreive an iterator pointing before the first content element + * of the widget. + */ +DwIterator* a_Dw_widget_iterator (DwWidget *widget, + gint mask) +{ + DwWidgetClass *klass = DW_WIDGET_GET_CLASS(widget); + if(klass->iterator) + return klass->iterator(widget, mask); + else + return NULL; +} + +/* + * ... + */ +void p_Dw_iterator_free_std (DwIterator *it) +{ + g_free (it); +} + + + /* * ... @@ -908,8 +928,8 @@ void p_Dw_widget_set_parent (DwWidget *widget, DwWidget *parent) { - gtk_object_ref(GTK_OBJECT (widget)); - gtk_object_sink(GTK_OBJECT (widget)); + gtk_object_ref (GTK_OBJECT (widget)); + gtk_object_sink (GTK_OBJECT (widget)); widget->parent = parent; widget->viewport = parent->viewport; /*widget->window = parent->window;*/ @@ -981,34 +1001,28 @@ * (of course) viewport coordinates, the return value is TRUE iff the * intersection is not empty. */ -static gboolean Dw_widget_intersect_viewport (DwWidget *widget, - gint32 x, - gint32 y, - gint32 width, - gint32 height, +static gboolean Dw_widget_intersect_viewport (DwWidget *widget, gint x, gint y, + gint width, gint height, GdkRectangle *gdk_intersection) { - GtkLayout *layout; DwRectangle widget_area, viewport_area, intersection; g_return_val_if_fail (widget && widget->viewport, FALSE); - layout = GTK_LAYOUT (widget->viewport); - widget_area.x = widget->allocation.x + x; widget_area.y = widget->allocation.y + y; widget_area.width = width; widget_area.height = height; - viewport_area.x = layout->xoffset; - viewport_area.y = layout->yoffset; + viewport_area.x = p_Dw_widget_x_viewport_to_world(widget, 0); + viewport_area.y = p_Dw_widget_y_viewport_to_world(widget, 0); viewport_area.width = widget->viewport->allocation.width; viewport_area.height = widget->viewport->allocation.height; if (p_Dw_rectangle_intersect (&widget_area, &viewport_area, &intersection)) { - gdk_intersection->x = intersection.x - layout->xoffset; - gdk_intersection->y = intersection.y - layout->yoffset; + gdk_intersection->x = intersection.x; + gdk_intersection->y = intersection.y; gdk_intersection->width = intersection.width; gdk_intersection->height = intersection.height; return TRUE; @@ -1107,7 +1121,7 @@ GtkDwViewport *viewport; DwWidgetClass *klass; - klass = (DwWidgetClass*)(((GtkObject*)widget)->klass); + klass = DW_WIDGET_GET_CLASS(widget); DW_WIDGET_SET_FLAGS (widget, DW_NEEDS_RESIZE); if (klass->mark_size_change) klass->mark_size_change (widget, ref); @@ -1121,7 +1135,7 @@ for (widget2 = widget->parent, child = widget; widget2; child = widget2, widget2 = widget2->parent) { - klass = (DwWidgetClass*)(((GtkObject*)widget2)->klass); + klass = DW_WIDGET_GET_CLASS(widget2); DW_WIDGET_SET_FLAGS (widget2, DW_NEEDS_RESIZE); if (klass->mark_size_change) klass->mark_size_change (widget2, child->parent_ref); @@ -1150,10 +1164,10 @@ void p_Dw_widget_set_anchor (DwWidget *widget, gchar *name, int pos) { if (widget->anchors_table == NULL) - widget->anchors_table = g_hash_table_new(g_str_hash, g_str_equal); + widget->anchors_table = g_hash_table_new (g_str_hash, g_str_equal); - g_hash_table_insert(widget->anchors_table, name, GINT_TO_POINTER(pos)); - Dw_gtk_viewport_update_anchor(GTK_DW_VIEWPORT (widget->viewport)); + g_hash_table_insert (widget->anchors_table, name, GINT_TO_POINTER (pos)); + Dw_gtk_viewport_update_anchor (GTK_DW_VIEWPORT (widget->viewport)); } @@ -1171,27 +1185,19 @@ gint32 height) { GdkRectangle gdk_area; - gint32 vx, vy; - - if (Dw_widget_intersect_viewport (widget, area->x, area->y, - area->width, area->height, &gdk_area)) { - vx = p_Dw_widget_x_viewport_to_world (widget, 0); - vy = p_Dw_widget_y_viewport_to_world (widget, 0); + if (Dw_widget_intersect_viewport (widget, x, y, width, height, &gdk_area)) { p_Dw_style_draw_border (DW_WIDGET_WINDOW (widget), &gdk_area, - vx, vy, widget->allocation.x + x, widget->allocation.y + y, - width, height, - style); + width, height, style); - if (style->background_color) + if (style->background_color) { p_Dw_style_draw_background (DW_WIDGET_WINDOW (widget), &gdk_area, - vx, vy, widget->allocation.x + x, widget->allocation.y + y, - width, height, - style); + width, height, style); + } } } @@ -1203,15 +1209,10 @@ DwRectangle *area) { GdkRectangle gdk_area; - gint32 vx, vy; - - if (Dw_widget_intersect_viewport (widget, area->x, area->y, - area->width, area->height, &gdk_area)) { - vx = p_Dw_widget_x_viewport_to_world (widget, 0); - vy = p_Dw_widget_y_viewport_to_world (widget, 0); + if (Dw_widget_intersect_viewport (widget, area->x, area->y, area->width, + area->height, &gdk_area)) { p_Dw_style_draw_border (DW_WIDGET_WINDOW (widget), &gdk_area, - vx, vy, widget->allocation.x, widget->allocation.y, widget->allocation.width, @@ -1228,14 +1229,14 @@ * *not* necessary to draw the background if * widget->style->background_color is NULL (shining through). */ - if (widget->parent && widget->style->background_color) + if (widget->parent && widget->style->background_color) { p_Dw_style_draw_background (DW_WIDGET_WINDOW (widget), &gdk_area, - vx, vy, widget->allocation.x, widget->allocation.y, widget->allocation.width, widget->allocation.ascent + widget->allocation.descent, widget->style); + } } } diff -urN dillo-0.6.6/src/dw_widget.h dillo2-0.6.6/src/dw_widget.h --- dillo-0.6.6/src/dw_widget.h 2002-03-13 05:08:57.000000000 -0700 +++ dillo2-0.6.6/src/dw_widget.h 2003-04-21 14:22:14.000000000 -0600 @@ -15,6 +15,7 @@ #define DW_WIDGET(obj) GTK_CHECK_CAST (obj, DW_TYPE_WIDGET, DwWidget) #define DW_WIDGET_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, DW_TYPE_WIDGET, \ DwWidgetClass) +#define DW_WIDGET_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), DW_TYPE_WIDGET, DwWidgetClass)) #define DW_IS_WIDGET(obj) GTK_CHECK_TYPE (obj, DW_TYPE_WIDGET) @@ -42,13 +43,28 @@ #define DW_USES_HINTS (1 << 4) #define DW_HAS_CONTENT (1 << 5) -#define DW_WIDGET_WINDOW(widget) \ - (((GtkDwViewport*)(widget)->viewport)->back_pixmap) + +/* content types for iterator data */ +typedef enum +{ + DW_CONTENT_START = 0x01, + DW_CONTENT_END = 0x01, + DW_CONTENT_TEXT = 0x02, + DW_CONTENT_WIDGET = 0x04, + DW_CONTENT_ANCHOR = 0x08, + DW_CONTENT_BREAK = 0x10, + DW_CONTENT_ALL = 0xff +} DwContentType; + +#define DW_WIDGET_WINDOW(widget) (((GtkLayout*)(widget)->viewport)->bin_window) typedef struct _DwRectangle DwRectangle; typedef struct _DwAllocation DwAllocation; typedef struct _DwRequisition DwRequisition; typedef struct _DwExtremes DwExtremes; +typedef struct _DwContent DwContent; +typedef struct _DwIterator DwIterator; +typedef struct _DwIteratorInt DwIteratorInt; typedef struct _DwWidget DwWidget; typedef struct _DwWidgetClass DwWidgetClass; @@ -89,6 +105,57 @@ gint32 max_width; }; + +struct _DwContent +{ + DwContentType type; + union { + struct { + char *str; + PangoFont *font; + } text; + DwWidget *widget; + char *anchor; + gint break_space; + } data; +}; + +struct _DwIterator +{ + DwWidget *widget; + gint mask; + + /* the current data, after first call of next */ + DwContent content; + + /* for simplicity, static stuff is put into the structure */ + + /* + * Move iterator forward and store content it. Returns TRUE on + * success. + */ + gboolean (*next) (DwIterator*); + + /* + * Create an exact copy of the iterator, which then can be used + * independantly of the original one. + */ + DwIterator* (*clone) (DwIterator*); + + /* + * Free memory of iterator. + */ + void (*free) (DwIterator*); +}; + +/* This iterator type is quite commonly used. */ +struct _DwIteratorInt +{ + DwIterator it; + int pos; +}; + + struct _DwWidget { GtkObject object; @@ -172,6 +239,9 @@ gint (*leave_notify_event) (DwWidget *widget, DwWidget *next_widget, GdkEventMotion *event); + + DwIterator* (*iterator) (DwWidget*, + gint32 mask); }; @@ -205,6 +275,15 @@ void a_Dw_widget_scroll_to (DwWidget *widget, int pos); +/* iterators */ +DwIterator* a_Dw_widget_iterator (DwWidget *widget, + gint mask); +#define a_Dw_iterator_next(it) ((it) ? (it)->next(it) : FALSE) +#define a_Dw_iterator_clone(it) ((it) ? (it)->clone(it) : NULL) +#define a_Dw_iterator_free(it) ((it) ? (it)->next(it) : (void)0) + +void p_Dw_iterator_free_std (DwIterator *it); + /* Only for Dw module */ gint p_Dw_rectangle_intersect (DwRectangle *src1, DwRectangle *src2, @@ -228,7 +307,7 @@ GtkWidget *viewwidget, gint32 x, gint32 y, - GdkEvent *event); + GdkEventAny *event); void p_Dw_widget_queue_draw (DwWidget *widget); void p_Dw_widget_queue_draw_area (DwWidget *widget, gint32 x, diff -urN dillo-0.6.6/src/html.c dillo2-0.6.6/src/html.c --- dillo-0.6.6/src/html.c 2002-05-26 10:36:41.000000000 -0600 +++ dillo2-0.6.6/src/html.c 2003-04-21 12:36:16.000000000 -0600 @@ -48,7 +48,7 @@ #include "prefs.h" #include "misc.h" -//#define DEBUG_LEVEL 3 +#define DEBUG_LEVEL 10 #include "debug.h" typedef void (*TagFunct) (DilloHtml *Html, char *Tag, gint Tagsize); @@ -75,6 +75,16 @@ static void Html_callback(int Op, CacheClient_t *Client); static DilloHtml *Html_new(BrowserWindow *bw, const DilloUrl *url); static void Html_tag_open_input(DilloHtml *html, char *tag, gint tagsize); +static void Html_add_input(DilloHtmlForm *form, + DilloHtmlInputType type, + GtkWidget *widget, + const char *name, + const char *init_str, + DilloHtmlSelect *select, + gboolean init_val); +static gboolean Html_submit_form(GtkWidget *submit, DilloHtmlLB *html_lb, + gint click_x, gint click_y); +static gboolean Html_reset_form(GtkWidget *reset, DilloHtmlLB *html_lb); /* @@ -135,7 +145,7 @@ /* * Free the memory used by the linkblock */ -static void Html_lb_free(void *lb) +static gboolean Html_lb_free(GtkWidget *widget, void *lb) { gint i, j, k; DilloHtmlForm *form; @@ -173,6 +183,8 @@ a_Dw_image_map_list_free(&html_lb->maps); g_free(html_lb); + + return FALSE; } @@ -194,7 +206,7 @@ * Handle the status function generated by the dw scroller, * and show the url in the browser status-bar. */ -static void Html_handle_status(DwWidget *widget, gint link, gint x, gint y, +static gboolean Html_handle_status(DwWidget *widget, gint link, gint x, gint y, DilloHtmlLB *lb) { DilloUrl *url; @@ -212,28 +224,32 @@ a_Interface_msg(lb->bw, ""); a_Dw_widget_set_cursor (widget, NULL); } + + return FALSE; } /* * Popup the link menu ("link_pressed" callback of the page) */ -static void Html_link_menu(DwWidget *widget, gint link, gint x, gint y, - GdkEventButton *event, DilloHtmlLB *lb) +static gboolean Html_link_menu(DwWidget *widget, gint link, gint x, gint y, + GdkEventButton *event, DilloHtmlLB *lb) { if (event->button == 3) { Html_set_link_coordinates(lb, link, x, y); a_Menu_popup_set_url(lb->bw, lb->links[link]); gtk_menu_popup(GTK_MENU(lb->bw->menu_popup.over_link), NULL, NULL, NULL, NULL, event->button, event->time); + return TRUE; } + return FALSE; } /* * Activate a link ("link_clicked" callback of the page) */ -static void Html_link_clicked(DwWidget *widget, gint link, gint x, gint y, - GdkEventButton *event, DilloHtmlLB *lb) +static gboolean Html_link_clicked(DwWidget *widget, gint link, gint x, gint y, + GdkEventButton *event, DilloHtmlLB *lb) { DwPage *page; DwStyle *old_style, style_attrs; @@ -280,36 +296,35 @@ } } /* end workaround */ + return TRUE; } /* * Popup the page menu ("button_press_event" callback of the viewport) */ -static int Html_page_menu(GtkWidget *viewport, GdkEventButton *event, - BrowserWindow *bw) +static gboolean Html_page_menu(GtkWidget *viewport, GdkEventButton *event, + BrowserWindow *bw) { if (event->button == 3) { a_Menu_popup_set_url(bw, a_History_get_url(NAV_TOP(bw))); gtk_menu_popup(GTK_MENU(bw->menu_popup.over_page), NULL, NULL, NULL, NULL, event->button, event->time); return TRUE; - } else - return FALSE; + } + return FALSE; } /* * Connect all signals of a page or an image. */ -static void Html_connect_signals(DilloHtml *html, GtkObject *widget) +static void Html_connect_signals(DilloHtml *html, GObject *object) { - gtk_signal_connect (widget, "link_entered", - GTK_SIGNAL_FUNC(Html_handle_status), - (gpointer)html->linkblock); - gtk_signal_connect (widget, "link_pressed", GTK_SIGNAL_FUNC(Html_link_menu), - (gpointer)html->linkblock); - gtk_signal_connect (widget, "link_clicked", - GTK_SIGNAL_FUNC(Html_link_clicked), - (gpointer)html->linkblock); + g_signal_connect (object, "link_entered", + G_CALLBACK(Html_handle_status), html->linkblock); + g_signal_connect (object, "link_pressed", + G_CALLBACK(Html_link_menu), html->linkblock); + g_signal_connect (object, "link_clicked", + G_CALLBACK(Html_link_clicked), html->linkblock); } @@ -452,7 +467,7 @@ a_Dw_style_unref (style); /* Handle it when the user clicks on a link */ - Html_connect_signals(html, GTK_OBJECT(page)); + Html_connect_signals(html, G_OBJECT(page)); } /* @@ -528,16 +543,14 @@ html->stack[0].table_cell_style = NULL; /* Handle it when the user clicks on a link */ - Html_connect_signals(html, GTK_OBJECT(widget)); + Html_connect_signals(html, G_OBJECT(widget)); - gtk_signal_connect_while_alive ( - GTK_OBJECT(GTK_BIN(html->bw->docwin)->child), "button_press_event", - GTK_SIGNAL_FUNC(Html_page_menu), (gpointer)html->bw, GTK_OBJECT (page)); + g_signal_connect(G_OBJECT(GTK_BIN(html->bw->docwin)->child), + "button_press_event", G_CALLBACK(Html_page_menu), html->bw); /* Destroy the linkblock when the DwPage is destroyed */ - gtk_signal_connect_object(GTK_OBJECT(page), "destroy", - GTK_SIGNAL_FUNC(Html_lb_free), - (gpointer)html->linkblock); + g_signal_connect(G_OBJECT(page), "destroy", G_CALLBACK(Html_lb_free), + html->linkblock); } /* @@ -550,6 +563,10 @@ html = g_new(DilloHtml, 1); html->Start_Ofs = 0; + html->utf8_offset = 0; + html->utf8_buf = g_string_new(""); + html->Encoding = NULL; + html->dw = NULL; html->bw = bw; html->linkblock = Html_lb_new(bw, url); @@ -708,7 +725,7 @@ /* Numeric token */ base = (token[2] == 'x' || token[2] == 'X') ? 16 : 10; isocode = strtol(token + 2 + (base==16), NULL, base); - return (isocode > 0 && isocode <= 255) ? isocode : -1; + return isocode > 0 ? isocode : -1; } else { /* Search for named entity */ name = g_strndup(token + 1, eoe - token - 1); @@ -726,23 +743,41 @@ */ static char *Html_parse_entities(gchar *token, gint toksize) { - gchar *new_str; - gint i, j, isocode; + GString *gstr; + gchar *new_str, *p; + gint i, isocode, len; + gboolean in_ent; + gunichar c; if ( memchr(token, '&', toksize) == NULL ) return g_strndup(token, toksize); - new_str = g_new(char, toksize + 1); - for (i = j = 0; i < toksize; i++) { - if (token[i] == '&' && - (isocode = Html_parse_entity(token + i, toksize - i)) != -1) { - new_str[j++] = isocode; - while(token[++i] != ';'); + /* Get length in characters, not in bytes */ + len = g_utf8_strlen(token, toksize); + + gstr = g_string_new(""); + in_ent = FALSE; + + for (i = 0, p = token; i < len; i++) { + c = g_utf8_get_char(p); + + if (c == '&' && + (isocode = Html_parse_entity(p, len - i)) != -1) { + g_string_append_unichar(gstr, isocode); + in_ent = TRUE; } else { - new_str[j++] = token[i]; + if (in_ent && c == ';') + in_ent = FALSE; + else if (!in_ent) + g_string_append_unichar(gstr, c); } + + p = g_utf8_next_char(p); } - new_str[j] = '\0'; + + new_str = gstr->str; + g_string_free(gstr, FALSE); + return new_str; } @@ -934,8 +969,8 @@ */ static void Html_eventually_pop_dw(DilloHtml *html) { - if(html->dw != html->stack[html->stack_top].page) { - if(html->stack[html->stack_top].hand_over_break) + if (html->dw != html->stack[html->stack_top].page) { + if (html->stack[html->stack_top].hand_over_break) a_Dw_page_hand_over_break(DW_PAGE(html->dw), html->stack[(html)->stack_top].style); a_Dw_page_flush(DW_PAGE(html->dw)); @@ -956,8 +991,8 @@ g_free(html->stack[html->stack_top--].tag); Html_eventually_pop_dw(html); return TRUE; - } else - return FALSE; + } + return FALSE; } /* @@ -1024,7 +1059,7 @@ break; default: - l = DW_STYLE_CREATE_LENGTH ((gint)v); + l = DW_STYLE_CREATE_LENGTH ((gint)(prefs.halfsize_images ? v/2 : v)); break; } @@ -1266,7 +1301,10 @@ gint32 border = 0, cellspacing = 1, cellpadding = 2, bgcolor; #endif - Html_par_push_tag(html, tag, tagsize); + Html_cleanup_tag(html, "p>"); + Html_push_tag(html, tag, tagsize); + a_Dw_page_add_parbreak(DW_PAGE (html->dw), 0, + html->stack[(html)->stack_top].style); #ifdef USE_TABLES if ((attrbuf = Html_get_attr(html, tag, tagsize, "border"))) @@ -1410,7 +1448,7 @@ html->stack[html->stack_top].page = html->dw = col_page; /* Handle it when the user clicks on a link */ - Html_connect_signals(html, GTK_OBJECT(col_page)); + Html_connect_signals(html, G_OBJECT(col_page)); break; default: @@ -1636,13 +1674,6 @@ html->stack[(html)->stack_top].style); } - -/* For testing, should be removed soon. */ -static void Html_tag_open_button_clicked(void) -{ - g_print ("DwButton was clicked!\n"); -} - /* * <BUTTON> */ @@ -1654,6 +1685,12 @@ */ DwStyle style_attrs, *style; DwWidget *button, *page; + DilloHtmlForm *form; + DilloHtmlLB *html_lb; + DilloHtmlInputType inp_type; + const gchar *attrbuf; + gchar *name, *value, *type; + /* Render the button */ Html_push_tag(html, tag, tagsize); style_attrs = *html->stack[html->stack_top].style; @@ -1662,7 +1699,7 @@ a_Dw_style_box_set_val(&style_attrs.border_width, 0); a_Dw_style_box_set_val(&style_attrs.padding, 0); style = a_Dw_style_new (&style_attrs, html->bw->main_window->window); - button = a_Dw_button_new (); + button = a_Dw_button_new (DW_USES_HINTS, TRUE); a_Dw_page_add_parbreak (DW_PAGE (html->dw), 5, style); a_Dw_page_add_widget (DW_PAGE (html->dw), button, style); @@ -1677,24 +1714,50 @@ a_Dw_container_add (DW_CONTAINER (button), page); a_Dw_style_box_set_val(&style_attrs.margin, 0); + a_Dw_button_set_sensitive (DW_BUTTON (button), FALSE); + html->stack[html->stack_top].page = html->dw = page; /* Handle it when the user clicks on a link */ - Html_connect_signals(html, GTK_OBJECT(page)); + Html_connect_signals(html, G_OBJECT(page)); + + /* Connect it to the form */ + html_lb = html->linkblock; + form = &(html_lb->forms[html_lb->num_forms - 1]); + + type = (attrbuf = Html_get_attr(html, tag, tagsize, "type")) ? + g_strdup(attrbuf) : g_strdup(""); + if (type == NULL) + return; + + if (strcmp(type, "submit") == 0) { + inp_type = DILLO_HTML_INPUT_BUTTON_SUBMIT; + g_signal_connect(G_OBJECT(button), "clicked", + G_CALLBACK(Html_submit_form), html_lb); + } else if (strcmp(type, "reset") == 0) { + inp_type = DILLO_HTML_INPUT_BUTTON_RESET; + g_signal_connect(G_OBJECT(button), "clicked", + G_CALLBACK(Html_reset_form), html_lb); + } else + return; - /* for testing: */ - a_Dw_button_set_sensitive (DW_BUTTON (button), TRUE); - gtk_signal_connect(GTK_OBJECT(button), "clicked", - GTK_SIGNAL_FUNC(Html_tag_open_button_clicked), NULL); - /* todo: Connect it to the form */ + value = (attrbuf = Html_get_attr(html, tag, tagsize, "value")) ? + g_strdup(attrbuf) : NULL; + name = (attrbuf = Html_get_attr(html, tag, tagsize, "name")) ? + g_strdup(attrbuf) : NULL; + + Html_add_input(form, inp_type, (GtkWidget*)button, name, value, + NULL, FALSE); + + g_free(type); + g_free(name); + g_free(value); } static void Html_tag_open_font(DilloHtml *html, char *tag, gint tagsize) { -#if 1 DwStyle style_attrs, *old_style; - /*DwStyleFont font;*/ const char *attrbuf; gint32 color; @@ -1713,22 +1776,18 @@ } } -#if 0 if ((attrbuf = Html_get_attr(html, tag, tagsize, "face"))) { - font = *( style_attrs.font ); + DwStyleFont font = *( style_attrs.font ); font.name = attrbuf; style_attrs.font = a_Dw_style_font_new_from_list (&font); } -#endif html->stack[html->stack_top].style = a_Dw_style_new (&style_attrs, html->bw->main_window->window); a_Dw_style_unref (old_style); } -#else Html_push_tag(html, tag, tagsize); -#endif } @@ -1798,28 +1857,16 @@ } /* - * Create a new Image struct and request the image-url to the cache - * (If it either hits or misses, is not relevant here; that's up to the - * cache functions) + * Read image associated tag attributes, + * create new image and add it to the html page (if add is TRUE). */ -static void Html_tag_open_img(DilloHtml *html, char *tag, gint tagsize) +static DilloImage *Html_add_new_image(DilloHtml *html, char *tag, + gint tagsize, DwStyle *style_attrs, + gboolean add) { DilloImage *Image; - DilloWeb *Web; - DilloUrl *url, *usemap_url; - DwPage *page; - DwStyle style_attrs; char *width_ptr, *height_ptr, *alt_ptr; const char *attrbuf; - gint ClientKey, border; - - if ( !(attrbuf = Html_get_attr(html, tag, tagsize, "src")) ) - return; - - if (!(url = a_Url_new(attrbuf, URL_STR_(html->linkblock->base_url), 0, 0))) - return; - - page = DW_PAGE (html->dw); width_ptr = NULL; if ((attrbuf = Html_get_attr(html, tag, tagsize, "width"))) @@ -1833,15 +1880,68 @@ if ((attrbuf = Html_get_attr(html, tag, tagsize, "alt"))) alt_ptr = g_strdup(attrbuf); + if ((width_ptr && !height_ptr) || (height_ptr && !width_ptr)) + DEBUG_HTML_MSG("Image tag only sepecifies <%s>\n", + (width_ptr) ? "width" : "height"); + + /* Add a new image widget to this page */ + if ((Image = a_Image_new(0, 0, alt_ptr, + html->stack[html->stack_top].current_bg_color))) + if (add) + Html_add_widget(html, DW_WIDGET(Image->dw), width_ptr, height_ptr, + style_attrs); + + g_free(width_ptr); + g_free(height_ptr); + g_free(alt_ptr); + return Image; +} + +/* + * Tell cache to retrieve image + */ +static void Html_load_image(DilloHtml *html, DilloUrl *url, DilloImage *Image) +{ + DilloWeb *Web; + gint ClientKey; + /* Fill a Web structure for the cache query */ + Web = a_Web_new(url); + Web->bw = html->bw; + Web->Image = Image; + Web->flags |= WEB_Image; + /* Request image data from the cache */ + if ((ClientKey = a_Cache_open_url(Web, NULL, NULL)) != 0) { + a_Interface_add_client(html->bw, ClientKey, 0); + a_Interface_add_url(html->bw, url, WEB_Image); + } +} + +/* + * Create a new Image struct and request the image-url to the cache + * (If it either hits or misses, is not relevant here; that's up to the + * cache functions) + */ +static void Html_tag_open_img(DilloHtml *html, char *tag, gint tagsize) +{ + DilloImage *Image; + DilloUrl *url, *usemap_url; + DwPage *page; + DwStyle style_attrs; + const char *attrbuf; + gint border; + + if (!(attrbuf = Html_get_attr(html, tag, tagsize, "src")) || + !(url = a_Url_new(attrbuf, URL_STR(html->linkblock->base_url), 0, 0))) + return; + + page = DW_PAGE (html->dw); + + usemap_url = NULL; if ((attrbuf = Html_get_attr(html, tag, tagsize, "usemap"))) /* todo: usemap URLs outside of the document are not used. */ usemap_url = a_Url_new(attrbuf, URL_STR_(html->linkblock->base_url),0,0); - if ((width_ptr && !height_ptr) || (height_ptr && !width_ptr)) - DEBUG_HTML_MSG("Image tag only sepecifies <%s>\n", - (width_ptr) ? "width" : "height"); - style_attrs = *html->stack[html->stack_top].style; if (html->stack[html->stack_top].style->link != -1 || usemap_url != NULL) { @@ -1866,12 +1966,8 @@ a_Dw_style_box_set_val (&style_attrs.border_width, border); } - /* Add a new image widget to this page */ - Image = a_Image_new(0, 0, alt_ptr, - html->stack[html->stack_top].current_bg_color); - Html_add_widget(html, DW_WIDGET(Image->dw), width_ptr, height_ptr, - &style_attrs); - Html_connect_signals(html, GTK_OBJECT(Image->dw)); + Image = Html_add_new_image(html, tag, tagsize, &style_attrs, TRUE); + Html_connect_signals(html, G_OBJECT(Image->dw)); /* Image maps */ if (Html_get_attr(html, tag, tagsize, "ismap")) { @@ -1886,20 +1982,8 @@ a_Url_free (usemap_url); } - /* Fill a Web structure for the cache query */ - Web = a_Web_new(url); - Web->bw = html->bw; - Web->Image = Image; - Web->flags |= WEB_Image; - /* Request image data from the cache */ - if ((ClientKey = a_Cache_open_url(Web, NULL, NULL)) != 0) { - a_Interface_add_client(html->bw, ClientKey, 0); - a_Interface_add_url(html->bw, url, WEB_Image); - } + Html_load_image(html, url, Image); a_Url_free(url); - g_free(width_ptr); - g_free(height_ptr); - g_free(alt_ptr); } /* @@ -2430,8 +2514,12 @@ /* Make buttons sensitive again */ for (i = 0; i < form->num_inputs; i++) { if (form->inputs[i].type == DILLO_HTML_INPUT_SUBMIT || - form->inputs[i].type == DILLO_HTML_INPUT_RESET) { + form->inputs[i].type == DILLO_HTML_INPUT_RESET) { gtk_widget_set_sensitive(form->inputs[i].widget, TRUE); + } else if (form->inputs[i].type == DILLO_HTML_INPUT_IMAGE || + form->inputs[i].type == DILLO_HTML_INPUT_BUTTON_SUBMIT || + form->inputs[i].type == DILLO_HTML_INPUT_BUTTON_RESET) { + a_Dw_button_set_sensitive(DW_BUTTON(form->inputs[i].widget), TRUE); } } } @@ -2449,9 +2537,29 @@ */ static void Html_tag_open_meta(DilloHtml *html, char *tag, gint tagsize) { + const char *attrbuf; + char *str; + guint i; + /* only valid inside HEAD */ - if (html->InFlags & IN_HEAD) + if (!(html->InFlags & IN_HEAD)) return; + + /* Check for enoding */ + if ((attrbuf = Html_get_attr(html, tag, tagsize, "http-equiv")) && + g_strcasecmp(attrbuf, "content-type") == 0) { + if ((attrbuf = Html_get_attr(html, tag, tagsize, "content"))) { + if ((str = strstr(attrbuf, "charset="))) { + for (i = 8; str[i] != '\0' && str[i] != ';'; i++) + ; + + html->Encoding = g_strndup(str + 8, i - 8); + /* TODO: For this to work for multi-byte charsets, we have to + * reconvert the document and adjust the parser offset to the + * point just after this tag */ + } + } + } } /* @@ -2565,6 +2673,7 @@ type == DILLO_HTML_INPUT_TEXTAREA) { form->num_entry_fields++; } else if (type == DILLO_HTML_INPUT_SUBMIT || + type == DILLO_HTML_INPUT_BUTTON_SUBMIT || type == DILLO_HTML_INPUT_IMAGE) { form->num_submit_buttons++; } @@ -2597,7 +2706,7 @@ * Reset all inputs in the form containing reset to their initial values. * In general, reset is the reset button for the form. */ -static void Html_reset_form(GtkWidget *reset, DilloHtmlLB *html_lb) +static gboolean Html_reset_form(GtkWidget *reset, DilloHtmlLB *html_lb) { gint i, j; DilloHtmlForm *form; @@ -2607,6 +2716,8 @@ for ( j = 0; j < form->num_inputs; j++) Html_reset_input(&(form->inputs[j])); } + + return TRUE; } /* @@ -2646,30 +2757,68 @@ static void Html_append_input(GString *url, const char *name, const char *value) { + char *iso_name; + char *iso_value; + GError *err = NULL; + if (name != NULL) { - Html_urlencode_append(url, name); + /* Convert name and value to ISO-8859-1 */ + iso_name = g_convert(name, -1, "iso8859-1", "utf8", NULL, NULL, &err); + if (err) { + g_warning ("Html_append_input(): %s\n", err->message); + g_error_free(err); + return; + } + + iso_value = g_convert(value, -1, "iso8859-1", "utf8", NULL, NULL, &err); + if (err) { + g_warning ("Html_append_input(): %s\n", err->message); + g_error_free(err); + return; + } + + Html_urlencode_append(url, iso_name); g_string_append_c(url, '='); - Html_urlencode_append(url, value); + Html_urlencode_append(url, iso_value); g_string_append_c(url, '&'); } } /* + * Append a image button click position to an existing url. + */ +static void Html_append_clickpos(GString *url, const char *name, int x, int y) +{ + if (name) { + Html_urlencode_append(url, name); + g_string_sprintfa(url, ".x=%d&", x); + Html_urlencode_append(url, name); + g_string_sprintfa(url, ".y=%d&", y); + } else + g_string_sprintfa(url, "x=%d&y=%d&", x, y); +} + +/* * Submit the form containing the submit input by making a new query URL * and sending it with a_Nav_push. * (Called by GTK+) + * click_x and click_y are used only by input images and are set only when + * called by Html_image_clicked. GTK+ does NOT give these arguments. */ -static void Html_submit_form(GtkWidget *submit, DilloHtmlLB *html_lb) +static gboolean Html_submit_form(GtkWidget *submit, DilloHtmlLB *html_lb, + gint click_x, gint click_y) { gint i, input_index; DilloHtmlForm *form; DilloHtmlInput *input; DilloUrl *new_url; gchar *url_str, *action_str, *p; + GtkTextBuffer *buffer = NULL; + GtkTextIter *start = NULL, *end = NULL; /* Search the form that generated the submit event */ if ( (i = Html_find_form(submit, html_lb)) == -1 ) - return; + return FALSE; form = &html_lb->forms[i]; if ((form->method == DILLO_HTML_METHOD_GET) || @@ -2716,14 +2865,23 @@ } break; case DILLO_HTML_INPUT_TEXTAREA: + buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(input->widget)); + gtk_text_buffer_get_bounds(buffer, start, end); Html_append_input(DataStr, input->name, - gtk_editable_get_chars(GTK_EDITABLE (input->widget),0,-1)); + gtk_text_buffer_get_text(buffer, start, end, FALSE)); break; case DILLO_HTML_INPUT_INDEX: Html_urlencode_append(DataStr, gtk_entry_get_text(GTK_ENTRY(input->widget))); break; + case DILLO_HTML_INPUT_IMAGE: + if (input->widget == submit) { + Html_append_input(DataStr, input->name, input->init_str); + Html_append_clickpos(DataStr, input->name, click_x, click_y); + } + break; case DILLO_HTML_INPUT_SUBMIT: + case DILLO_HTML_INPUT_BUTTON_SUBMIT: /* Only the button that triggered the submit. */ if (input->widget == submit && form->num_submit_buttons > 0) Html_append_input(DataStr, input->name, input->init_str); @@ -2756,11 +2914,13 @@ a_Nav_push(html_lb->bw, new_url); g_free(action_str); - g_string_free(DataStr, TRUE); a_Url_free(new_url); + g_string_free(DataStr, TRUE); } else { g_print("Html_submit_form: Method unknown\n"); } + + return TRUE; } @@ -2768,19 +2928,70 @@ * Submit form if it has no submit button. * (Called by GTK+ when the user presses enter in a text entry within a form) */ -static void Html_enter_submit_form(GtkWidget *submit, DilloHtmlLB *html_lb) +static gboolean Html_enter_submit_form(GtkWidget *submit, DilloHtmlLB *html_lb) { gint i; /* Search the form that generated the submit event */ if ( (i = Html_find_form(submit, html_lb)) == -1 ) - return; + return FALSE; /* Submit on enterpress when there's a single text-entry only, * or if the user set enter to always submit */ if ((html_lb->forms[i].num_entry_fields == 1) || prefs.enterpress_forces_submit) - Html_submit_form(submit, html_lb); + Html_submit_form(submit, html_lb, 1, 1); + + return TRUE; +} + +/* + * Call submit form, when input image has been clicked + */ +static gboolean Html_image_clicked(DwWidget *widget, gint x, gint y, + DilloHtmlLB *lb) +{ + g_print("Hallo! (%d, %d, %p)\n", x, y, lb); + Html_submit_form((GtkWidget*) widget, lb, x, y); + return TRUE; +} + +/* + * Create input image for the form + */ +static DwWidget *Html_input_image(DilloHtml *html, char *tag, gint tagsize, + DilloHtmlLB *html_lb, DilloUrl *action) +{ + DilloImage *Image; + DwWidget *button; + DilloUrl *url = NULL; + DwStyle style_attrs; + const char *attrbuf; + + if ((attrbuf = Html_get_attr(html, tag, tagsize, "src")) && + (url = a_Url_new(attrbuf, URL_STR(html->linkblock->base_url), 0, 0))) { + button = a_Dw_button_new (0, FALSE); + a_Dw_page_add_widget (DW_PAGE (html->dw), button, + html->stack[html->stack_top].style); + g_signal_connect(G_OBJECT(button), "clicked_at", + G_CALLBACK(Html_image_clicked), html_lb); + a_Dw_button_set_sensitive(DW_BUTTON(button), FALSE); + + /* create new image and add it to the button */ + if ((Image = Html_add_new_image(html, tag, tagsize, &style_attrs, + FALSE))) { + a_Dw_widget_set_style(DW_WIDGET(Image->dw), + html->stack[html->stack_top].style); + a_Dw_container_add(DW_CONTAINER(button), DW_WIDGET(Image->dw)); + Html_load_image(html, url, Image); + a_Url_free(url); + return button; + } + } + + DEBUG_MSG(10, "Html_input_image: unable to create image submit.\n"); + a_Url_free(url); + return NULL; } /* @@ -2794,8 +3005,8 @@ DwWidget *embed_gtk; GtkWidget *widget = NULL; GSList *group; - char *value, *name, *type, *init_str; - const char *attrbuf; + gchar *value, *name, *type, *init_str; + const gchar *attrbuf; gboolean init_val = FALSE; gint input_index; @@ -2854,28 +3065,24 @@ init_str = g_strdup(Html_get_attr2(html, tag, tagsize, "value", 0)); } else if (!g_strcasecmp(type, "submit")) { inp_type = DILLO_HTML_INPUT_SUBMIT; - init_str = (value) ? value : g_strdup("submit"); + init_str = (value) ? value : g_strdup("Submit"); widget = gtk_button_new_with_label(init_str); gtk_widget_set_sensitive(widget, FALSE); /* Until end of FORM! */ - gtk_signal_connect(GTK_OBJECT(widget), "clicked", - GTK_SIGNAL_FUNC(Html_submit_form), html_lb); + g_signal_connect(G_OBJECT(widget), "clicked", + G_CALLBACK(Html_submit_form), html_lb); } else if (!g_strcasecmp(type, "reset")) { inp_type = DILLO_HTML_INPUT_RESET; init_str = (value) ? value : g_strdup("Reset"); widget = gtk_button_new_with_label(init_str); gtk_widget_set_sensitive(widget, FALSE); /* Until end of FORM! */ - gtk_signal_connect(GTK_OBJECT(widget), "clicked", - GTK_SIGNAL_FUNC(Html_reset_form), html_lb); + g_signal_connect(G_OBJECT(widget), "clicked", + G_CALLBACK(Html_reset_form), html_lb); } else if (!g_strcasecmp(type, "image")) { - /* todo: implement this as an image. It'd better be clickable too! =) */ inp_type = DILLO_HTML_INPUT_IMAGE; - if ((attrbuf = Html_get_attr(html, tag, tagsize, "alt"))) - widget = gtk_button_new_with_label(attrbuf); - else - widget = gtk_button_new_with_label("Submit"); - gtk_signal_connect(GTK_OBJECT(widget), "clicked", - GTK_SIGNAL_FUNC(Html_submit_form), html_lb); - init_str = (value) ? value : NULL; + /* use a dw_image widget */ + widget = (GtkWidget*) Html_input_image(html, tag, tagsize, + html_lb, form->action); + init_str = value; } else if (!g_strcasecmp(type, "file")) { /* todo: implement it! */ inp_type = DILLO_HTML_INPUT_FILE; @@ -2893,25 +3100,24 @@ widget = gtk_entry_new(); init_str = (value) ? value : NULL; - gtk_signal_connect(GTK_OBJECT(widget), "activate", - GTK_SIGNAL_FUNC(Html_enter_submit_form), - html_lb); + g_signal_connect(G_OBJECT(widget), "activate", + G_CALLBACK(Html_enter_submit_form), html_lb); } Html_add_input(form, inp_type, widget, name, (init_str) ? init_str : "", NULL, init_val); - if (widget != NULL) { + if (widget != NULL && inp_type != DILLO_HTML_INPUT_IMAGE) { if (inp_type == DILLO_HTML_INPUT_TEXT || - inp_type == DILLO_HTML_INPUT_PASSWORD) { + inp_type == DILLO_HTML_INPUT_PASSWORD) { /* * The following is necessary, because gtk_entry_button_press * returns FALSE, so the event would be delivered to the * GtkDwScrolledFrame, which then would be focused, instead of * the entry. */ - gtk_signal_connect_after(GTK_OBJECT(widget), "button_press_event", - GTK_SIGNAL_FUNC(gtk_true), NULL); + g_signal_connect_after(G_OBJECT(widget), "button_press_event", + G_CALLBACK(gtk_true), NULL); /* Readonly or not? */ gtk_entry_set_editable( @@ -2921,7 +3127,8 @@ /* Set width of the entry */ if ((attrbuf = Html_get_attr(html, tag, tagsize, "size"))) gtk_widget_set_usize(widget, strtol(attrbuf, NULL, 10) * - gdk_char_width(widget->style->font, '0'), 0); + gdk_char_width(gtk_style_get_font( + widget->style), '0'), 0); /* Maximum length of the text in the entry */ if ((attrbuf = Html_get_attr(html, tag, tagsize, "maxlength"))) @@ -2979,14 +3186,12 @@ widget = gtk_entry_new(); Html_add_input(form, DILLO_HTML_INPUT_INDEX, widget, NULL, NULL, NULL, FALSE); - gtk_signal_connect(GTK_OBJECT(widget), "activate", - GTK_SIGNAL_FUNC(Html_enter_submit_form), - html_lb); + g_signal_connect(G_OBJECT(widget), "activate", + G_CALLBACK(Html_enter_submit_form), html_lb); gtk_widget_show(widget); /* compare <input type=text> */ - gtk_signal_connect_after(GTK_OBJECT(widget), "button_press_event", - GTK_SIGNAL_FUNC(gtk_true), - NULL); + g_signal_connect_after(G_OBJECT(widget), "button_press_event", + G_CALLBACK(gtk_true), NULL); embed_gtk = a_Dw_embed_gtk_new(); a_Dw_embed_gtk_add_gtk(DW_EMBED_GTK(embed_gtk), widget); @@ -3005,6 +3210,7 @@ DilloHtmlLB *html_lb = html->linkblock; char *str; DilloHtmlForm *form; + GtkTextBuffer *buffer; if (!(html->InFlags & IN_FORM) || !(html->InFlags & IN_TEXTAREA)) @@ -3018,8 +3224,9 @@ form = &(html_lb->forms[html_lb->num_forms - 1]); form->inputs[form->num_inputs - 1].init_str = str; - gtk_text_insert(GTK_TEXT(form->inputs[form->num_inputs - 1].widget), - NULL, NULL, NULL, str, -1); + buffer = gtk_text_view_get_buffer( + GTK_TEXT_VIEW(form->inputs[form->num_inputs - 1].widget)); + gtk_text_buffer_set_text(buffer, str, -1); html->InFlags &= ~IN_TEXTAREA; Html_pop_tag(html, tag, tagsize); @@ -3033,8 +3240,7 @@ { DilloHtmlLB *html_lb; DilloHtmlForm *form; - GtkWidget *widget; - GtkWidget *scroll; + GtkWidget *widget, *scroll; DwWidget *embed_gtk; char *name; const char *attrbuf; @@ -3068,11 +3274,10 @@ if ((attrbuf = Html_get_attr(html, tag, tagsize, "name"))) name = g_strdup(attrbuf); - widget = gtk_text_new(NULL, NULL); + widget = gtk_text_view_new (); /* compare <input type=text> */ - gtk_signal_connect_after(GTK_OBJECT(widget), "button_press_event", - GTK_SIGNAL_FUNC(gtk_true), - NULL); + g_signal_connect_after(G_OBJECT(widget), "button_press_event", + G_CALLBACK(gtk_true), NULL); /* Calculate the width and height based on the cols and rows * todo: Get it right... Get the metrics from the font that will be used. @@ -3082,13 +3287,15 @@ /* If the attribute readonly isn't specified we make the textarea * editable. If readonly is set we don't have to do anything. */ - if (!Html_get_attr(html, tag, tagsize, "readonly")) - gtk_text_set_editable(GTK_TEXT(widget), TRUE); + if (Html_get_attr(html, tag, tagsize, "readonly")) + gtk_text_view_set_editable (GTK_TEXT_VIEW(widget), FALSE); scroll = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scroll), + GTK_SHADOW_IN); gtk_container_add(GTK_CONTAINER(scroll), widget); gtk_widget_show(widget); gtk_widget_show(scroll); @@ -3201,9 +3408,6 @@ if ( select->options[select->num_options - 1].init_val ) gtk_menu_item_activate(GTK_MENU_ITEM(menuitem)); gtk_widget_show(menuitem); - gtk_signal_connect (GTK_OBJECT (menuitem), "select", - GTK_SIGNAL_FUNC (a_Interface_scroll_popup), - NULL); } else if ( input->type == DILLO_HTML_INPUT_SEL_LIST ) { menuitem = gtk_list_item_new_with_label(html->Stash->str); select->options[select->num_options - 1].menuitem = menuitem; @@ -3530,7 +3734,7 @@ {"style", Html_tag_open_style, Html_tag_close_style}, {"sub", Html_tag_open_sub, Html_tag_close_default}, {"sup", Html_tag_open_sup, Html_tag_close_default}, - {"table", Html_tag_open_table, Html_tag_close_par}, + {"table", Html_tag_open_table, Html_tag_close_div}, /* tbody */ {"td", Html_tag_open_td, Html_tag_close_default}, {"textarea", Html_tag_open_textarea, Html_tag_close_textarea}, @@ -3616,6 +3820,65 @@ } } +static void Html_get_value(GString *Buf, + const char *str, + int delimiter, + gboolean entities) +{ + char *p = (char *) str; + gunichar c; + gboolean in_ent = FALSE; + int isocode; + + while (*p) { + c = g_utf8_get_char(p); + + if (in_ent) { + if (c == ';') + in_ent = FALSE; + p = g_utf8_next_char(p); + continue; + } + + if ((delimiter == ' ' && (isspace(c) || c == '>')) || c == delimiter) { + return; + } else if (c == '&' && entities) { + if ((isocode = Html_parse_entity(p, p - str /* FIXME */)) != -1) { + g_string_append_unichar(Buf, isocode); + in_ent = TRUE; + } else { + g_string_append_unichar(Buf, c); + } + } else if (c == '\r' || c == '\t') { + g_string_append_c(Buf, ' '); + } else if (c == '\n') { + /* ignore */ + } else { + g_string_append_unichar(Buf, c); + } + + p = g_utf8_next_char(p); + } +} + +static int Html_skip_value(const char *str, + int delimiter) +{ + char *p = (char *) str; + gunichar c; + + while (*p) { + c = g_utf8_get_char(p); + + if ((delimiter == ' ' && isspace(c)) || c == delimiter || c == '>') + return p - str; + + p = g_utf8_next_char(p); + } + + return p - str; +} + /* * Get attribute value for 'attrname' and return it. * Tags start with '<' and end with a '>' (Ex: "<P align=center>") @@ -3632,7 +3895,7 @@ const char *attrname, DilloHtmlTagParsingFlags flags) { - gint i, isocode, Found = 0, delimiter = 0, attr_pos = 0; + gint i, Found = 0, delimiter = 0, attr_pos = 0; GString *Buf = html->attr_data; DilloHtmlTagParsingState state = SEEK_ATTR_START; @@ -3676,27 +3939,12 @@ break; case SKIP_VALUE: - if ((delimiter == ' ' && isspace(tag[i])) || tag[i] == delimiter) - state = SEEK_TOKEN_START; + i += Html_skip_value(tag + i, delimiter); + state = SEEK_TOKEN_START; break; case GET_VALUE: - if ((delimiter == ' ' && (isspace(tag[i]) || tag[i] == '>')) || - tag[i] == delimiter) { - state = FINISHED; - } else if (tag[i] == '&' && (flags & HTML_ParseEntities)) { - if ((isocode = Html_parse_entity(tag+i, tagsize-i)) != -1) { - g_string_append_c(Buf, (gchar) isocode); - while(tag[++i] != ';'); - } else { - g_string_append_c(Buf, tag[i]); - } - } else if (tag[i] == '\r' || tag[i] == '\t') { - g_string_append_c(Buf, ' '); - } else if (tag[i] == '\n') { - /* ignore */ - } else { - g_string_append_c(Buf, tag[i]); - } + Html_get_value(Buf, tag + i, delimiter, (flags & HTML_ParseEntities)); + state = FINISHED; break; case FINISHED: @@ -3739,10 +3987,10 @@ DwStyle new_style_attrs, *style; new_style_attrs = *style_attrs; - new_style_attrs.width = width_str ? - Html_parse_length (width_str) : DW_STYLE_UNDEF_LENGTH; - new_style_attrs.height = height_str ? - Html_parse_length (height_str) : DW_STYLE_UNDEF_LENGTH; + new_style_attrs.width = + width_str ? Html_parse_length (width_str) : DW_STYLE_UNDEF_LENGTH; + new_style_attrs.height = + height_str ? Html_parse_length (height_str) : DW_STYLE_UNDEF_LENGTH; style = a_Dw_style_new (&new_style_attrs, (html)->bw->main_window->window); a_Dw_page_add_widget(DW_PAGE (html->dw), widget, style); a_Dw_style_unref (style); @@ -3759,11 +4007,67 @@ */ static void Html_callback(int Op, CacheClient_t *Client) { + DilloHtml *html = Client->CbData; + GError *err = NULL; + char *utf8_str; + gsize bufsize, bytes_read; + + /* Check if there was an encoding specified in the header. If not we + * use a default and hope for the best. */ + if (!html->Encoding) { + if (Client->Encoding) { + html->Encoding = g_strdup(Client->Encoding); + } else { + /* Use default. TODO: make customisable */ + html->Encoding = g_strdup("ISO-8859-1"); + } + } + + /* Convert to UTF-8 */ + utf8_str = g_convert(Client->Buf + html->Start_Ofs, + Client->BufSize - html->Start_Ofs, + "UTF8", html->Encoding, &bytes_read, &bufsize, &err); + + if (err) { + /* Something went wrong in the conversion process. */ + switch (err->code) { + case G_CONVERT_ERROR_ILLEGAL_SEQUENCE: + /* The end of this chunk is inside of a multi-byte character. We + * use the bytes_read variable from the previous call to get it right*/ + utf8_str = g_convert(Client->Buf + html->Start_Ofs, bytes_read, + "UTF8", html->Encoding, NULL, &bufsize, NULL); + break; + default: + g_warning("Conversion from %s to UTF-8 failed: %s\n", html->Encoding, err->message); + bufsize = bytes_read = Client->BufSize - html->Start_Ofs; + utf8_str = g_malloc (bufsize); + memcpy (utf8_str, Client->Buf + html->Start_Ofs, bufsize); + { + int i; + for (i = 0; i < bufsize; i++) + { + if (utf8_str[i] & 0x80) + utf8_str[i] = '?'; + } + } + break; + } + + g_error_free(err); + } + + if (bufsize) + g_string_append_len(html->utf8_buf, utf8_str, bufsize); + g_free(utf8_str); + + /* Line up for the next chunk */ + html->Start_Ofs += bytes_read; + if ( Op ) { - Html_write(Client->CbData, Client->Buf, Client->BufSize, 1); - Html_close(Client->CbData, Client->Key); + Html_write(html, html->utf8_buf->str, html->utf8_buf->len, 1); + Html_close(html, Client->Key); } else - Html_write(Client->CbData, Client->Buf, Client->BufSize, 0); + Html_write(html, html->utf8_buf->str, html->utf8_buf->len, 0); } /* @@ -3776,30 +4080,26 @@ DwPage *page; char completestr[32]; gint token_start, buf_index; - char *buf = Buf + html->Start_Ofs; - gint bufsize = BufSize - html->Start_Ofs; + char *buf = Buf + html->utf8_offset; + guint bufsize = BufSize - html->utf8_offset; g_return_if_fail ( (page = DW_PAGE (html->dw)) != NULL ); - buf = g_strndup(buf, bufsize); - /* Now, 'buf' and 'bufsize' define a buffer aligned to start at a token * boundary. Iterate through tokens until end of buffer is reached. */ - buf_index = 0; - token_start = buf_index; + token_start = buf_index = 0; while (buf_index < bufsize) { - /* invariant: buf_index == bufsize || token_start == buf_index */ - if (html->stack[html->stack_top].parse_mode == DILLO_HTML_PARSE_MODE_SCRIPT) { /* Non HTML code here, let's skip until closing tag */ do { - buf_index += strcspn(buf + buf_index, "<"); + buf_index += d_strcspn(buf + buf_index, "<"); + if (buf_index + 9 > bufsize) buf_index = bufsize; else if (strncmp(buf + buf_index, "</", 2) == 0 && Html_match_tag(html->stack[html->stack_top].tag, - buf+buf_index+2, 7)) { + buf + buf_index + 2, 7)) { token_start = buf_index; break; } else @@ -3832,20 +4132,22 @@ /* Tag: search end of tag (skipping over quoted strings) */ while ( buf_index < bufsize ) { buf_index++; - buf_index += strcspn(buf + buf_index, ">\"'"); + buf_index += d_strcspn(buf + buf_index, ">\"'"); + if ( (ch = buf[buf_index]) == '>' ) { break; } else if ( ch == '"' || ch == '\'' ) { /* Skip over quoted string */ buf_index++; - buf_index += strcspn(buf + buf_index, - (ch == '"') ? "\">" : "'>"); + buf_index += d_strcspn(buf + buf_index, + (ch == '"') ? "\">" : "'>"); + if ( buf[buf_index] == '>' ) { /* Unterminated string value? Let's look ahead and test: * (<: unterminated, closing-quote: terminated) */ gint offset = buf_index + 1; - offset += strcspn(buf + offset, - (ch == '"') ? "\"<" : "'<"); + offset += d_strcspn(buf + offset, + (ch == '"') ? "\"<" : "'<"); if (buf[offset] == ch || !buf[offset]) { buf_index = offset; } else { @@ -3865,7 +4167,7 @@ } else { /* A Word: search for whitespace or tag open */ while (++buf_index < bufsize) { - buf_index += strcspn(buf + buf_index, " <\n\r\t\f\v"); + buf_index += d_strcspn(buf + buf_index, " <\n\r\t\f\v"); if ( buf[buf_index] == '<' && (ch = buf[buf_index + 1]) && !isalpha(ch) && !strchr("/!?", ch)) continue; @@ -3880,16 +4182,15 @@ } }/*while*/ - html->Start_Ofs += token_start; + html->utf8_offset += token_start; if ( html->bw ) { sprintf(completestr,"%s%.1f Kb", PBAR_PSTR(prefs.panel_size == 1), - (float)html->Start_Ofs/1024); + (float) html->utf8_offset / 1024); a_Progressbar_update(html->bw->progress, completestr, 1); } a_Dw_page_flush(page); - g_free(buf); } /* @@ -3910,6 +4211,8 @@ g_string_free(html->Stash, TRUE); g_string_free(html->attr_data, TRUE); + g_string_free(html->utf8_buf, TRUE); + g_free(html->Encoding); /* Remove this client from our active list */ a_Interface_close_client(html->bw, ClientKey); diff -urN dillo-0.6.6/src/html.h dillo2-0.6.6/src/html.h --- dillo-0.6.6/src/html.h 2002-05-26 09:09:02.000000000 -0600 +++ dillo2-0.6.6/src/html.h 2003-04-21 12:36:17.000000000 -0600 @@ -162,6 +162,8 @@ DILLO_HTML_INPUT_HIDDEN, DILLO_HTML_INPUT_SUBMIT, DILLO_HTML_INPUT_RESET, + DILLO_HTML_INPUT_BUTTON_SUBMIT, + DILLO_HTML_INPUT_BUTTON_RESET, DILLO_HTML_INPUT_SELECT, DILLO_HTML_INPUT_SEL_LIST, DILLO_HTML_INPUT_TEXTAREA, @@ -183,7 +185,11 @@ DwWidget *dw; /* this is duplicated in the stack (page) */ DilloHtmlLB *linkblock; - size_t Start_Ofs; + size_t Start_Ofs; /* The offset in the cache data */ + + char *Encoding; /* The encoding set from the header or a META tag */ + GString *utf8_buf; /* The UTF-8 converted data which the parser uses */ + gsize utf8_offset; /* The offset in the above buffer */ DilloHtmlState *stack; gint stack_top; /* Index to the top of the stack [0 based] */ diff -urN dillo-0.6.6/src/image.c dillo2-0.6.6/src/image.c --- dillo-0.6.6/src/image.c 2002-03-04 10:04:21.000000000 -0700 +++ dillo2-0.6.6/src/image.c 2003-04-21 12:36:17.000000000 -0600 @@ -20,6 +20,7 @@ #include <string.h> #include "image.h" +#include "prefs.h" /* * Local data diff -urN dillo-0.6.6/src/interface.c dillo2-0.6.6/src/interface.c --- dillo-0.6.6/src/interface.c 2002-04-11 13:53:49.000000000 -0600 +++ dillo2-0.6.6/src/interface.c 2003-04-21 12:36:20.000000000 -0600 @@ -35,7 +35,6 @@ #include "dw_widget.h" #include "dw_gtk_scrolled_window.h" #include "dw_gtk_viewport.h" -#include "dw_gtk_statuslabel.h" #include "dw_container.h" #include "progressbar.h" @@ -316,10 +315,11 @@ /* * Clear a text entry */ -static void Interface_entry_clear(GtkEntry *entry) +static gboolean Interface_entry_clear(GtkEntry *entry) { gtk_entry_set_text(GTK_ENTRY (entry), ""); gtk_widget_grab_focus(GTK_WIDGET(entry)); + return FALSE; } /* @@ -383,10 +383,9 @@ /* location entry */ bw->location = gtk_entry_new(); - gtk_signal_connect(GTK_OBJECT(bw->location), "activate", - (GtkSignalFunc) a_Interface_entry_open_url, bw); - toolbar = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_BOTH); - gtk_toolbar_set_button_relief(GTK_TOOLBAR(toolbar), GTK_RELIEF_NONE); + g_signal_connect(G_OBJECT(bw->location), "activate", + G_CALLBACK(a_Interface_entry_open_url), bw); + toolbar = gtk_toolbar_new(); GTK_WIDGET_UNSET_FLAGS (toolbar, GTK_CAN_FOCUS); bw->clear_url_button = gtk_toolbar_append_item( @@ -394,9 +393,9 @@ NULL, "Clear the url-box!", "Toolbar/New", Interface_pixmap_new(bw->main_window, s_new_xpm), NULL, NULL); - gtk_signal_connect_object(GTK_OBJECT(bw->clear_url_button), "clicked", - GTK_SIGNAL_FUNC (Interface_entry_clear), - GTK_OBJECT(bw->location)); + g_signal_connect_object(G_OBJECT(bw->clear_url_button), "clicked", + G_CALLBACK(Interface_entry_clear), + G_OBJECT(bw->location), G_CONNECT_SWAPPED); gtk_box_pack_start(GTK_BOX(hbox), toolbar, FALSE, FALSE, 0); gtk_widget_show(toolbar); @@ -414,8 +413,7 @@ GtkWidget *toolbar; gboolean s = prefs.small_icons; - toolbar = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_BOTH); - gtk_toolbar_set_button_relief(GTK_TOOLBAR(toolbar), GTK_RELIEF_NONE); + toolbar = gtk_toolbar_new(); /* back button */ bw->back_button = gtk_toolbar_append_item( @@ -424,12 +422,13 @@ "Go to previous page", "Toolbar/Back", Interface_pixmap_new(bw->main_window, s ? s_left_xpm : left_xpm), - (GtkSignalFunc) a_Commands_back_callback, bw); + GTK_SIGNAL_FUNC(a_Commands_back_callback), bw); + gtk_button_set_relief(GTK_BUTTON(bw->back_button), GTK_RELIEF_NONE); gtk_widget_set_sensitive(bw->back_button, FALSE); Interface_set_button_accel(GTK_BUTTON(bw->back_button), "_,", bw->accel_group); - gtk_signal_connect(GTK_OBJECT(bw->back_button), "button-press-event", - GTK_SIGNAL_FUNC(a_Commands_navpress_callback), bw); + g_signal_connect(G_OBJECT(bw->back_button), "button_press_event", + G_CALLBACK(a_Commands_navpress_callback), bw); /* forward button */ bw->forw_button = gtk_toolbar_append_item( @@ -438,12 +437,12 @@ "Go to next page", "Toolbar/Forward", Interface_pixmap_new(bw->main_window, s ? s_right_xpm : right_xpm), - (GtkSignalFunc) a_Commands_forw_callback, bw); + GTK_SIGNAL_FUNC(a_Commands_forw_callback), bw); gtk_widget_set_sensitive(bw->forw_button, FALSE); Interface_set_button_accel(GTK_BUTTON(bw->forw_button), "_.", bw->accel_group); - gtk_signal_connect(GTK_OBJECT(bw->forw_button), "button-press-event", - GTK_SIGNAL_FUNC(a_Commands_navpress_callback), bw); + g_signal_connect(G_OBJECT(bw->forw_button), "button_press_event", + G_CALLBACK(a_Commands_navpress_callback), bw); /* home button */ bw->home_button = gtk_toolbar_append_item( @@ -452,9 +451,7 @@ "Go to the Home page", "Toolbar/Home", Interface_pixmap_new(bw->main_window, s ? s_home_xpm : home_xpm), - (GtkSignalFunc) a_Commands_home_callback, bw); - gtk_signal_connect(GTK_OBJECT(bw->home_button), "button-press-event", - GTK_SIGNAL_FUNC(a_Commands_navpress_callback), bw); + GTK_SIGNAL_FUNC(a_Commands_home_callback), bw); /* reload button */ bw->reload_button = gtk_toolbar_append_item( @@ -463,7 +460,7 @@ "Reload this page", "Toolbar/Reload", Interface_pixmap_new(bw->main_window, s ? s_reload_xpm : reload_xpm), - (GtkSignalFunc) a_Commands_reload_callback, bw); + GTK_SIGNAL_FUNC(a_Commands_reload_callback), bw); /* save button */ bw->save_button = gtk_toolbar_append_item( @@ -472,7 +469,7 @@ "Save this page", "Toolbar/Save", Interface_pixmap_new(bw->main_window, s ? s_save_xpm : save_xpm), - (GtkSignalFunc) a_Commands_save_callback, bw); + GTK_SIGNAL_FUNC(a_Commands_save_callback), bw); /* stop button */ bw->stop_button = gtk_toolbar_append_item( GTK_TOOLBAR(toolbar), @@ -480,7 +477,7 @@ "Stop the current transfer", "Toolbar/Stop", Interface_pixmap_new(bw->main_window, s ? s_stop_xpm : stop_xpm), - (GtkSignalFunc) a_Commands_stop_callback, bw); + GTK_SIGNAL_FUNC(a_Commands_stop_callback), bw); gtk_widget_set_sensitive(bw->stop_button, FALSE); gtk_widget_show(toolbar); @@ -552,7 +549,8 @@ /* * Handler for mouse-clicks that don't belong to the viewport. */ -static int Interface_click_callback(BrowserWindow *bw, GdkEventButton *event) +static int Interface_click_callback(GtkWidget *widget, GdkEventButton *event, + BrowserWindow *bw) { if (event->type == GDK_2BUTTON_PRESS && event->button == 1) a_Interface_toggle_panel(bw); @@ -584,10 +582,10 @@ bw->main_window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_policy(GTK_WINDOW(bw->main_window), TRUE, TRUE, FALSE); - gtk_signal_connect(GTK_OBJECT(bw->main_window), "delete_event", - GTK_SIGNAL_FUNC(gtk_object_destroy), bw); - gtk_signal_connect(GTK_OBJECT(bw->main_window), "destroy", - GTK_SIGNAL_FUNC(Interface_quit), bw); + g_signal_connect(G_OBJECT(bw->main_window), "delete_event", + G_CALLBACK(gtk_object_destroy), bw); + g_signal_connect(G_OBJECT(bw->main_window), "destroy", + G_CALLBACK(Interface_quit), bw); gtk_container_border_width(GTK_CONTAINER(bw->main_window), 0); gtk_window_set_wmclass(GTK_WINDOW(bw->main_window), "dillo", "Dillo"); @@ -649,7 +647,7 @@ handlebox = gtk_handle_box_new(); bw->PanelHandles = g_slist_append(bw->PanelHandles, handlebox); - gtk_container_border_width(GTK_CONTAINER(handlebox), 4); + gtk_container_border_width(GTK_CONTAINER(handlebox), 0); hbox = gtk_hbox_new(FALSE, 0); toolbar = Interface_toolbar_new(bw, 1); progbox = Interface_progressbox_new(bw, 1); @@ -662,6 +660,41 @@ gtk_box_pack_start(GTK_BOX(box1), handlebox, FALSE, FALSE, 0); gtk_widget_show(handlebox); + } else if (prefs.panel_size == 4) { + + handlebox = gtk_handle_box_new(); + bw->PanelHandles = g_slist_append(bw->PanelHandles, handlebox); + hbox = gtk_hbox_new(FALSE, 0); + /* Control Buttons */ + toolbar = Interface_toolbar_new(bw, 0); + /* Menus */ + menubar = a_Menu_mainbar_new(bw, 1); + /* Location entry */ + locbox = Interface_locbar_new(bw); + /* progress bars */ + progbox = Interface_progressbox_new(bw, 0); + + gtk_box_pack_start(GTK_BOX(hbox), menubar, FALSE, FALSE, 0); + gtk_widget_show(menubar); + gtk_box_pack_start(GTK_BOX(hbox), toolbar, FALSE, FALSE, 0); + gtk_widget_show(toolbar); + gtk_container_add(GTK_CONTAINER(handlebox), hbox); + gtk_widget_show(hbox); + gtk_box_pack_start(GTK_BOX(box1), handlebox, FALSE, FALSE, 0); + gtk_widget_show(handlebox); + + handlebox = gtk_handle_box_new(); + hbox = gtk_hbox_new(FALSE, 0); + bw->PanelHandles = g_slist_append(bw->PanelHandles, handlebox); + gtk_box_pack_start(GTK_BOX(hbox), locbox, TRUE, TRUE, 0); + gtk_widget_show(locbox); + gtk_box_pack_start(GTK_BOX(hbox), progbox, FALSE, FALSE, 0); + gtk_widget_show(progbox); + gtk_container_add(GTK_CONTAINER(handlebox), hbox); + gtk_widget_show(hbox); + gtk_box_pack_start(GTK_BOX(box1), handlebox, FALSE, FALSE, 0); + gtk_widget_show(handlebox); + } else { handlebox = gtk_handle_box_new(); bw->PanelHandles = g_slist_append(bw->PanelHandles, handlebox); @@ -673,7 +706,7 @@ handlebox = gtk_handle_box_new(); bw->PanelHandles = g_slist_append(bw->PanelHandles, handlebox); - gtk_container_border_width(GTK_CONTAINER(handlebox), 4); + gtk_container_border_width(GTK_CONTAINER(handlebox), 0); hbox = gtk_hbox_new(FALSE, 0); toolbar = Interface_toolbar_new(bw, 1); progbox = Interface_progressbox_new(bw, 1); @@ -705,15 +738,13 @@ gtk_box_pack_start(GTK_BOX(box1), bw->docwin, TRUE, TRUE, 0); gtk_widget_show(bw->docwin); - gtk_signal_connect_object_after(GTK_OBJECT(GTK_BIN(bw->docwin)->child), - "button_press_event", - GTK_SIGNAL_FUNC(Interface_click_callback), - (gpointer)bw); + g_signal_connect(G_OBJECT(GTK_BIN(bw->docwin)->child), "button_press_event", + G_CALLBACK(Interface_click_callback), bw); gtk_widget_set_usize(bw->main_window, width, height); /* status widget */ - bw->status = a_Dw_gtk_statuslabel_new(""); + bw->status = gtk_label_new(""); gtk_misc_set_alignment(GTK_MISC(bw->status), 0.0, 0.5); box2 = gtk_hbox_new(FALSE, 0); @@ -801,7 +832,7 @@ */ gchar *a_Interface_get_location_text(BrowserWindow *bw) { - return gtk_entry_get_text(GTK_ENTRY(bw->location)); + return g_strdup(gtk_entry_get_text(GTK_ENTRY(bw->location))); } /* @@ -833,10 +864,11 @@ /* * Called from `destroy' callback in Interface_make_*_dialog */ -static void Interface_destroy_window(GtkWidget *widget, GtkWidget **window) +static gboolean Interface_destroy_window(GtkWidget *widget, GtkWidget **window) { gtk_widget_destroy(*window); *window = NULL; + return FALSE; } @@ -871,31 +903,29 @@ static void Interface_make_choose_file_dialog(GtkWidget **DialogWindow, char *WmName, char *WmClass, char *WTitle, - GtkSignalFunc B1CallBack, void *B1CbData) + GCallback B1CallBack, void *B1CbData) { *DialogWindow = gtk_file_selection_new(WTitle); gtk_window_set_modal(GTK_WINDOW(*DialogWindow), FALSE); gtk_window_set_wmclass(GTK_WINDOW(*DialogWindow), WmName, WmClass); gtk_file_selection_hide_fileop_buttons(GTK_FILE_SELECTION(*DialogWindow)); - gtk_signal_connect( - GTK_OBJECT(*DialogWindow), - "destroy", (GtkSignalFunc) Interface_destroy_window, DialogWindow); - gtk_signal_connect( - GTK_OBJECT(GTK_FILE_SELECTION(*DialogWindow)->ok_button), - "clicked", (GtkSignalFunc) B1CallBack, B1CbData); - gtk_signal_connect( - GTK_OBJECT(GTK_FILE_SELECTION (*DialogWindow)->cancel_button), - "clicked", (GtkSignalFunc) Interface_destroy_window, DialogWindow); + g_signal_connect(G_OBJECT(*DialogWindow), "destroy", + G_CALLBACK(Interface_destroy_window), DialogWindow); + g_signal_connect(G_OBJECT(GTK_FILE_SELECTION(*DialogWindow)->ok_button), + "clicked", B1CallBack, B1CbData); + g_signal_connect(G_OBJECT(GTK_FILE_SELECTION (*DialogWindow)->cancel_button), + "clicked", G_CALLBACK(Interface_destroy_window), + DialogWindow); } /* * Get the file URL from the widget and push it to the browser window. */ -static void +static gboolean Interface_openfile_ok_callback(GtkWidget *widget, BrowserWindow *bw) { - char *fn; + const gchar *fn; DilloUrl *url; GString *UrlStr = g_string_sized_new(1024); @@ -909,6 +939,8 @@ a_Url_free(url); gtk_widget_destroy(bw->openfile_dialog_window); + + return FALSE; } /* @@ -916,7 +948,7 @@ * The URL is not sent "as is", illegal chars are ripped out, * then it's fully parsed by a_Url_new(). */ -void a_Interface_entry_open_url(GtkWidget *widget, BrowserWindow *bw) +gboolean a_Interface_entry_open_url(GtkWidget *widget, BrowserWindow *bw) { gchar *text, *new_text, *p; DilloUrl *url; @@ -924,7 +956,7 @@ /* entry = { bw->location | bw->open_dialog_entry } */ entry = GTK_ENTRY(widget == bw->location ? widget : bw->open_dialog_entry); - text = gtk_entry_get_text(entry); + text = g_strdup (gtk_entry_get_text(entry)); DEBUG_MSG(1, "entry_open_url %s\n", text); @@ -948,6 +980,8 @@ if (bw->open_dialog_window != NULL) gtk_widget_hide(bw->open_dialog_window); + + return TRUE; } /* @@ -959,7 +993,7 @@ Interface_make_choose_file_dialog( &(bw->openfile_dialog_window), "openfile_dialog", "Dillo", "Dillo: Open File", - (GtkSignalFunc) Interface_openfile_ok_callback, (void *)bw); + G_CALLBACK(Interface_openfile_ok_callback), (void *)bw); } if (!GTK_WIDGET_VISIBLE(bw->openfile_dialog_window)) @@ -974,16 +1008,16 @@ static void Interface_make_dialog(GtkWidget **DialogWindow, char *WmName, char *WmClass, char *WTitle, GtkWidget **DialogEntry, char *EntryStr, - char *B1Label, GtkSignalFunc B1CallBack, void *B1CbData) + char *B1Label, GCallback B1CallBack, void *B1CbData) { GtkWidget *button, *box1, *box2, *entry; - *DialogWindow = gtk_window_new(GTK_WINDOW_DIALOG); + *DialogWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_wmclass(GTK_WINDOW(*DialogWindow), WmName, WmClass); gtk_window_set_position(GTK_WINDOW(*DialogWindow), GTK_WIN_POS_CENTER); gtk_window_set_title(GTK_WINDOW(*DialogWindow), WTitle); - gtk_signal_connect(GTK_OBJECT(*DialogWindow), "destroy", - (GtkSignalFunc) Interface_destroy_window, DialogWindow); + g_signal_connect(G_OBJECT(*DialogWindow), "destroy", + G_CALLBACK(Interface_destroy_window), DialogWindow); gtk_container_border_width(GTK_CONTAINER(*DialogWindow), 5); @@ -999,34 +1033,34 @@ *DialogEntry = GTK_WIDGET(entry); gtk_widget_show(entry); - gtk_signal_connect(GTK_OBJECT(entry), "activate", B1CallBack, B1CbData); + g_signal_connect(G_OBJECT(entry), "activate", B1CallBack, B1CbData); box2 = gtk_hbox_new(TRUE, 5); gtk_box_pack_start(GTK_BOX(box1), box2, FALSE, FALSE, 0); gtk_widget_show(box2); button = gtk_button_new_with_label(B1Label); - gtk_signal_connect(GTK_OBJECT(button), "clicked", B1CallBack, B1CbData); + g_signal_connect(G_OBJECT(button), "clicked", B1CallBack, B1CbData); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_box_pack_start(GTK_BOX(box2), button, FALSE, TRUE, 0); gtk_widget_grab_default(button); gtk_widget_show(button); - gtk_signal_connect_object(GTK_OBJECT(entry), "focus_in_event", - (GtkSignalFunc) gtk_widget_grab_default, - GTK_OBJECT(button)); + g_signal_connect_object(G_OBJECT(entry), "focus_in_event", + G_CALLBACK(gtk_widget_grab_default), + G_OBJECT(button), G_CONNECT_SWAPPED); button = gtk_button_new_with_label("Clear"); - gtk_signal_connect_object(GTK_OBJECT(button), "clicked", - (GtkSignalFunc) Interface_entry_clear, - GTK_OBJECT(entry)); + g_signal_connect_object(G_OBJECT(button), "clicked", + G_CALLBACK(Interface_entry_clear), + GTK_OBJECT(entry), G_CONNECT_SWAPPED); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_box_pack_start(GTK_BOX(box2), button, FALSE, TRUE, 0); gtk_widget_show(button); button = gtk_button_new_with_label("Cancel"); - gtk_signal_connect_object(GTK_OBJECT(button), "clicked", - (GtkSignalFunc) gtk_widget_destroy, - GTK_OBJECT(*DialogWindow)); + g_signal_connect_object(G_OBJECT(button), "clicked", + G_CALLBACK(gtk_widget_destroy), + G_OBJECT(*DialogWindow), G_CONNECT_SWAPPED); GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); gtk_box_pack_start(GTK_BOX(box2), button, FALSE, TRUE, 0); gtk_widget_show(button); @@ -1040,17 +1074,17 @@ static void Interface_make_question_dialog( GtkWidget **DialogWindow, char *WmName, char *WmClass, char *WTitle, char *Question, - GtkSignalFunc OkCallback, void *OkCbData, - GtkSignalFunc CancelCallback, void *CancelCbData) + GCallback OkCallback, void *OkCbData, + GCallback CancelCallback, void *CancelCbData) { GtkWidget *frame, *label, *button, *box1, *box2; - *DialogWindow = gtk_window_new(GTK_WINDOW_DIALOG); + *DialogWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_wmclass(GTK_WINDOW(*DialogWindow), WmName, WmClass); gtk_window_set_title(GTK_WINDOW(*DialogWindow), WTitle); gtk_container_border_width(GTK_CONTAINER(*DialogWindow), 10); - gtk_signal_connect(GTK_OBJECT(*DialogWindow), "destroy", - (GtkSignalFunc) Interface_destroy_window, DialogWindow); + g_signal_connect(G_OBJECT(*DialogWindow), "destroy", + G_CALLBACK(Interface_destroy_window), DialogWindow); box1 = gtk_vbox_new(FALSE, 5); frame = gtk_frame_new(NULL); @@ -1065,17 +1099,17 @@ box2 = gtk_hbox_new(TRUE, 5); button = gtk_button_new_with_label("OK"); - gtk_signal_connect_object(GTK_OBJECT(button), "clicked", - OkCallback, OkCbData); - gtk_signal_connect(GTK_OBJECT(button), "clicked", - (GtkSignalFunc) Interface_destroy_window, DialogWindow); + g_signal_connect(G_OBJECT(button), "clicked", + OkCallback, OkCbData); + g_signal_connect(G_OBJECT(button), "clicked", + G_CALLBACK(Interface_destroy_window), DialogWindow); gtk_widget_show(button); gtk_box_pack_start(GTK_BOX(box2), button, FALSE, TRUE, 0); button = gtk_button_new_with_label("Cancel"); - gtk_signal_connect_object(GTK_OBJECT(button), "clicked", - CancelCallback, CancelCbData); - gtk_signal_connect(GTK_OBJECT(button), "clicked", - (GtkSignalFunc) Interface_destroy_window, DialogWindow); + g_signal_connect(G_OBJECT(button), "clicked", + CancelCallback, CancelCbData); + g_signal_connect(G_OBJECT(button), "clicked", + G_CALLBACK(Interface_destroy_window), DialogWindow); gtk_widget_show(button); gtk_box_pack_start(GTK_BOX(box2), button, FALSE, TRUE, 0); gtk_box_pack_start(GTK_BOX(box1), box2, FALSE, FALSE, 0); @@ -1092,8 +1126,8 @@ */ void a_Interface_question_dialog( BrowserWindow *bw, gchar *QuestionTxt, - GtkSignalFunc OkCallback, void *OkCbData, - GtkSignalFunc CancelCallback, void *CancelCbData) + GCallback OkCallback, void *OkCbData, + GCallback CancelCallback, void *CancelCbData) { if (!bw->question_dialog_window) { Interface_make_question_dialog(&(bw->question_dialog_window), @@ -1113,7 +1147,7 @@ Interface_make_dialog(&(bw->open_dialog_window), "open_dialog", "Dillo", "Dillo: Open URL", &(bw->open_dialog_entry), "", - "OK", (GtkSignalFunc) a_Interface_entry_open_url, (void *)bw); + "OK", G_CALLBACK(a_Interface_entry_open_url), (void *)bw); if (prefs.transient_dialogs) gtk_window_set_transient_for(GTK_WINDOW(bw->open_dialog_window), GTK_WINDOW(bw->main_window)); @@ -1151,7 +1185,7 @@ /* * Save current page to a local file */ -static void Interface_file_save_url(GtkWidget *widget, BrowserWindow *bw) +static gboolean Interface_file_save_url(GtkWidget *widget, BrowserWindow *bw) { const char *name; GtkFileSelection *choosefile; @@ -1175,6 +1209,8 @@ a_Url_free(url); gtk_widget_destroy(bw->save_dialog_window); + + return FALSE; } /* @@ -1226,7 +1262,7 @@ Interface_make_choose_file_dialog( &bw->save_dialog_window, "save_dialog", "Dillo", "Dillo: Save URL as File...", - (GtkSignalFunc) Interface_file_save_url, (void *)bw ); + G_CALLBACK(Interface_file_save_url), (void *)bw ); } url = a_Url_new(a_Interface_get_location_text(bw), NULL, 0, 0); SuggestedName = Interface_make_save_name(url); @@ -1253,7 +1289,7 @@ &bw->save_link_dialog_window, "save_link_dialog", "Dillo", "Dillo: Save link as File...", - (GtkSignalFunc) Interface_file_save_link, + G_CALLBACK(Interface_file_save_link), (void *)bw); } SuggestedName = Interface_make_save_name(a_Menu_popup_get_url(bw)); @@ -1270,7 +1306,7 @@ /* * Scroll to an occurence of a string in the open page */ -static void Interface_entry_search(GtkWidget *widget, BrowserWindow* bw) +static gboolean Interface_entry_search(GtkWidget *widget, BrowserWindow* bw) { DwWidget *Dw; char *string; @@ -1281,6 +1317,8 @@ a_Dw_container_findtext(DW_CONTAINER (Dw), &bw->findtext_data, NULL, string); g_free(string); + + return FALSE; } /* @@ -1292,7 +1330,7 @@ Interface_make_dialog(&(bw->findtext_dialog_window), "findtext_dialog", "Dillo", "Dillo: Find text in page", &(bw->findtext_dialog_entry), "", - "Find", (GtkSignalFunc) Interface_entry_search, (void *)bw); + "Find", G_CALLBACK(Interface_entry_search), (void *)bw); if (prefs.transient_dialogs) gtk_window_set_transient_for(GTK_WINDOW(bw->findtext_dialog_window), GTK_WINDOW(bw->main_window)); @@ -1303,31 +1341,3 @@ else gdk_window_raise(bw->findtext_dialog_window->window); } - -/* - * This signal callback adjusts the position of a menu. - * It's useful for very long menus. - */ -void a_Interface_scroll_popup(GtkWidget *widget) -{ - /* - * todo: - * 1) Scrolling menues should rather be the task of Gtk+. This is - * a hack, and I don't know if it does not break anything. - * 2) It could be improved, e.g. a timeout could be added for - * better mouse navigation. - */ - int y, h, mx, my, sh; - - y = widget->allocation.y; - h = widget->allocation.height; - gdk_window_get_geometry (widget->parent->parent->window, - &mx, &my, NULL, NULL, NULL); - sh = gdk_screen_height (); - - if (y + my < 0) - gdk_window_move (widget->parent->parent->window, mx, - y + 1); - else if (y + my > sh - h) - gdk_window_move (widget->parent->parent->window, mx, sh - h - y - 1); -} - diff -urN dillo-0.6.6/src/interface.h dillo2-0.6.6/src/interface.h --- dillo-0.6.6/src/interface.h 2002-01-10 11:59:42.000000000 -0700 +++ dillo2-0.6.6/src/interface.h 2003-04-21 12:36:20.000000000 -0600 @@ -26,14 +26,12 @@ void a_Interface_set_location_text(BrowserWindow *bw, char *text); gchar *a_Interface_get_location_text(BrowserWindow *bw); void a_Interface_reset_progress_bars(BrowserWindow *bw); -void a_Interface_entry_open_url(GtkWidget *widget, BrowserWindow *bw); +gboolean a_Interface_entry_open_url(GtkWidget *widget, BrowserWindow *bw); void a_Interface_set_cursor(BrowserWindow *bw, GdkCursorType CursorType); BrowserWindow *a_Interface_browser_window_new(gint width, gint height); void a_Interface_set_button_sens(BrowserWindow *bw); -void a_Interface_scroll_popup(GtkWidget *widget); - void a_Interface_question_dialog( BrowserWindow *bw, gchar *QuestionTxt, GtkSignalFunc OkCallback, void *OkCbData, diff -urN dillo-0.6.6/src/menu.c dillo2-0.6.6/src/menu.c --- dillo-0.6.6/src/menu.c 2002-04-09 19:04:54.000000000 -0600 +++ dillo2-0.6.6/src/menu.c 2003-04-21 12:36:22.000000000 -0600 @@ -51,8 +51,8 @@ menu = gtk_menu_new(); menuitem = gtk_menu_item_new_with_label((char *) name); tmp_key = gtk_label_parse_uline(GTK_LABEL(GTK_BIN(menuitem)->child), name); - gtk_widget_add_accelerator(menuitem, "activate_item", bw->accel_group, - tmp_key, GDK_MOD1_MASK, 0); + //gtk_widget_add_accelerator(menuitem, "activate-item", bw->accel_group, + // tmp_key, GDK_MOD1_MASK, 0); if ( right_justify ) gtk_menu_item_right_justify(GTK_MENU_ITEM(menuitem)); @@ -73,17 +73,17 @@ void (*callback) (GtkWidget *widget, void *data), void *data) { GtkWidget *menuitem; - GtkAccelGroup *menu_accels; + //GtkAccelGroup *menu_accels; GdkModifierType accel_mods; guint accel_key; guint tmp_key; menuitem = gtk_menu_item_new_with_label((char *) name); gtk_menu_append(GTK_MENU(menu), menuitem); - menu_accels = gtk_menu_ensure_uline_accel_group(GTK_MENU(menu)); + //menu_accels = gtk_menu_ensure_uline_accel_group(GTK_MENU(menu)); tmp_key = gtk_label_parse_uline(GTK_LABEL(GTK_BIN(menuitem)->child), name); - gtk_widget_add_accelerator(menuitem, "activate_item", - menu_accels, tmp_key, 0, 0); + //gtk_widget_add_accelerator(menuitem, "activate_item", + // menu_accels, tmp_key, 0, 0); gtk_widget_show(menuitem); if (accel != NULL) { @@ -92,8 +92,8 @@ accel_key, (guint)accel_mods, GTK_ACCEL_VISIBLE); } if (callback != NULL) - gtk_signal_connect(GTK_OBJECT(menuitem), "activate", - (GtkSignalFunc) callback, data); + g_signal_connect(G_OBJECT(menuitem), "activate", + G_CALLBACK(callback), data); return menuitem; } @@ -265,21 +265,15 @@ } menu_item = Menu_add(menu, text->str, NULL, bw, NULL, NULL); /* attach the nav_stack index to the menu item */ - gtk_object_set_data(GTK_OBJECT (menu_item), "nav_idx", - GINT_TO_POINTER(i)); + g_object_set_data(G_OBJECT (menu_item), "nav_idx", + GINT_TO_POINTER(i)); - gtk_signal_connect ( - GTK_OBJECT (menu_item), "select", - GTK_SIGNAL_FUNC (a_Interface_scroll_popup), NULL); - gtk_signal_connect ( - GTK_OBJECT (menu_item), "select", - GTK_SIGNAL_FUNC (a_Menu_popup_history_select_callback), bw); - gtk_signal_connect ( - GTK_OBJECT (menu_item), "deselect", - GTK_SIGNAL_FUNC (a_Menu_popup_history_deselect_callback), bw); - gtk_signal_connect ( - GTK_OBJECT (menu_item), "button-press-event", - GTK_SIGNAL_FUNC (a_Commands_historypress_callback), bw); + g_signal_connect (G_OBJECT(menu_item), "select", + G_CALLBACK(a_Menu_popup_history_select_callback), bw); + g_signal_connect (G_OBJECT(menu_item), "deselect", + G_CALLBACK(a_Menu_popup_history_deselect_callback), bw); + g_signal_connect (G_OBJECT(menu_item), "button-press-event", + G_CALLBACK(a_Commands_historypress_callback), bw); } g_string_free(text, TRUE); @@ -305,11 +299,11 @@ copy = Menu_add(menu, "Copy Link location", NULL, bw, a_Commands_set_selection_callback, bw); - gtk_signal_connect(GTK_OBJECT(copy), "selection_clear_event", + g_signal_connect(G_OBJECT(copy), "selection_clear_event", GTK_SIGNAL_FUNC(a_Commands_clear_selection_callback), NULL); gtk_selection_add_target(copy, GDK_SELECTION_PRIMARY, GDK_SELECTION_TYPE_STRING, 1); - gtk_signal_connect(GTK_OBJECT(copy), "selection_get", + g_signal_connect(G_OBJECT(copy), "selection_get", GTK_SIGNAL_FUNC(a_Commands_give_selection_callback), NULL); Menu_sep(menu); @@ -351,11 +345,6 @@ gtk_menu_item_set_submenu(GTK_MENU_ITEM(bw->pagemarks_menuitem), bw->pagemarks_menu); - - /* todo: add a scroller so one can access all menu entries, - * even if there's a lot of pagemarks. */ - /* --EG: I haven't found a way to pass a scroller - * as widget for the submenu */ } /* @@ -374,8 +363,6 @@ Menu_pagemarks_goto_pagemark, bw); sprintf(anchor, "#%ld", (glong)(bw->pagemarks_last)); a_Dw_page_add_anchor(page, anchor, style); - gtk_signal_connect (GTK_OBJECT (bw->pagemarks_last), "select", - GTK_SIGNAL_FUNC (a_Interface_scroll_popup), NULL); sprintf(name, "dilloHeading%d", level); gtk_widget_set_name(bw->pagemarks_last, name); } @@ -398,8 +385,10 @@ g_string_truncate(text, 64); g_string_append(text, "..."); } + gtk_label_set_text(GTK_LABEL (child), text->str); - g_string_free(text, 1); + g_string_free(text, TRUE); + bw->pagemarks_last = NULL; } } diff -urN dillo-0.6.6/src/misc.c dillo2-0.6.6/src/misc.c --- dillo-0.6.6/src/misc.c 2002-03-20 09:38:43.000000000 -0700 +++ dillo2-0.6.6/src/misc.c 2003-04-21 12:36:22.000000000 -0600 @@ -94,3 +94,28 @@ return val; } +/* + * UTF-8 aware implementation of strcspn. + * Returns the number of bytes that doesn't contain any of the ASCII + * characters in reject. + */ +size_t a_Misc_strcspn(const char *str, const char *reject) +{ + char *p = (char *) str; + gunichar c; + int len, i; + + len = strlen(reject); + + while (*p) { + c = g_utf8_get_char(p); + + for (i = 0; i < len; i++) + if (c == reject[i]) + return p - str; + + p = g_utf8_next_char(p); + } + + return p - str; +} diff -urN dillo-0.6.6/src/misc.h dillo2-0.6.6/src/misc.h --- dillo-0.6.6/src/misc.h 2002-03-20 09:38:43.000000000 -0700 +++ dillo2-0.6.6/src/misc.h 2003-04-21 12:36:22.000000000 -0600 @@ -5,7 +5,10 @@ char *a_Misc_stristr(char *src, char *str); char *a_Misc_expand_tabs(const char *str); gchar *a_Misc_strsep(char **orig, const char *delim); +size_t a_Misc_strcspn(const char *str, const char *reject); + #define d_strsep a_Misc_strsep +#define d_strcspn a_Misc_strcspn #endif /* __MISC_H__ */ diff -urN dillo-0.6.6/src/nav.c dillo2-0.6.6/src/nav.c --- dillo-0.6.6/src/nav.c 2002-04-09 19:10:16.000000000 -0600 +++ dillo2-0.6.6/src/nav.c 2003-04-21 12:36:23.000000000 -0600 @@ -343,7 +343,7 @@ /* * Callback for reload confirmation */ -static void Nav_reload_confirmed(BrowserWindow *bw) +static gboolean Nav_reload_confirmed(BrowserWindow *bw) { DEBUG_MSG(3, "Nav_reload_confirmed\n"); if ( a_Nav_stack_size(bw) && @@ -353,15 +353,17 @@ bw->question_dialog_data = NULL; Nav_reload(bw); } + return FALSE; } /* * Callback for reload refusal */ -static void Nav_reload_refused(BrowserWindow *bw) +static gboolean Nav_reload_refused(BrowserWindow *bw) { DEBUG_MSG(3, "Nav_reload_refused\n"); bw->question_dialog_data = NULL; + return FALSE; } /* @@ -397,12 +399,11 @@ /* Attempt to repost data, let's confirm... */ bw->question_dialog_data = (gpointer)url; a_Interface_question_dialog(bw, "Repost form data?", - Nav_reload_confirmed, bw, - Nav_reload_refused, bw); + G_CALLBACK(Nav_reload_confirmed), bw, + G_CALLBACK(Nav_reload_refused), bw); } else { Nav_reload(bw); } } } - diff -urN dillo-0.6.6/src/pixmaps.h dillo2-0.6.6/src/pixmaps.h --- dillo-0.6.6/src/pixmaps.h 2002-01-15 07:52:16.000000000 -0700 +++ dillo2-0.6.6/src/pixmaps.h 2003-04-21 12:36:24.000000000 -0600 @@ -44,337 +44,429 @@ */ /* XPM */ static char * left_xpm[] = { -"26 20 6 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"O c #FFFF9A690000", -"+ c #FFFFFFFF0000", -"@ c #FFFFFFFFFFFF", -" ", -" .. ", -" .X. ", -" .XX. ", -" .XXX. ", -" .XXXX. ", -" .XXXXX........ +OO+O ", -" .XXXXXXXXXXXXX. +OO+O ", -" .XXXXXXXXXXXXXX. +OO+O ", -" .XXXXXXXXXXXXXXX. +OO+O ", -" .XXXXXXXXXXXXXXX. +OO+O ", -" .XXXXXXXXXXXXXX. +OO+O ", -" .XXXXXXXXXXXXX. +OO+O ", -" .XXXXX........ +OO+O ", -" .XXXX. ", -" .XXX. ", -" .XX. ", -" .X. ", -" .. ", -" "}; +"24 24 9 1", +" c None", +". c #020202", +"+ c #2E2E2E", +"@ c #5A7A52", +"# c #83A881", +"$ c #86B282", +"% c #B0C9AF", +"& c #42593B", +"* c #CEDECB", +" ", +" ", +" ", +" . ", +" .. ", +" .%. ", +" .*%. ", +" .*%%........ ", +" .*%%%%%%%%%#. ", +" .*%%%%%%%%%%@. ", +" +*%%%%%%%%%%%@. ", +" .#$#$$#$$$#$$$@. ", +" .&@@@@@@@@@@@&. ", +" .&@@@@@@@@@@&. ", +" .&@@&&&&&&&&. ", +" .&@&........ ", +" .&&. ", +" .&. ", +" .. ", +" . ", +" ", +" ", +" ", +" "}; + /* XPM */ static char * right_xpm[] = { -"26 20 6 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"O c #FFFF9A690000", -"+ c #FFFFFFFF0000", -"@ c #FFFFFFFFFFFF", -" ", -" .. ", -" .X. ", -" .XX. ", -" .XXX. ", -" .XXXX. ", -" O+OO+ ........XXXXX. ", -" O+OO+ .XXXXXXXXXXXXX. ", -" O+OO+ .XXXXXXXXXXXXXX. ", -" O+OO+ .XXXXXXXXXXXXXXX. ", -" O+OO+ .XXXXXXXXXXXXXXX. ", -" O+OO+ .XXXXXXXXXXXXXX. ", -" O+OO+ .XXXXXXXXXXXXX. ", -" O+OO+ ........XXXXX. ", -" .XXXX. ", -" .XXX. ", -" .XX. ", -" .X. ", -" .. ", -" "}; +"24 24 9 1", +" c None", +". c #020202", +"+ c #0E120A", +"@ c #B0CAAE", +"# c #526A46", +"$ c #6F9667", +"% c #465A2E", +"& c #5D7D55", +"* c #A6BEA2", +" ", +" ", +" ", +" . ", +" .. ", +" .$. ", +" .@$. ", +" .......+@@$. ", +" .@@@@@@@@@@$+ ", +" .@@@@@@@@@@@$. ", +" .*@@@@@@@@*@@$. ", +" .$$$$$$$$$$&$$%. ", +" .&&#&#&#&&&&&%. ", +" .&&&&&&&&#&#%. ", +" .&######&&&%. ", +" ........#&%. ", +" .#%. ", +" .%. ", +" .. ", +" . ", +" ", +" ", +" ", +" "}; + /* XPM */ static char * reload_xpm[] = { -"26 20 6 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"O c #FFFF9A690000", -"+ c #FFFFFFFF0000", -"@ c #FFFFFFFFFFFF", -" . .... ", -" .. .OOO. ", -" ....X. .OOOO. ", -" .XXXXXX. .OOOOO. ", -" .XXXXXXXX....OOO. ", -" .XXXXXXXX. .OOO. ", -" .XXX...X. ...OOO... ", -" .XXX. .. .OOOOO. ", -" ..... . .OOO. ", -" . .O. ", -" .O. . ", -" .OOO. . ..... ", -" .OOOOO. .. .XXX. ", -" ...OOO... .X...XXX. ", -" .OOO. .XXXXXXXX. ", -" .OOO....XXXXXXXX. ", -" .OOOOO. .XXXXXX. ", -" .OOOO. .X.... ", -" .OOO. .. ", -" .... . "}; +"24 24 9 1", +" c None", +". c #020202", +"+ c #121A12", +"@ c #759E6F", +"# c #89B183", +"$ c #2A3A28", +"% c #A4C7A0", +"& c #62855D", +"* c #CBE5C7", +" . ", +" .. ", +" .*. ", +" ...+**. ", +" .@%*****. .. ", +" +#********. .#&. ", +" .@**********. .#&. ", +" $%*#@@@###&. .%. ", +".#*@@@@@@@&. .%&. ", +".%%&&...&&. . .*@. ", +".*@&. .&. .. .%#. ", +".*&. .. .*. .%*@. ", +".#@. . .**...%*%@. ", +".&#. .********@&. ", +" .%. .%******%#@$. ", +" .&#. .%*******#@&. ", +" .&@. .@@#@@@@&&.. ", +" .. .@&@&&&&.. ", +" .@&.... ", +" $@. ", +" .. ", +" . ", +" ", +" "}; + /* XPM */ static char * home_xpm[] = { -"26 20 9 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"O c #FFFF9A690000", -"+ c #FFFFFFFF0000", -"z c #0000FFFFFFFF", -"@ c #FFFFFFFFFFFF", -"I c #FFFF00000000", -"# c #FFFF0000FFFF", -" ", -" XX ", -" .... ", -" ...... ", -" ........ ", -" ....oo.... ", -" ....o..o.... ", -" .............. ", -" ................ ", -" .....zzzzzzzz..... ", -" .OOOOOOOO. ", -" .OOOOOOOOOO. ", -" .OOOOOOOOOO. ", -" .OOOO...OOO. ", -" .OOO.I@.OOO. ", -" .OOO.I#@.OO. ", -" X .OOO.I#@.OO. ", -" XXXX.OOO.I#@.OO. XXX ", -" XXXXXX.OOO.I#@.OO.XXXXXX ", -"XXXXXXX............XXXXXXX"}; +"24 24 9 1", +" c None", +". c #0D0B0A", +"+ c #BEBEBE", +"@ c #A7A29B", +"# c #88766D", +"$ c #B95540", +"% c #565B53", +"& c #964E3C", +"* c #F3F3F3", +" ", +" .. ", +" .... .... ", +" .$&...%%.. ", +" .&&..%%#%.. ", +" .&...@%@+%.. ", +" ...%#+#++*%.. ", +" ..%@@+@*+*+#.. ", +" ..#@+@*+*+*+*%.. ", +" ..+++*+*+*+*+**#.. ", +" ..+++++++++.....##.. ", +" ....********.@+*.#.... ", +" .+*.....*.+**.%. ", +" .+*.@#&.*.+**.%. ", +" .#*.@$$.*.....%. ", +" ..*.@$..+@%%##.. ", +" ..*.@$$.*****+. ", +" .+.@$&.+++++#. ", +" .@.$$$.*****@. ", +" .................... . ", +" .@#@##%%%..###%%%. ", +" .. ......... ...... ", +" ... ", +" "}; + /* XPM */ static char * save_xpm[] = { -"26 20 6 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"O c #FFFF9A690000", -"+ c #FFFFFFFF0000", -"@ c #FFFFFFFFFFFF", -" ", -" .................... ", -" .XXXXXXXXXXXXXXXXXX. ", -" ...XXXXXXXXXXXXXXXX. ", -" .XX..............XX. ", -" .XX.@@@@@@@@@@@@.XX. ", -" .XX..............XX. ", -" .XX.@@@@@@@@@@@@.XX. ", -" .XX..............XX. ", -" .XX.@@@@@@@@@@@@.XX. ", -" .XX..............XX. ", -" .XXXXXXXXXXXXXXXXXX. ", -" .XXXXXXXXXXXXXXXXXX. ", -" .XXX...........XXXX. ", -" .XXX.OOOOOOOOOO.XXX. ", -" .XXX.O....OOOOO.XXX. ", -" .XXX.O. .OOOOO.XXX. ", -" .XXX.O. .OOOOO.XXX. ", -" .XXX.O. .OOOOO.XXX. ", -" .................. "}; +"24 24 9 1", +" c None", +". c #080909", +"+ c #616B73", +"@ c #9CA8B6", +"# c #C5CDD3", +"$ c #D77D6E", +"% c #F8F8F7", +"& c #C67268", +"* c #42494D", +" ", +" ................... ", +" .##+#######$##$##+#@. ", +" .#@+$$$&$$$$$$&&&+@+. ", +" .#@+$$&$$$&$&&&&&*@+. ", +" .#@+%%%%%%%%%%%%%+@+. ", +" .#@+%%%%%%%%%%%%%+@*. ", +" .#@+#############+@+. ", +" .#@+%%%%%%%%%%%%%+@*. ", +" .#@+%%%%%%%%%%%%%+@*. ", +" .#@+#############+@+. ", +" .#@+%%%%%%%%%%%%%+@*. ", +" .#@+++++++++++++++@*. ", +" .@@@@@@@@@@@@@@@@@@*. ", +" .#@+@**++++++++**@@*. ", +" .@@+*@#%#%%##@@+*+#*. ", +" .#+@*#%+**###@#*++@*. ", +" .#@+*#%+**#####*++#*. ", +" .@+@*#%***#@##%*++@*. ", +" .+@+*##***##%%%*++@*. ", +" .+++@#@####%#@*+*#*. ", +" .................. ", +" ", +" "}; + /* XPM */ static char * stop_xpm[] = { -"26 20 6 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"O c #FFFF9A690000", -"+ c #FFFFFFFF0000", -"@ c #FFFFFFFFFFFF", -" ", -" ........ ", -" .XXXXXXXX. ", -" .XXXX..XXXX. ", -" .XXXX.OO.XXXX. ", -" .XXXXX.OO.XXXXX. ", -" .XXXXXX.OO.XXXXXX. ", -" .XXXXXX.OO.XXXXXX. ", -" .XXXXXX.OO.XXXXXX. ", -" .XXXXXX.OO.XXXXXX. ", -" .XXXXXX.OO.XXXXXX. ", -" .XXXXXXX..XXXXXXX. ", -" .XXXXXXXXXXXXXXXX. ", -" .XXXXXXX..XXXXXXX. ", -" .XXXXX.OO.XXXXX. ", -" .XXXX.OO.XXXX. ", -" .XXXX..XXXX. ", -" .XXXXXXXX. ", -" ........ ", -" "}; +"24 24 9 1", +" c None", +". c #0B0402", +"+ c #FEFEFE", +"@ c #301103", +"# c #E2B7A5", +"$ c #71270A", +"% c #C87C57", +"& c #B14314", +"* c #DC5614", +" ", +" ..@@.. ", +" @$*%%%%&$@ ", +" .&%%%*****&&$. ", +" .&%******&*&*&&. ", +" .&%%********&&&&$. ", +" $%********&&&&&&&$ ", +" @*%**&%&&**&%%&&&&&. ", +" &%***%++#&*%#+#*&&&$ ", +" .%****%+++#%+++#*&&&$. ", +" .%****&%++++++#*%&&$&. ", +" @%&*****%++++#%&&&&&$. ", +" @***&***%++++#*&&&&$$@ ", +" .%&&*&&%++++++#&&&&&$. ", +" .&&&&&%+++##+++#&&$$$. ", +" &&&&$%++#**#++#&&&$@ ", +" .*&&&$%#&&&&%#&&&$$@ ", +" $%&&&&*&&&&*&&&$$@ ", +" .$*&&&&&&&&&&&$$$. ", +" .$&&&&&&&$&$$$$. ", +" .$$&$&$&$$$$@. ", +" .$$$$$$$@@ ", +" ..@... ", +" "}; /* Small icons here */ /* XPM */ static char * s_left_xpm[] = { -"17 15 5 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"o c #FFFF9A690000", -"O c #FFFFFFFF0000", -" ", -" .. ", -" .X. ", -" .XX. ", -" .XXX...... oOo", -" .XXXXXXXXX. oOo", -" .XXXXXXXXXX. oOo", -".XXXXXXXXXXX. oOo", -" .XXXXXXXXXX. oOo", -" .XXXXXXXXX. oOo", -" .XXX...... oOo", -" .XX. ", -" .X. ", -" .. ", -" "}; +"16 16 9 1", +" c None", +". c #020202", +"+ c #B1C9AF", +"@ c #5B7B54", +"# c #3E5437", +"$ c #7EAA7A", +"% c #CEDECB", +"& c #2E2E2E", +"* c #668E62", +" ", +" . ", +" .. ", +" .%. ", +" .%+....... ", +" .%+++++++$. ", +" .%++++++++@. ", +" &%+++++++++*. ", +" .#@@@@@@@@#. ", +" .#@@######. ", +" .#@....... ", +" .#. ", +" .. ", +" . ", +" ", +" "}; + /* XPM */ static char * s_right_xpm[] = { -"17 15 5 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"o c #FFFF9A690000", -"O c #FFFFFFFF0000", -" ", -" .. ", -" .X. ", -" .XX. ", -"oOo ......XXX. ", -"oOo .XXXXXXXXX. ", -"oOo .XXXXXXXXXX. ", -"oOo .XXXXXXXXXXX.", -"oOo .XXXXXXXXXX. ", -"oOo .XXXXXXXXX. ", -"oOo ......XXX. ", -" .XX. ", -" .X. ", -" .. ", -" "}; +"16 16 9 1", +" c None", +". c #020202", +"+ c #0E120A", +"@ c #5A7A52", +"# c #6A8961", +"$ c #729A66", +"% c #7E9E76", +"& c #4D633B", +"* c #ADC8AB", +" ", +" . ", +" .. ", +" .%. ", +" .......*$. ", +" .********$+ ", +" .*********%. ", +" .**********#. ", +" .#@#@@@@@@&. ", +" .#&&@&&@@&. ", +" .......@&. ", +" .&. ", +" .. ", +" . ", +" ", +" "}; + /* XPM */ static char * s_home_xpm[] = { -"17 15 7 1", -" c None", -". c #9658A289BEFB", -"X c #000000000000", -"o c #FFFF0000FFFF", -"O c #FFFF9A690000", -"+ c #FFFF00000000", -"@ c #FFFFFFFFFFFF", -" . ", -" XXX ", -" XXXXX ", -" XXXoXXX ", -" XXXoXoXXX ", -" XXXXXXXXXXX ", -" XXXXXXXXXXXXX ", -" XOOOOOX ", -" XOOOOOOOX ", -" XOOOXXOOX ", -" XOOX+oXOX ", -" XOOXo@XOX ", -" XOOXo@XOX.. ", -" ...XOOXo@XOX....", -"....XXXXXXXXX...."}; +"16 16 9 1", +" c None", +". c #070505", +"+ c #DEDEDE", +"@ c #B3B3B3", +"# c #5D6156", +"$ c #853D2D", +"% c #3E433D", +"& c #52261A", +"* c #2F312E", +" ", +" ... .. ", +" .$..##. ", +" .$.#@+#. ", +" ..*#++@@. ", +" .#@+++++#. ", +" .%@@++++++@. ", +" ...+++++*%*... ", +" .+&&&+%+%. ", +" .+&$&+***. ", +" .+&$$+@+@. ", +" .+&$&+@+@. ", +" .+$&&+@+@. ", +" %%##%%*.#%%*# ", +" %..#%#%# #%#% ", +" "}; + /* XPM */ static char * s_reload_xpm[] = { -"17 15 4 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"o c #FFFF9A690000", -" . .. ", -" ...X. .oo. ", -" .XXXXX..ooo. ", -" .XXXXXX. .oo. ", -" .XX..X. .oo. ", -" .XX. . .oooo. ", -" .. .oo. ", -" .. .. ", -" .oo. .. ", -" .oooo. . .XX. ", -" .oo. .X..XX. ", -" .oo. .XXXXXX. ", -" .ooo..XXXXX. ", -" .oo. .X... ", -" .. . "}; +"16 16 9 1", +" c None", +". c #020202", +"+ c #7E9A42", +"@ c #5A6F33", +"# c #DBE4D0", +"$ c #B9CE9B", +"% c #36421A", +"& c #A4AA9E", +"* c #9DB674", +" ", +" . ", +" ..&. ", +" .##$$. ", +" .&*+++. ", +" .*@.%. ", +" .*. . . ", +" .@. .. ", +" .. .#. ", +" . . .+. ", +" .#.@+. ", +" .#+++@. ", +" .*+@@. ", +" .*.. ", +" . ", +" "}; + /* XPM */ static char * s_save_xpm[] = { -"17 15 5 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"o c #FFFFFFFFFFFF", -"O c #FFFF9A690000", -" ............... ", -" ..XXXXXXXXXXXX. ", -" .X...........X. ", -" .X.ooooooooo.X. ", -" .X...........X. ", -" .X.ooooooooo.X. ", -" .X...........X. ", -" .XXXXXXXXXXXXX. ", -" .XXXXXXXXXXXXX. ", -" .XX........XXX. ", -" .XX.OOOOOOO.XX. ", -" .XX.O...OOO.XX. ", -" .XX.O. .OOO.XX. ", -" ............. ", -" "}; +"16 16 9 1", +" c None", +". c #020202", +"+ c #405666", +"@ c #8995A3", +"# c #9DB0BE", +"$ c #D1D7DB", +"% c #C77667", +"& c #FBFBFB", +"* c #D28F86", +" .............. ", +".&$**********$$.", +".$#%%%%%%%%%%#+.", +".$#$&&&&&&&&&#+.", +".$#$$$$$$$$$&@+.", +".$#$&&&&&&&$&#+.", +".$#$$$$$$#$#&@+.", +".$@&&&&&$&&$&@+.", +".$##$$#$$#$$#@+.", +".$###@@@@@@@@#+.", +".$#@#$#$&$@+@@+.", +".$#@$$.+$#$.+#+.", +".$#@#$++$$#++#+.", +".@@@$&.@#$#.@#+.", +" .++###@@+@++@+.", +" ............. "}; + /* XPM */ static char * s_stop_xpm[] = { -"17 15 4 1", -" c None", -". c #000000000000", -"X c #9658A289BEFB", -"o c #FFFF9A690000", -" ", -" ....... ", -" .XXX.XXX. ", -" .XXX.o.XXX. ", -" .XXXX.o.XXXX. ", -" .XXXX.o.XXXX. ", -" .XXXX.o.XXXX. ", -" .XXXX.o.XXXX. ", -" .XXXXX.XXXXX. ", -" .XXXXXXXXXXX. ", -" .XXXXX.XXXXX. ", -" .XXX.o.XXX. ", -" .XXX.XXX. ", -" ....... ", -" "}; +"16 16 9 1", +" c None", +". c #020202", +"+ c #F9F3F1", +"@ c #1F0A03", +"# c #F1E2DD", +"$ c #F3DED3", +"% c #5E240C", +"& c #C04718", +"* c #F2DAD2", +" ", +" ...... ", +" .%&&&&%. ", +" @&&&&&&&%@ ", +" .&&&&&&&&&&. ", +" .&&&++&&#+&&%. ", +" .&&&++++++&&%. ", +" @&&&&++++&&&&. ", +" .&&&&++++&&&%. ", +" @&&&++##++&&%. ", +" .%&&$#&&++&&@@ ", +" .&&&&&&&&&%. ", +" @&&&&&&&%@ ", +" .%%&%%@. ", +" ...@@. ", +" "}; /* XPM */ static char * s_new_xpm[] = { -"10 10 2 1", -" c None", -"X c #9658A289BEFB", -"XX XX", -" XX X XX ", -" XX XX ", -" ", -" X XX X ", -" X XX X ", -" ", -" XX XX ", -" XX X XX ", -"XX XX"}; +"16 16 9 1", +" c None", +". c #020202", +"+ c #363636", +"@ c #5E5E5E", +"# c #BCBCBC", +"$ c #C2C2C2", +"% c #E3E3E3", +"& c #F1F1F1", +"* c #989898", +" ......... ", +" .&&&&&&&%#. ", +" .&&&&&&&$&#. ", +" .&&&&&&&#@@+. ", +" .&&&&&&&%*++. ", +" .&&&&&&&&&%$. ", +" .&&&&&&%&&&$. ", +" .&&&&%&&&&%$. ", +" .&&&&%&%%&&#. ", +" .&&%%%%&%%%$. ", +" .&&&&&%%&%%$. ", +" .&%%%%%&%%%#. ", +" .&&%%&%%%%%#. ", +" .&%%%%%%%%%#. ", +" .$$$###$###*. ", +" ........... "}; #endif /* __BITVEC_H__ */ diff -urN dillo-0.6.6/src/pixmaps_old.h dillo2-0.6.6/src/pixmaps_old.h --- dillo-0.6.6/src/pixmaps_old.h 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/src/pixmaps_old.h 2003-04-21 12:36:24.000000000 -0600 @@ -0,0 +1,167 @@ +/* XPM */ +static char * home_xpm[] = { +"29 20 5 1", +" c None", +". c #FFFFFF", +"+ c #555555", +"@ c #000000", +"# c #505075", +" . ", +" +@. ", +" +@#+. ", +" +@###+. ", +" +@#####+. ", +" +@#######+. ", +" +@#########+. ", +" +@###########+. ", +" +@#############+. ", +" @@#############@@ ", +" @###########. ", +" @###########. ", +" @####@@.####. ", +" @###@##+.###. ", +" @###@##+.###. ", +" @###@##+.###. ", +" @###@##+.###. ", +" @###@##+.###. ", +" @####@@@####. ", +" @@@@@@@@@@@+ "}; +/* XPM */ +static char * leftarrow_xpm[] = { +"29 20 5 1", +" c None", +". c #000000", +"+ c #555555", +"@ c #FFFFFF", +"# c #505075", +" .+ ", +" .+@ ", +" .+#@ ", +" .+##@ ", +" .+###@ ", +" .+####+++++++ .....+ ...+", +" .+###########@ .####@ .##@", +" .+############@ .####@ .##@", +" .+#############@ .####@ .##@", +".+##############@ .####@ .##@", +"+.##############@ .####@ .##@", +" +.#############@ .####@ .##@", +" +.############@ .####@ .##@", +" +.###########@ .####@ .##@", +" +.####@@@@@@@ +@@@@@ +@@@", +" +.###@ ", +" +.##@ ", +" +.#@ ", +" +.@ ", +" "}; +/* XPM */ +static char * reload_xpm[] = { +"28 20 5 1", +" c None", +". c #FFFFFF", +"+ c #000000", +"@ c #555555", +"# c #505075", +" . .... ", +" .+ +@@@. ", +" ....@+ +###@. ", +" .@@@@##+ +####@. ", +" .@#######++++##@. ", +" .@#######+ +##@. ", +" .@##+++#+ +++##@... ", +" .@##+ ++ +####@+ ", +" .++++ + +###+ ", +" + +#+ ", +" +#+ + ", +" +###+ + ++++. ", +" +@####+ ++ +##@. ", +" ...@##+++ +#+++##@. ", +" .@##+ +#######@. ", +" .@##++++#######@. ", +" .@####+ +#@@@@@. ", +" .@###+ +@.... ", +" .@@@+ +. ", +" .... . "}; +/* XPM */ +static char *rghtarrow_xpm[] = { +"29 20 5 1", +" c None", +". c #000000", +"+ c #555555", +"@ c #505075", +"$ c #FFFFFF", +" .+ ", +" ..+ ", +" .@.+ ", +" .@@.+ ", +" .@@@.+ ", +"...+ .....+ .......@@@@.+ ", +".@@$ .@@@@$ .@@@@@@@@@@@.+ ", +".@@$ .@@@@$ .@@@@@@@@@@@@.+ ", +".@@$ .@@@@$ .@@@@@@@@@@@@@.+ ", +".@@$ .@@@@$ .@@@@@@@@@@@@@@.+", +".@@$ .@@@@$ .@@@@@@@@@@@@@@+$", +".@@$ .@@@@$ .@@@@@@@@@@@@@+$ ", +".@@$ .@@@@$ .@@@@@@@@@@@@+$ ", +".@@$ .@@@@$ .@@@@@@@@@@@+$ ", +"+$$$ +$$$$$ +$$$$$$@@@@+$ ", +" .@@@+$ ", +" .@@+$ ", +" .@+$ ", +" .+$ ", +" .$ "}; +/* XPM */ +static char * stop_xpm[] = { +"28 20 4 1", +" c None", +". c #FFFFFF", +"+ c #000000", +"@ c #505075", +" ........ ", +" +@@@@@@@@. ", +" +@@@@@@@@@@. ", +" +@@@@@..@@@@@. ", +" +@@@@@....@@@@@. ", +" +@@@@@@....@@@@@@. ", +" +@@@@@@@....@@@@@@@. ", +" +@@@@@@@....@@@@@@@. ", +" +@@@@@@@....@@@@@@@. ", +" +@@@@@@@....@@@@@@@. ", +" +@@@@@@@....@@@@@@@. ", +" +@@@@@@@....@@@@@@@. ", +" +@@@@@@@....@@@@@@@. ", +" +@@@@@@@@..@@@@@@@@. ", +" +@@@@@@@@@@@@@@@@. ", +" +@@@@@@..@@@@@@. ", +" +@@@@....@@@@. ", +" +@@@@..@@@@. ", +" +@@@@@@@@. ", +" ++++++++ "}; + +static char * save_xpm[] = { +"28 20 4 1", +" c None", +". c #FFFFFF", +"+ c #000000", +"@ c #505075", +" ................... ", +" @@@@@@@@@@@@@@@@@@@+ ", +" @..@@@@@@@@@@@@@@@@+ ", +" @@@@++++++++++++@@@+ ", +" @@@@############@@@+ ", +" @@@@++++++++++++@@@+ ", +" @@@@############@@@+ ", +" @@@@++++++++++++@@@+ ", +" @@@@############@@@+ ", +" @@@@++++++++++++@@@+ ", +" @@@@@@@@@@@@@@@@@@@+ ", +" @@@@@@@@@@@@@@@@@@@+ ", +" @@@@@@@@@@@@@@@@@@@+ ", +" @@@@@##########@@@@+ ", +" @@@@@#++++#####@@@@+ ", +" @@@@@#+..+#####@@@@+ ", +" @@@@@#+..+#####@@@@+ ", +" @@@@@#+..+#####@@@@+ ", +" @@@@@@@@@@@@@@@@@@@ ", +" "}; + diff -urN dillo-0.6.6/src/plain.c dillo2-0.6.6/src/plain.c --- dillo-0.6.6/src/plain.c 2002-02-26 14:56:40.000000000 -0700 +++ dillo2-0.6.6/src/plain.c 2003-04-21 13:58:57.000000000 -0600 @@ -55,7 +55,7 @@ /* * Popup the page menu ("button_press_event" callback of the viewport) */ -static int Plain_page_menu(GtkWidget *viewport, GdkEventButton *event, +static gboolean Plain_page_menu(GtkWidget *viewport, GdkEventButton *event, BrowserWindow *bw) { if (event->button == 3) { @@ -99,10 +99,9 @@ //a_Dw_widget_set_style (plain->dw, plain->style); /* The context menu */ - gtk_signal_connect_while_alive - (GTK_OBJECT(GTK_BIN(plain->bw->docwin)->child),"button_press_event", - GTK_SIGNAL_FUNC(Plain_page_menu), (gpointer)plain->bw, - GTK_OBJECT (page)); + g_signal_connect (GTK_OBJECT(GTK_BIN(plain->bw->docwin)->child), + "button_press_event", GTK_SIGNAL_FUNC(Plain_page_menu), + plain->bw); return plain; } @@ -155,8 +154,11 @@ static void Plain_write(DilloPlain *plain, void *Buf, gint BufSize, gint Eof) { DwPage *page = (DwPage *)plain->dw; + GError *err = NULL; char *Start; char *data; + char *utf8_str; + char *tabs_expanded; gint i, len, MaxBytes; Start = (char*)Buf + plain->Start_Ofs; @@ -173,7 +175,19 @@ break; case ST_Eol: data = g_strndup(Start + i - len, len); - a_Dw_page_add_text(page, a_Misc_expand_tabs(data), plain->style); + tabs_expanded = a_Misc_expand_tabs(data); + utf8_str = g_convert(tabs_expanded, -1, "UTF8", "ISO-8859-1", + NULL, NULL, &err); + + if (err) { + g_warning("Plain_write(): %s\n", err->message); + g_error_free(err); + err = NULL; + } else { + a_Dw_page_add_text(page, utf8_str, plain->style); + } + + g_free(tabs_expanded); g_free(data); a_Dw_page_add_parbreak(page, 0, plain->style); if ( Start[i] == '\r' && Start[i + 1] == '\n' ) ++i; @@ -186,7 +200,19 @@ plain->Start_Ofs += i - len; if ( Eof && len ) { data = g_strndup(Start + i - len, len); - a_Dw_page_add_text(page, a_Misc_expand_tabs(data), plain->style); + tabs_expanded = a_Misc_expand_tabs(data); + utf8_str = g_convert(tabs_expanded, -1, "UTF8", "ISO-8859-1", + NULL, NULL, &err); + + if (err) { + g_warning("Plain_write(): %s\n", err->message); + g_error_free(err); + err = NULL; + } else { + a_Dw_page_add_text(page, utf8_str, plain->style); + } + + g_free(tabs_expanded); g_free(data); a_Dw_page_add_parbreak(page, 0, plain->style); plain->Start_Ofs += len; diff -urN dillo-0.6.6/src/prefs.c dillo2-0.6.6/src/prefs.c --- dillo-0.6.6/src/prefs.c 2002-04-03 09:31:46.000000000 -0700 +++ dillo2-0.6.6/src/prefs.c 2003-04-21 12:36:27.000000000 -0600 @@ -67,7 +67,8 @@ { "vw_fontname", DRC_TOKEN_VW_FONT }, { "fw_fontname", DRC_TOKEN_FW_FONT }, { "generate_submit", DRC_TOKEN_GENERATE_SUBMIT }, - { "enterpress_forces_submit", DRC_TOKEN_ENTERPRESS_FORCES_SUBMIT } + { "enterpress_forces_submit", DRC_TOKEN_ENTERPRESS_FORCES_SUBMIT }, + { "halfsize_images", DRC_TOKEN_HALFSIZE_IMAGES } }; static const guint n_symbols = sizeof (symbols) / sizeof (symbols[0]); @@ -156,6 +157,8 @@ prefs.panel_size = 1; else if (!g_strcasecmp(scanner->value.v_string, "medium")) prefs.panel_size = 2; + else if (!g_strcasecmp(scanner->value.v_string, "stack")) + prefs.panel_size = 4; else /* default to "large" */ prefs.panel_size = 3; break; @@ -226,6 +229,9 @@ prefs.enterpress_forces_submit = (strcmp(scanner->value.v_string, "YES") == 0); break; + case DRC_TOKEN_HALFSIZE_IMAGES: + prefs.halfsize_images = (strcmp(scanner->value.v_string, "YES") == 0); + break; default: break; /* Not reached */ } diff -urN dillo-0.6.6/src/prefs.h dillo2-0.6.6/src/prefs.h --- dillo-0.6.6/src/prefs.h 2002-04-03 09:31:46.000000000 -0700 +++ dillo2-0.6.6/src/prefs.h 2003-04-21 12:36:27.000000000 -0600 @@ -58,6 +58,7 @@ DRC_TOKEN_VW_FONT, DRC_TOKEN_GENERATE_SUBMIT, DRC_TOKEN_ENTERPRESS_FORCES_SUBMIT, + DRC_TOKEN_HALFSIZE_IMAGES, DRC_TOKEN_LAST } Dillo_Rc_TokenType; @@ -100,6 +101,7 @@ gchar *fw_fontname; gboolean generate_submit; gboolean enterpress_forces_submit; + gboolean halfsize_images; }; /* Global Data */ diff -urN dillo-0.6.6/src/progressbar.c dillo2-0.6.6/src/progressbar.c --- dillo-0.6.6/src/progressbar.c 2001-05-17 19:31:15.000000000 -0600 +++ dillo2-0.6.6/src/progressbar.c 2003-04-21 12:36:27.000000000 -0600 @@ -23,7 +23,11 @@ */ GtkWidget* a_Progressbar_new(void) { - return gtk_statusbar_new(); + GtkWidget *frame = gtk_frame_new(NULL); + GtkWidget *label = gtk_label_new(""); + gtk_container_add(GTK_CONTAINER(frame), label); + gtk_widget_show (label); + return frame; } /* @@ -49,7 +53,6 @@ /* * Again, for future preferences stuff - */ gint a_Progressbar_set_font(GtkWidget *pbar, const char *font) { GtkStyle *style; @@ -62,6 +65,7 @@ (GtkCallback) gtk_widget_set_style, style); return(0); } + */ /* * Update the specified progress bar. @@ -70,14 +74,10 @@ */ void a_Progressbar_update(GtkWidget *pbar, const char *updatestr, gint sens) { - gint context_id; - gtk_widget_set_sensitive(pbar, (sens == 0) ? FALSE : TRUE); if ( updatestr != NULL ) { - context_id = gtk_statusbar_get_context_id(GTK_STATUSBAR(pbar), "text"); - gtk_statusbar_pop(GTK_STATUSBAR(pbar), context_id); - gtk_statusbar_push(GTK_STATUSBAR(pbar), context_id, updatestr); + gtk_label_set_text (GTK_LABEL(GTK_BIN(pbar)->child), updatestr); } } diff -urN dillo-0.6.6/stamp-h2.in dillo2-0.6.6/stamp-h2.in --- dillo-0.6.6/stamp-h2.in 1969-12-31 17:00:00.000000000 -0700 +++ dillo2-0.6.6/stamp-h2.in 2003-04-21 12:35:20.000000000 -0600 @@ -0,0 +1 @@ +timestamp