diff --git a/html2xhtml-windows.zip b/html2xhtml-windows.zip index 238d6fa..5501739 100644 Binary files a/html2xhtml-windows.zip and b/html2xhtml-windows.zip differ diff --git a/html2xhtml-windows/.libs/dtdquery_ltshwrapper b/html2xhtml-windows/.libs/dtdquery_ltshwrapper deleted file mode 100644 index 47ec543..0000000 --- a/html2xhtml-windows/.libs/dtdquery_ltshwrapper +++ /dev/null @@ -1,201 +0,0 @@ -#! /bin/sh - -# dtdquery - temporary wrapper script for .libs/dtdquery.exe -# Generated by libtool (GNU libtool) 2.4.2 Debian-2.4.2-1.11 -# -# The dtdquery program cannot be directly executed until all the libtool -# libraries that it depends on are installed. -# -# This wrapper script should never be moved out of the build directory. -# If it is, it will not operate correctly. - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -sed_quote_subst='s/\([`"$\\]\)/\\\1/g' - -# 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+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac -fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -relink_command="" - -# This environment variable determines our operation mode. -if test "$libtool_install_magic" = "%%%MAGIC variable%%%"; then - # install mode needs the following variables: - generated_by_libtool_version='2.4.2' - notinst_deplibs='' -else - # When we are sourced in execute mode, $file and $ECHO are already set. - if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then - file="$0" - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - ECHO="printf %s\\n" - fi - -# Very basic option parsing. These options are (a) specific to -# the libtool wrapper, (b) are identical between the wrapper -# /script/ and the wrapper /executable/ which is used only on -# windows platforms, and (c) all begin with the string --lt- -# (application programs are unlikely to have options which match -# this pattern). -# -# There are only two supported options: --lt-debug and -# --lt-dump-script. There is, deliberately, no --lt-help. -# -# The first argument to this parsing function should be the -# script's ../libtool value, followed by yes. -lt_option_debug= -func_parse_lt_options () -{ - lt_script_arg0=$0 - shift - for lt_opt - do - case "$lt_opt" in - --lt-debug) lt_option_debug=1 ;; - --lt-dump-script) - lt_dump_D=`$ECHO "X$lt_script_arg0" | /bin/sed -e 's/^X//' -e 's%/[^/]*$%%'` - test "X$lt_dump_D" = "X$lt_script_arg0" && lt_dump_D=. - lt_dump_F=`$ECHO "X$lt_script_arg0" | /bin/sed -e 's/^X//' -e 's%^.*/%%'` - cat "$lt_dump_D/$lt_dump_F" - exit 0 - ;; - --lt-*) - $ECHO "Unrecognized --lt- option: '$lt_opt'" 1>&2 - exit 1 - ;; - esac - done - - # Print the debug banner immediately: - if test -n "$lt_option_debug"; then - echo "dtdquery.exe:dtdquery:${LINENO}: libtool wrapper (GNU libtool) 2.4.2 Debian-2.4.2-1.11" 1>&2 - fi -} - -# Used when --lt-debug. Prints its arguments to stdout -# (redirection is the responsibility of the caller) -func_lt_dump_args () -{ - lt_dump_args_N=1; - for lt_arg - do - $ECHO "dtdquery.exe:dtdquery:${LINENO}: newargv[$lt_dump_args_N]: $lt_arg" - lt_dump_args_N=`expr $lt_dump_args_N + 1` - done -} - -# Core function for launching the target application -func_exec_program_core () -{ - - if test -n "$lt_option_debug"; then - $ECHO "dtdquery.exe:dtdquery:${LINENO}: newargv[0]: $progdir/$program" 1>&2 - func_lt_dump_args ${1+"$@"} 1>&2 - fi - exec "$progdir/$program" ${1+"$@"} - - $ECHO "$0: cannot exec $program $*" 1>&2 - exit 1 -} - -# A function to encapsulate launching the target application -# Strips options in the --lt-* namespace from $@ and -# launches target application with the remaining arguments. -func_exec_program () -{ - case " $* " in - *\ --lt-*) - for lt_wr_arg - do - case $lt_wr_arg in - --lt-*) ;; - *) set x "$@" "$lt_wr_arg"; shift;; - esac - shift - done ;; - esac - func_exec_program_core ${1+"$@"} -} - - # Parse options - func_parse_lt_options "$0" ${1+"$@"} - - # Find the directory that this script lives in. - thisdir=`$ECHO "$file" | /bin/sed 's%/[^/]*$%%'` - test "x$thisdir" = "x$file" && thisdir=. - - # Follow symbolic links until we get to the real thisdir. - file=`ls -ld "$file" | /bin/sed -n 's/.*-> //p'` - while test -n "$file"; do - destdir=`$ECHO "$file" | /bin/sed 's%/[^/]*$%%'` - - # If there was a directory component, then change thisdir. - if test "x$destdir" != "x$file"; then - case "$destdir" in - [\\/]* | [A-Za-z]:[\\/]*) thisdir="$destdir" ;; - *) thisdir="$thisdir/$destdir" ;; - esac - fi - - file=`$ECHO "$file" | /bin/sed 's%^.*/%%'` - file=`ls -ld "$thisdir/$file" | /bin/sed -n 's/.*-> //p'` - done - - # Usually 'no', except on cygwin/mingw when embedded into - # the cwrapper. - WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=yes - if test "$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR" = "yes"; then - # special case for '.' - if test "$thisdir" = "."; then - thisdir=`pwd` - fi - # remove .libs from thisdir - case "$thisdir" in - *[\\/].libs ) thisdir=`$ECHO "$thisdir" | /bin/sed 's%[\\/][^\\/]*$%%'` ;; - .libs ) thisdir=. ;; - esac - fi - - # Try to get the absolute directory name. - absdir=`cd "$thisdir" && pwd` - test -n "$absdir" && thisdir="$absdir" - - program='dtdquery.exe' - progdir="$thisdir/.libs" - - - if test -f "$progdir/$program"; then - if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then - # Run the actual program with our arguments. - func_exec_program ${1+"$@"} - fi - else - # The program doesn't exist. - $ECHO "$0: error: \`$progdir/$program' does not exist" 1>&2 - $ECHO "This script is just a wrapper for $program." 1>&2 - $ECHO "See the libtool documentation for more information." 1>&2 - exit 1 - fi -fi diff --git a/html2xhtml-windows/.libs/html2xhtml_ltshwrapper b/html2xhtml-windows/.libs/html2xhtml_ltshwrapper deleted file mode 100644 index cbc3091..0000000 --- a/html2xhtml-windows/.libs/html2xhtml_ltshwrapper +++ /dev/null @@ -1,201 +0,0 @@ -#! /bin/sh - -# html2xhtml - temporary wrapper script for .libs/html2xhtml.exe -# Generated by libtool (GNU libtool) 2.4.2 Debian-2.4.2-1.11 -# -# The html2xhtml program cannot be directly executed until all the libtool -# libraries that it depends on are installed. -# -# This wrapper script should never be moved out of the build directory. -# If it is, it will not operate correctly. - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -sed_quote_subst='s/\([`"$\\]\)/\\\1/g' - -# 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+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac -fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -relink_command="" - -# This environment variable determines our operation mode. -if test "$libtool_install_magic" = "%%%MAGIC variable%%%"; then - # install mode needs the following variables: - generated_by_libtool_version='2.4.2' - notinst_deplibs='' -else - # When we are sourced in execute mode, $file and $ECHO are already set. - if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then - file="$0" - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - ECHO="printf %s\\n" - fi - -# Very basic option parsing. These options are (a) specific to -# the libtool wrapper, (b) are identical between the wrapper -# /script/ and the wrapper /executable/ which is used only on -# windows platforms, and (c) all begin with the string --lt- -# (application programs are unlikely to have options which match -# this pattern). -# -# There are only two supported options: --lt-debug and -# --lt-dump-script. There is, deliberately, no --lt-help. -# -# The first argument to this parsing function should be the -# script's ../libtool value, followed by yes. -lt_option_debug= -func_parse_lt_options () -{ - lt_script_arg0=$0 - shift - for lt_opt - do - case "$lt_opt" in - --lt-debug) lt_option_debug=1 ;; - --lt-dump-script) - lt_dump_D=`$ECHO "X$lt_script_arg0" | /bin/sed -e 's/^X//' -e 's%/[^/]*$%%'` - test "X$lt_dump_D" = "X$lt_script_arg0" && lt_dump_D=. - lt_dump_F=`$ECHO "X$lt_script_arg0" | /bin/sed -e 's/^X//' -e 's%^.*/%%'` - cat "$lt_dump_D/$lt_dump_F" - exit 0 - ;; - --lt-*) - $ECHO "Unrecognized --lt- option: '$lt_opt'" 1>&2 - exit 1 - ;; - esac - done - - # Print the debug banner immediately: - if test -n "$lt_option_debug"; then - echo "html2xhtml.exe:html2xhtml:${LINENO}: libtool wrapper (GNU libtool) 2.4.2 Debian-2.4.2-1.11" 1>&2 - fi -} - -# Used when --lt-debug. Prints its arguments to stdout -# (redirection is the responsibility of the caller) -func_lt_dump_args () -{ - lt_dump_args_N=1; - for lt_arg - do - $ECHO "html2xhtml.exe:html2xhtml:${LINENO}: newargv[$lt_dump_args_N]: $lt_arg" - lt_dump_args_N=`expr $lt_dump_args_N + 1` - done -} - -# Core function for launching the target application -func_exec_program_core () -{ - - if test -n "$lt_option_debug"; then - $ECHO "html2xhtml.exe:html2xhtml:${LINENO}: newargv[0]: $progdir/$program" 1>&2 - func_lt_dump_args ${1+"$@"} 1>&2 - fi - exec "$progdir/$program" ${1+"$@"} - - $ECHO "$0: cannot exec $program $*" 1>&2 - exit 1 -} - -# A function to encapsulate launching the target application -# Strips options in the --lt-* namespace from $@ and -# launches target application with the remaining arguments. -func_exec_program () -{ - case " $* " in - *\ --lt-*) - for lt_wr_arg - do - case $lt_wr_arg in - --lt-*) ;; - *) set x "$@" "$lt_wr_arg"; shift;; - esac - shift - done ;; - esac - func_exec_program_core ${1+"$@"} -} - - # Parse options - func_parse_lt_options "$0" ${1+"$@"} - - # Find the directory that this script lives in. - thisdir=`$ECHO "$file" | /bin/sed 's%/[^/]*$%%'` - test "x$thisdir" = "x$file" && thisdir=. - - # Follow symbolic links until we get to the real thisdir. - file=`ls -ld "$file" | /bin/sed -n 's/.*-> //p'` - while test -n "$file"; do - destdir=`$ECHO "$file" | /bin/sed 's%/[^/]*$%%'` - - # If there was a directory component, then change thisdir. - if test "x$destdir" != "x$file"; then - case "$destdir" in - [\\/]* | [A-Za-z]:[\\/]*) thisdir="$destdir" ;; - *) thisdir="$thisdir/$destdir" ;; - esac - fi - - file=`$ECHO "$file" | /bin/sed 's%^.*/%%'` - file=`ls -ld "$thisdir/$file" | /bin/sed -n 's/.*-> //p'` - done - - # Usually 'no', except on cygwin/mingw when embedded into - # the cwrapper. - WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=yes - if test "$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR" = "yes"; then - # special case for '.' - if test "$thisdir" = "."; then - thisdir=`pwd` - fi - # remove .libs from thisdir - case "$thisdir" in - *[\\/].libs ) thisdir=`$ECHO "$thisdir" | /bin/sed 's%[\\/][^\\/]*$%%'` ;; - .libs ) thisdir=. ;; - esac - fi - - # Try to get the absolute directory name. - absdir=`cd "$thisdir" && pwd` - test -n "$absdir" && thisdir="$absdir" - - program='html2xhtml.exe' - progdir="$thisdir/.libs" - - - if test -f "$progdir/$program"; then - if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then - # Run the actual program with our arguments. - func_exec_program ${1+"$@"} - fi - else - # The program doesn't exist. - $ECHO "$0: error: \`$progdir/$program' does not exist" 1>&2 - $ECHO "This script is just a wrapper for $program." 1>&2 - $ECHO "See the libtool documentation for more information." 1>&2 - exit 1 - fi -fi diff --git a/html2xhtml-windows/.libs/lt-dtdquery.c b/html2xhtml-windows/.libs/lt-dtdquery.c deleted file mode 100644 index c753b3d..0000000 --- a/html2xhtml-windows/.libs/lt-dtdquery.c +++ /dev/null @@ -1,1037 +0,0 @@ - -/* ./.libs/lt-dtdquery.c - temporary wrapper executable for .libs/dtdquery.exe - Generated by libtool (GNU libtool) 2.4.2 Debian-2.4.2-1.11 - - The dtdquery program cannot be directly executed until all the libtool - libraries that it depends on are installed. - - This wrapper executable should never be moved out of the build directory. - If it is, it will not operate correctly. -*/ -#ifdef _MSC_VER -# define _CRT_SECURE_NO_DEPRECATE 1 -#endif -#include -#include -#ifdef _MSC_VER -# include -# include -# include -#else -# include -# include -# ifdef __CYGWIN__ -# include -# endif -#endif -#include -#include -#include -#include -#include -#include -#include -#include - -/* declarations of non-ANSI functions */ -#if defined(__MINGW32__) -# ifdef __STRICT_ANSI__ -int _putenv (const char *); -# endif -#elif defined(__CYGWIN__) -# ifdef __STRICT_ANSI__ -char *realpath (const char *, char *); -int putenv (char *); -int setenv (const char *, const char *, int); -# endif -/* #elif defined (other platforms) ... */ -#endif - -/* portability defines, excluding path handling macros */ -#if defined(_MSC_VER) -# define setmode _setmode -# define stat _stat -# define chmod _chmod -# define getcwd _getcwd -# define putenv _putenv -# define S_IXUSR _S_IEXEC -# ifndef _INTPTR_T_DEFINED -# define _INTPTR_T_DEFINED -# define intptr_t int -# endif -#elif defined(__MINGW32__) -# define setmode _setmode -# define stat _stat -# define chmod _chmod -# define getcwd _getcwd -# define putenv _putenv -#elif defined(__CYGWIN__) -# define HAVE_SETENV -# define FOPEN_WB "wb" -/* #elif defined (other platforms) ... */ -#endif - -#if defined(PATH_MAX) -# define LT_PATHMAX PATH_MAX -#elif defined(MAXPATHLEN) -# define LT_PATHMAX MAXPATHLEN -#else -# define LT_PATHMAX 1024 -#endif - -#ifndef S_IXOTH -# define S_IXOTH 0 -#endif -#ifndef S_IXGRP -# define S_IXGRP 0 -#endif - -/* path handling portability macros */ -#ifndef DIR_SEPARATOR -# define DIR_SEPARATOR '/' -# define PATH_SEPARATOR ':' -#endif - -#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ - defined (__OS2__) -# define HAVE_DOS_BASED_FILE_SYSTEM -# define FOPEN_WB "wb" -# ifndef DIR_SEPARATOR_2 -# define DIR_SEPARATOR_2 '\\' -# endif -# ifndef PATH_SEPARATOR_2 -# define PATH_SEPARATOR_2 ';' -# endif -#endif - -#ifndef DIR_SEPARATOR_2 -# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) -#else /* DIR_SEPARATOR_2 */ -# define IS_DIR_SEPARATOR(ch) \ - (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) -#endif /* DIR_SEPARATOR_2 */ - -#ifndef PATH_SEPARATOR_2 -# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) -#else /* PATH_SEPARATOR_2 */ -# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) -#endif /* PATH_SEPARATOR_2 */ - -#ifndef FOPEN_WB -# define FOPEN_WB "w" -#endif -#ifndef _O_BINARY -# define _O_BINARY 0 -#endif - -#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) -#define XFREE(stale) do { \ - if (stale) { free ((void *) stale); stale = 0; } \ -} while (0) - -#if defined(LT_DEBUGWRAPPER) -static int lt_debug = 1; -#else -static int lt_debug = 0; -#endif - -const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ - -void *xmalloc (size_t num); -char *xstrdup (const char *string); -const char *base_name (const char *name); -char *find_executable (const char *wrapper); -char *chase_symlinks (const char *pathspec); -int make_executable (const char *path); -int check_executable (const char *path); -char *strendzap (char *str, const char *pat); -void lt_debugprintf (const char *file, int line, const char *fmt, ...); -void lt_fatal (const char *file, int line, const char *message, ...); -static const char *nonnull (const char *s); -static const char *nonempty (const char *s); -void lt_setenv (const char *name, const char *value); -char *lt_extend_str (const char *orig_value, const char *add, int to_end); -void lt_update_exe_path (const char *name, const char *value); -void lt_update_lib_path (const char *name, const char *value); -char **prepare_spawn (char **argv); -void lt_dump_script (FILE *f); -volatile const char * MAGIC_EXE = "%%%MAGIC EXE variable%%%"; -const char * LIB_PATH_VARNAME = "PATH"; -const char * LIB_PATH_VALUE = ""; -const char * EXE_PATH_VARNAME = ""; -const char * EXE_PATH_VALUE = ""; -const char * TARGET_PROGRAM_NAME = "dtdquery.exe"; /* hopefully, no .exe */ - -#define LTWRAPPER_OPTION_PREFIX "--lt-" - -static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX; -static const char *dumpscript_opt = LTWRAPPER_OPTION_PREFIX "dump-script"; -static const char *debug_opt = LTWRAPPER_OPTION_PREFIX "debug"; - -int -main (int argc, char *argv[]) -{ - char **newargz; - int newargc; - char *tmp_pathspec; - char *actual_cwrapper_path; - char *actual_cwrapper_name; - char *target_name; - char *lt_argv_zero; - intptr_t rval = 127; - - int i; - - program_name = (char *) xstrdup (base_name (argv[0])); - newargz = XMALLOC (char *, argc + 1); - - /* very simple arg parsing; don't want to rely on getopt - * also, copy all non cwrapper options to newargz, except - * argz[0], which is handled differently - */ - newargc=0; - for (i = 1; i < argc; i++) - { - if (strcmp (argv[i], dumpscript_opt) == 0) - { - setmode(1,_O_BINARY); - lt_dump_script (stdout); - return 0; - } - if (strcmp (argv[i], debug_opt) == 0) - { - lt_debug = 1; - continue; - } - if (strcmp (argv[i], ltwrapper_option_prefix) == 0) - { - /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX - namespace, but it is not one of the ones we know about and - have already dealt with, above (inluding dump-script), then - report an error. Otherwise, targets might begin to believe - they are allowed to use options in the LTWRAPPER_OPTION_PREFIX - namespace. The first time any user complains about this, we'll - need to make LTWRAPPER_OPTION_PREFIX a configure-time option - or a configure.ac-settable value. - */ - lt_fatal (__FILE__, __LINE__, - "unrecognized %s option: '%s'", - ltwrapper_option_prefix, argv[i]); - } - /* otherwise ... */ - newargz[++newargc] = xstrdup (argv[i]); - } - newargz[++newargc] = NULL; - - /* The GNU banner must be the first non-error debug message */ - lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU libtool) 2.4.2 Debian-2.4.2-1.11\n"); - lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]); - lt_debugprintf (__FILE__, __LINE__, "(main) program_name: %s\n", program_name); - - tmp_pathspec = find_executable (argv[0]); - if (tmp_pathspec == NULL) - lt_fatal (__FILE__, __LINE__, "couldn't find %s", argv[0]); - lt_debugprintf (__FILE__, __LINE__, - "(main) found exe (before symlink chase) at: %s\n", - tmp_pathspec); - - actual_cwrapper_path = chase_symlinks (tmp_pathspec); - lt_debugprintf (__FILE__, __LINE__, - "(main) found exe (after symlink chase) at: %s\n", - actual_cwrapper_path); - XFREE (tmp_pathspec); - - actual_cwrapper_name = xstrdup (base_name (actual_cwrapper_path)); - strendzap (actual_cwrapper_path, actual_cwrapper_name); - - /* wrapper name transforms */ - strendzap (actual_cwrapper_name, ".exe"); - tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1); - XFREE (actual_cwrapper_name); - actual_cwrapper_name = tmp_pathspec; - tmp_pathspec = 0; - - /* target_name transforms -- use actual target program name; might have lt- prefix */ - target_name = xstrdup (base_name (TARGET_PROGRAM_NAME)); - strendzap (target_name, ".exe"); - tmp_pathspec = lt_extend_str (target_name, ".exe", 1); - XFREE (target_name); - target_name = tmp_pathspec; - tmp_pathspec = 0; - - lt_debugprintf (__FILE__, __LINE__, - "(main) libtool target name: %s\n", - target_name); - newargz[0] = - XMALLOC (char, (strlen (actual_cwrapper_path) + - strlen (".libs") + 1 + strlen (actual_cwrapper_name) + 1)); - strcpy (newargz[0], actual_cwrapper_path); - strcat (newargz[0], ".libs"); - strcat (newargz[0], "/"); - /* stop here, and copy so we don't have to do this twice */ - tmp_pathspec = xstrdup (newargz[0]); - - /* do NOT want the lt- prefix here, so use actual_cwrapper_name */ - strcat (newargz[0], actual_cwrapper_name); - - /* DO want the lt- prefix here if it exists, so use target_name */ - lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1); - XFREE (tmp_pathspec); - tmp_pathspec = NULL; - { - char* p; - while ((p = strchr (newargz[0], '\\')) != NULL) - { - *p = '/'; - } - while ((p = strchr (lt_argv_zero, '\\')) != NULL) - { - *p = '/'; - } - } - XFREE (target_name); - XFREE (actual_cwrapper_path); - XFREE (actual_cwrapper_name); - - lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */ - lt_setenv ("DUALCASE", "1"); /* for MSK sh */ - /* Update the DLL searchpath. EXE_PATH_VALUE ($dllsearchpath) must - be prepended before (that is, appear after) LIB_PATH_VALUE ($temp_rpath) - because on Windows, both *_VARNAMEs are PATH but uninstalled - libraries must come first. */ - lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE); - lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE); - - lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n", - nonnull (lt_argv_zero)); - for (i = 0; i < newargc; i++) - { - lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n", - i, nonnull (newargz[i])); - } - - /* execv doesn't actually work on mingw as expected on unix */ - newargz = prepare_spawn (newargz); - rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz); - if (rval == -1) - { - /* failed to start process */ - lt_debugprintf (__FILE__, __LINE__, - "(main) failed to launch target \"%s\": %s\n", - lt_argv_zero, nonnull (strerror (errno))); - return 127; - } - return rval; -} - -void * -xmalloc (size_t num) -{ - void *p = (void *) malloc (num); - if (!p) - lt_fatal (__FILE__, __LINE__, "memory exhausted"); - - return p; -} - -char * -xstrdup (const char *string) -{ - return string ? strcpy ((char *) xmalloc (strlen (string) + 1), - string) : NULL; -} - -const char * -base_name (const char *name) -{ - const char *base; - -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - /* Skip over the disk name in MSDOS pathnames. */ - if (isalpha ((unsigned char) name[0]) && name[1] == ':') - name += 2; -#endif - - for (base = name; *name; name++) - if (IS_DIR_SEPARATOR (*name)) - base = name + 1; - return base; -} - -int -check_executable (const char *path) -{ - struct stat st; - - lt_debugprintf (__FILE__, __LINE__, "(check_executable): %s\n", - nonempty (path)); - if ((!path) || (!*path)) - return 0; - - if ((stat (path, &st) >= 0) - && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) - return 1; - else - return 0; -} - -int -make_executable (const char *path) -{ - int rval = 0; - struct stat st; - - lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", - nonempty (path)); - if ((!path) || (!*path)) - return 0; - - if (stat (path, &st) >= 0) - { - rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); - } - return rval; -} - -/* Searches for the full path of the wrapper. Returns - newly allocated full path name if found, NULL otherwise - Does not chase symlinks, even on platforms that support them. -*/ -char * -find_executable (const char *wrapper) -{ - int has_slash = 0; - const char *p; - const char *p_next; - /* static buffer for getcwd */ - char tmp[LT_PATHMAX + 1]; - int tmp_len; - char *concat_name; - - lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", - nonempty (wrapper)); - - if ((wrapper == NULL) || (*wrapper == '\0')) - return NULL; - - /* Absolute path? */ -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') - { - concat_name = xstrdup (wrapper); - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } - else - { -#endif - if (IS_DIR_SEPARATOR (wrapper[0])) - { - concat_name = xstrdup (wrapper); - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - } -#endif - - for (p = wrapper; *p; p++) - if (*p == '/') - { - has_slash = 1; - break; - } - if (!has_slash) - { - /* no slashes; search PATH */ - const char *path = getenv ("PATH"); - if (path != NULL) - { - for (p = path; *p; p = p_next) - { - const char *q; - size_t p_len; - for (q = p; *q; q++) - if (IS_PATH_SEPARATOR (*q)) - break; - p_len = q - p; - p_next = (*q == '\0' ? q : q + 1); - if (p_len == 0) - { - /* empty path: current directory */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", - nonnull (strerror (errno))); - tmp_len = strlen (tmp); - concat_name = - XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, tmp, tmp_len); - concat_name[tmp_len] = '/'; - strcpy (concat_name + tmp_len + 1, wrapper); - } - else - { - concat_name = - XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, p, p_len); - concat_name[p_len] = '/'; - strcpy (concat_name + p_len + 1, wrapper); - } - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } - } - /* not found in PATH; assume curdir */ - } - /* Relative path | not found in path: prepend cwd */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", - nonnull (strerror (errno))); - tmp_len = strlen (tmp); - concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, tmp, tmp_len); - concat_name[tmp_len] = '/'; - strcpy (concat_name + tmp_len + 1, wrapper); - - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - return NULL; -} - -char * -chase_symlinks (const char *pathspec) -{ -#ifndef S_ISLNK - return xstrdup (pathspec); -#else - char buf[LT_PATHMAX]; - struct stat s; - char *tmp_pathspec = xstrdup (pathspec); - char *p; - int has_symlinks = 0; - while (strlen (tmp_pathspec) && !has_symlinks) - { - lt_debugprintf (__FILE__, __LINE__, - "checking path component for symlinks: %s\n", - tmp_pathspec); - if (lstat (tmp_pathspec, &s) == 0) - { - if (S_ISLNK (s.st_mode) != 0) - { - has_symlinks = 1; - break; - } - - /* search backwards for last DIR_SEPARATOR */ - p = tmp_pathspec + strlen (tmp_pathspec) - 1; - while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) - p--; - if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) - { - /* no more DIR_SEPARATORS left */ - break; - } - *p = '\0'; - } - else - { - lt_fatal (__FILE__, __LINE__, - "error accessing file \"%s\": %s", - tmp_pathspec, nonnull (strerror (errno))); - } - } - XFREE (tmp_pathspec); - - if (!has_symlinks) - { - return xstrdup (pathspec); - } - - tmp_pathspec = realpath (pathspec, buf); - if (tmp_pathspec == 0) - { - lt_fatal (__FILE__, __LINE__, - "could not follow symlinks for %s", pathspec); - } - return xstrdup (tmp_pathspec); -#endif -} - -char * -strendzap (char *str, const char *pat) -{ - size_t len, patlen; - - assert (str != NULL); - assert (pat != NULL); - - len = strlen (str); - patlen = strlen (pat); - - if (patlen <= len) - { - str += len - patlen; - if (strcmp (str, pat) == 0) - *str = '\0'; - } - return str; -} - -void -lt_debugprintf (const char *file, int line, const char *fmt, ...) -{ - va_list args; - if (lt_debug) - { - (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); - va_start (args, fmt); - (void) vfprintf (stderr, fmt, args); - va_end (args); - } -} - -static void -lt_error_core (int exit_status, const char *file, - int line, const char *mode, - const char *message, va_list ap) -{ - fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); - vfprintf (stderr, message, ap); - fprintf (stderr, ".\n"); - - if (exit_status >= 0) - exit (exit_status); -} - -void -lt_fatal (const char *file, int line, const char *message, ...) -{ - va_list ap; - va_start (ap, message); - lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); - va_end (ap); -} - -static const char * -nonnull (const char *s) -{ - return s ? s : "(null)"; -} - -static const char * -nonempty (const char *s) -{ - return (s && !*s) ? "(empty)" : nonnull (s); -} - -void -lt_setenv (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_setenv) setting '%s' to '%s'\n", - nonnull (name), nonnull (value)); - { -#ifdef HAVE_SETENV - /* always make a copy, for consistency with !HAVE_SETENV */ - char *str = xstrdup (value); - setenv (name, str, 1); -#else - int len = strlen (name) + 1 + strlen (value) + 1; - char *str = XMALLOC (char, len); - sprintf (str, "%s=%s", name, value); - if (putenv (str) != EXIT_SUCCESS) - { - XFREE (str); - } -#endif - } -} - -char * -lt_extend_str (const char *orig_value, const char *add, int to_end) -{ - char *new_value; - if (orig_value && *orig_value) - { - int orig_value_len = strlen (orig_value); - int add_len = strlen (add); - new_value = XMALLOC (char, add_len + orig_value_len + 1); - if (to_end) - { - strcpy (new_value, orig_value); - strcpy (new_value + orig_value_len, add); - } - else - { - strcpy (new_value, add); - strcpy (new_value + add_len, orig_value); - } - } - else - { - new_value = xstrdup (add); - } - return new_value; -} - -void -lt_update_exe_path (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", - nonnull (name), nonnull (value)); - - if (name && *name && value && *value) - { - char *new_value = lt_extend_str (getenv (name), value, 0); - /* some systems can't cope with a ':'-terminated path #' */ - int len = strlen (new_value); - while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) - { - new_value[len-1] = '\0'; - } - lt_setenv (name, new_value); - XFREE (new_value); - } -} - -void -lt_update_lib_path (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", - nonnull (name), nonnull (value)); - - if (name && *name && value && *value) - { - char *new_value = lt_extend_str (getenv (name), value, 0); - lt_setenv (name, new_value); - XFREE (new_value); - } -} - - -/* Prepares an argument vector before calling spawn(). - Note that spawn() does not by itself call the command interpreter - (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : - ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); - GetVersionEx(&v); - v.dwPlatformId == VER_PLATFORM_WIN32_NT; - }) ? "cmd.exe" : "command.com"). - Instead it simply concatenates the arguments, separated by ' ', and calls - CreateProcess(). We must quote the arguments since Win32 CreateProcess() - interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a - special way: - - Space and tab are interpreted as delimiters. They are not treated as - delimiters if they are surrounded by double quotes: "...". - - Unescaped double quotes are removed from the input. Their only effect is - that within double quotes, space and tab are treated like normal - characters. - - Backslashes not followed by double quotes are not special. - - But 2*n+1 backslashes followed by a double quote become - n backslashes followed by a double quote (n >= 0): - \" -> " - \\\" -> \" - \\\\\" -> \\" - */ -#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" -#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" -char ** -prepare_spawn (char **argv) -{ - size_t argc; - char **new_argv; - size_t i; - - /* Count number of arguments. */ - for (argc = 0; argv[argc] != NULL; argc++) - ; - - /* Allocate new argument vector. */ - new_argv = XMALLOC (char *, argc + 1); - - /* Put quoted arguments into the new argument vector. */ - for (i = 0; i < argc; i++) - { - const char *string = argv[i]; - - if (string[0] == '\0') - new_argv[i] = xstrdup ("\"\""); - else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) - { - int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); - size_t length; - unsigned int backslashes; - const char *s; - char *quoted_string; - char *p; - - length = 0; - backslashes = 0; - if (quote_around) - length++; - for (s = string; *s != '\0'; s++) - { - char c = *s; - if (c == '"') - length += backslashes + 1; - length++; - if (c == '\\') - backslashes++; - else - backslashes = 0; - } - if (quote_around) - length += backslashes + 1; - - quoted_string = XMALLOC (char, length + 1); - - p = quoted_string; - backslashes = 0; - if (quote_around) - *p++ = '"'; - for (s = string; *s != '\0'; s++) - { - char c = *s; - if (c == '"') - { - unsigned int j; - for (j = backslashes + 1; j > 0; j--) - *p++ = '\\'; - } - *p++ = c; - if (c == '\\') - backslashes++; - else - backslashes = 0; - } - if (quote_around) - { - unsigned int j; - for (j = backslashes; j > 0; j--) - *p++ = '\\'; - *p++ = '"'; - } - *p = '\0'; - - new_argv[i] = quoted_string; - } - else - new_argv[i] = (char *) string; - } - new_argv[argc] = NULL; - - return new_argv; -} -void lt_dump_script (FILE* f) -{ - fputs ("#! /bin/sh\n", f); - fputs ("\n", f); - fputs ("# dtdquery - temporary wrapper script for .libs/dtdquery.exe\n", f); - fputs ("# Generated by libtool (GNU libtool) 2.4.2 Debian-2.4.2-1.11\n", f); - fputs ("#\n", f); - fputs ("# The dtdquery program cannot be directly executed until all the libtool\n", f); - fputs ("# libraries that it depends on are installed.\n", f); - fputs ("#\n", f); - fputs ("# This wrapper script should never be moved out of the build directory.\n", f); - fputs ("# If it is, it will not operate correctly.\n", f); - fputs ("\n", f); - fputs ("# Sed substitution that helps us do robust quoting. It backslashifies\n", f); - fputs ("# metacharacters that are still active within double-quoted strings.\n", f); - fputs ("sed_quote_subst='s/\\([`\"$\\\\]\\)/\\\\\\1/g'\n", f); - fputs ("\n", f); - fputs ("# Be Bourne compatible\n", f); - fputs ("if test -n \"${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then\n", f); - fputs (" emulate sh\n", f); - fputs (" NULLCMD=:\n", f); - fputs (" # Zsh 3.x and 4.x performs word splitting on ${1+\"$@\"}, which\n", f); - fputs (" # is contrary to our usage. Disable this feature.\n", f); - fputs (" alias -g '${1+\"$@\"}'='\"$@\"'\n", f); - fputs (" setopt NO_GLOB_SUBST\n", f); - fputs ("else\n", f); - fputs (" case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac\n", f); - fputs ("fi\n", f); - fputs ("BIN_SH=xpg4; export BIN_SH # for Tru64\n", f); - fputs ("DUALCASE=1; export DUALCASE # for MKS sh\n", f); - fputs ("\n", f); - fputs ("# The HP-UX ksh and POSIX shell print the target directory to stdout\n", f); - fputs ("# if CDPATH is set.\n", f); - fputs ("(unset CDPATH) >/dev/null 2>&1 && unset CDPATH\n", f); - fputs ("\n", f); - fputs ("relink_command=\"\"\n", f); - fputs ("\n", f); - fputs ("# This environment variable determines our operation mode.\n", f); - fputs ("if test \"$libtool_install_magic\" = \"%%%MAGIC variable%%%\"; then\n", f); - fputs (" # install mode needs the following variables:\n", f); - fputs (" generated_by_libtool_version='2.4.2'\n", f); - fputs (" notinst_deplibs=''\n", f); - fputs ("else\n", f); - fputs (" # When we are sourced in execute mode, $file and $ECHO are already set.\n", f); - fputs (" if test \"$libtool_execute_magic\" != \"%%%MAGIC variable%%%\"; then\n", f); - fputs (" file=\"$0\"\n", f); - fputs ("\n", f); - fputs ("# A function that is used when there is no print builtin or printf.\n", f); - fputs ("func_fallback_echo ()\n", f); - fputs ("{\n", f); - fputs (" eval 'cat <<_LTECHO_EOF\n", f); - fputs ("$1\n", f); - fputs ("_LTECHO_EOF'\n", f); - fputs ("}\n", f); - fputs (" ECHO=\"printf %s\\\\n\"\n", f); - fputs (" fi\n", f); - fputs ("\n", f); - fputs ("# Very basic option parsing. These options are (a) specific to\n", f); - fputs ("# the libtool wrapper, (b) are identical between the wrapper\n", f); - fputs ("# /script/ and the wrapper /executable/ which is used only on\n", f); - fputs ("# windows platforms, and (c) all begin with the string --lt-\n", f); - fputs ("# (application programs are unlikely to have options which match\n", f); - fputs ("# this pattern).\n", f); - fputs ("#\n", f); - fputs ("# There are only two supported options: --lt-debug and\n", f); - fputs ("# --lt-dump-script. There is, deliberately, no --lt-help.\n", f); - fputs ("#\n", f); - fputs ("# The first argument to this parsing function should be the\n", f); - fputs ("# script's ../libtool value, followed by yes.\n", f); - fputs ("lt_option_debug=\n", f); - fputs ("func_parse_lt_options ()\n", f); - fputs ("{\n", f); - fputs (" lt_script_arg0=$0\n", f); - fputs (" shift\n", f); - fputs (" for lt_opt\n", f); - fputs (" do\n", f); - fputs (" case \"$lt_opt\" in\n", f); - fputs (" --lt-debug) lt_option_debug=1 ;;\n", f); - fputs (" --lt-dump-script)\n", f); - fputs (" lt_dump_D=`$ECHO \"X$lt_script_arg0\" | /bin/sed -e 's/^X//' -e 's%/[^/]*", f); - fputs ("$%%'`\n", f); - fputs (" test \"X$lt_dump_D\" = \"X$lt_script_arg0\" && lt_dump_D=.\n", f); - fputs (" lt_dump_F=`$ECHO \"X$lt_script_arg0\" | /bin/sed -e 's/^X//' -e 's%^.*/%%", f); - fputs ("'`\n", f); - fputs (" cat \"$lt_dump_D/$lt_dump_F\"\n", f); - fputs (" exit 0\n", f); - fputs (" ;;\n", f); - fputs (" --lt-*)\n", f); - fputs (" $ECHO \"Unrecognized --lt- option: '$lt_opt'\" 1>&2\n", f); - fputs (" exit 1\n", f); - fputs (" ;;\n", f); - fputs (" esac\n", f); - fputs (" done\n", f); - fputs ("\n", f); - fputs (" # Print the debug banner immediately:\n", f); - fputs (" if test -n \"$lt_option_debug\"; then\n", f); - fputs (" echo \"dtdquery.exe:dtdquery:${LINENO}: libtool wrapper (GNU libtool) 2.4.2 ", f); - fputs ("Debian-2.4.2-1.11\" 1>&2\n", f); - fputs (" fi\n", f); - fputs ("}\n", f); - fputs ("\n", f); - fputs ("# Used when --lt-debug. Prints its arguments to stdout\n", f); - fputs ("# (redirection is the responsibility of the caller)\n", f); - fputs ("func_lt_dump_args ()\n", f); - fputs ("{\n", f); - fputs (" lt_dump_args_N=1;\n", f); - fputs (" for lt_arg\n", f); - fputs (" do\n", f); - fputs (" $ECHO \"dtdquery.exe:dtdquery:${LINENO}: newargv[$lt_dump_args_N]: $lt_arg\"\n", f); - fputs (" lt_dump_args_N=`expr $lt_dump_args_N + 1`\n", f); - fputs (" done\n", f); - fputs ("}\n", f); - fputs ("\n", f); - fputs ("# Core function for launching the target application\n", f); - fputs ("func_exec_program_core ()\n", f); - fputs ("{\n", f); - fputs ("\n", f); - fputs (" if test -n \"$lt_option_debug\"; then\n", f); - fputs (" $ECHO \"dtdquery.exe:dtdquery:${LINENO}: newargv[0]: $progdir/$program\" ", f); - fputs ("1>&2\n", f); - fputs (" func_lt_dump_args ${1+\"$@\"} 1>&2\n", f); - fputs (" fi\n", f); - fputs (" exec \"$progdir/$program\" ${1+\"$@\"}\n", f); - fputs ("\n", f); - fputs (" $ECHO \"$0: cannot exec $program $*\" 1>&2\n", f); - fputs (" exit 1\n", f); - fputs ("}\n", f); - fputs ("\n", f); - fputs ("# A function to encapsulate launching the target application\n", f); - fputs ("# Strips options in the --lt-* namespace from $@ and\n", f); - fputs ("# launches target application with the remaining arguments.\n", f); - fputs ("func_exec_program ()\n", f); - fputs ("{\n", f); - fputs (" case \" $* \" in\n", f); - fputs (" *\\ --lt-*)\n", f); - fputs (" for lt_wr_arg\n", f); - fputs (" do\n", f); - fputs (" case $lt_wr_arg in\n", f); - fputs (" --lt-*) ;;\n", f); - fputs (" *) set x \"$@\" \"$lt_wr_arg\"; shift;;\n", f); - fputs (" esac\n", f); - fputs (" shift\n", f); - fputs (" done ;;\n", f); - fputs (" esac\n", f); - fputs (" func_exec_program_core ${1+\"$@\"}\n", f); - fputs ("}\n", f); - fputs ("\n", f); - fputs (" # Parse options\n", f); - fputs (" func_parse_lt_options \"$0\" ${1+\"$@\"}\n", f); - fputs ("\n", f); - fputs (" # Find the directory that this script lives in.\n", f); - fputs (" thisdir=`$ECHO \"$file\" | /bin/sed 's%/[^/]*$%%'`\n", f); - fputs (" test \"x$thisdir\" = \"x$file\" && thisdir=.\n", f); - fputs ("\n", f); - fputs (" # Follow symbolic links until we get to the real thisdir.\n", f); - fputs (" file=`ls -ld \"$file\" | /bin/sed -n 's/.*-> //p'`\n", f); - fputs (" while test -n \"$file\"; do\n", f); - fputs (" destdir=`$ECHO \"$file\" | /bin/sed 's%/[^/]*$%%'`\n", f); - fputs ("\n", f); - fputs (" # If there was a directory component, then change thisdir.\n", f); - fputs (" if test \"x$destdir\" != \"x$file\"; then\n", f); - fputs (" case \"$destdir\" in\n", f); - fputs (" [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"$destdir\" ;;\n", f); - fputs (" *) thisdir=\"$thisdir/$destdir\" ;;\n", f); - fputs (" esac\n", f); - fputs (" fi\n", f); - fputs ("\n", f); - fputs (" file=`$ECHO \"$file\" | /bin/sed 's%^.*/%%'`\n", f); - fputs (" file=`ls -ld \"$thisdir/$file\" | /bin/sed -n 's/.*-> //p'`\n", f); - fputs (" done\n", f); - fputs ("\n", f); - fputs (" # Usually 'no', except on cygwin/mingw when embedded into\n", f); - fputs (" # the cwrapper.\n", f); - fputs (" WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=yes\n", f); - fputs (" if test \"$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then\n", f); - fputs (" # special case for '.'\n", f); - fputs (" if test \"$thisdir\" = \".\"; then\n", f); - fputs (" thisdir=`pwd`\n", f); - fputs (" fi\n", f); - fputs (" # remove .libs from thisdir\n", f); - fputs (" case \"$thisdir\" in\n", f); - fputs (" *[\\\\/].libs ) thisdir=`$ECHO \"$thisdir\" | /bin/sed 's%[\\\\/][^\\\\/]*$%%'` ;;\n", f); - fputs (" .libs ) thisdir=. ;;\n", f); - fputs (" esac\n", f); - fputs (" fi\n", f); - fputs ("\n", f); - fputs (" # Try to get the absolute directory name.\n", f); - fputs (" absdir=`cd \"$thisdir\" && pwd`\n", f); - fputs (" test -n \"$absdir\" && thisdir=\"$absdir\"\n", f); - fputs ("\n", f); - fputs (" program='dtdquery.exe'\n", f); - fputs (" progdir=\"$thisdir/.libs\"\n", f); - fputs ("\n", f); - fputs ("\n", f); - fputs (" if test -f \"$progdir/$program\"; then\n", f); - fputs (" if test \"$libtool_execute_magic\" != \"%%%MAGIC variable%%%\"; then\n", f); - fputs (" # Run the actual program with our arguments.\n", f); - fputs (" func_exec_program ${1+\"$@\"}\n", f); - fputs (" fi\n", f); - fputs (" else\n", f); - fputs (" # The program doesn't exist.\n", f); - fputs (" $ECHO \"$0: error: \\`$progdir/$program' does not exist\" 1>&2\n", f); - fputs (" $ECHO \"This script is just a wrapper for $program.\" 1>&2\n", f); - fputs (" $ECHO \"See the libtool documentation for more information.\" 1>&2\n", f); - fputs (" exit 1\n", f); - fputs (" fi\n", f); - fputs ("fi\n", f); -} diff --git a/html2xhtml-windows/.libs/lt-html2xhtml.c b/html2xhtml-windows/.libs/lt-html2xhtml.c deleted file mode 100644 index fbfc297..0000000 --- a/html2xhtml-windows/.libs/lt-html2xhtml.c +++ /dev/null @@ -1,1038 +0,0 @@ - -/* ./.libs/lt-html2xhtml.c - temporary wrapper executable for .libs/html2xhtml.exe - Generated by libtool (GNU libtool) 2.4.2 Debian-2.4.2-1.11 - - The html2xhtml program cannot be directly executed until all the libtool - libraries that it depends on are installed. - - This wrapper executable should never be moved out of the build directory. - If it is, it will not operate correctly. -*/ -#ifdef _MSC_VER -# define _CRT_SECURE_NO_DEPRECATE 1 -#endif -#include -#include -#ifdef _MSC_VER -# include -# include -# include -#else -# include -# include -# ifdef __CYGWIN__ -# include -# endif -#endif -#include -#include -#include -#include -#include -#include -#include -#include - -/* declarations of non-ANSI functions */ -#if defined(__MINGW32__) -# ifdef __STRICT_ANSI__ -int _putenv (const char *); -# endif -#elif defined(__CYGWIN__) -# ifdef __STRICT_ANSI__ -char *realpath (const char *, char *); -int putenv (char *); -int setenv (const char *, const char *, int); -# endif -/* #elif defined (other platforms) ... */ -#endif - -/* portability defines, excluding path handling macros */ -#if defined(_MSC_VER) -# define setmode _setmode -# define stat _stat -# define chmod _chmod -# define getcwd _getcwd -# define putenv _putenv -# define S_IXUSR _S_IEXEC -# ifndef _INTPTR_T_DEFINED -# define _INTPTR_T_DEFINED -# define intptr_t int -# endif -#elif defined(__MINGW32__) -# define setmode _setmode -# define stat _stat -# define chmod _chmod -# define getcwd _getcwd -# define putenv _putenv -#elif defined(__CYGWIN__) -# define HAVE_SETENV -# define FOPEN_WB "wb" -/* #elif defined (other platforms) ... */ -#endif - -#if defined(PATH_MAX) -# define LT_PATHMAX PATH_MAX -#elif defined(MAXPATHLEN) -# define LT_PATHMAX MAXPATHLEN -#else -# define LT_PATHMAX 1024 -#endif - -#ifndef S_IXOTH -# define S_IXOTH 0 -#endif -#ifndef S_IXGRP -# define S_IXGRP 0 -#endif - -/* path handling portability macros */ -#ifndef DIR_SEPARATOR -# define DIR_SEPARATOR '/' -# define PATH_SEPARATOR ':' -#endif - -#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ - defined (__OS2__) -# define HAVE_DOS_BASED_FILE_SYSTEM -# define FOPEN_WB "wb" -# ifndef DIR_SEPARATOR_2 -# define DIR_SEPARATOR_2 '\\' -# endif -# ifndef PATH_SEPARATOR_2 -# define PATH_SEPARATOR_2 ';' -# endif -#endif - -#ifndef DIR_SEPARATOR_2 -# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) -#else /* DIR_SEPARATOR_2 */ -# define IS_DIR_SEPARATOR(ch) \ - (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) -#endif /* DIR_SEPARATOR_2 */ - -#ifndef PATH_SEPARATOR_2 -# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) -#else /* PATH_SEPARATOR_2 */ -# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) -#endif /* PATH_SEPARATOR_2 */ - -#ifndef FOPEN_WB -# define FOPEN_WB "w" -#endif -#ifndef _O_BINARY -# define _O_BINARY 0 -#endif - -#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) -#define XFREE(stale) do { \ - if (stale) { free ((void *) stale); stale = 0; } \ -} while (0) - -#if defined(LT_DEBUGWRAPPER) -static int lt_debug = 1; -#else -static int lt_debug = 0; -#endif - -const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ - -void *xmalloc (size_t num); -char *xstrdup (const char *string); -const char *base_name (const char *name); -char *find_executable (const char *wrapper); -char *chase_symlinks (const char *pathspec); -int make_executable (const char *path); -int check_executable (const char *path); -char *strendzap (char *str, const char *pat); -void lt_debugprintf (const char *file, int line, const char *fmt, ...); -void lt_fatal (const char *file, int line, const char *message, ...); -static const char *nonnull (const char *s); -static const char *nonempty (const char *s); -void lt_setenv (const char *name, const char *value); -char *lt_extend_str (const char *orig_value, const char *add, int to_end); -void lt_update_exe_path (const char *name, const char *value); -void lt_update_lib_path (const char *name, const char *value); -char **prepare_spawn (char **argv); -void lt_dump_script (FILE *f); -volatile const char * MAGIC_EXE = "%%%MAGIC EXE variable%%%"; -const char * LIB_PATH_VARNAME = "PATH"; -const char * LIB_PATH_VALUE = ""; -const char * EXE_PATH_VARNAME = ""; -const char * EXE_PATH_VALUE = ""; -const char * TARGET_PROGRAM_NAME = "html2xhtml.exe"; /* hopefully, no .exe */ - -#define LTWRAPPER_OPTION_PREFIX "--lt-" - -static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX; -static const char *dumpscript_opt = LTWRAPPER_OPTION_PREFIX "dump-script"; -static const char *debug_opt = LTWRAPPER_OPTION_PREFIX "debug"; - -int -main (int argc, char *argv[]) -{ - char **newargz; - int newargc; - char *tmp_pathspec; - char *actual_cwrapper_path; - char *actual_cwrapper_name; - char *target_name; - char *lt_argv_zero; - intptr_t rval = 127; - - int i; - - program_name = (char *) xstrdup (base_name (argv[0])); - newargz = XMALLOC (char *, argc + 1); - - /* very simple arg parsing; don't want to rely on getopt - * also, copy all non cwrapper options to newargz, except - * argz[0], which is handled differently - */ - newargc=0; - for (i = 1; i < argc; i++) - { - if (strcmp (argv[i], dumpscript_opt) == 0) - { - setmode(1,_O_BINARY); - lt_dump_script (stdout); - return 0; - } - if (strcmp (argv[i], debug_opt) == 0) - { - lt_debug = 1; - continue; - } - if (strcmp (argv[i], ltwrapper_option_prefix) == 0) - { - /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX - namespace, but it is not one of the ones we know about and - have already dealt with, above (inluding dump-script), then - report an error. Otherwise, targets might begin to believe - they are allowed to use options in the LTWRAPPER_OPTION_PREFIX - namespace. The first time any user complains about this, we'll - need to make LTWRAPPER_OPTION_PREFIX a configure-time option - or a configure.ac-settable value. - */ - lt_fatal (__FILE__, __LINE__, - "unrecognized %s option: '%s'", - ltwrapper_option_prefix, argv[i]); - } - /* otherwise ... */ - newargz[++newargc] = xstrdup (argv[i]); - } - newargz[++newargc] = NULL; - - /* The GNU banner must be the first non-error debug message */ - lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU libtool) 2.4.2 Debian-2.4.2-1.11\n"); - lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]); - lt_debugprintf (__FILE__, __LINE__, "(main) program_name: %s\n", program_name); - - tmp_pathspec = find_executable (argv[0]); - if (tmp_pathspec == NULL) - lt_fatal (__FILE__, __LINE__, "couldn't find %s", argv[0]); - lt_debugprintf (__FILE__, __LINE__, - "(main) found exe (before symlink chase) at: %s\n", - tmp_pathspec); - - actual_cwrapper_path = chase_symlinks (tmp_pathspec); - lt_debugprintf (__FILE__, __LINE__, - "(main) found exe (after symlink chase) at: %s\n", - actual_cwrapper_path); - XFREE (tmp_pathspec); - - actual_cwrapper_name = xstrdup (base_name (actual_cwrapper_path)); - strendzap (actual_cwrapper_path, actual_cwrapper_name); - - /* wrapper name transforms */ - strendzap (actual_cwrapper_name, ".exe"); - tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1); - XFREE (actual_cwrapper_name); - actual_cwrapper_name = tmp_pathspec; - tmp_pathspec = 0; - - /* target_name transforms -- use actual target program name; might have lt- prefix */ - target_name = xstrdup (base_name (TARGET_PROGRAM_NAME)); - strendzap (target_name, ".exe"); - tmp_pathspec = lt_extend_str (target_name, ".exe", 1); - XFREE (target_name); - target_name = tmp_pathspec; - tmp_pathspec = 0; - - lt_debugprintf (__FILE__, __LINE__, - "(main) libtool target name: %s\n", - target_name); - newargz[0] = - XMALLOC (char, (strlen (actual_cwrapper_path) + - strlen (".libs") + 1 + strlen (actual_cwrapper_name) + 1)); - strcpy (newargz[0], actual_cwrapper_path); - strcat (newargz[0], ".libs"); - strcat (newargz[0], "/"); - /* stop here, and copy so we don't have to do this twice */ - tmp_pathspec = xstrdup (newargz[0]); - - /* do NOT want the lt- prefix here, so use actual_cwrapper_name */ - strcat (newargz[0], actual_cwrapper_name); - - /* DO want the lt- prefix here if it exists, so use target_name */ - lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1); - XFREE (tmp_pathspec); - tmp_pathspec = NULL; - { - char* p; - while ((p = strchr (newargz[0], '\\')) != NULL) - { - *p = '/'; - } - while ((p = strchr (lt_argv_zero, '\\')) != NULL) - { - *p = '/'; - } - } - XFREE (target_name); - XFREE (actual_cwrapper_path); - XFREE (actual_cwrapper_name); - - lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */ - lt_setenv ("DUALCASE", "1"); /* for MSK sh */ - /* Update the DLL searchpath. EXE_PATH_VALUE ($dllsearchpath) must - be prepended before (that is, appear after) LIB_PATH_VALUE ($temp_rpath) - because on Windows, both *_VARNAMEs are PATH but uninstalled - libraries must come first. */ - lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE); - lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE); - - lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n", - nonnull (lt_argv_zero)); - for (i = 0; i < newargc; i++) - { - lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n", - i, nonnull (newargz[i])); - } - - /* execv doesn't actually work on mingw as expected on unix */ - newargz = prepare_spawn (newargz); - rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz); - if (rval == -1) - { - /* failed to start process */ - lt_debugprintf (__FILE__, __LINE__, - "(main) failed to launch target \"%s\": %s\n", - lt_argv_zero, nonnull (strerror (errno))); - return 127; - } - return rval; -} - -void * -xmalloc (size_t num) -{ - void *p = (void *) malloc (num); - if (!p) - lt_fatal (__FILE__, __LINE__, "memory exhausted"); - - return p; -} - -char * -xstrdup (const char *string) -{ - return string ? strcpy ((char *) xmalloc (strlen (string) + 1), - string) : NULL; -} - -const char * -base_name (const char *name) -{ - const char *base; - -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - /* Skip over the disk name in MSDOS pathnames. */ - if (isalpha ((unsigned char) name[0]) && name[1] == ':') - name += 2; -#endif - - for (base = name; *name; name++) - if (IS_DIR_SEPARATOR (*name)) - base = name + 1; - return base; -} - -int -check_executable (const char *path) -{ - struct stat st; - - lt_debugprintf (__FILE__, __LINE__, "(check_executable): %s\n", - nonempty (path)); - if ((!path) || (!*path)) - return 0; - - if ((stat (path, &st) >= 0) - && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) - return 1; - else - return 0; -} - -int -make_executable (const char *path) -{ - int rval = 0; - struct stat st; - - lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", - nonempty (path)); - if ((!path) || (!*path)) - return 0; - - if (stat (path, &st) >= 0) - { - rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); - } - return rval; -} - -/* Searches for the full path of the wrapper. Returns - newly allocated full path name if found, NULL otherwise - Does not chase symlinks, even on platforms that support them. -*/ -char * -find_executable (const char *wrapper) -{ - int has_slash = 0; - const char *p; - const char *p_next; - /* static buffer for getcwd */ - char tmp[LT_PATHMAX + 1]; - int tmp_len; - char *concat_name; - - lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", - nonempty (wrapper)); - - if ((wrapper == NULL) || (*wrapper == '\0')) - return NULL; - - /* Absolute path? */ -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') - { - concat_name = xstrdup (wrapper); - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } - else - { -#endif - if (IS_DIR_SEPARATOR (wrapper[0])) - { - concat_name = xstrdup (wrapper); - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - } -#endif - - for (p = wrapper; *p; p++) - if (*p == '/') - { - has_slash = 1; - break; - } - if (!has_slash) - { - /* no slashes; search PATH */ - const char *path = getenv ("PATH"); - if (path != NULL) - { - for (p = path; *p; p = p_next) - { - const char *q; - size_t p_len; - for (q = p; *q; q++) - if (IS_PATH_SEPARATOR (*q)) - break; - p_len = q - p; - p_next = (*q == '\0' ? q : q + 1); - if (p_len == 0) - { - /* empty path: current directory */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", - nonnull (strerror (errno))); - tmp_len = strlen (tmp); - concat_name = - XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, tmp, tmp_len); - concat_name[tmp_len] = '/'; - strcpy (concat_name + tmp_len + 1, wrapper); - } - else - { - concat_name = - XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, p, p_len); - concat_name[p_len] = '/'; - strcpy (concat_name + p_len + 1, wrapper); - } - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } - } - /* not found in PATH; assume curdir */ - } - /* Relative path | not found in path: prepend cwd */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", - nonnull (strerror (errno))); - tmp_len = strlen (tmp); - concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, tmp, tmp_len); - concat_name[tmp_len] = '/'; - strcpy (concat_name + tmp_len + 1, wrapper); - - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - return NULL; -} - -char * -chase_symlinks (const char *pathspec) -{ -#ifndef S_ISLNK - return xstrdup (pathspec); -#else - char buf[LT_PATHMAX]; - struct stat s; - char *tmp_pathspec = xstrdup (pathspec); - char *p; - int has_symlinks = 0; - while (strlen (tmp_pathspec) && !has_symlinks) - { - lt_debugprintf (__FILE__, __LINE__, - "checking path component for symlinks: %s\n", - tmp_pathspec); - if (lstat (tmp_pathspec, &s) == 0) - { - if (S_ISLNK (s.st_mode) != 0) - { - has_symlinks = 1; - break; - } - - /* search backwards for last DIR_SEPARATOR */ - p = tmp_pathspec + strlen (tmp_pathspec) - 1; - while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) - p--; - if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) - { - /* no more DIR_SEPARATORS left */ - break; - } - *p = '\0'; - } - else - { - lt_fatal (__FILE__, __LINE__, - "error accessing file \"%s\": %s", - tmp_pathspec, nonnull (strerror (errno))); - } - } - XFREE (tmp_pathspec); - - if (!has_symlinks) - { - return xstrdup (pathspec); - } - - tmp_pathspec = realpath (pathspec, buf); - if (tmp_pathspec == 0) - { - lt_fatal (__FILE__, __LINE__, - "could not follow symlinks for %s", pathspec); - } - return xstrdup (tmp_pathspec); -#endif -} - -char * -strendzap (char *str, const char *pat) -{ - size_t len, patlen; - - assert (str != NULL); - assert (pat != NULL); - - len = strlen (str); - patlen = strlen (pat); - - if (patlen <= len) - { - str += len - patlen; - if (strcmp (str, pat) == 0) - *str = '\0'; - } - return str; -} - -void -lt_debugprintf (const char *file, int line, const char *fmt, ...) -{ - va_list args; - if (lt_debug) - { - (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); - va_start (args, fmt); - (void) vfprintf (stderr, fmt, args); - va_end (args); - } -} - -static void -lt_error_core (int exit_status, const char *file, - int line, const char *mode, - const char *message, va_list ap) -{ - fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); - vfprintf (stderr, message, ap); - fprintf (stderr, ".\n"); - - if (exit_status >= 0) - exit (exit_status); -} - -void -lt_fatal (const char *file, int line, const char *message, ...) -{ - va_list ap; - va_start (ap, message); - lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); - va_end (ap); -} - -static const char * -nonnull (const char *s) -{ - return s ? s : "(null)"; -} - -static const char * -nonempty (const char *s) -{ - return (s && !*s) ? "(empty)" : nonnull (s); -} - -void -lt_setenv (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_setenv) setting '%s' to '%s'\n", - nonnull (name), nonnull (value)); - { -#ifdef HAVE_SETENV - /* always make a copy, for consistency with !HAVE_SETENV */ - char *str = xstrdup (value); - setenv (name, str, 1); -#else - int len = strlen (name) + 1 + strlen (value) + 1; - char *str = XMALLOC (char, len); - sprintf (str, "%s=%s", name, value); - if (putenv (str) != EXIT_SUCCESS) - { - XFREE (str); - } -#endif - } -} - -char * -lt_extend_str (const char *orig_value, const char *add, int to_end) -{ - char *new_value; - if (orig_value && *orig_value) - { - int orig_value_len = strlen (orig_value); - int add_len = strlen (add); - new_value = XMALLOC (char, add_len + orig_value_len + 1); - if (to_end) - { - strcpy (new_value, orig_value); - strcpy (new_value + orig_value_len, add); - } - else - { - strcpy (new_value, add); - strcpy (new_value + add_len, orig_value); - } - } - else - { - new_value = xstrdup (add); - } - return new_value; -} - -void -lt_update_exe_path (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", - nonnull (name), nonnull (value)); - - if (name && *name && value && *value) - { - char *new_value = lt_extend_str (getenv (name), value, 0); - /* some systems can't cope with a ':'-terminated path #' */ - int len = strlen (new_value); - while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) - { - new_value[len-1] = '\0'; - } - lt_setenv (name, new_value); - XFREE (new_value); - } -} - -void -lt_update_lib_path (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", - nonnull (name), nonnull (value)); - - if (name && *name && value && *value) - { - char *new_value = lt_extend_str (getenv (name), value, 0); - lt_setenv (name, new_value); - XFREE (new_value); - } -} - - -/* Prepares an argument vector before calling spawn(). - Note that spawn() does not by itself call the command interpreter - (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : - ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); - GetVersionEx(&v); - v.dwPlatformId == VER_PLATFORM_WIN32_NT; - }) ? "cmd.exe" : "command.com"). - Instead it simply concatenates the arguments, separated by ' ', and calls - CreateProcess(). We must quote the arguments since Win32 CreateProcess() - interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a - special way: - - Space and tab are interpreted as delimiters. They are not treated as - delimiters if they are surrounded by double quotes: "...". - - Unescaped double quotes are removed from the input. Their only effect is - that within double quotes, space and tab are treated like normal - characters. - - Backslashes not followed by double quotes are not special. - - But 2*n+1 backslashes followed by a double quote become - n backslashes followed by a double quote (n >= 0): - \" -> " - \\\" -> \" - \\\\\" -> \\" - */ -#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" -#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" -char ** -prepare_spawn (char **argv) -{ - size_t argc; - char **new_argv; - size_t i; - - /* Count number of arguments. */ - for (argc = 0; argv[argc] != NULL; argc++) - ; - - /* Allocate new argument vector. */ - new_argv = XMALLOC (char *, argc + 1); - - /* Put quoted arguments into the new argument vector. */ - for (i = 0; i < argc; i++) - { - const char *string = argv[i]; - - if (string[0] == '\0') - new_argv[i] = xstrdup ("\"\""); - else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) - { - int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); - size_t length; - unsigned int backslashes; - const char *s; - char *quoted_string; - char *p; - - length = 0; - backslashes = 0; - if (quote_around) - length++; - for (s = string; *s != '\0'; s++) - { - char c = *s; - if (c == '"') - length += backslashes + 1; - length++; - if (c == '\\') - backslashes++; - else - backslashes = 0; - } - if (quote_around) - length += backslashes + 1; - - quoted_string = XMALLOC (char, length + 1); - - p = quoted_string; - backslashes = 0; - if (quote_around) - *p++ = '"'; - for (s = string; *s != '\0'; s++) - { - char c = *s; - if (c == '"') - { - unsigned int j; - for (j = backslashes + 1; j > 0; j--) - *p++ = '\\'; - } - *p++ = c; - if (c == '\\') - backslashes++; - else - backslashes = 0; - } - if (quote_around) - { - unsigned int j; - for (j = backslashes; j > 0; j--) - *p++ = '\\'; - *p++ = '"'; - } - *p = '\0'; - - new_argv[i] = quoted_string; - } - else - new_argv[i] = (char *) string; - } - new_argv[argc] = NULL; - - return new_argv; -} -void lt_dump_script (FILE* f) -{ - fputs ("#! /bin/sh\n", f); - fputs ("\n", f); - fputs ("# html2xhtml - temporary wrapper script for .libs/html2xhtml.exe\n", f); - fputs ("# Generated by libtool (GNU libtool) 2.4.2 Debian-2.4.2-1.11\n", f); - fputs ("#\n", f); - fputs ("# The html2xhtml program cannot be directly executed until all the libtool\n", f); - fputs ("# libraries that it depends on are installed.\n", f); - fputs ("#\n", f); - fputs ("# This wrapper script should never be moved out of the build directory.\n", f); - fputs ("# If it is, it will not operate correctly.\n", f); - fputs ("\n", f); - fputs ("# Sed substitution that helps us do robust quoting. It backslashifies\n", f); - fputs ("# metacharacters that are still active within double-quoted strings.\n", f); - fputs ("sed_quote_subst='s/\\([`\"$\\\\]\\)/\\\\\\1/g'\n", f); - fputs ("\n", f); - fputs ("# Be Bourne compatible\n", f); - fputs ("if test -n \"${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then\n", f); - fputs (" emulate sh\n", f); - fputs (" NULLCMD=:\n", f); - fputs (" # Zsh 3.x and 4.x performs word splitting on ${1+\"$@\"}, which\n", f); - fputs (" # is contrary to our usage. Disable this feature.\n", f); - fputs (" alias -g '${1+\"$@\"}'='\"$@\"'\n", f); - fputs (" setopt NO_GLOB_SUBST\n", f); - fputs ("else\n", f); - fputs (" case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac\n", f); - fputs ("fi\n", f); - fputs ("BIN_SH=xpg4; export BIN_SH # for Tru64\n", f); - fputs ("DUALCASE=1; export DUALCASE # for MKS sh\n", f); - fputs ("\n", f); - fputs ("# The HP-UX ksh and POSIX shell print the target directory to stdout\n", f); - fputs ("# if CDPATH is set.\n", f); - fputs ("(unset CDPATH) >/dev/null 2>&1 && unset CDPATH\n", f); - fputs ("\n", f); - fputs ("relink_command=\"\"\n", f); - fputs ("\n", f); - fputs ("# This environment variable determines our operation mode.\n", f); - fputs ("if test \"$libtool_install_magic\" = \"%%%MAGIC variable%%%\"; then\n", f); - fputs (" # install mode needs the following variables:\n", f); - fputs (" generated_by_libtool_version='2.4.2'\n", f); - fputs (" notinst_deplibs=''\n", f); - fputs ("else\n", f); - fputs (" # When we are sourced in execute mode, $file and $ECHO are already set.\n", f); - fputs (" if test \"$libtool_execute_magic\" != \"%%%MAGIC variable%%%\"; then\n", f); - fputs (" file=\"$0\"\n", f); - fputs ("\n", f); - fputs ("# A function that is used when there is no print builtin or printf.\n", f); - fputs ("func_fallback_echo ()\n", f); - fputs ("{\n", f); - fputs (" eval 'cat <<_LTECHO_EOF\n", f); - fputs ("$1\n", f); - fputs ("_LTECHO_EOF'\n", f); - fputs ("}\n", f); - fputs (" ECHO=\"printf %s\\\\n\"\n", f); - fputs (" fi\n", f); - fputs ("\n", f); - fputs ("# Very basic option parsing. These options are (a) specific to\n", f); - fputs ("# the libtool wrapper, (b) are identical between the wrapper\n", f); - fputs ("# /script/ and the wrapper /executable/ which is used only on\n", f); - fputs ("# windows platforms, and (c) all begin with the string --lt-\n", f); - fputs ("# (application programs are unlikely to have options which match\n", f); - fputs ("# this pattern).\n", f); - fputs ("#\n", f); - fputs ("# There are only two supported options: --lt-debug and\n", f); - fputs ("# --lt-dump-script. There is, deliberately, no --lt-help.\n", f); - fputs ("#\n", f); - fputs ("# The first argument to this parsing function should be the\n", f); - fputs ("# script's ../libtool value, followed by yes.\n", f); - fputs ("lt_option_debug=\n", f); - fputs ("func_parse_lt_options ()\n", f); - fputs ("{\n", f); - fputs (" lt_script_arg0=$0\n", f); - fputs (" shift\n", f); - fputs (" for lt_opt\n", f); - fputs (" do\n", f); - fputs (" case \"$lt_opt\" in\n", f); - fputs (" --lt-debug) lt_option_debug=1 ;;\n", f); - fputs (" --lt-dump-script)\n", f); - fputs (" lt_dump_D=`$ECHO \"X$lt_script_arg0\" | /bin/sed -e 's/^X//' -e 's%/[^/]*", f); - fputs ("$%%'`\n", f); - fputs (" test \"X$lt_dump_D\" = \"X$lt_script_arg0\" && lt_dump_D=.\n", f); - fputs (" lt_dump_F=`$ECHO \"X$lt_script_arg0\" | /bin/sed -e 's/^X//' -e 's%^.*/%%", f); - fputs ("'`\n", f); - fputs (" cat \"$lt_dump_D/$lt_dump_F\"\n", f); - fputs (" exit 0\n", f); - fputs (" ;;\n", f); - fputs (" --lt-*)\n", f); - fputs (" $ECHO \"Unrecognized --lt- option: '$lt_opt'\" 1>&2\n", f); - fputs (" exit 1\n", f); - fputs (" ;;\n", f); - fputs (" esac\n", f); - fputs (" done\n", f); - fputs ("\n", f); - fputs (" # Print the debug banner immediately:\n", f); - fputs (" if test -n \"$lt_option_debug\"; then\n", f); - fputs (" echo \"html2xhtml.exe:html2xhtml:${LINENO}: libtool wrapper (GNU libtool) 2.", f); - fputs ("4.2 Debian-2.4.2-1.11\" 1>&2\n", f); - fputs (" fi\n", f); - fputs ("}\n", f); - fputs ("\n", f); - fputs ("# Used when --lt-debug. Prints its arguments to stdout\n", f); - fputs ("# (redirection is the responsibility of the caller)\n", f); - fputs ("func_lt_dump_args ()\n", f); - fputs ("{\n", f); - fputs (" lt_dump_args_N=1;\n", f); - fputs (" for lt_arg\n", f); - fputs (" do\n", f); - fputs (" $ECHO \"html2xhtml.exe:html2xhtml:${LINENO}: newargv[$lt_dump_args_N]: $lt_a", f); - fputs ("rg\"\n", f); - fputs (" lt_dump_args_N=`expr $lt_dump_args_N + 1`\n", f); - fputs (" done\n", f); - fputs ("}\n", f); - fputs ("\n", f); - fputs ("# Core function for launching the target application\n", f); - fputs ("func_exec_program_core ()\n", f); - fputs ("{\n", f); - fputs ("\n", f); - fputs (" if test -n \"$lt_option_debug\"; then\n", f); - fputs (" $ECHO \"html2xhtml.exe:html2xhtml:${LINENO}: newargv[0]: $progdir/$progr", f); - fputs ("am\" 1>&2\n", f); - fputs (" func_lt_dump_args ${1+\"$@\"} 1>&2\n", f); - fputs (" fi\n", f); - fputs (" exec \"$progdir/$program\" ${1+\"$@\"}\n", f); - fputs ("\n", f); - fputs (" $ECHO \"$0: cannot exec $program $*\" 1>&2\n", f); - fputs (" exit 1\n", f); - fputs ("}\n", f); - fputs ("\n", f); - fputs ("# A function to encapsulate launching the target application\n", f); - fputs ("# Strips options in the --lt-* namespace from $@ and\n", f); - fputs ("# launches target application with the remaining arguments.\n", f); - fputs ("func_exec_program ()\n", f); - fputs ("{\n", f); - fputs (" case \" $* \" in\n", f); - fputs (" *\\ --lt-*)\n", f); - fputs (" for lt_wr_arg\n", f); - fputs (" do\n", f); - fputs (" case $lt_wr_arg in\n", f); - fputs (" --lt-*) ;;\n", f); - fputs (" *) set x \"$@\" \"$lt_wr_arg\"; shift;;\n", f); - fputs (" esac\n", f); - fputs (" shift\n", f); - fputs (" done ;;\n", f); - fputs (" esac\n", f); - fputs (" func_exec_program_core ${1+\"$@\"}\n", f); - fputs ("}\n", f); - fputs ("\n", f); - fputs (" # Parse options\n", f); - fputs (" func_parse_lt_options \"$0\" ${1+\"$@\"}\n", f); - fputs ("\n", f); - fputs (" # Find the directory that this script lives in.\n", f); - fputs (" thisdir=`$ECHO \"$file\" | /bin/sed 's%/[^/]*$%%'`\n", f); - fputs (" test \"x$thisdir\" = \"x$file\" && thisdir=.\n", f); - fputs ("\n", f); - fputs (" # Follow symbolic links until we get to the real thisdir.\n", f); - fputs (" file=`ls -ld \"$file\" | /bin/sed -n 's/.*-> //p'`\n", f); - fputs (" while test -n \"$file\"; do\n", f); - fputs (" destdir=`$ECHO \"$file\" | /bin/sed 's%/[^/]*$%%'`\n", f); - fputs ("\n", f); - fputs (" # If there was a directory component, then change thisdir.\n", f); - fputs (" if test \"x$destdir\" != \"x$file\"; then\n", f); - fputs (" case \"$destdir\" in\n", f); - fputs (" [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"$destdir\" ;;\n", f); - fputs (" *) thisdir=\"$thisdir/$destdir\" ;;\n", f); - fputs (" esac\n", f); - fputs (" fi\n", f); - fputs ("\n", f); - fputs (" file=`$ECHO \"$file\" | /bin/sed 's%^.*/%%'`\n", f); - fputs (" file=`ls -ld \"$thisdir/$file\" | /bin/sed -n 's/.*-> //p'`\n", f); - fputs (" done\n", f); - fputs ("\n", f); - fputs (" # Usually 'no', except on cygwin/mingw when embedded into\n", f); - fputs (" # the cwrapper.\n", f); - fputs (" WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=yes\n", f); - fputs (" if test \"$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then\n", f); - fputs (" # special case for '.'\n", f); - fputs (" if test \"$thisdir\" = \".\"; then\n", f); - fputs (" thisdir=`pwd`\n", f); - fputs (" fi\n", f); - fputs (" # remove .libs from thisdir\n", f); - fputs (" case \"$thisdir\" in\n", f); - fputs (" *[\\\\/].libs ) thisdir=`$ECHO \"$thisdir\" | /bin/sed 's%[\\\\/][^\\\\/]*$%%'` ;;\n", f); - fputs (" .libs ) thisdir=. ;;\n", f); - fputs (" esac\n", f); - fputs (" fi\n", f); - fputs ("\n", f); - fputs (" # Try to get the absolute directory name.\n", f); - fputs (" absdir=`cd \"$thisdir\" && pwd`\n", f); - fputs (" test -n \"$absdir\" && thisdir=\"$absdir\"\n", f); - fputs ("\n", f); - fputs (" program='html2xhtml.exe'\n", f); - fputs (" progdir=\"$thisdir/.libs\"\n", f); - fputs ("\n", f); - fputs ("\n", f); - fputs (" if test -f \"$progdir/$program\"; then\n", f); - fputs (" if test \"$libtool_execute_magic\" != \"%%%MAGIC variable%%%\"; then\n", f); - fputs (" # Run the actual program with our arguments.\n", f); - fputs (" func_exec_program ${1+\"$@\"}\n", f); - fputs (" fi\n", f); - fputs (" else\n", f); - fputs (" # The program doesn't exist.\n", f); - fputs (" $ECHO \"$0: error: \\`$progdir/$program' does not exist\" 1>&2\n", f); - fputs (" $ECHO \"This script is just a wrapper for $program.\" 1>&2\n", f); - fputs (" $ECHO \"See the libtool documentation for more information.\" 1>&2\n", f); - fputs (" exit 1\n", f); - fputs (" fi\n", f); - fputs ("fi\n", f); -} diff --git a/src/file_system_crap.rs b/src/file_system_crap.rs index 0f48e2d..598ca47 100644 --- a/src/file_system_crap.rs +++ b/src/file_system_crap.rs @@ -29,8 +29,8 @@ pub fn remove_illegal_chars(mut string: String) -> String { /// Setup html2xhtml in the operating system's temp directory. pub fn setup_html2xhtml() -> TempDir { - #[cfg(target_os = "windows")] { - const HTML2XHTML: &[u8; 268299] = include_bytes!("../html2xhtml-windows.zip"); // This will not compile on windows due to this and no I don't give a shit. + #[cfg(target_os = "linux")] { + const HTML2XHTML: &[u8; 245025] = include_bytes!("../html2xhtml-windows.zip"); // This will not compile on windows due to this and no I don't give a shit. // Compile it on linux for windows like a sane person. let html2xhtml_dir = match TempDir::new("html2xhtml-windows") { Ok(temp_dir) => temp_dir,