2 dnl Configure.in file for the Midnight Commander
5 AC_INIT([GNU Midnight Commander], [], [mc-devel@gnome.org])
8 AC_CONFIG_MACRO_DIR([m4])
9 AC_CONFIG_SRCDIR(src/main.c)
10 AC_CONFIG_AUX_DIR(config)
12 AM_INIT_AUTOMAKE(mc, ${VERSION} )
16 AC_SUBST(LIBMC_VERSION)
17 AC_SUBST(LIBMC_RELEASE)
19 dnl Enable silent rules by default (if yes)
20 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
22 AM_CONFIG_HEADER(config.h)
26 AC_USE_SYSTEM_EXTENSIONS
28 AC_DEFINE_UNQUOTED([MC_CONFIGURE_ARGS],["$ac_configure_args"],[MC configure arguments])
32 AC_PATH_PROG([PERL], [perl], [/usr/bin/perl])
49 DX_INIT_DOXYGEN(mc,doxygen.cfg,devel)
51 dnl PKG_CHECK_MODULES([CHECK], [check >= 0.9.4])
55 AC_ARG_ENABLE([mclib],
56 [AS_HELP_STRING([--enable-mclib], [Compile shared library libmc.so @<:@no@:>@])],
58 if test "x$enableval" = "xno" ; then
61 if test "x$enable_shared" = "xno" ; then
62 AC_MSG_WARN([Build of shared library is disabled. Specify --enable-shared first])
71 AM_CONDITIONAL([ENABLE_MCLIB], [test x$enable_mclib = xyes])
78 AC_CHECK_TOOL(AR, ar, ar)
80 dnl Only list browsers here that can be run in background (i.e. with `&')
81 AC_CHECK_PROGS(X11_WWW, [gnome-moz-remote mozilla konqueror opera netscape])
84 dnl Ovverriding mmap support. This has to be before AC_FUNC_MMAP is used.
85 dnl We use only part of the functionality of mmap, so on AIX,
86 dnl it's possible to use mmap, even if it doesn't pass the autoconf test.
89 [ --with-mmap Use the mmap call [[yes if found]]])
90 if test x$with_mmap != xno; then
91 if test x$with_mmap = x; then
94 AC_DEFINE(HAVE_MMAP, 1)
99 dnl Internationalization
101 AM_GNU_GETTEXT(no-libtool, need-ngettext)
102 AM_GNU_GETTEXT_VERSION(0.14.3)
104 if test "x$USE_INCLUDED_LIBINTL" = xyes; then
105 CPPFLAGS="$CPPFLAGS -I\$(top_builddir)/intl -I\$(top_srcdir)/intl"
108 dnl Determine which help translations we want to install.
109 ALL_DOC_LINGUAS="es hu it pl ru sr"
112 if test "x$USE_NLS" = xyes; then
113 if test -z "$LINGUAS"; then
114 langs="`grep -v '^#' $srcdir/po/LINGUAS`"
122 for h_lang in $ALL_DOC_LINGUAS; do
123 for lang in $langs; do
124 if test "$lang" = "$h_lang"; then
125 DOC_LINGUAS="$DOC_LINGUAS $lang"
130 AC_SUBST(DOC_LINGUAS)
133 dnl OS specific flags.
139 AC_DEFINE(_POSIX_SOURCE)
144 AC_CHECK_HEADERS([unistd.h string.h memory.h limits.h malloc.h \
145 utime.h fcntl.h sys/statfs.h sys/vfs.h sys/time.h \
146 sys/timeb.h sys/select.h sys/ioctl.h stropts.h arpa/inet.h \
147 security/pam_misc.h sys/socket.h sys/sysmacros.h sys/types.h \
148 sys/mkdev.h wchar.h wctype.h])
154 dnl Missing structure components
155 AC_CHECK_MEMBERS([struct stat.st_blksize, struct stat.st_rdev])
159 dnl Check availability of some functions
166 setreuid statfs sysconf \
167 tcgetattr tcsetattr truncate \
174 dnl getpt is a GNU Extension (glibc 2.1.x)
176 AC_CHECK_FUNCS(posix_openpt, , [AC_CHECK_FUNCS(getpt)])
177 AC_CHECK_FUNCS(grantpt, , [AC_CHECK_LIB(pt, grantpt)])
179 dnl replacing lstat with statlstat on sco makes it more portable between
181 AC_CHECK_FUNCS(statlstat)
184 dnl If running under AIX, AC_AIX does not tell us that
186 AC_MSG_CHECKING([for AIX defines])
188 [#if defined(AIX) || defined(_AIX) || defined(__aix__) || defined(aix)
192 AC_DEFINE(IS_AIX, 1, [Define if compiling for AIX])
194 ], [AC_MSG_RESULT(no)])
197 dnl This is from GNU fileutils, check aclocal.m4 for more information
202 dnl Missing typedefs and replacements
205 AC_CHECK_SIZEOF(long)
206 AC_CHECK_SIZEOF(long long)
209 AC_CHECK_SIZEOF(off_t)
218 dnl Used to read keyboard modifiers when running under X11.
222 dnl Check if the gmodule functionality supported on this system.
223 AC_G_MODULE_SUPPORTED
226 dnl Sequent wants getprocessstats
228 AC_CHECK_LIB(seq, get_process_stats, [
230 AC_DEFINE(HAVE_GET_PROCESS_STATS, 1,
231 [Define if you have function `get_process_stats' and
232 have to use that instead of gettimeofday])])
237 dnl Check for gpm mouse support (Linux only)
239 mouse_lib="xterm only"
240 AC_ARG_WITH(gpm-mouse,
241 [ --with-gpm-mouse Compile with gpm mouse support (Linux only)
246 if test x$with_gpm_mouse != xno; then
247 AC_CHECK_LIB(gpm, Gpm_Repeat,
248 [AC_DEFINE(HAVE_LIBGPM, 1,
249 [Define to enable gpm mouse support on Linux])
250 mouse_lib="gpm and xterm"
251 MCLIBS="$MCLIBS -lgpm"],
252 if test "x$with_gpm_mouse" = "xyes"; then
253 [AC_MSG_ERROR([libgpm is missing or older than 0.18])]
255 [AC_MSG_WARN([libgpm is missing or older than 0.18])]
265 dnl Check nroff and the options it supports
267 AC_CHECK_PROG(HAVE_nroff, nroff, true, false)
274 AC_MSG_CHECKING([for manual formatting macros])
275 AC_CACHE_VAL(mc_cv_mandoc, [
276 nroff -mandoc < /dev/null > /dev/null 2>&1
284 AC_MSG_RESULT([$MANDOC])
286 AC_MSG_CHECKING([for option to disable ANSI color in manuals])
287 AC_CACHE_VAL(mc_cv_man_nocolor, [
288 nroff -c < /dev/null > /dev/null 2>&1
295 MAN_FLAGS=$mc_cv_man_nocolor
296 AC_MSG_RESULT([${MAN_NOCOLOR-none}])
298 AC_MSG_CHECKING([if nroff accepts -Tlatin1 or -Tascii])
299 AC_CACHE_VAL(mc_cv_nroff_tascii, [
301 nroff -Tlatin1 < /dev/null > /dev/null 2>&1 /dev/null
303 mc_cv_nroff_tascii=-Tlatin1
305 nroff -Tascii < /dev/null > /dev/null 2>&1 /dev/null
307 mc_cv_nroff_tascii=-Tascii
311 AC_MSG_RESULT([${mc_cv_nroff_tascii-no}])
312 MAN_FLAGS="$MAN_FLAGS $mc_cv_nroff_tascii"
320 dnl Check for -L option to file
322 AC_CHECK_PROG(HAVE_FILECMD, file, true, false)
323 if $HAVE_FILECMD; then
324 AC_MSG_CHECKING([for -L option to file command])
325 AC_CACHE_VAL(mc_cv_filel, [
326 file -L . > /dev/null 2>&1
333 if test x$mc_cv_filel = xyes; then
334 AC_DEFINE(FILE_L, 1, [Define if the file command accepts the -L option])
337 AC_MSG_RESULT([$filel])
341 AC_MSG_CHECKING([for subshell support])
342 AC_ARG_WITH(subshell,
343 [ --with-subshell Compile in concurrent subshell [[yes]]
344 --with-subshell=optional Don't run concurrent shell by default [[no]]],
346 if test x$withval = xoptional
348 AC_DEFINE(SUBSHELL_OPTIONAL, 1,
349 [Define to make subshell support optional])
352 if test x$withval = xyes
356 [dnl Default: enable the subshell support
359 if test "x$result" != xno; then
360 AC_DEFINE(HAVE_SUBSHELL_SUPPORT, 1,
361 [Define to enable subshell support])
363 AC_MSG_RESULT([$result])
371 dnl Internal editor support.
374 [ --with-edit Enable internal editor [[yes]]])
376 if test x$with_edit != xno; then
377 AC_DEFINE(USE_INTERNAL_EDIT, 1, [Define to enable internal editor])
380 AC_MSG_NOTICE([using internal editor])
386 dnl Diff viewer support.
388 AC_ARG_WITH(diff_viewer,
389 [ --with-diff-viewer Compile with diff viewer [[yes]]])
391 if test x$with_diff_viewer != xno; then
392 AC_DEFINE(USE_DIFF_VIEW, 1, [Define to enable diff viewer])
395 AC_MSG_NOTICE([using diff viewer])
401 dnl Check if the OS is supported by the console saver.
409 dnl Support for background operations
410 AC_ARG_ENABLE([background],
411 [ --enable-background Support for background file operations [[yes]]])
412 if test "x$enable_background" != xno; then
413 AC_DEFINE(WITH_BACKGROUND, 1, [Define to enable background file operations])
418 dnl User visible support for charset conversion.
420 AC_ARG_ENABLE([charset],
421 [ --enable-charset Support for charset selection and conversion [[yes]]])
424 if test "x$enable_charset" != "xno"; then
425 AC_DEFINE(HAVE_CHARSET, 1,
426 [Define to enable charset selection and conversion])
431 if test "$GLIBC21" != yes; then
432 AC_DEFINE(USE_INCLUDED_REGEX, 1, [Use the regex included here])
439 if test "x$CFLAGS" = "x"; then
443 if test x$USE_MAINTAINER_MODE = xyes; then
444 CFLAGS_OPTS="-g3 -O -ggdb"
445 AC_DEFINE(USE_MAINTAINER_MODE, 1, [Use maintainer mode])
450 AS_HELP_STRING([--enable-werror], [Handle all compiler warnings as errors])
453 if test "x$enable_werror" = xyes; then
454 MC_CHECK_ONE_CFLAG([-Werror])
456 CFLAGS="$mc_configured_cflags $CFLAGS_OPTS $CFLAGS"
465 dnl Libraries used only when building the mc binary
468 MAN_DATE="$(LC_ALL=C date "+%B %Y")"
471 AM_CONDITIONAL(USE_NLS, [test x"$USE_NLS" = xyes])
472 AM_CONDITIONAL(USE_MAINTAINER_MODE, [test x"$USE_MAINTAINER_MODE" = xyes])
473 AM_CONDITIONAL(USE_SCREEN_SLANG, [test x"$with_screen" = xslang])
474 AM_CONDITIONAL(USE_EDIT, [test -n "$use_edit"])
475 AM_CONDITIONAL(USE_DIFF, [test -n "$use_diff"])
476 AM_CONDITIONAL(CHARSET, [test -n "$have_charset"])
477 AM_CONDITIONAL(CONS_SAVER, [test -n "$cons_saver"])
484 chmod +x src/man2hlp/man2hlp
491 contrib/dist/Makefile
492 contrib/dist/debian/Makefile
493 contrib/dist/gentoo/Makefile
494 contrib/dist/redhat/Makefile
495 contrib/dist/redhat/mc.spec
497 contrib/dist/prototype
501 misc/macros.d/Makefile
505 src/consaver/Makefile
509 src/diffviewer/Makefile
510 src/filemanager/Makefile
514 src/vfs/cpio/Makefile
516 src/vfs/extfs/Makefile
517 src/vfs/extfs/helpers/Makefile
518 src/vfs/extfs/helpers/a+
519 src/vfs/extfs/helpers/apt+
520 src/vfs/extfs/helpers/audio
521 src/vfs/extfs/helpers/deb
522 src/vfs/extfs/helpers/deba
523 src/vfs/extfs/helpers/debd
524 src/vfs/extfs/helpers/dpkg+
525 src/vfs/extfs/helpers/iso9660
526 src/vfs/extfs/helpers/hp48+
527 src/vfs/extfs/helpers/lslR
528 src/vfs/extfs/helpers/mailfs
529 src/vfs/extfs/helpers/patchfs
530 src/vfs/extfs/helpers/rpms+
531 src/vfs/extfs/helpers/s3+
532 src/vfs/extfs/helpers/uace
533 src/vfs/extfs/helpers/ualz
534 src/vfs/extfs/helpers/uar
535 src/vfs/extfs/helpers/uarc
536 src/vfs/extfs/helpers/uarj
537 src/vfs/extfs/helpers/uc1541
538 src/vfs/extfs/helpers/ucab
539 src/vfs/extfs/helpers/uha
540 src/vfs/extfs/helpers/ulha
541 src/vfs/extfs/helpers/urar
542 src/vfs/extfs/helpers/uzip
543 src/vfs/extfs/helpers/uzoo
545 src/vfs/fish/Makefile
546 src/vfs/fish/helpers/Makefile
548 src/vfs/ftpfs/Makefile
550 src/vfs/local/Makefile
554 src/vfs/smbfs/Makefile
558 src/vfs/undelfs/Makefile
562 lib/filehighlight/Makefile
563 lib/mcconfig/Makefile
577 doc/man/mc.1 doc/man/mcedit.1 doc/man/mcview.1 doc/man/Makefile
578 doc/man/es/mc.1 doc/man/es/Makefile
579 doc/man/hu/mc.1 doc/man/hu/Makefile
580 doc/man/it/mc.1 doc/man/it/Makefile
581 doc/man/pl/mc.1 doc/man/pl/Makefile
582 doc/man/ru/mc.1 doc/man/ru/Makefile
583 doc/man/sr/mc.1 doc/man/sr/Makefile
597 if test x$enable_tests != xno; then
601 tests/lib/mcconfig/Makefile
602 tests/lib/search/Makefile
603 tests/lib/vfs/Makefile
614 Source code location: ${srcdir}
616 Compiler flags: ${CFLAGS}
617 File system: ${vfs_type}
619 Screen library: ${screen_msg}
620 Mouse support: ${mouse_lib}
621 X11 events support: ${textmode_x11_support}
622 With subshell support: ${subshell}
623 Internal editor: ${edit_msg}
624 Diff viewer: ${diff_msg}
625 Support for charset: ${charset_msg}
626 Search type: ${SEARCH_TYPE}