configure.ac 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765
  1. dnl
  2. dnl Configure.in file for the Midnight Commander
  3. dnl
  4. dnl 2.64 is required at least for m4_esyscmd_s()
  5. AC_PREREQ(2.64)
  6. AC_INIT([GNU Midnight Commander], m4_esyscmd_s([./version.sh .]),
  7. [https://www.midnight-commander.org/wiki/NewTicket], [mc],
  8. [https://www.midnight-commander.org/])
  9. m4_pattern_forbid(MC_)
  10. AC_CONFIG_MACRO_DIR([m4])
  11. AC_CONFIG_AUX_DIR(config)
  12. AC_CONFIG_SRCDIR(src/main.c)
  13. AC_CONFIG_HEADERS(config.h)
  14. dnl Apply "no-define" to avoid defining the VERSION macro in config.h
  15. AM_INIT_AUTOMAKE([no-define])
  16. dnl PACKAGE macro isn't defined if "no-define" is applied
  17. AC_DEFINE([PACKAGE], ["mc"], [Name of package])
  18. dnl Enable silent rules by default (if yes)
  19. m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
  20. mc_VERSION
  21. AM_MAINTAINER_MODE
  22. AC_CANONICAL_HOST
  23. AC_USE_SYSTEM_EXTENSIONS
  24. dnl ############################################################################
  25. dnl Check for compiler
  26. dnl ############################################################################
  27. AC_PROG_CC
  28. AM_PROG_CC_C_O
  29. mc_CHECK_CFLAGS
  30. CFLAGS_OPTS=""
  31. if test "x$CFLAGS" = "x"; then
  32. CFLAGS_OPTS=" -O2 "
  33. fi
  34. if test x$USE_MAINTAINER_MODE = xyes; then
  35. CFLAGS_OPTS="-g3 -O -ggdb"
  36. AC_DEFINE(USE_MAINTAINER_MODE, 1, [Use maintainer mode])
  37. fi
  38. AC_ARG_ENABLE([werror],
  39. AS_HELP_STRING([--enable-werror], [Handle all compiler warnings as errors]))
  40. if test "x$enable_werror" = xyes; then
  41. AX_APPEND_COMPILE_FLAGS([-Werror], [mc_configured_cflags])
  42. fi
  43. dnl Compiler can generate warnings for unrecognized flags added to CFLAGS
  44. dnl which causes attribute checks to fail
  45. ax_gcc_func_attribute_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
  46. _AC_LANG_PREFIX[]FLAGS=
  47. AX_GCC_FUNC_ATTRIBUTE([fallthrough])
  48. _AC_LANG_PREFIX[]FLAGS=$ax_gcc_func_attribute_save_flags
  49. unset ax_gcc_func_attribute_save_flags
  50. LT_INIT
  51. dnl ############################################################################
  52. dnl Check for programs
  53. dnl ############################################################################
  54. PKG_PROG_PKG_CONFIG
  55. AC_PROG_INSTALL
  56. AC_PROG_LN_S
  57. dnl See also the "OS specific stuff" section below.
  58. dnl Check nroff and the options it supports
  59. AC_CHECK_PROG(HAVE_nroff, nroff, true, false)
  60. dnl Default values
  61. MANDOC=-man
  62. MAN_FLAGS=
  63. if $HAVE_nroff; then
  64. AC_MSG_CHECKING([for manual formatting macros])
  65. AC_CACHE_VAL(mc_cv_mandoc, [
  66. nroff -mandoc < /dev/null > /dev/null 2>&1
  67. if test $? = 0; then
  68. mc_cv_mandoc=-mandoc
  69. else
  70. mc_cv_mandoc=-man
  71. fi
  72. ])
  73. MANDOC=$mc_cv_mandoc
  74. AC_MSG_RESULT([$MANDOC])
  75. AC_MSG_CHECKING([for option to disable ANSI color in manuals])
  76. AC_CACHE_VAL(mc_cv_man_nocolor, [
  77. nroff -c < /dev/null > /dev/null 2>&1
  78. if test $? = 0; then
  79. mc_cv_man_nocolor=-c
  80. else
  81. mc_cv_man_nocolor=
  82. fi
  83. ])
  84. MAN_FLAGS=$mc_cv_man_nocolor
  85. AC_MSG_RESULT([${MAN_NOCOLOR-none}])
  86. AC_MSG_CHECKING([if nroff accepts -Tlatin1 or -Tascii])
  87. AC_CACHE_VAL(mc_cv_nroff_tascii, [
  88. mc_cv_nroff_tascii=
  89. nroff -Tlatin1 < /dev/null > /dev/null 2>&1 /dev/null
  90. if test $? = 0; then
  91. mc_cv_nroff_tascii=-Tlatin1
  92. else
  93. nroff -Tascii < /dev/null > /dev/null 2>&1 /dev/null
  94. if test $? = 0; then
  95. mc_cv_nroff_tascii=-Tascii
  96. fi
  97. fi
  98. ])
  99. AC_MSG_RESULT([${mc_cv_nroff_tascii-no}])
  100. MAN_FLAGS="$MAN_FLAGS $mc_cv_nroff_tascii"
  101. fi
  102. AC_SUBST(MANDOC)
  103. AC_SUBST(MAN_FLAGS)
  104. dnl Check for -z, -b, -L, and -S options to file
  105. AC_CHECK_PROG(HAVE_FILECMD, file, true, false)
  106. if $HAVE_FILECMD; then
  107. dnl Don't use the file command if it doesn't accept the -z option
  108. AC_MSG_CHECKING([for -z option to file command])
  109. AC_CACHE_VAL(mc_cv_file_z, [
  110. file -z . > /dev/null 2>&1
  111. if test $? = 0; then
  112. mc_cv_file_z=yes
  113. else
  114. mc_cv_file_z=no
  115. fi
  116. ])
  117. AC_MSG_RESULT([$mc_cv_file_z])
  118. if test x$mc_cv_file_z = xyes; then
  119. AC_DEFINE(USE_FILE_CMD, 1, [Define if the file command accepts the -z option])
  120. else
  121. AC_MSG_WARN([The file command doesn't accept the -z option and will not be used])
  122. fi
  123. if test x$mc_cv_file_z = xyes; then
  124. dnl file is used; check -b, -L and -S options
  125. AC_MSG_CHECKING([for -b option to file command])
  126. AC_CACHE_VAL(mc_cv_file_b, [
  127. file -b . > /dev/null 2>&1
  128. if test $? = 0; then
  129. mc_cv_file_b=yes
  130. else
  131. mc_cv_file_b=no
  132. fi
  133. ])
  134. AC_MSG_RESULT([$mc_cv_file_b])
  135. if test x$mc_cv_file_b = xyes; then
  136. AC_DEFINE(FILE_B, "-b ", [Define if the file command accepts the -b option])
  137. fi
  138. AC_MSG_CHECKING([for -L option to file command])
  139. AC_CACHE_VAL(mc_cv_file_L, [
  140. file -L . > /dev/null 2>&1
  141. if test $? = 0; then
  142. mc_cv_file_L=yes
  143. else
  144. mc_cv_file_L=no
  145. fi
  146. ])
  147. AC_MSG_RESULT([$mc_cv_file_L])
  148. if test x$mc_cv_file_L = xyes; then
  149. AC_DEFINE(FILE_L, "-L ", [Define if the file command accepts the -L option])
  150. else
  151. AC_DEFINE(FILE_L, "", [Define if the file command accepts the -L option])
  152. fi
  153. dnl The file command accepts the -S option since 5.33
  154. AC_MSG_CHECKING([for -S option to file command])
  155. AC_CACHE_VAL(mc_cv_file_S, [
  156. file -S . > /dev/null 2>&1
  157. if test $? = 0; then
  158. mc_cv_file_S=yes
  159. else
  160. mc_cv_file_S=no
  161. fi
  162. ])
  163. AC_MSG_RESULT([$mc_cv_file_S])
  164. if test x$mc_cv_file_S = xyes; then
  165. AC_DEFINE(FILE_S, "-S ", [Define if file command accepts the -S option])
  166. else
  167. AC_DEFINE(FILE_S, "", [Define if file command accepts the -S option])
  168. fi
  169. fi
  170. fi
  171. dnl Only list browsers here that can be run in background (i.e. with `&')
  172. AC_CHECK_PROGS(X11_WWW, [gnome-moz-remote mozilla firefox konqueror opera])
  173. dnl ############################################################################
  174. dnl Check for other tools
  175. dnl ############################################################################
  176. AC_CHECK_TOOL(AR, ar, ar)
  177. mc_UNIT_TESTS
  178. dnl ############################################################################
  179. dnl Check for main libraries
  180. dnl ############################################################################
  181. mc_CHECK_GLIB
  182. mc_G_MODULE_SUPPORTED
  183. mc_WITH_SCREEN
  184. mc_CHECK_SEARCH_TYPE
  185. dnl X11 support. Used to read keyboard modifiers when running under X11.
  186. mc_WITH_X
  187. dnl ############################################################################
  188. dnl Check for header files
  189. dnl ############################################################################
  190. AC_CHECK_HEADERS([string.h memory.h limits.h malloc.h \
  191. utime.h sys/statfs.h sys/vfs.h \
  192. sys/select.h sys/ioctl.h stropts.h arpa/inet.h \
  193. sys/socket.h])
  194. dnl This macro is redefined in m4.include/gnulib/sys_types_h.m4
  195. dnl to work around a buggy version in autoconf <= 2.69.
  196. AC_HEADER_MAJOR
  197. dnl ############################################################################
  198. dnl Check for types
  199. dnl ############################################################################
  200. dnl Check largefile before type sizeof checks
  201. AC_SYS_LARGEFILE
  202. AC_CHECK_SIZEOF(long)
  203. AC_TYPE_UINTMAX_T
  204. AC_CHECK_SIZEOF(uintmax_t)
  205. AC_TYPE_OFF_T
  206. AC_CHECK_SIZEOF(off_t)
  207. AC_TYPE_MODE_T
  208. gl_PROMOTED_TYPE_MODE_T
  209. AC_TYPE_PID_T
  210. AC_TYPE_UID_T
  211. AC_STRUCT_ST_BLOCKS
  212. AC_CHECK_MEMBERS([struct stat.st_blksize, struct stat.st_rdev, struct stat.st_mtim])
  213. gl_STAT_SIZE
  214. AH_TEMPLATE([sig_atomic_t],
  215. [/* Define to `int' if <signal.h> doesn't define.])
  216. AH_TEMPLATE([SIG_ATOMIC_VOLATILE_T],
  217. [Some systems declare sig_atomic_t as volatile, some others -- no.
  218. This define will have value `sig_atomic_t' or
  219. `volatile sig_atomic_t' accordingly.])
  220. AC_MSG_CHECKING(for sig_atomic_t in signal.h)
  221. AC_EGREP_HEADER(sig_atomic_t,signal.h,
  222. [
  223. ac_cv_type_sig_atomic_t=yes;
  224. AC_EGREP_HEADER(volatile.*sig_atomic_t,
  225. signal.h,
  226. [
  227. is_sig_atomic_t_volatile=yes;
  228. AC_MSG_RESULT([yes, volatile])
  229. ],
  230. [
  231. is_sig_atomic_t_volatile=no;
  232. AC_MSG_RESULT([yes, non volatile])
  233. ])
  234. ],
  235. [
  236. AC_MSG_RESULT(no)
  237. AC_CHECK_TYPE(sig_atomic_t, int)
  238. is_sig_atomic_t_volatile=no
  239. ])
  240. if test $is_sig_atomic_t_volatile = 'yes'
  241. then
  242. AC_DEFINE(SIG_ATOMIC_VOLATILE_T, sig_atomic_t)
  243. else
  244. AC_DEFINE(SIG_ATOMIC_VOLATILE_T, [volatile sig_atomic_t])
  245. fi
  246. dnl ############################################################################
  247. dnl Check for functions
  248. dnl ############################################################################
  249. AC_CHECK_FUNCS([\
  250. strverscmp \
  251. strncasecmp \
  252. realpath
  253. ])
  254. dnl getpt is a GNU Extension (glibc 2.1.x)
  255. AC_CHECK_FUNCS(posix_openpt, , [AC_CHECK_FUNCS(getpt)])
  256. AC_CHECK_FUNCS(grantpt, , [AC_CHECK_LIB(pt, grantpt)])
  257. dnl replacing lstat with statlstat on sco makes it more portable between
  258. dnl sco clones
  259. AC_CHECK_FUNCS(statlstat)
  260. dnl Overriding mmap support. This has to be before AC_FUNC_MMAP is used.
  261. dnl We use only part of the functionality of mmap, so on AIX,
  262. dnl it's possible to use mmap, even if it doesn't pass the autoconf test.
  263. AC_ARG_WITH([mmap],
  264. AS_HELP_STRING([--with-mmap], [Use the mmap call @<:@yes if found@:>@]))
  265. if test x$with_mmap != xno; then
  266. if test x$with_mmap = x; then
  267. AC_FUNC_MMAP
  268. else
  269. AC_DEFINE(HAVE_MMAP, 1)
  270. fi
  271. fi
  272. mc_GET_FS_INFO
  273. dnl ############################################################################
  274. dnl Internationalization
  275. dnl ############################################################################
  276. AC_CHECK_FUNCS([setlocale])
  277. AM_GNU_GETTEXT([external], [need-ngettext])
  278. AM_GNU_GETTEXT_VERSION([0.18.2])
  279. mc_I18N
  280. dnl ############################################################################
  281. dnl OS specific stuff
  282. dnl ############################################################################
  283. case $host_os in
  284. *os400)
  285. AC_PATH_PROG([PERL], [perl], [/QOpenSys/pkgs/bin/perl])
  286. AC_PATH_PROG([PERL_FOR_BUILD], [perl], [/QOpenSys/pkgs/bin/perl])
  287. AC_PATH_PROG([PYTHON], [python], [/QOpenSys/pkgs/bin/python2])
  288. AC_PATH_PROG([RUBY], [ruby], [/QOpenSys/pkgs/bin/ruby])
  289. ;;
  290. *)
  291. AC_PATH_PROG([PERL], [perl], [/usr/bin/perl])
  292. AC_PATH_PROG([PERL_FOR_BUILD], [perl], [/usr/bin/perl])
  293. AC_PATH_PROG([PYTHON], [python], [/usr/bin/python])
  294. AC_PATH_PROG([RUBY], [ruby], [/usr/bin/ruby])
  295. esac
  296. case $host_os in
  297. aux*)
  298. # A/UX
  299. LIBS="$LIBS -lposix"
  300. AC_DEFINE(_POSIX_SOURCE)
  301. ;;
  302. esac
  303. dnl If running under AIX, AC_AIX does not tell us that
  304. AC_MSG_CHECKING([for AIX defines])
  305. AC_EGREP_CPP([yes],
  306. [
  307. #if defined(AIX) || defined(_AIX) || defined(__aix__) || defined(aix)
  308. yes
  309. #endif
  310. ],
  311. [
  312. AC_DEFINE(IS_AIX, 1, [Define if compiling for AIX])
  313. AC_MSG_RESULT(yes)
  314. ],
  315. [
  316. AC_MSG_RESULT(no)
  317. ])
  318. dnl utimensat is supported since glibc 2.6 and specified in POSIX.1-2008
  319. dnl utimensat() causes different timespec structures to cause failures on IBM i and AIX
  320. case $host_os in
  321. *os400 | aix*)
  322. ;;
  323. *)
  324. AC_CHECK_FUNCS([utimensat])
  325. ;;
  326. esac
  327. case $host_os in
  328. *os400)
  329. AC_DEFINE([PTY_ZEROREAD], [1], [read(1) can return 0 for a non-closed fd])
  330. esac
  331. dnl Check linux/fs.h for FICLONE to support BTRFS's file clone operation
  332. case $host_os in
  333. linux*)
  334. AC_CHECK_HEADERS([linux/fs.h])
  335. esac
  336. dnl Check if the OS is supported by the console saver.
  337. cons_saver=""
  338. case $host_os in
  339. linux*)
  340. cons_saver=yes
  341. esac
  342. dnl Check for gpm mouse support (Linux only)
  343. mouse_lib="xterm only"
  344. AC_ARG_WITH([gpm-mouse],
  345. AS_HELP_STRING([--with-gpm-mouse], [Compile with gpm mouse support (Linux only) @<:@yes if found@:>@]))
  346. case $host_os in
  347. linux*)
  348. if test x$with_gpm_mouse != xno; then
  349. AC_CHECK_LIB(gpm, Gpm_Repeat,
  350. [AC_DEFINE(HAVE_LIBGPM, 1,
  351. [Define to enable gpm mouse support on Linux])
  352. mouse_lib="gpm and xterm"
  353. MCLIBS="$MCLIBS -lgpm"],
  354. if test "x$with_gpm_mouse" = "xyes"; then
  355. [AC_MSG_ERROR([libgpm is missing or older than 0.18])]
  356. else
  357. [AC_MSG_WARN([libgpm is missing or older than 0.18])]
  358. fi
  359. )
  360. fi
  361. ;;
  362. esac
  363. dnl ############################################################################
  364. dnl libmc
  365. dnl ############################################################################
  366. LIBMC_VERSION="0.0.1"
  367. LIBMC_RELEASE="1"
  368. AC_SUBST(LIBMC_VERSION)
  369. AC_SUBST(LIBMC_RELEASE)
  370. AC_ARG_ENABLE([mclib],
  371. [AS_HELP_STRING([--enable-mclib], [Compile shared library libmc.so @<:@no@:>@])],
  372. [
  373. if test "x$enableval" = "xno" ; then
  374. enable_mclib=no
  375. else
  376. if test "x$enable_shared" = "xno" ; then
  377. AC_MSG_WARN([Build of shared library is disabled. Specify --enable-shared first])
  378. enable_mclib=no
  379. else
  380. enable_mclib=yes
  381. fi
  382. fi
  383. ],
  384. [enable_mclib=no])
  385. AM_CONDITIONAL([ENABLE_MCLIB], [test x$enable_mclib = xyes])
  386. dnl ############################################################################
  387. dnl MC options
  388. dnl ############################################################################
  389. mc_ASSERT
  390. mc_WITH_INTERNAL_EDIT
  391. dnl Diff viewer support.
  392. AC_ARG_WITH([diff_viewer],
  393. AS_HELP_STRING([--with-diff-viewer], [Compile with diff viewer @<:@yes@:>@]))
  394. if test x$with_diff_viewer != xno; then
  395. AC_DEFINE(USE_DIFF_VIEW, 1, [Define to enable diff viewer])
  396. use_diff=yes
  397. diff_msg="yes"
  398. AC_MSG_NOTICE([using diff viewer])
  399. else
  400. diff_msg="no"
  401. fi
  402. mc_SUBSHELL
  403. mc_BACKGROUND
  404. mc_EXT2FS_ATTR
  405. mc_VFS_CHECKS
  406. dnl ############################################################################
  407. dnl Directories
  408. dnl ############################################################################
  409. dnl ${prefix} and ${exec_prefix} are undefined here if --prefix is not used in command line
  410. dnl Let define ${prefix} and ${exec_prefix}
  411. test "x$prefix" = "xNONE" && prefix="$ac_default_prefix"
  412. test "x$exec_prefix" = "xNONE" && exec_prefix="${prefix}"
  413. if test x${libexecdir} = x'${exec_prefix}/libexec'; then
  414. EXTHELPERSDIR=${prefix}/libexec/${PACKAGE}/ext.d
  415. elif test x${libexecdir} = x'${exec_prefix}/lib'; then
  416. EXTHELPERSDIR=${prefix}/lib/${PACKAGE}/ext.d
  417. else
  418. EXTHELPERSDIR=${libexecdir}/${PACKAGE}/ext.d
  419. fi
  420. AC_SUBST(EXTHELPERSDIR)
  421. dnl ############################################################################
  422. dnl Documentation
  423. dnl ############################################################################
  424. MAN_DATE="$(LC_ALL=C date "+%B %Y")"
  425. AC_SUBST(MAN_DATE)
  426. dnl Determine which help translations we want to install.
  427. ALL_DOC_LINGUAS="es hu it pl ru sr"
  428. DOC_LINGUAS=
  429. if test "x$USE_NLS" = xyes; then
  430. if test -z "$LINGUAS"; then
  431. langs="`grep -v '^#' $srcdir/po/LINGUAS`"
  432. else
  433. langs="$LINGUAS"
  434. fi
  435. else
  436. langs=
  437. fi
  438. for h_lang in $ALL_DOC_LINGUAS; do
  439. for lang in $langs; do
  440. if test "$lang" = "$h_lang"; then
  441. DOC_LINGUAS="$DOC_LINGUAS $lang"
  442. break
  443. fi
  444. done
  445. done
  446. AC_SUBST(DOC_LINGUAS)
  447. DX_HTML_FEATURE(ON)
  448. DX_CHM_FEATURE(OFF)
  449. DX_CHI_FEATURE(OFF)
  450. DX_MAN_FEATURE(OFF)
  451. DX_RTF_FEATURE(OFF)
  452. DX_XML_FEATURE(OFF)
  453. DX_PDF_FEATURE(OFF)
  454. DX_PS_FEATURE(OFF)
  455. DX_INIT_DOXYGEN(mc,doxygen.cfg,devel)
  456. dnl ############################################################################
  457. dnl Configure results
  458. dnl ############################################################################
  459. CFLAGS="$mc_configured_cflags $CFLAGS_OPTS $CFLAGS"
  460. AC_SUBST(MCLIBS)
  461. AC_SUBST(CFLAGS)
  462. AC_SUBST(CPPFLAGS)
  463. AC_SUBST(LDFLAGS)
  464. AC_SUBST(LIBS)
  465. AM_CONDITIONAL(USE_NLS, [test x"$USE_NLS" = xyes])
  466. AM_CONDITIONAL(USE_MAINTAINER_MODE, [test x"$USE_MAINTAINER_MODE" = xyes])
  467. AM_CONDITIONAL(USE_SCREEN_SLANG, [test x"$with_screen" = xslang])
  468. AM_CONDITIONAL(USE_INTERNAL_EDIT, [test x"$use_internal_edit" = xyes ])
  469. AM_CONDITIONAL(USE_ASPELL, [test x"$enable_aspell" = xyes ])
  470. AM_CONDITIONAL(USE_DIFF, [test -n "$use_diff"])
  471. AM_CONDITIONAL(CHARSET, [test -n "$have_charset"])
  472. AM_CONDITIONAL(CONS_SAVER, [test -n "$cons_saver"])
  473. dnl Clarify do we really need GModule
  474. AM_CONDITIONAL([HAVE_GMODULE], [test -n "$g_module_supported" && \
  475. test x"$textmode_x11_support" = x"yes" -o x"$enable_aspell" = x"yes"])
  476. AC_ARG_ENABLE([configure-args],
  477. AS_HELP_STRING([--enable-configure-args], [Embed ./configure arguments into binaries]))
  478. if test "x$enable_configure_args" != xno; then
  479. AC_DEFINE([ENABLE_CONFIGURE_ARGS], 1, [Define to enable showing configure arguments in help])
  480. AC_DEFINE_UNQUOTED([MC_CONFIGURE_ARGS], ["$ac_configure_args"], [MC configure arguments])
  481. fi
  482. AC_CONFIG_FILES(
  483. [
  484. src/man2hlp/man2hlp
  485. ],
  486. [
  487. chmod +x src/man2hlp/man2hlp
  488. ])
  489. AC_CONFIG_FILES([
  490. Makefile
  491. contrib/Makefile
  492. misc/Makefile
  493. misc/mc.charsets
  494. misc/mc.menu
  495. misc/mcedit.menu
  496. misc/skins/Makefile
  497. misc/ext.d/Makefile
  498. misc/ext.d/doc.sh
  499. misc/ext.d/misc.sh
  500. misc/ext.d/text.sh
  501. misc/ext.d/web.sh
  502. misc/macros.d/Makefile
  503. misc/mc.ext.ini
  504. src/Makefile
  505. src/consaver/Makefile
  506. src/editor/Makefile
  507. src/man2hlp/Makefile
  508. src/subshell/Makefile
  509. src/viewer/Makefile
  510. src/diffviewer/Makefile
  511. src/filemanager/Makefile
  512. src/vfs/Makefile
  513. src/vfs/cpio/Makefile
  514. src/vfs/extfs/Makefile
  515. src/vfs/extfs/helpers/Makefile
  516. src/vfs/extfs/helpers/a+
  517. src/vfs/extfs/helpers/apt+
  518. src/vfs/extfs/helpers/audio
  519. src/vfs/extfs/helpers/deb
  520. src/vfs/extfs/helpers/deba
  521. src/vfs/extfs/helpers/debd
  522. src/vfs/extfs/helpers/dpkg+
  523. src/vfs/extfs/helpers/iso9660
  524. src/vfs/extfs/helpers/hp48+
  525. src/vfs/extfs/helpers/lslR
  526. src/vfs/extfs/helpers/mailfs
  527. src/vfs/extfs/helpers/patchfs
  528. src/vfs/extfs/helpers/rpms+
  529. src/vfs/extfs/helpers/s3+
  530. src/vfs/extfs/helpers/uace
  531. src/vfs/extfs/helpers/ualz
  532. src/vfs/extfs/helpers/uar
  533. src/vfs/extfs/helpers/uarc
  534. src/vfs/extfs/helpers/uarj
  535. src/vfs/extfs/helpers/ucab
  536. src/vfs/extfs/helpers/uha
  537. src/vfs/extfs/helpers/ulha
  538. src/vfs/extfs/helpers/ulib
  539. src/vfs/extfs/helpers/unar
  540. src/vfs/extfs/helpers/urar
  541. src/vfs/extfs/helpers/uwim
  542. src/vfs/extfs/helpers/uzip
  543. src/vfs/extfs/helpers/uzoo
  544. src/vfs/fish/Makefile
  545. src/vfs/fish/helpers/Makefile
  546. src/vfs/ftpfs/Makefile
  547. src/vfs/sftpfs/Makefile
  548. src/vfs/local/Makefile
  549. src/vfs/sfs/Makefile
  550. src/vfs/tar/Makefile
  551. src/vfs/undelfs/Makefile
  552. lib/Makefile
  553. lib/event/Makefile
  554. lib/filehighlight/Makefile
  555. lib/mcconfig/Makefile
  556. lib/search/Makefile
  557. lib/skin/Makefile
  558. lib/strutil/Makefile
  559. lib/tty/Makefile
  560. lib/vfs/Makefile
  561. lib/widget/Makefile
  562. misc/syntax/Makefile
  563. doc/Makefile
  564. doc/hints/Makefile
  565. doc/hints/l10n/Makefile
  566. doc/man/Makefile
  567. doc/man/es/Makefile
  568. doc/man/hu/Makefile
  569. doc/man/it/Makefile
  570. doc/man/pl/Makefile
  571. doc/man/ru/Makefile
  572. doc/man/sr/Makefile
  573. doc/hlp/Makefile
  574. doc/hlp/es/Makefile
  575. doc/hlp/hu/Makefile
  576. doc/hlp/it/Makefile
  577. doc/hlp/pl/Makefile
  578. doc/hlp/ru/Makefile
  579. doc/hlp/sr/Makefile
  580. po/Makefile.in
  581. ])
  582. dnl https://stackoverflow.com/questions/30897170/ac-subst-does-not-expand-variable/30932102#30932102
  583. AC_CONFIG_FILES(
  584. [misc/syntax/Syntax], [sed -i -e "s%\${prefix}%$PREFIX%" misc/syntax/Syntax], [export PREFIX=$prefix]
  585. )
  586. AC_CONFIG_FILES([
  587. tests/Makefile
  588. tests/lib/Makefile
  589. tests/lib/mcconfig/Makefile
  590. tests/lib/search/Makefile
  591. tests/lib/strutil/Makefile
  592. tests/lib/vfs/Makefile
  593. tests/lib/widget/Makefile
  594. tests/src/Makefile
  595. tests/src/filemanager/Makefile
  596. tests/src/editor/Makefile
  597. tests/src/editor/test-data.txt
  598. tests/src/vfs/Makefile
  599. tests/src/vfs/extfs/Makefile
  600. tests/src/vfs/extfs/helpers-list/Makefile
  601. tests/src/vfs/extfs/helpers-list/data/config.sh
  602. tests/src/vfs/extfs/helpers-list/misc/Makefile
  603. tests/src/vfs/ftpfs/Makefile
  604. ])
  605. AC_OUTPUT
  606. AC_MSG_NOTICE([
  607. Configuration:
  608. Source code location: ${srcdir}
  609. Compiler: ${CC}
  610. Compiler flags: ${CFLAGS}
  611. Assertions: ${enable_assert}
  612. Unit tests: ${tests_msg}
  613. File system: ${vfs_type}
  614. ${vfs_flags}
  615. Screen library: ${screen_msg}
  616. Mouse support: ${mouse_lib}
  617. X11 events support: ${textmode_x11_support}
  618. With subshell support: ${subshell}
  619. With background operations: ${enable_background}
  620. With ext2fs attributes support: ${ext2fs_attr_msg}
  621. Internal editor: ${edit_msg}
  622. Diff viewer: ${diff_msg}
  623. Support for charset: ${charset_msg}
  624. Search type: ${SEARCH_TYPE}
  625. ])
  626. dnl option checking is disable by default due to AC_CONFIG_SUBDIRS
  627. dnl we enable it back for top-level ./configure
  628. if test -n "$ac_unrecognized_opts"; then
  629. case $enable_option_checking in
  630. fatal) AC_MSG_ERROR([unrecognized options: $ac_unrecognized_opts]) ;;
  631. *) AC_MSG_WARN( [unrecognized options: $ac_unrecognized_opts]) ;;
  632. esac
  633. fi