From a0b048f3be79f1c6b9cf7b62024d939c39aefb22 Mon Sep 17 00:00:00 2001 From: Robert Nelson Date: Tue, 8 Aug 2006 12:01:18 +0000 Subject: [PATCH] Make build-win32-cross-tools work on FreeBSD. git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@3270 91ce42f0-d328-0410-95d8-f526ca767f89 --- bacula/src/win32/build-win32-cross-tools | 44 +- .../{mingw-utils.patch => mingw-utils1.patch} | 1845 +++++++---------- bacula/src/win32/patches/mingw-utils2.patch | 147 ++ bacula/src/win32/patches/mingw-utils3.patch | 140 ++ 4 files changed, 1096 insertions(+), 1080 deletions(-) rename bacula/src/win32/patches/{mingw-utils.patch => mingw-utils1.patch} (92%) create mode 100644 bacula/src/win32/patches/mingw-utils2.patch create mode 100644 bacula/src/win32/patches/mingw-utils3.patch diff --git a/bacula/src/win32/build-win32-cross-tools b/bacula/src/win32/build-win32-cross-tools index 293872434b..bf6f612b99 100755 --- a/bacula/src/win32/build-win32-cross-tools +++ b/bacula/src/win32/build-win32-cross-tools @@ -160,7 +160,7 @@ PATH="$PREFIX/bin:$PATH" #----------------------------------------------------- -function download_files +download_files() { # Download a file from a given url, only if it is not present mkdir -p "$SRCDIR" @@ -204,7 +204,7 @@ function download_files } -function download_file +download_file() { cd "$SRCDIR" if test ! -f $1 ; then @@ -221,7 +221,7 @@ function download_file } -function purge_existing_install +purge_existing_install() { echo "Purging the existing files in $PREFIX" if cd "$PREFIX"; then @@ -231,7 +231,7 @@ function purge_existing_install } -function install_libs +install_libs() { echo "Installing cross libs and includes" mkdir -p "$PREFIX/$TARGET" @@ -252,7 +252,7 @@ function install_libs } -function extract_binutils +extract_binutils() { cd "$SRCDIR" BINUTILS=`tar -tzf "$SRCDIR/$BINUTILS_ARCHIVE" | head -n 1` @@ -265,7 +265,7 @@ function extract_binutils } -function configure_binutils +configure_binutils() { cd "$BUILDDIR" rm -rf "binutils-$TARGET" @@ -278,7 +278,7 @@ function configure_binutils } -function build_binutils +build_binutils() { cd "$BUILDDIR/binutils-$TARGET" echo "Building binutils" @@ -291,7 +291,7 @@ function build_binutils } -function install_binutils +install_binutils() { cd "$BUILDDIR/binutils-$TARGET" echo "Installing binutils" @@ -304,7 +304,7 @@ function install_binutils } -function extract_gcc +extract_gcc() { cd "$SRCDIR" GCC=`tar -tzf "$SRCDIR/$GCC_CORE_ARCHIVE" | head -n 1` @@ -336,7 +336,7 @@ function extract_gcc } -function patch_gcc +patch_gcc() { if [ "$GCC_PATCH" != "" ]; then echo "Patching gcc" @@ -347,7 +347,7 @@ function patch_gcc } -function configure_gcc +configure_gcc() { cd "$BUILDDIR" rm -rf "gcc-$TARGET" @@ -367,7 +367,7 @@ function configure_gcc } -function build_gcc +build_gcc() { cd "$BUILDDIR/gcc-$TARGET" echo "Building gcc" @@ -388,7 +388,7 @@ function build_gcc } -function install_gcc +install_gcc() { cd "$BUILDDIR/gcc-$TARGET" echo "Installing gcc" @@ -401,7 +401,7 @@ function install_gcc } -function extract_mingw_utils +extract_mingw_utils() { cd "$SRCDIR" MINGW_UTILS=`tar -tzf "$SRCDIR/$MINGW_UTILS_ARCHIVE" | head -n 1` @@ -414,17 +414,21 @@ function extract_mingw_utils } -function patch_mingw_utils +patch_mingw_utils() { MINGW_UTILS=`tar -tzf "$SRCDIR/$MINGW_UTILS_ARCHIVE" | head -n 1` cd "${SRCDIR}/${MINGW_UTILS}" echo "Patching mingw-utils" - patch -p0 < ${SCRIPTDIR}/patches/mingw-utils.patch 2>&1 > patch.log + patch -p0 < ${SCRIPTDIR}/patches/mingw-utils1.patch 2>&1 > patch.log + cd dos2unix + patch -p0 < ${SCRIPTDIR}/patches/mingw-utils2.patch 2>&1 >> patch.log + cd ../unix2dos + patch -p0 < ${SCRIPTDIR}/patches/mingw-utils3.patch 2>&1 >> patch.log cd "$BUILDDIR" } -function configure_mingw_utils +configure_mingw_utils() { cd "$BUILDDIR" rm -rf "mingw-utils" @@ -436,7 +440,7 @@ function configure_mingw_utils } -function build_mingw_utils +build_mingw_utils() { cd "$BUILDDIR/mingw-utils" echo "Building mingw-utils" @@ -449,7 +453,7 @@ function build_mingw_utils } -function install_mingw_utils +install_mingw_utils() { cd "$BUILDDIR/mingw-utils" echo "Installing mingw-utils" @@ -462,7 +466,7 @@ function install_mingw_utils } -function final_tweaks +final_tweaks() { echo "Finalizing installation" diff --git a/bacula/src/win32/patches/mingw-utils.patch b/bacula/src/win32/patches/mingw-utils1.patch similarity index 92% rename from bacula/src/win32/patches/mingw-utils.patch rename to bacula/src/win32/patches/mingw-utils1.patch index 48bb6acb52..e218ba1d58 100644 --- a/bacula/src/win32/patches/mingw-utils.patch +++ b/bacula/src/win32/patches/mingw-utils1.patch @@ -1,10 +1,6 @@ -Index: Makefile.am -=================================================================== -RCS file: /cvsroot/mingw/utils/Makefile.am,v -retrieving revision 1.3 -diff -u -r1.3 Makefile.am ---- Makefile.am 4 Dec 2002 12:15:22 -0000 1.3 -+++ Makefile.am 24 Jun 2006 00:31:11 -0000 +diff -ru ../release/mingw-utils-0.3/Makefile.am ./Makefile.am +--- ../release/mingw-utils-0.3/Makefile.am Wed Dec 4 07:06:21 2002 ++++ ./Makefile.am Tue Aug 8 06:53:25 2006 @@ -1,4 +1,18 @@ -SUBDIRS = dos2unix drmingw pexports redir reimp res2coff scripts unix2dos +if BUILD_DRMINGW @@ -25,318 +21,508 @@ diff -u -r1.3 Makefile.am instdir = /tmp/$(PACKAGE)-$(VERSION) -Index: configure.ac -=================================================================== -RCS file: /cvsroot/mingw/utils/configure.ac,v -retrieving revision 1.6 -diff -u -r1.6 configure.ac ---- configure.ac 25 Nov 2003 16:53:22 -0000 1.6 -+++ configure.ac 24 Jun 2006 00:31:11 -0000 -@@ -7,6 +7,52 @@ - AM_CONFIG_HEADER(config.h) - AM_MAINTAINER_MODE +diff -ru ../release/mingw-utils-0.3/Makefile.in ./Makefile.in +--- ../release/mingw-utils-0.3/Makefile.in Tue Nov 25 11:31:11 2003 ++++ ./Makefile.in Tue Aug 8 06:53:25 2006 +@@ -1,8 +1,8 @@ +-# Makefile.in generated by automake 1.7.9 from Makefile.am. ++# Makefile.in generated by automake 1.9.6 from Makefile.am. + # @configure_input@ -+AC_ARG_ENABLE(drmingw, -+ AS_HELP_STRING([--disable-drmingw],[Don't build drmingw (default is build)]), -+ [case "${enableval}" in -+ yes) build_drmingw=true ;; -+ no) build_drmingw=false ;; -+ *) AC_MSG_ERROR([--enable-drmingw argument must be yes or no, not "${enableval}"]) ;; -+ esac], -+ [build_drmingw=true]) -+ -+AC_ARG_ENABLE(redir, -+ AS_HELP_STRING([--disable-redir],[Don't build redir (default is build)]), -+ [case "${enableval}" in -+ yes) build_redir=true ;; -+ no) build_redir=false ;; -+ *) AC_MSG_ERROR([--enable-redir argument must be yes or no, not "${enableval}"]) ;; -+ esac], -+ [build_redir=true]) -+ -+AC_ARG_ENABLE(res2coff, -+ AS_HELP_STRING([--disable-res2coff],[Don't build res2coff (default is build)]), -+ [case "${enableval}" in -+ yes) build_res2coff=true ;; -+ no) build_res2coff=false ;; -+ *) AC_MSG_ERROR([--enable-res2coff argument must be yes or no, not "${enableval}"]) ;; -+ esac], -+ [build_res2coff=true]) -+ -+AC_ARG_ENABLE(nonportable, -+ AS_HELP_STRING([--disable-nonportable],[shortcut for --disable-drmingw, --disable-redir and --disable-res2coff]), -+ [case "${enableval}" in -+ yes) build_drmingw=true -+ build_redir=true -+ build_res2coff=true -+ ;; -+ no) build_res2coff=false -+ build_redir=false -+ build_res2coff=false -+ ;; -+ *) AC_MSG_ERROR([--enable-nonportable argument must be yes or no, not "${enableval}"]) ;; -+ esac], -+ [build_res2coff=true]) -+ -+AM_CONDITIONAL(BUILD_DRMINGW, [test "${build_drmingw}" = "true"]) -+AM_CONDITIONAL(BUILD_REDIR, [test "${build_redir}" = "true"]) -+AM_CONDITIONAL(BUILD_RES2COFF, [test "${build_res2coff}" = "true"]) -+ - # Checks for programs. - AC_PROG_CC - AC_PROG_CXX -@@ -19,13 +65,20 @@ - AC_PROG_YACC +-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 +-# Free Software Foundation, Inc. ++# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, ++# 2003, 2004, 2005 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. +@@ -13,7 +13,6 @@ + # PARTICULAR PURPOSE. - AC_ARG_VAR(WINDRES, [Windows Resource compiler tool path]) --AC_PATH_TOOL(WINDRES,windres, -- [AC_MSG_WARN(Could not find a windres tool in your PATH. Will not be able to compile drmingw.)] --) -+AC_PATH_TOOL(WINDRES,windres) -+ -+if test -z "${WINDRES}"; then -+ AC_MSG_WARN([windres tool isn't in your PATH, drmingw can't be built!!]) -+ AM_CONDITIONAL(BUILD_DRMINGW, false) -+fi -+ - AC_SUBST(WINDRES) + @SET_MAKE@ +- + srcdir = @srcdir@ + top_srcdir = @top_srcdir@ + VPATH = @srcdir@ +@@ -21,7 +20,6 @@ + pkglibdir = $(libdir)/@PACKAGE@ + pkgincludedir = $(includedir)/@PACKAGE@ + top_builddir = . +- + am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd + INSTALL = @INSTALL@ + install_sh_DATA = $(install_sh) -c -m 644 +@@ -35,6 +33,43 @@ + NORMAL_UNINSTALL = : + PRE_UNINSTALL = : + POST_UNINSTALL = : ++subdir = . ++DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ ++ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ ++ $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \ ++ compile depcomp install-sh missing ++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ++am__aclocal_m4_deps = $(top_srcdir)/configure.ac ++am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ ++ $(ACLOCAL_M4) ++am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ ++ configure.lineno configure.status.lineno ++mkinstalldirs = $(install_sh) -d ++CONFIG_HEADER = config.h ++CONFIG_CLEAN_FILES = ++SOURCES = ++DIST_SOURCES = ++RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ ++ html-recursive info-recursive install-data-recursive \ ++ install-exec-recursive install-info-recursive \ ++ install-recursive installcheck-recursive installdirs-recursive \ ++ pdf-recursive ps-recursive uninstall-info-recursive \ ++ uninstall-recursive ++ETAGS = etags ++CTAGS = ctags ++DIST_SUBDIRS = dos2unix drmingw pexports redir reimp res2coff scripts \ ++ unix2dos ++DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ++distdir = $(PACKAGE)-$(VERSION) ++top_distdir = $(distdir) ++am__remove_distdir = \ ++ { test ! -d $(distdir) \ ++ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ ++ && rm -fr $(distdir); }; } ++DIST_ARCHIVES = $(distdir).tar.gz ++GZIP_ENV = --best ++distuninstallcheck_listfiles = find . -type f -print ++distcleancheck_listfiles = find . -type f -print + ACLOCAL = @ACLOCAL@ + AMDEP_FALSE = @AMDEP_FALSE@ + AMDEP_TRUE = @AMDEP_TRUE@ +@@ -43,6 +78,12 @@ + AUTOHEADER = @AUTOHEADER@ + AUTOMAKE = @AUTOMAKE@ + AWK = @AWK@ ++BUILD_DRMINGW_FALSE = @BUILD_DRMINGW_FALSE@ ++BUILD_DRMINGW_TRUE = @BUILD_DRMINGW_TRUE@ ++BUILD_REDIR_FALSE = @BUILD_REDIR_FALSE@ ++BUILD_REDIR_TRUE = @BUILD_REDIR_TRUE@ ++BUILD_RES2COFF_FALSE = @BUILD_RES2COFF_FALSE@ ++BUILD_RES2COFF_TRUE = @BUILD_RES2COFF_TRUE@ + CC = @CC@ + CCDEPMODE = @CCDEPMODE@ + CFLAGS = @CFLAGS@ +@@ -101,6 +142,8 @@ + am__include = @am__include@ + am__leading_dot = @am__leading_dot@ + am__quote = @am__quote@ ++am__tar = @am__tar@ ++am__untar = @am__untar@ + bindir = @bindir@ + build_alias = @build_alias@ + datadir = @datadir@ +@@ -113,6 +156,7 @@ + libexecdir = @libexecdir@ + localstatedir = @localstatedir@ + mandir = @mandir@ ++mkdir_p = @mkdir_p@ + oldincludedir = @oldincludedir@ + prefix = @prefix@ + program_transform_name = @program_transform_name@ +@@ -120,45 +164,48 @@ + sharedstatedir = @sharedstatedir@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ +-SUBDIRS = dos2unix drmingw pexports redir reimp res2coff scripts unix2dos +- ++@BUILD_DRMINGW_TRUE@DRMINGW = drmingw ++@BUILD_REDIR_TRUE@REDIR = redir ++@BUILD_RES2COFF_TRUE@RES2COFF = res2coff ++SUBDIRS = dos2unix $(DRMINGW) pexports ${REDIR} reimp ${RES2COFF} scripts unix2dos ++EXTRA_DIST = dos2unix/dos2unix.1 unix2dos/unix2dos.1 + instdir = /tmp/$(PACKAGE)-$(VERSION) +-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 pdf-recursive \ +- ps-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 $(srcdir)/Makefile.in $(srcdir)/configure AUTHORS \ +- COPYING ChangeLog INSTALL Makefile.am NEWS aclocal.m4 compile \ +- config.h.in configure configure.ac depcomp install-sh missing \ +- mkinstalldirs +-DIST_SUBDIRS = $(SUBDIRS) + all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive - # Checks for header files. - AC_HEADER_STDC -+ -+AC_CHECK_HEADERS([windows.h]) -+ - where_toGet_utime_h='not found!' - # this part is scrambled by autoconf. phooey. so we just cannot tell the user what we are doing. - # AC_MSG_CHECKING([for whether utime.h is found as "utime.h" or "sys/utime.h"]) -@@ -44,6 +97,11 @@ - AC_CHECK_FUNCS(mkstemp mktemp, break) - AC_CHECK_FUNCS(utime) + .SUFFIXES: +- +-am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ +- configure.lineno +-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4) ++am--refresh: ++ @: ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) ++ @for dep in $?; do \ ++ case '$(am__configure_deps)' in \ ++ *$$dep*) \ ++ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \ ++ cd $(srcdir) && $(AUTOMAKE) --gnu \ ++ && exit 0; \ ++ exit 1;; \ ++ esac; \ ++ done; \ ++ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --gnu Makefile +-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status +- cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe) ++.PRECIOUS: Makefile ++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status ++ @case '$?' in \ ++ *config.status*) \ ++ echo ' $(SHELL) ./config.status'; \ ++ $(SHELL) ./config.status;; \ ++ *) \ ++ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ ++ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ ++ esac; -+AC_CHECK_SIZEOF(_int64) -+AC_CHECK_SIZEOF(long long) -+AC_CHECK_SIZEOF(long) -+AC_CHECK_SIZEOF(void *) -+ - AC_CONFIG_FILES([ - Makefile - dos2unix/Makefile -Index: pexports/pexports.c -=================================================================== -RCS file: /cvsroot/mingw/utils/pexports/pexports.c,v -retrieving revision 1.2 -diff -u -r1.2 pexports.c ---- pexports/pexports.c 8 Nov 2002 02:56:18 -0000 1.2 -+++ pexports/pexports.c 24 Jun 2006 00:31:11 -0000 -@@ -19,7 +19,7 @@ - #endif +-$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) ++$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck +-$(srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(srcdir)/configure.ac $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) +- cd $(srcdir) && $(AUTOCONF) - /* get pointer to section header n */ --#define IMAGE_SECTION_HDR(n) ((PIMAGE_SECTION_HEADER) ((DWORD) nt_hdr + \ -+#define IMAGE_SECTION_HDR(n) ((PIMAGE_SECTION_HEADER) ((ULONG_PTR) nt_hdr + \ - 4 + sizeof(IMAGE_FILE_HEADER) + \ - nt_hdr->FileHeader.SizeOfOptionalHeader + \ - n * sizeof(IMAGE_SECTION_HEADER))) -@@ -146,7 +146,7 @@ - return 1; - } +-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.ac ++$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ++ cd $(srcdir) && $(AUTOCONF) ++$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) -- nt_hdr = (PIMAGE_NT_HEADERS) ((DWORD) dos_hdr + dos_hdr->e_lfanew); -+ nt_hdr = (PIMAGE_NT_HEADERS) ((ULONG_PTR) dos_hdr + dos_hdr->e_lfanew); - - exp_rva = nt_hdr->OptionalHeader.DataDirectory[0].VirtualAddress; + config.h: stamp-h1 +@@ -170,10 +217,10 @@ + 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: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.ac $(ACLOCAL_M4) ++$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_srcdir) && $(AUTOHEADER) +- touch $(srcdir)/config.h.in ++ rm -f stamp-h1 ++ touch $@ -@@ -181,7 +181,7 @@ - PIMAGE_EXPORT_DIRECTORY exports; - char *export_name; - PWORD ordinal_table; -- char **name_table; -+ DWORD *name_table; - DWORD *function_table; - int i; - static int first = 1; -@@ -203,7 +203,7 @@ - /* set up various pointers */ - export_name = RVA_TO_PTR(exports->Name,char*); - ordinal_table = RVA_TO_PTR(exports->AddressOfNameOrdinals,PWORD); -- name_table = RVA_TO_PTR(exports->AddressOfNames,char**); -+ name_table = RVA_TO_PTR(exports->AddressOfNames,DWORD*); - function_table = RVA_TO_PTR(exports->AddressOfFunctions,void*); + distclean-hdr: + -rm -f config.h stamp-h1 +@@ -186,7 +233,13 @@ + # (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; \ ++ @failcom='exit 1'; \ ++ for f in x $$MAKEFLAGS; do \ ++ case $$f in \ ++ *=* | --[!k]*);; \ ++ *k*) failcom='fail=yes';; \ ++ esac; \ ++ done; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ +@@ -198,7 +251,7 @@ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ +- || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ ++ || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ +@@ -206,7 +259,13 @@ - if (verbose) -@@ -297,14 +297,14 @@ - } + mostlyclean-recursive clean-recursive distclean-recursive \ + maintainer-clean-recursive: +- @set fnord $$MAKEFLAGS; amf=$$2; \ ++ @failcom='exit 1'; \ ++ for f in x $$MAKEFLAGS; do \ ++ case $$f in \ ++ *=* | --[!k]*);; \ ++ *k*) failcom='fail=yes';; \ ++ esac; \ ++ done; \ + dot_seen=no; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ +@@ -227,7 +286,7 @@ + local_target="$$target"; \ + fi; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ +- || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ ++ || eval $$failcom; \ + done && test -z "$$fail" + tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ +@@ -238,14 +297,6 @@ + test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + done - /* convert rva to pointer into loaded file */ --DWORD -+ULONG_PTR - rva_to_ptr(DWORD rva) - { - PIMAGE_SECTION_HEADER section = find_section(rva); - if (section->PointerToRawData == 0) - return 0; - else -- return ((DWORD) dos_hdr + (DWORD) rva - (section->VirtualAddress - section->PointerToRawData)); -+ return ((ULONG_PTR) dos_hdr + (DWORD) rva - (section->VirtualAddress - section->PointerToRawData)); - } +-ETAGS = etags +-ETAGSFLAGS = +- +-CTAGS = ctags +-CTAGSFLAGS = +- +-tags: TAGS +- + ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ +@@ -254,19 +305,22 @@ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + mkid -fID $$unique ++tags: TAGS + + TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ +- if (etags --etags-include --version) >/dev/null 2>&1; then \ ++ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ ++ empty_fix=.; \ + else \ + include_option=--include; \ ++ empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ +- test -f $$subdir/TAGS && \ ++ test ! -f $$subdir/TAGS || \ + tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ +@@ -276,10 +330,11 @@ + 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 +- ++ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ ++ test -n "$$unique" || unique=$$empty_fix; \ ++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ ++ $$tags $$unique; \ ++ fi + ctags: CTAGS + CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) +@@ -302,24 +357,11 @@ - /* Load a portable executable into memory */ -Index: pexports/pexports.h -=================================================================== -RCS file: /cvsroot/mingw/utils/pexports/pexports.h,v -retrieving revision 1.2 -diff -u -r1.2 pexports.h ---- pexports/pexports.h 26 May 2002 10:13:58 -0000 1.2 -+++ pexports/pexports.h 24 Jun 2006 00:31:11 -0000 -@@ -21,12 +21,26 @@ - #define VER_MINOR 43 + distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +-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 +-distuninstallcheck_listfiles = find . -type f -print +-distcleancheck_listfiles = find . -type f -print - /* These are needed */ --typedef unsigned short WORD; --typedef unsigned int DWORD; --typedef unsigned char BYTE; --typedef long LONG; --typedef WORD *PWORD; --typedef DWORD *PDWORD; -+typedef unsigned short WORD, *PWORD; -+typedef unsigned char BYTE, *PBYTE; + distdir: $(DISTFILES) + $(am__remove_distdir) + mkdir $(distdir) +- $(mkinstalldirs) $(distdir)/scripts ++ $(mkdir_p) $(distdir)/dos2unix $(distdir)/scripts $(distdir)/unix2dos + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ + list='$(DISTFILES)'; for file in $$list; do \ +@@ -331,7 +373,7 @@ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ +- $(mkinstalldirs) "$(distdir)$$dir"; \ ++ $(mkdir_p) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ +@@ -346,15 +388,17 @@ + || exit 1; \ + fi; \ + done +- list='$(SUBDIRS)'; for subdir in $$list; do \ ++ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ +- test -d $(distdir)/$$subdir \ +- || mkdir $(distdir)/$$subdir \ ++ test -d "$(distdir)/$$subdir" \ ++ || $(mkdir_p) "$(distdir)/$$subdir" \ + || exit 1; \ ++ distdir=`$(am__cd) $(distdir) && pwd`; \ ++ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ + (cd $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ +- top_distdir="$(top_distdir)" \ +- distdir=../$(distdir)/$$subdir \ ++ top_distdir="$$top_distdir" \ ++ distdir="$$distdir/$$subdir" \ + distdir) \ + || exit 1; \ + fi; \ +@@ -365,19 +409,46 @@ + ! -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 ++ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz ++ $(am__remove_distdir) + -+#if SIZEOF_LONG == 4 -+typedef unsigned long DWORD, *PDWORD; -+typedef long LONG, *PLONG; -+#else -+typedef unsigned int DWORD, *PDWORD; -+typedef int LONG, *PLONG; -+#endif ++dist-bzip2: distdir ++ tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 ++ $(am__remove_distdir) + -+#if SIZEOF_LONG == SIZEOF_VOID_P -+typedef unsigned long ULONG_PTR; -+#elif SIZEOF_LONG_LONG == SIZEOF_VOID_P -+typedef unsigned long long ULONG_PTR; -+#elif SIZEOF__INT64 == SIZEOF_VOID_P -+typedef unsigned _int64 ULONG_PTR; -+#else -+typedef unsigned int ULONG_PTR; -+#endif - - /* PE structures */ - typedef struct _IMAGE_DATA_DIRECTORY { -@@ -111,9 +125,9 @@ - DWORD Base; - DWORD NumberOfFunctions; - DWORD NumberOfNames; -- PDWORD *AddressOfFunctions; -- PDWORD *AddressOfNames; -- PWORD *AddressOfNameOrdinals; -+ DWORD AddressOfFunctions; -+ DWORD AddressOfNames; -+ DWORD AddressOfNameOrdinals; - } IMAGE_EXPORT_DIRECTORY, *PIMAGE_EXPORT_DIRECTORY; ++dist-tarZ: distdir ++ tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z ++ $(am__remove_distdir) ++ ++dist-shar: distdir ++ shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz ++ $(am__remove_distdir) ++ ++dist-zip: distdir ++ -rm -f $(distdir).zip ++ zip -rq $(distdir).zip $(distdir) + $(am__remove_distdir) - typedef struct _IMAGE_DOS_HEADER { -@@ -144,7 +158,7 @@ - PIMAGE_DOS_HEADER - load_pe_image(const char *filename); + dist dist-all: distdir +- $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz ++ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) --DWORD -+ULONG_PTR - rva_to_ptr(DWORD rva); + # 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 - ++ case '$(DIST_ARCHIVES)' in \ ++ *.tar.gz*) \ ++ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ ++ *.tar.bz2*) \ ++ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ ++ *.tar.Z*) \ ++ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ ++ *.shar.gz*) \ ++ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ ++ *.zip*) \ ++ unzip $(distdir).zip ;;\ ++ esac + chmod -R a-w $(distdir); chmod a+w $(distdir) + mkdir $(distdir)/_build + mkdir $(distdir)/_inst +@@ -397,19 +468,20 @@ + distuninstallcheck \ + && chmod -R a-w "$$dc_install_base" \ + && ({ \ +- (cd ../.. && $(mkinstalldirs) "$$dc_destdir") \ ++ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ + distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ + } || { rm -rf "$$dc_destdir"; exit 1; }) \ + && rm -rf "$$dc_destdir" \ +- && $(MAKE) $(AM_MAKEFLAGS) dist-gzip \ +- && rm -f $(distdir).tar.gz \ ++ && $(MAKE) $(AM_MAKEFLAGS) dist \ ++ && rm -rf $(DIST_ARCHIVES) \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck + $(am__remove_distdir) +- @echo "$(distdir).tar.gz is ready for distribution" | \ +- sed 'h;s/./=/g;p;x;p;x' ++ @(echo "$(distdir) archives ready for distribution: "; \ ++ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ ++ sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' + distuninstallcheck: + @cd $(distuninstallcheck_dir) \ + && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ +@@ -433,7 +505,6 @@ + all-am: Makefile config.h + installdirs: installdirs-recursive + installdirs-am: +- + install: install-recursive + install-exec: install-exec-recursive + install-data: install-data-recursive +@@ -453,7 +524,7 @@ + clean-generic: - void -Index: reimp/ar.c -=================================================================== -RCS file: /cvsroot/mingw/utils/reimp/ar.c,v -retrieving revision 1.1 -diff -u -u -r1.1 ar.c ---- reimp/ar.c 10 Apr 2002 13:39:07 -0000 1.1 -+++ reimp/ar.c 29 Jun 2006 22:51:57 -0000 -@@ -21,6 +21,7 @@ - if (fread (long_names, size, 1, f) != 1) - error (0, "unexpected end-of-file\n"); - } -+ return 1; - } - else - return 0; -Index: reimp/reimp.h -=================================================================== -RCS file: /cvsroot/mingw/utils/reimp/reimp.h,v -retrieving revision 1.1 -diff -u -u -r1.1 reimp.h ---- reimp/reimp.h 10 Apr 2002 13:39:07 -0000 1.1 -+++ reimp/reimp.h 29 Jun 2006 22:51:57 -0000 -@@ -3,7 +3,7 @@ + distclean-generic: +- -rm -f $(CONFIG_CLEAN_FILES) ++ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - /* we need integers of specific sizes */ - #ifndef uint32 --#define uint32 unsigned long -+#define uint32 unsigned int - #endif + maintainer-clean-generic: + @echo "This command is intended for maintainers to use" +@@ -471,6 +542,8 @@ - #ifndef uint16 -Index: scripts/a2dll.in -=================================================================== -RCS file: /cvsroot/mingw/utils/scripts/a2dll.in,v -retrieving revision 1.2 -diff -u -r1.2 a2dll.in ---- scripts/a2dll.in 26 May 2002 10:13:58 -0000 1.2 -+++ scripts/a2dll.in 24 Jun 2006 00:31:11 -0000 -@@ -12,6 +12,13 @@ - exit 0 - } + dvi-am: -+# Figure out where the script is located and then use that path as the location -+# for the tools ++html: html-recursive + -+cwd=`pwd` -+cd `dirname $0` -+SCRIPTDIR=`pwd` -+cd $cwd - - cmdline=$@ - -@@ -43,14 +50,14 @@ - rm -f .dll/* - /usr/bin/mkdir -p .dll - cd .dll -- ar x ../$in -+ ${SCRIPTDIR}/ar x ../$in - else - cd .dll - fi - - echo Creating shared library \'$out\' - --dllwrap --export-all -o ../$out `ls` $libs >../ld.err 2>&1 -+${SCRIPTDIR}/dllwrap --export-all -o ../$out `ls` $libs >../ld.err 2>&1 - - cd .. - if [ `wc ld.err|awk ' {print $1}' ` -gt 2 ] -@@ -72,17 +79,17 @@ - # 2. I just saw that dlltool lies about assembly-sourced files, it - # lists their symbols as data + info: info-recursive -- pexports $out >$base.def -+ ${SCRIPTDIR}/pexports $out >$base.def + info-am: +@@ -507,22 +580,20 @@ - # create import library + uninstall-info: uninstall-info-recursive - mv $in $in.static -- dlltool --dllname $out --def $base.def --output-lib $in -+ ${SCRIPTDIR}/dlltool --dllname $out --def $base.def --output-lib $in +-.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \ +- clean-generic clean-recursive ctags ctags-recursive dist \ +- dist-all dist-gzip distcheck distclean distclean-generic \ +- distclean-hdr distclean-recursive distclean-tags distcleancheck \ +- distdir distuninstallcheck dvi dvi-am dvi-recursive info \ +- info-am info-recursive install install-am 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-generic \ +- mostlyclean-recursive pdf pdf-am pdf-recursive ps ps-am \ +- ps-recursive tags tags-recursive uninstall uninstall-am \ +- uninstall-info-am uninstall-info-recursive uninstall-recursive ++.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ ++ check-am clean clean-generic clean-recursive ctags \ ++ ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \ ++ dist-tarZ dist-zip distcheck distclean distclean-generic \ ++ distclean-hdr distclean-recursive distclean-tags \ ++ distcleancheck distdir distuninstallcheck dvi dvi-am html \ ++ html-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 installdirs-am maintainer-clean \ ++ maintainer-clean-generic maintainer-clean-recursive \ ++ mostlyclean mostlyclean-generic mostlyclean-recursive pdf \ ++ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ ++ uninstall-info-am - # finally, we check whether dll exports data symbols - # if yes, we suggest user on steps to perform -- pexports $out | awk '/DATA/ { print $1}' >$out.data -+ ${SCRIPTDIR}/pexports $out | awk '/DATA/ { print $1}' >$out.data - if test -s $out.data - then - echo -Index: configure -=================================================================== ---- ../../mingw-utils-0.3/configure 2003-11-25 08:31:12.000000000 -0800 -+++ configure 2006-06-22 02:33:39.000000000 -0700 + sdist: dist +diff -ru ../release/mingw-utils-0.3/configure ./configure +--- ../release/mingw-utils-0.3/configure Tue Nov 25 11:31:12 2003 ++++ ./configure Tue Aug 8 06:53:25 2006 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. @@ -2870,790 +3056,329 @@ Index: configure sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue -Index: Makefile.in -=================================================================== ---- ../../mingw-utils-0.3/Makefile.in 2003-11-25 08:31:11.000000000 -0800 -+++ Makefile.in 2006-06-22 02:35:55.000000000 -0700 -@@ -1,8 +1,8 @@ --# Makefile.in generated by automake 1.7.9 from Makefile.am. -+# Makefile.in generated by automake 1.9.6 from Makefile.am. - # @configure_input@ - --# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 --# Free Software Foundation, Inc. -+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -+# 2003, 2004, 2005 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. -@@ -13,7 +13,6 @@ - # PARTICULAR PURPOSE. - - @SET_MAKE@ -- - srcdir = @srcdir@ - top_srcdir = @top_srcdir@ - VPATH = @srcdir@ -@@ -21,7 +20,6 @@ - pkglibdir = $(libdir)/@PACKAGE@ - pkgincludedir = $(includedir)/@PACKAGE@ - top_builddir = . -- - am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd - INSTALL = @INSTALL@ - install_sh_DATA = $(install_sh) -c -m 644 -@@ -35,6 +33,43 @@ - NORMAL_UNINSTALL = : - PRE_UNINSTALL = : - POST_UNINSTALL = : -+subdir = . -+DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ -+ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ -+ $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \ -+ compile depcomp install-sh missing -+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -+am__aclocal_m4_deps = $(top_srcdir)/configure.ac -+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ -+ $(ACLOCAL_M4) -+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ -+ configure.lineno configure.status.lineno -+mkinstalldirs = $(install_sh) -d -+CONFIG_HEADER = config.h -+CONFIG_CLEAN_FILES = -+SOURCES = -+DIST_SOURCES = -+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ -+ html-recursive info-recursive install-data-recursive \ -+ install-exec-recursive install-info-recursive \ -+ install-recursive installcheck-recursive installdirs-recursive \ -+ pdf-recursive ps-recursive uninstall-info-recursive \ -+ uninstall-recursive -+ETAGS = etags -+CTAGS = ctags -+DIST_SUBDIRS = dos2unix drmingw pexports redir reimp res2coff scripts \ -+ unix2dos -+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -+distdir = $(PACKAGE)-$(VERSION) -+top_distdir = $(distdir) -+am__remove_distdir = \ -+ { test ! -d $(distdir) \ -+ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ -+ && rm -fr $(distdir); }; } -+DIST_ARCHIVES = $(distdir).tar.gz -+GZIP_ENV = --best -+distuninstallcheck_listfiles = find . -type f -print -+distcleancheck_listfiles = find . -type f -print - ACLOCAL = @ACLOCAL@ - AMDEP_FALSE = @AMDEP_FALSE@ - AMDEP_TRUE = @AMDEP_TRUE@ -@@ -43,6 +78,12 @@ - AUTOHEADER = @AUTOHEADER@ - AUTOMAKE = @AUTOMAKE@ - AWK = @AWK@ -+BUILD_DRMINGW_FALSE = @BUILD_DRMINGW_FALSE@ -+BUILD_DRMINGW_TRUE = @BUILD_DRMINGW_TRUE@ -+BUILD_REDIR_FALSE = @BUILD_REDIR_FALSE@ -+BUILD_REDIR_TRUE = @BUILD_REDIR_TRUE@ -+BUILD_RES2COFF_FALSE = @BUILD_RES2COFF_FALSE@ -+BUILD_RES2COFF_TRUE = @BUILD_RES2COFF_TRUE@ - CC = @CC@ - CCDEPMODE = @CCDEPMODE@ - CFLAGS = @CFLAGS@ -@@ -101,6 +142,8 @@ - am__include = @am__include@ - am__leading_dot = @am__leading_dot@ - am__quote = @am__quote@ -+am__tar = @am__tar@ -+am__untar = @am__untar@ - bindir = @bindir@ - build_alias = @build_alias@ - datadir = @datadir@ -@@ -113,6 +156,7 @@ - libexecdir = @libexecdir@ - localstatedir = @localstatedir@ - mandir = @mandir@ -+mkdir_p = @mkdir_p@ - oldincludedir = @oldincludedir@ - prefix = @prefix@ - program_transform_name = @program_transform_name@ -@@ -120,45 +164,48 @@ - sharedstatedir = @sharedstatedir@ - sysconfdir = @sysconfdir@ - target_alias = @target_alias@ --SUBDIRS = dos2unix drmingw pexports redir reimp res2coff scripts unix2dos -- -+@BUILD_DRMINGW_TRUE@DRMINGW = drmingw -+@BUILD_REDIR_TRUE@REDIR = redir -+@BUILD_RES2COFF_TRUE@RES2COFF = res2coff -+SUBDIRS = dos2unix $(DRMINGW) pexports ${REDIR} reimp ${RES2COFF} scripts unix2dos -+EXTRA_DIST = dos2unix/dos2unix.1 unix2dos/unix2dos.1 - instdir = /tmp/$(PACKAGE)-$(VERSION) --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 pdf-recursive \ -- ps-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 $(srcdir)/Makefile.in $(srcdir)/configure AUTHORS \ -- COPYING ChangeLog INSTALL Makefile.am NEWS aclocal.m4 compile \ -- config.h.in configure configure.ac 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: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4) -+am--refresh: -+ @: -+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) -+ @for dep in $?; do \ -+ case '$(am__configure_deps)' in \ -+ *$$dep*) \ -+ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \ -+ cd $(srcdir) && $(AUTOMAKE) --gnu \ -+ && exit 0; \ -+ exit 1;; \ -+ esac; \ -+ done; \ -+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu Makefile --Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status -- cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe) -+.PRECIOUS: Makefile -+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status -+ @case '$?' in \ -+ *config.status*) \ -+ echo ' $(SHELL) ./config.status'; \ -+ $(SHELL) ./config.status;; \ -+ *) \ -+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ -+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ -+ esac; - --$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) -+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - $(SHELL) ./config.status --recheck --$(srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(srcdir)/configure.ac $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) -- cd $(srcdir) && $(AUTOCONF) - --$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.ac -+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) -+ cd $(srcdir) && $(AUTOCONF) -+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +diff -ru ../release/mingw-utils-0.3/configure.ac ./configure.ac +--- ../release/mingw-utils-0.3/configure.ac Tue Nov 25 11:24:13 2003 ++++ ./configure.ac Tue Aug 8 06:53:25 2006 +@@ -7,6 +7,52 @@ + AM_CONFIG_HEADER(config.h) + AM_MAINTAINER_MODE - config.h: stamp-h1 -@@ -170,10 +217,10 @@ - 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: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.ac $(ACLOCAL_M4) -+$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_srcdir) && $(AUTOHEADER) -- touch $(srcdir)/config.h.in -+ rm -f stamp-h1 -+ touch $@ ++AC_ARG_ENABLE(drmingw, ++ AS_HELP_STRING([--disable-drmingw],[Don't build drmingw (default is build)]), ++ [case "${enableval}" in ++ yes) build_drmingw=true ;; ++ no) build_drmingw=false ;; ++ *) AC_MSG_ERROR([--enable-drmingw argument must be yes or no, not "${enableval}"]) ;; ++ esac], ++ [build_drmingw=true]) ++ ++AC_ARG_ENABLE(redir, ++ AS_HELP_STRING([--disable-redir],[Don't build redir (default is build)]), ++ [case "${enableval}" in ++ yes) build_redir=true ;; ++ no) build_redir=false ;; ++ *) AC_MSG_ERROR([--enable-redir argument must be yes or no, not "${enableval}"]) ;; ++ esac], ++ [build_redir=true]) ++ ++AC_ARG_ENABLE(res2coff, ++ AS_HELP_STRING([--disable-res2coff],[Don't build res2coff (default is build)]), ++ [case "${enableval}" in ++ yes) build_res2coff=true ;; ++ no) build_res2coff=false ;; ++ *) AC_MSG_ERROR([--enable-res2coff argument must be yes or no, not "${enableval}"]) ;; ++ esac], ++ [build_res2coff=true]) ++ ++AC_ARG_ENABLE(nonportable, ++ AS_HELP_STRING([--disable-nonportable],[shortcut for --disable-drmingw, --disable-redir and --disable-res2coff]), ++ [case "${enableval}" in ++ yes) build_drmingw=true ++ build_redir=true ++ build_res2coff=true ++ ;; ++ no) build_res2coff=false ++ build_redir=false ++ build_res2coff=false ++ ;; ++ *) AC_MSG_ERROR([--enable-nonportable argument must be yes or no, not "${enableval}"]) ;; ++ esac], ++ [build_res2coff=true]) ++ ++AM_CONDITIONAL(BUILD_DRMINGW, [test "${build_drmingw}" = "true"]) ++AM_CONDITIONAL(BUILD_REDIR, [test "${build_redir}" = "true"]) ++AM_CONDITIONAL(BUILD_RES2COFF, [test "${build_res2coff}" = "true"]) ++ + # Checks for programs. + AC_PROG_CC + AC_PROG_CXX +@@ -19,13 +65,20 @@ + AC_PROG_YACC - distclean-hdr: - -rm -f config.h stamp-h1 -@@ -186,7 +233,13 @@ - # (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; \ -+ @failcom='exit 1'; \ -+ for f in x $$MAKEFLAGS; do \ -+ case $$f in \ -+ *=* | --[!k]*);; \ -+ *k*) failcom='fail=yes';; \ -+ esac; \ -+ done; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ -@@ -198,7 +251,7 @@ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ -- || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ -+ || eval $$failcom; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ -@@ -206,7 +259,13 @@ + AC_ARG_VAR(WINDRES, [Windows Resource compiler tool path]) +-AC_PATH_TOOL(WINDRES,windres, +- [AC_MSG_WARN(Could not find a windres tool in your PATH. Will not be able to compile drmingw.)] +-) ++AC_PATH_TOOL(WINDRES,windres) ++ ++if test -z "${WINDRES}"; then ++ AC_MSG_WARN([windres tool isn't in your PATH, drmingw can't be built!!]) ++ AM_CONDITIONAL(BUILD_DRMINGW, false) ++fi ++ + AC_SUBST(WINDRES) - mostlyclean-recursive clean-recursive distclean-recursive \ - maintainer-clean-recursive: -- @set fnord $$MAKEFLAGS; amf=$$2; \ -+ @failcom='exit 1'; \ -+ for f in x $$MAKEFLAGS; do \ -+ case $$f in \ -+ *=* | --[!k]*);; \ -+ *k*) failcom='fail=yes';; \ -+ esac; \ -+ done; \ - dot_seen=no; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ -@@ -227,7 +286,7 @@ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ -- || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ -+ || eval $$failcom; \ - done && test -z "$$fail" - tags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ -@@ -238,14 +297,6 @@ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ - done + # Checks for header files. + AC_HEADER_STDC ++ ++AC_CHECK_HEADERS([windows.h]) ++ + where_toGet_utime_h='not found!' + # this part is scrambled by autoconf. phooey. so we just cannot tell the user what we are doing. + # AC_MSG_CHECKING([for whether utime.h is found as "utime.h" or "sys/utime.h"]) +@@ -43,6 +96,11 @@ + # Checks for library functions. + AC_CHECK_FUNCS(mkstemp mktemp, break) + AC_CHECK_FUNCS(utime) ++ ++AC_CHECK_SIZEOF(_int64) ++AC_CHECK_SIZEOF(long long) ++AC_CHECK_SIZEOF(long) ++AC_CHECK_SIZEOF(void *) --ETAGS = etags --ETAGSFLAGS = -- --CTAGS = ctags --CTAGSFLAGS = -- --tags: TAGS -- - ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ -@@ -254,19 +305,22 @@ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -+tags: TAGS + AC_CONFIG_FILES([ + Makefile +diff -ru ../release/mingw-utils-0.3/dos2unix/Makefile.am ./dos2unix/Makefile.am +--- ../release/mingw-utils-0.3/dos2unix/Makefile.am Wed Dec 4 07:07:55 2002 ++++ ./dos2unix/Makefile.am Tue Aug 8 07:18:14 2006 +@@ -9,4 +9,4 @@ + doc_DATA = COPYING dos2unix.html + + dos2unix.html: dos2unix.1 +- man2html $< > $@ ++ man2html < $< > $@ +diff -ru ../release/mingw-utils-0.3/dos2unix/Makefile.in ./dos2unix/Makefile.in +--- ../release/mingw-utils-0.3/dos2unix/Makefile.in Tue Nov 25 11:31:11 2003 ++++ ./dos2unix/Makefile.in Tue Aug 8 07:01:48 2006 +@@ -419,7 +419,7 @@ + + + dos2unix.html: dos2unix.1 +- man2html $< > $@ ++ man2html < $< > $@ + # 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 -ru ../release/mingw-utils-0.3/pexports/pexports.c ./pexports/pexports.c +--- ../release/mingw-utils-0.3/pexports/pexports.c Tue Nov 25 10:23:09 2003 ++++ ./pexports/pexports.c Tue Aug 8 06:53:25 2006 +@@ -19,7 +19,7 @@ + #endif - TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ -- if (etags --etags-include --version) >/dev/null 2>&1; then \ -+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ -+ empty_fix=.; \ - else \ - include_option=--include; \ -+ empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ -- test -f $$subdir/TAGS && \ -+ test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ -@@ -276,10 +330,11 @@ - 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 -- -+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ -+ test -n "$$unique" || unique=$$empty_fix; \ -+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ -+ $$tags $$unique; \ -+ fi - ctags: CTAGS - CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) -@@ -302,24 +357,11 @@ + /* get pointer to section header n */ +-#define IMAGE_SECTION_HDR(n) ((PIMAGE_SECTION_HEADER) ((DWORD) nt_hdr + \ ++#define IMAGE_SECTION_HDR(n) ((PIMAGE_SECTION_HEADER) ((ULONG_PTR) nt_hdr + \ + 4 + sizeof(IMAGE_FILE_HEADER) + \ + nt_hdr->FileHeader.SizeOfOptionalHeader + \ + n * sizeof(IMAGE_SECTION_HEADER))) +@@ -146,7 +146,7 @@ + return 1; + } - distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags --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 --distuninstallcheck_listfiles = find . -type f -print --distcleancheck_listfiles = find . -type f -print +- nt_hdr = (PIMAGE_NT_HEADERS) ((DWORD) dos_hdr + dos_hdr->e_lfanew); ++ nt_hdr = (PIMAGE_NT_HEADERS) ((ULONG_PTR) dos_hdr + dos_hdr->e_lfanew); + + exp_rva = nt_hdr->OptionalHeader.DataDirectory[0].VirtualAddress; - distdir: $(DISTFILES) - $(am__remove_distdir) - mkdir $(distdir) -- $(mkinstalldirs) $(distdir)/scripts -+ $(mkdir_p) $(distdir)/dos2unix $(distdir)/scripts $(distdir)/unix2dos - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ -@@ -331,7 +373,7 @@ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ -- $(mkinstalldirs) "$(distdir)$$dir"; \ -+ $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ -@@ -346,15 +388,17 @@ - || exit 1; \ - fi; \ - done -- list='$(SUBDIRS)'; for subdir in $$list; do \ -+ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ -- test -d $(distdir)/$$subdir \ -- || mkdir $(distdir)/$$subdir \ -+ test -d "$(distdir)/$$subdir" \ -+ || $(mkdir_p) "$(distdir)/$$subdir" \ - || exit 1; \ -+ distdir=`$(am__cd) $(distdir) && pwd`; \ -+ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ - (cd $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ -- top_distdir="$(top_distdir)" \ -- distdir=../$(distdir)/$$subdir \ -+ top_distdir="$$top_distdir" \ -+ distdir="$$distdir/$$subdir" \ - distdir) \ - || exit 1; \ - fi; \ -@@ -365,19 +409,46 @@ - ! -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 -+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz -+ $(am__remove_distdir) -+ -+dist-bzip2: distdir -+ tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 -+ $(am__remove_distdir) -+ -+dist-tarZ: distdir -+ tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z -+ $(am__remove_distdir) +@@ -181,7 +181,7 @@ + PIMAGE_EXPORT_DIRECTORY exports; + char *export_name; + PWORD ordinal_table; +- char **name_table; ++ DWORD *name_table; + DWORD *function_table; + int i; + static int first = 1; +@@ -203,7 +203,7 @@ + /* set up various pointers */ + export_name = RVA_TO_PTR(exports->Name,char*); + ordinal_table = RVA_TO_PTR(exports->AddressOfNameOrdinals,PWORD); +- name_table = RVA_TO_PTR(exports->AddressOfNames,char**); ++ name_table = RVA_TO_PTR(exports->AddressOfNames,DWORD*); + function_table = RVA_TO_PTR(exports->AddressOfFunctions,void*); + + if (verbose) +@@ -297,14 +297,14 @@ + } + + /* convert rva to pointer into loaded file */ +-DWORD ++ULONG_PTR + rva_to_ptr(DWORD rva) + { + PIMAGE_SECTION_HEADER section = find_section(rva); + if (section->PointerToRawData == 0) + return 0; + else +- return ((DWORD) dos_hdr + (DWORD) rva - (section->VirtualAddress - section->PointerToRawData)); ++ return ((ULONG_PTR) dos_hdr + (DWORD) rva - (section->VirtualAddress - section->PointerToRawData)); + } + + /* Load a portable executable into memory */ +diff -ru ../release/mingw-utils-0.3/pexports/pexports.h ./pexports/pexports.h +--- ../release/mingw-utils-0.3/pexports/pexports.h Sun May 26 06:13:58 2002 ++++ ./pexports/pexports.h Tue Aug 8 06:53:25 2006 +@@ -21,12 +21,26 @@ + #define VER_MINOR 43 + + /* These are needed */ +-typedef unsigned short WORD; +-typedef unsigned int DWORD; +-typedef unsigned char BYTE; +-typedef long LONG; +-typedef WORD *PWORD; +-typedef DWORD *PDWORD; ++typedef unsigned short WORD, *PWORD; ++typedef unsigned char BYTE, *PBYTE; + -+dist-shar: distdir -+ shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz -+ $(am__remove_distdir) ++#if SIZEOF_LONG == 4 ++typedef unsigned long DWORD, *PDWORD; ++typedef long LONG, *PLONG; ++#else ++typedef unsigned int DWORD, *PDWORD; ++typedef int LONG, *PLONG; ++#endif + -+dist-zip: distdir -+ -rm -f $(distdir).zip -+ zip -rq $(distdir).zip $(distdir) - $(am__remove_distdir) ++#if SIZEOF_LONG == SIZEOF_VOID_P ++typedef unsigned long ULONG_PTR; ++#elif SIZEOF_LONG_LONG == SIZEOF_VOID_P ++typedef unsigned long long ULONG_PTR; ++#elif SIZEOF__INT64 == SIZEOF_VOID_P ++typedef unsigned _int64 ULONG_PTR; ++#else ++typedef unsigned int ULONG_PTR; ++#endif - dist dist-all: distdir -- $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz -+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz - $(am__remove_distdir) + /* PE structures */ + typedef struct _IMAGE_DATA_DIRECTORY { +@@ -111,9 +125,9 @@ + DWORD Base; + DWORD NumberOfFunctions; + DWORD NumberOfNames; +- PDWORD *AddressOfFunctions; +- PDWORD *AddressOfNames; +- PWORD *AddressOfNameOrdinals; ++ DWORD AddressOfFunctions; ++ DWORD AddressOfNames; ++ DWORD AddressOfNameOrdinals; + } IMAGE_EXPORT_DIRECTORY, *PIMAGE_EXPORT_DIRECTORY; - # 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 - -+ case '$(DIST_ARCHIVES)' in \ -+ *.tar.gz*) \ -+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ -+ *.tar.bz2*) \ -+ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ -+ *.tar.Z*) \ -+ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ -+ *.shar.gz*) \ -+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ -+ *.zip*) \ -+ unzip $(distdir).zip ;;\ -+ esac - chmod -R a-w $(distdir); chmod a+w $(distdir) - mkdir $(distdir)/_build - mkdir $(distdir)/_inst -@@ -397,19 +468,20 @@ - distuninstallcheck \ - && chmod -R a-w "$$dc_install_base" \ - && ({ \ -- (cd ../.. && $(mkinstalldirs) "$$dc_destdir") \ -+ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ - distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ - } || { rm -rf "$$dc_destdir"; exit 1; }) \ - && rm -rf "$$dc_destdir" \ -- && $(MAKE) $(AM_MAKEFLAGS) dist-gzip \ -- && rm -f $(distdir).tar.gz \ -+ && $(MAKE) $(AM_MAKEFLAGS) dist \ -+ && rm -rf $(DIST_ARCHIVES) \ - && $(MAKE) $(AM_MAKEFLAGS) distcleancheck - $(am__remove_distdir) -- @echo "$(distdir).tar.gz is ready for distribution" | \ -- sed 'h;s/./=/g;p;x;p;x' -+ @(echo "$(distdir) archives ready for distribution: "; \ -+ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ -+ sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' - distuninstallcheck: - @cd $(distuninstallcheck_dir) \ - && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ -@@ -433,7 +505,6 @@ - all-am: Makefile config.h - installdirs: installdirs-recursive - installdirs-am: -- - install: install-recursive - install-exec: install-exec-recursive - install-data: install-data-recursive -@@ -453,7 +524,7 @@ - clean-generic: + typedef struct _IMAGE_DOS_HEADER { +@@ -144,7 +158,7 @@ + PIMAGE_DOS_HEADER + load_pe_image(const char *filename); - distclean-generic: -- -rm -f $(CONFIG_CLEAN_FILES) -+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) +-DWORD ++ULONG_PTR + rva_to_ptr(DWORD rva); - maintainer-clean-generic: - @echo "This command is intended for maintainers to use" -@@ -471,6 +542,8 @@ + void +diff -ru ../release/mingw-utils-0.3/reimp/ar.c ./reimp/ar.c +--- ../release/mingw-utils-0.3/reimp/ar.c Wed Apr 10 09:39:07 2002 ++++ ./reimp/ar.c Tue Aug 8 06:53:25 2006 +@@ -21,6 +21,7 @@ + if (fread (long_names, size, 1, f) != 1) + error (0, "unexpected end-of-file\n"); + } ++ return 1; + } + else + return 0; +diff -ru ../release/mingw-utils-0.3/reimp/reimp.h ./reimp/reimp.h +--- ../release/mingw-utils-0.3/reimp/reimp.h Wed Apr 10 09:39:07 2002 ++++ ./reimp/reimp.h Tue Aug 8 06:53:25 2006 +@@ -3,7 +3,7 @@ - dvi-am: + /* we need integers of specific sizes */ + #ifndef uint32 +-#define uint32 unsigned long ++#define uint32 unsigned int + #endif -+html: html-recursive + #ifndef uint16 +diff -ru ../release/mingw-utils-0.3/scripts/a2dll.in ./scripts/a2dll.in +--- ../release/mingw-utils-0.3/scripts/a2dll.in Sun May 26 06:13:58 2002 ++++ ./scripts/a2dll.in Tue Aug 8 06:53:25 2006 +@@ -12,6 +12,13 @@ + exit 0 + } + ++# Figure out where the script is located and then use that path as the location ++# for the tools + - info: info-recursive ++cwd=`pwd` ++cd `dirname $0` ++SCRIPTDIR=`pwd` ++cd $cwd - info-am: -@@ -507,22 +580,20 @@ + cmdline=$@ - uninstall-info: uninstall-info-recursive +@@ -43,14 +50,14 @@ + rm -f .dll/* + /usr/bin/mkdir -p .dll + cd .dll +- ar x ../$in ++ ${SCRIPTDIR}/ar x ../$in + else + cd .dll + fi --.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \ -- clean-generic clean-recursive ctags ctags-recursive dist \ -- dist-all dist-gzip distcheck distclean distclean-generic \ -- distclean-hdr distclean-recursive distclean-tags distcleancheck \ -- distdir distuninstallcheck dvi dvi-am dvi-recursive info \ -- info-am info-recursive install install-am 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-generic \ -- mostlyclean-recursive pdf pdf-am pdf-recursive ps ps-am \ -- ps-recursive tags tags-recursive uninstall uninstall-am \ -- uninstall-info-am uninstall-info-recursive uninstall-recursive -+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ -+ check-am clean clean-generic clean-recursive ctags \ -+ ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \ -+ dist-tarZ dist-zip distcheck distclean distclean-generic \ -+ distclean-hdr distclean-recursive distclean-tags \ -+ distcleancheck distdir distuninstallcheck dvi dvi-am html \ -+ html-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 installdirs-am maintainer-clean \ -+ maintainer-clean-generic maintainer-clean-recursive \ -+ mostlyclean mostlyclean-generic mostlyclean-recursive pdf \ -+ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ -+ uninstall-info-am + echo Creating shared library \'$out\' + +-dllwrap --export-all -o ../$out `ls` $libs >../ld.err 2>&1 ++${SCRIPTDIR}/dllwrap --export-all -o ../$out `ls` $libs >../ld.err 2>&1 + cd .. + if [ `wc ld.err|awk ' {print $1}' ` -gt 2 ] +@@ -72,17 +79,17 @@ + # 2. I just saw that dlltool lies about assembly-sourced files, it + # lists their symbols as data - sdist: dist -Index: dos2unix.1 -=================================================================== ---- /dev/null 2006-05-26 19:54:25.455722750 -0700 -+++ dos2unix/dos2unix.1 2002-04-10 06:39:04.000000000 -0700 -@@ -0,0 +1,142 @@ -+.\" $$Id$$ -+.TH dos2unix 1 "dos2unix v3.0" "1995.03.31" -+ -+.SH NAME -+ -+dos2unix \- DOS/MAC to UNIX text file format converter -+ -+.SH SYNOPSYS -+ -+dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...] -+.PP -+Options: -+.PP -+[-hkqV] [--help] [--keepdate] [--quiet] [--version] -+ -+.SH DESCRIPTION -+ -+.PP -+This manual page documents dos2unix, the program that converts plain text -+files in DOS/MAC format to UNIX format. -+ -+.SH OPTIONS -+ -+The following options are available: -+.TP -+.B \-h --help -+Print online help. -+ -+.TP -+.B \-k --keepdate -+Keep the date stamp of output file same as input file. -+ -+.TP -+.B \-q --quiet -+Quiet mode. Suppress all warning and messages. -+ -+.TP -+.B \-V --version -+Prints version information. -+ -+.TP -+.B \-c --convmode convmode -+Sets conversion mode. Simulates dos2unix under SunOS. -+ -+.TP -+.B \-o --oldfile file ... -+Old file mode. Convert the file and write output to it. The program -+default to run in this mode. Wildcard names may be used. -+ -+.TP -+.B \-n --newfile infile outfile ... -+New file mode. Convert the infile and write output to outfile. File names -+must be given in pairs and wildcard names should NOT be used or you WILL -+lost your files. -+ -+.SH EXAMPLES -+ -+.LP -+Get input from stdin and write output to stdout. -+.IP -+.B dos2unix -+ -+.LP -+Convert and replace a.txt. Convert and replace b.txt. -+.IP -+.B dos2unix a.txt b.txt -+.IP -+.B dos2unix -o a.txt b.txt -+ -+.LP -+Convert and replace a.txt in ASCII conversion mode. -+Convert and replace b.txt in ISO conversion mode. -+Convert c.txt from Mac to Unix ascii format. -+.IP -+.B dos2unix a.txt -c iso b.txt -+.IP -+.B dos2unix -c ascii a.txt -c iso b.txt -+.IP -+.B dos2unix -c mac a.txt b.txt -+ -+.LP -+Convert and replace a.txt while keeping original date stamp. -+.IP -+.B dos2unix -k a.txt -+.IP -+.B dos2unix -k -o a.txt -+ -+.LP -+Convert a.txt and write to e.txt. -+.IP -+.B dos2unix -n a.txt e.txt -+ -+.LP -+Convert a.txt and write to e.txt, keep date stamp of e.txt same as a.txt. -+.IP -+.B dos2unix -k -n a.txt e.txt -+ -+.LP -+Convert and replace a.txt. Convert b.txt and write to e.txt. -+.IP -+.B dos2unix a.txt -n b.txt e.txt -+.IP -+.B dos2unix -o a.txt -n b.txt e.txt -+ -+.LP -+Convert c.txt and write to e.txt. Convert and replace a.txt. -+Convert and replace b.txt. Convert d.txt and write to f.txt. -+.IP -+.B dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt -+ -+.SH DIAGNOSTICS -+ -+.SH BUGS -+ -+The program does not work properly under MSDOS in stdio processing mode. -+If you know why is that so, please tell me. -+ -+.SH AUTHORS -+ -+Benjamin Lin - -+.B -+ -+ -+Bernd Johannes Wuebben (mac2unix mode) -+.B -+ -+ -+.SH MISCELLANY -+ -+Tested environment: -+.IP -+Linux 1.2.0 with GNU C 2.5.8 -+.IP -+SunOS 4.1.3 with GNU C 2.6.3 -+.IP -+MS-DOS 6.20 with Borland C++ 4.02 -+.PP -+Suggestions and bug reports are welcome. -+ -+.SH SEE ALSO -+unix2dos(1) mac2unix(1) -+ -Index: unix2dos.1 -=================================================================== ---- /dev/null 2006-05-26 19:54:25.455722750 -0700 -+++ unix2dos/unix2dos.1 2002-04-10 06:39:07.000000000 -0700 -@@ -0,0 +1,135 @@ -+.\" $$Id$$ -+.TH unix2dos 1 "unix2dos v2.2" "1995.03.31" -+ -+.SH NAME -+ -+unix2dos \- UNIX to DOS text file format converter -+ -+.SH SYNOPSYS -+ -+unix2dos [options] [-c convmode] [-o file ...] [-n infile outfile ...] -+.PP -+Options: -+.PP -+[-hkqV] [--help] [--keepdate] [--quiet] [--version] -+ -+.SH DESCRIPTION -+ -+.PP -+This manual page documents dos2unix, the program that converts text -+files in UNIX format to DOS format. -+ -+.SH OPTIONS -+ -+The following options are available: -+.TP -+.B \-h --help -+Print online help. -+ -+.TP -+.B \-k --keepdate -+Keep the date stamp of output file same as input file. -+ -+.TP -+.B \-q --quiet -+Quiet mode. Suppress all warning and messages. -+ -+.TP -+.B \-V --version -+Prints version information. -+ -+.TP -+.B \-c --convmode convmode -+Sets conversion mode. Simulates dos2unix under SunOS. -+ -+.TP -+.B \-o --oldfile file ... -+Old file mode. Convert the file and write output to it. The program -+default to run in this mode. Wildcard names may be used. -+ -+.TP -+.B \-n --newfile infile outfile ... -+New file mode. Convert the infile and write output to outfile. File names -+must be given in pairs and wildcard names should NOT be used or you WILL -+lost your files. -+ -+.SH EXAMPLES -+ -+.LP -+Get input from stdin and write output to stdout. -+.IP -+.B unix2dos -+ -+.LP -+Convert and replace a.txt. Convert and replace b.txt. -+.IP -+.B unix2dos a.txt b.txt -+.IP -+.B unix2dos -o a.txt b.txt -+ -+.LP -+Convert and replace a.txt in ASCII conversion mode. -+Convert and replace b.txt in ISO conversion mode. -+.IP -+.B dos2unix a.txt -c iso b.txt -+.IP -+.B dos2unix -c ascii a.txt -c iso b.txt -+ -+.LP -+Convert and replace a.txt while keeping original date stamp. -+.IP -+.B unix2dos -k a.txt -+.IP -+.B unix2dos -k -o a.txt -+ -+.LP -+Convert a.txt and write to e.txt. -+.IP -+.B unix2dos -n a.txt e.txt -+ -+.LP -+Convert a.txt and write to e.txt, keep date stamp of e.txt same as a.txt. -+.IP -+.B unix2dos -k -n a.txt e.txt -+ -+.LP -+Convert and replace a.txt. Convert b.txt and write to e.txt. -+.IP -+.B unix2dos a.txt -n b.txt e.txt -+.IP -+.B unix2dos -o a.txt -n b.txt e.txt -+ -+.LP -+Convert c.txt and write to e.txt. Convert and replace a.txt. -+Convert and replace b.txt. Convert d.txt and write to f.txt. -+.IP -+.B unix2dos -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt -+ -+.SH DIAGNOSTICS -+ -+.SH BUGS -+ -+The program does not work properly under MSDOS in stdio processing mode. -+If you know why is that so, please tell me. -+ -+.SH AUTHOR -+ -+Benjamin Lin - ( -+.B blin@socs.uts.edu.au -+) -+ -+.SH MISCELLANY -+ -+Tested environment: -+.IP -+Linux 1.2.0 with GNU C 2.5.8 -+.IP -+SunOS 4.1.3 with GNU C 2.6.3 -+.IP -+MS-DOS 6.20 with Borland C++ 4.02 -+.PP -+Suggestions and bug reports are welcome. -+ -+.SH SEE ALSO -+dos2unix(1) -+ +- pexports $out >$base.def ++ ${SCRIPTDIR}/pexports $out >$base.def + + # create import library + + mv $in $in.static +- dlltool --dllname $out --def $base.def --output-lib $in ++ ${SCRIPTDIR}/dlltool --dllname $out --def $base.def --output-lib $in + + # finally, we check whether dll exports data symbols + # if yes, we suggest user on steps to perform + +- pexports $out | awk '/DATA/ { print $1}' >$out.data ++ ${SCRIPTDIR}/pexports $out | awk '/DATA/ { print $1}' >$out.data + if test -s $out.data + then + echo +diff -ru ../release/mingw-utils-0.3/unix2dos/Makefile.am ./unix2dos/Makefile.am +--- ../release/mingw-utils-0.3/unix2dos/Makefile.am Wed Dec 4 07:08:07 2002 ++++ ./unix2dos/Makefile.am Tue Aug 8 07:02:59 2006 +@@ -9,4 +9,4 @@ + doc_DATA = COPYING unix2dos.html + + unix2dos.html: unix2dos.1 +- man2html $< > $@ ++ man2html < $< > $@ +diff -ru ../release/mingw-utils-0.3/unix2dos/Makefile.in ./unix2dos/Makefile.in +--- ../release/mingw-utils-0.3/unix2dos/Makefile.in Tue Nov 25 11:31:12 2003 ++++ ./unix2dos/Makefile.in Tue Aug 8 07:02:48 2006 +@@ -419,7 +419,7 @@ + + + unix2dos.html: unix2dos.1 +- man2html $< > $@ ++ man2html < $< > $@ + # Tell versions [3.59,3.63) of GNU make to not export all variables. + # Otherwise a system limit (for SysV at least) may be exceeded. + .NOEXPORT: diff --git a/bacula/src/win32/patches/mingw-utils2.patch b/bacula/src/win32/patches/mingw-utils2.patch new file mode 100644 index 0000000000..e4d1d592d4 --- /dev/null +++ b/bacula/src/win32/patches/mingw-utils2.patch @@ -0,0 +1,147 @@ +Index: dos2unix.1 +=================================================================== +--- /dev/null 2006-05-26 19:54:25.455722750 -0700 ++++ ./dos2unix.1 2002-04-10 06:39:04.000000000 -0700 +@@ -0,0 +1,142 @@ ++.\" $$Id$$ ++.TH dos2unix 1 "dos2unix v3.0" "1995.03.31" ++ ++.SH NAME ++ ++dos2unix \- DOS/MAC to UNIX text file format converter ++ ++.SH SYNOPSYS ++ ++dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...] ++.PP ++Options: ++.PP ++[-hkqV] [--help] [--keepdate] [--quiet] [--version] ++ ++.SH DESCRIPTION ++ ++.PP ++This manual page documents dos2unix, the program that converts plain text ++files in DOS/MAC format to UNIX format. ++ ++.SH OPTIONS ++ ++The following options are available: ++.TP ++.B \-h --help ++Print online help. ++ ++.TP ++.B \-k --keepdate ++Keep the date stamp of output file same as input file. ++ ++.TP ++.B \-q --quiet ++Quiet mode. Suppress all warning and messages. ++ ++.TP ++.B \-V --version ++Prints version information. ++ ++.TP ++.B \-c --convmode convmode ++Sets conversion mode. Simulates dos2unix under SunOS. ++ ++.TP ++.B \-o --oldfile file ... ++Old file mode. Convert the file and write output to it. The program ++default to run in this mode. Wildcard names may be used. ++ ++.TP ++.B \-n --newfile infile outfile ... ++New file mode. Convert the infile and write output to outfile. File names ++must be given in pairs and wildcard names should NOT be used or you WILL ++lost your files. ++ ++.SH EXAMPLES ++ ++.LP ++Get input from stdin and write output to stdout. ++.IP ++.B dos2unix ++ ++.LP ++Convert and replace a.txt. Convert and replace b.txt. ++.IP ++.B dos2unix a.txt b.txt ++.IP ++.B dos2unix -o a.txt b.txt ++ ++.LP ++Convert and replace a.txt in ASCII conversion mode. ++Convert and replace b.txt in ISO conversion mode. ++Convert c.txt from Mac to Unix ascii format. ++.IP ++.B dos2unix a.txt -c iso b.txt ++.IP ++.B dos2unix -c ascii a.txt -c iso b.txt ++.IP ++.B dos2unix -c mac a.txt b.txt ++ ++.LP ++Convert and replace a.txt while keeping original date stamp. ++.IP ++.B dos2unix -k a.txt ++.IP ++.B dos2unix -k -o a.txt ++ ++.LP ++Convert a.txt and write to e.txt. ++.IP ++.B dos2unix -n a.txt e.txt ++ ++.LP ++Convert a.txt and write to e.txt, keep date stamp of e.txt same as a.txt. ++.IP ++.B dos2unix -k -n a.txt e.txt ++ ++.LP ++Convert and replace a.txt. Convert b.txt and write to e.txt. ++.IP ++.B dos2unix a.txt -n b.txt e.txt ++.IP ++.B dos2unix -o a.txt -n b.txt e.txt ++ ++.LP ++Convert c.txt and write to e.txt. Convert and replace a.txt. ++Convert and replace b.txt. Convert d.txt and write to f.txt. ++.IP ++.B dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt ++ ++.SH DIAGNOSTICS ++ ++.SH BUGS ++ ++The program does not work properly under MSDOS in stdio processing mode. ++If you know why is that so, please tell me. ++ ++.SH AUTHORS ++ ++Benjamin Lin - ++.B ++ ++ ++Bernd Johannes Wuebben (mac2unix mode) ++.B ++ ++ ++.SH MISCELLANY ++ ++Tested environment: ++.IP ++Linux 1.2.0 with GNU C 2.5.8 ++.IP ++SunOS 4.1.3 with GNU C 2.6.3 ++.IP ++MS-DOS 6.20 with Borland C++ 4.02 ++.PP ++Suggestions and bug reports are welcome. ++ ++.SH SEE ALSO ++unix2dos(1) mac2unix(1) ++ diff --git a/bacula/src/win32/patches/mingw-utils3.patch b/bacula/src/win32/patches/mingw-utils3.patch new file mode 100644 index 0000000000..e8456fba96 --- /dev/null +++ b/bacula/src/win32/patches/mingw-utils3.patch @@ -0,0 +1,140 @@ +Index: unix2dos.1 +=================================================================== +--- /dev/null 2006-05-26 19:54:25.455722750 -0700 ++++ ./unix2dos.1 2002-04-10 06:39:07.000000000 -0700 +@@ -0,0 +1,135 @@ ++.\" $$Id$$ ++.TH unix2dos 1 "unix2dos v2.2" "1995.03.31" ++ ++.SH NAME ++ ++unix2dos \- UNIX to DOS text file format converter ++ ++.SH SYNOPSYS ++ ++unix2dos [options] [-c convmode] [-o file ...] [-n infile outfile ...] ++.PP ++Options: ++.PP ++[-hkqV] [--help] [--keepdate] [--quiet] [--version] ++ ++.SH DESCRIPTION ++ ++.PP ++This manual page documents dos2unix, the program that converts text ++files in UNIX format to DOS format. ++ ++.SH OPTIONS ++ ++The following options are available: ++.TP ++.B \-h --help ++Print online help. ++ ++.TP ++.B \-k --keepdate ++Keep the date stamp of output file same as input file. ++ ++.TP ++.B \-q --quiet ++Quiet mode. Suppress all warning and messages. ++ ++.TP ++.B \-V --version ++Prints version information. ++ ++.TP ++.B \-c --convmode convmode ++Sets conversion mode. Simulates dos2unix under SunOS. ++ ++.TP ++.B \-o --oldfile file ... ++Old file mode. Convert the file and write output to it. The program ++default to run in this mode. Wildcard names may be used. ++ ++.TP ++.B \-n --newfile infile outfile ... ++New file mode. Convert the infile and write output to outfile. File names ++must be given in pairs and wildcard names should NOT be used or you WILL ++lost your files. ++ ++.SH EXAMPLES ++ ++.LP ++Get input from stdin and write output to stdout. ++.IP ++.B unix2dos ++ ++.LP ++Convert and replace a.txt. Convert and replace b.txt. ++.IP ++.B unix2dos a.txt b.txt ++.IP ++.B unix2dos -o a.txt b.txt ++ ++.LP ++Convert and replace a.txt in ASCII conversion mode. ++Convert and replace b.txt in ISO conversion mode. ++.IP ++.B dos2unix a.txt -c iso b.txt ++.IP ++.B dos2unix -c ascii a.txt -c iso b.txt ++ ++.LP ++Convert and replace a.txt while keeping original date stamp. ++.IP ++.B unix2dos -k a.txt ++.IP ++.B unix2dos -k -o a.txt ++ ++.LP ++Convert a.txt and write to e.txt. ++.IP ++.B unix2dos -n a.txt e.txt ++ ++.LP ++Convert a.txt and write to e.txt, keep date stamp of e.txt same as a.txt. ++.IP ++.B unix2dos -k -n a.txt e.txt ++ ++.LP ++Convert and replace a.txt. Convert b.txt and write to e.txt. ++.IP ++.B unix2dos a.txt -n b.txt e.txt ++.IP ++.B unix2dos -o a.txt -n b.txt e.txt ++ ++.LP ++Convert c.txt and write to e.txt. Convert and replace a.txt. ++Convert and replace b.txt. Convert d.txt and write to f.txt. ++.IP ++.B unix2dos -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt ++ ++.SH DIAGNOSTICS ++ ++.SH BUGS ++ ++The program does not work properly under MSDOS in stdio processing mode. ++If you know why is that so, please tell me. ++ ++.SH AUTHOR ++ ++Benjamin Lin - ( ++.B blin@socs.uts.edu.au ++) ++ ++.SH MISCELLANY ++ ++Tested environment: ++.IP ++Linux 1.2.0 with GNU C 2.5.8 ++.IP ++SunOS 4.1.3 with GNU C 2.6.3 ++.IP ++MS-DOS 6.20 with Borland C++ 4.02 ++.PP ++Suggestions and bug reports are welcome. ++ ++.SH SEE ALSO ++dos2unix(1) ++ -- 2.39.5