# Process this file with autoconf to produce a configure script.
-AC_INIT([LHa for UNIX], 1.14i-ac20070904, arai@users.sourceforge.jp, lha)
+AC_INIT([LHa for UNIX], 1.14i-ac20081023, arai@users.sourceforge.jp, lha)
+AC_DEFINE_UNQUOTED(LHA_CONFIGURE_OPTIONS, "$ac_configure_args",
+ [specified options for the configure script.])
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE
AC_PROG_INSTALL
AC_PROG_MAKE_SET
AC_MINIX
-AM_C_PROTOTYPES
AC_SYS_LARGEFILE
-AC_CHECK_PROGS(sh_for_lha_test, [zsh bash ksh pdksh], [sh])
+dnl Workaround for Zsh bug? on Cygwin:
+dnl
+dnl Environment to trouble
+dnl Cygwin version 1.1.5.25
+dnl Zsh version 4.3.4
+dnl
+dnl Examples:
+dnl
+dnl o One machine(no problem)
+dnl $ uname -srvmpio
+dnl -> CYGWIN_NT-5.1 1.5.25(0.156/4/2) 2007-12-09 09:47 i686 unknown unknown Cygwin
+dnl $ zsh -c 'echo | diff - /dev/null' >/dev/null
+dnl -> $? set to 1
+dnl o Another machine(problem)
+dnl $ uname -srvmpio
+dnl -> CYGWIN_NT-5.1 1.5.25(0.156/4/2) 2008-05-26 20:37 i686 unknown unknown Cygwin
+dnl zsh -c 'echo | diff - /dev/null' >/dev/null
+dnl -> diff: -: Illegal seek
+dnl -> $? set to 2
+dnl
+dnl I don't know why this problem happend.
+dnl
+# AC_CHECK_PROGS(sh_for_lha_test, [zsh bash ksh pdksh], [sh])
+AC_CACHE_VAL([lha_cv_prog_sh_for_lha_test],[
+AC_CHECK_PROG(sh_for_lha_test, [zsh], [zsh])
+
+if test -n "$sh_for_lha_test"; then
+ $sh_for_lha_test -c 'echo | diff - /dev/null' >/dev/null 2>&1
+ if test $? -eq 2; then
+ sh_for_lha_test='' # cannot use Zsh
+ $as_unset ac_cv_prog_sh_for_lha_test
+ fi
+fi
+
+if test -z "$sh_for_lha_test"; then
+ AC_CHECK_PROGS(sh_for_lha_test, [bash ksh pdksh], [sh])
+fi
+])
# Checks for libraries.
AC_SEARCH_LIBS(opendir, [mingwex])
# whether use the -lh567- method
AC_MSG_CHECKING(default archive method)
AC_ARG_WITH(default-method,
- AC_HELP_STRING([--with-default-method=[[567]]],
- [create the -lh[[567]]- archive default [[default=5]]]),
+ [AC_HELP_STRING([[[[--with-default-method=[567]]]]],
+ [create the -lh[567]- archive default [default=5]])],
[case $withval in
- [567]) ;;
- *) AC_MSG_ERROR(you should have specified 5, 6 or 7);;
+ [[567]]) ;;
+ *) AC_MSG_ERROR([you should have specified 5, 6 or 7]);;
esac],
with_default_method=5)
AC_MSG_RESULT(-lh$with_default_method-)
[Define to 1 if you want to leave an old archive])
fi
-case $host_os in
+# additional suffixes of archive filename.
+AC_MSG_CHECKING(additional suffixes of archive filename)
+AC_ARG_WITH(additional-suffixes,
+ [AC_HELP_STRING([[[--with-additional-suffixes=foo,bar]]],
+ [additional suffixes of archive filename, default is empty string])],
+ ,
+ with_additional_suffixes="")
+
+AC_MSG_RESULT($with_additional_suffixes)
+AC_DEFINE_UNQUOTED(ADDITIONAL_SUFFIXES, "$with_additional_suffixes",
+ [Define to comma separated suffixes list if you wish to regard it as implicit archive suffixes.])
+
+case $host_os in
*msdosdjgpp*)
CFLAGS="$CFLAGS -DNOT_COMPATIBLE_MODE"
;;