# Process this file with autoconf to produce a configure script.
-AC_INIT([LHa for UNIX], 1.14i-ac20061008, 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])
AC_STRUCT_TIMEZONE
AC_CHECK_SIZEOF(long)
+AC_CHECK_SIZEOF(off_t)
AC_CHECK_TYPES([uid_t, gid_t, long long, uint64_t, ssize_t])
AC_CHECK_MEMBERS([struct tm.tm_gmtoff, struct stat.st_ino],,,
[
# 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
-# enable this option if you need to ignore '.file' files
-# (mainly for the Mac OS X) *experimental*
-AC_MSG_CHECKING(whether enable -X option which ignore dot files)
-AC_ARG_ENABLE(ignore-dot-files,
- AC_HELP_STRING([--enable-ignore-dot-files],
- [enable -X option [[default=no]]]),
+# 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])],
,
- # default
- enable_ignore_dot_files=no)
+ with_additional_suffixes="")
-AC_MSG_RESULT($enable_ignore_dot_files)
-if test "x$enable_ignore_dot_files" = xyes; then
- AC_DEFINE(IGNORE_DOT_FILES, 1,
- [Define to 1 if you want to ignore dot files with -X command line switch])
-fi
+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
+case $host_os in
*msdosdjgpp*)
CFLAGS="$CFLAGS -DNOT_COMPATIBLE_MODE"
;;