Changes from Nelson
[sxemacs] / m4 / sxe-summary.m4
1 dnl sxe-summary.m4 -- print a nice summary describing the build
2 dnl
3 dnl Copyright (C) 2005 Malcolm Purvis.
4 dnl Copyright (C) 2005, 2006, 2007 Steve Youngs.
5 dnl Copyright (C) 2006, 2007, 2008 Sebastian Freundt.
6 dnl
7 dnl This file is part of SXEmacs
8
9 dnl Start stdout redirection to '| tee -a Installation'
10 AC_DEFUN([SXE_SUMMARY], [dnl
11         pushdef([CODENAME], m4_ifdef([SXEM4CS_CODENAME],
12                 [SXEM4CS_CODENAME], [unknown]))
13
14 (
15 echo "
16
17 SXEmacs $sxemacs_git_version \"[]CODENAME[]\" configured for \`$ac_cv_build'.
18 "
19 echo "
20 Compilation Environment and Installation Defaults:"
21 echo "  Source code location:              $sxe_srcdir"
22 echo "  Installation prefix:               $prefix"
23 echo "  Arch-dependent files go to:        $ARCHLIBDIR"
24 echo "  Core emodules go to:               $MODULEDIR"
25 echo "  Core lisp files go to:             $LISPDIR"
26 echo "  Additional external data goes to:  $ETCDIR"
27
28 if test -n "$opsysfile"
29 then echo "  Operating system description file: \`$opsysfile'"
30 else echo "  Not using any operating system description file"
31 fi
32 if test -n "$machfile"
33 then echo "  Machine description file:          \`$machfile'"
34 else echo "  Not using any machine description file"
35 fi
36
37 echo "  Compiler version:                  $compiler_version"
38 if test -n "$gcc_compiler_specs"; then
39   echo "    - GCC specs file:                $gcc_compiler_specs"
40 fi
41 echo "    - Compiler command:              $CC $CFLAGS"
42 echo "    - Global CPPFLAGS:               $CPPFLAGS"
43 echo "    - Global LDFLAGS:                $LDFLAGS"
44 echo "    - C flags"
45 echo "              System:                $c_switch_system"
46 echo "              General:               $c_switch_general"
47 echo "              Window system:         $c_switch_window_system"
48 echo "              All:                   $c_switch_all"
49 echo "    - Linker flags"
50 echo "              System:                $ld_switch_system"
51 echo "              General:               $ld_switch_general"
52 echo "              Window system:         $ld_switch_window_system"
53 echo "              All:                   $ld_switch_all"
54 echo "    - Linked libraries:"
55 echo "              System:                $ld_libs_system"
56 echo "              General:               $ld_libs_general"
57 echo "              Window system:         $ld_libs_window_system"
58 echo "              All:                   $ld_libs_all"
59 echo ""
60 echo "  libc version:                      $libc_version"
61 echo "  Relocating allocator for buffers:  $with_rel_alloc"
62 echo "  GNU version of malloc:             ${GNU_MALLOC}${GNU_MALLOC_reason}"
63 case "$ld_switch_site" in
64   *nocombreloc*) echo "  Linking with \`-z nocombreloc'.
65     - Consider configuring with --with-pdump." ;;
66 esac
67 echo "
68 Build Options:"
69
70 if test -n "$with_site_includes"; then
71   echo "  Additional header files:           $with_site_includes"
72 fi
73 if test -n "$with_site_libraries"; then
74   echo "  Additional libraries:              $with_site_libraries"
75 fi
76 if test -n "$with_site_prefixes"; then
77   echo "  Additional prefixes:               $with_site_prefixes"
78 fi
79 if test -n "$runpath"; then
80   echo "  Runtime library search path:       $runpath"
81 fi
82
83 echo "  Runtime behaviour:"
84 if test "$with_prefix" = "yes"; then
85   echo "    - Value of prefix ($prefix) is compiled into the binary."
86 elif test "$with_prefix" = "no"; then
87   echo "    - Value of prefix ($prefix)is not compiled into the binary."
88 fi
89 if test "$with_modules" != "no"; then
90   echo "
91     - Module search path:"
92   echo ${MODULE_PATH} | ${AWK-awk} 'BEGIN {RS=":"} { print "       ",[$]1[] }'
93 fi
94 echo "
95     - Package search path:"
96   echo ${PACKAGE_PATH} | ${AWK-awk} 'BEGIN {RS=":"} { print "       ",[$]1[] }'
97
98 echo "
99 Debugging options:"
100
101 OG_MULTIARG_SUMMARY([error-checking], [Runtime Error Checking], [  ])
102
103 if test "$tmp_enabled" != "None."; then
104   echo "    WARNING: ---------------------------------------------------------"
105   echo "    WARNING: SXEmacs will run noticeably more slowly as a result."
106   echo "    WARNING: Error checking is on by default for SXEmacs beta releases."
107   echo "    WARNING: ---------------------------------------------------------"
108 elif test "${sxemacs_betaname}" != ""; then
109   echo "    WARNING: ---------------------------------------------------------"
110   echo "    WARNING: This SXEmacs is a beta release."
111   echo "    WARNING: By disabling all error checking there will be limited "
112   echo "    WARNING: troubleshooting information available."
113   echo "    WARNING: ---------------------------------------------------------"
114 fi
115 unset tmp_enabled 
116
117
118 echo "
119 Internals:"
120
121 if test "$with_dynamic" = "yes"; then
122   echo "  How to link external libraries:  dynamic"
123 elif test "$with_dynamic" = "no"; then
124   echo "  How to link external libraries:  static"
125 else
126   echo "  How to link external libraries:  uncertain"
127 fi
128
129 echo "  Foreign Function Interface:"
130 if test "$have_ffi" = yes; then
131   echo "    Compiling in support for FFI."
132 elif test "$have_ffi" = no; then
133   echo "    No support for FFI."
134 else
135   echo "    Good question ... where is it?"
136 fi
137
138 if test "$have_compre" = yes; then
139   echo "  Compiled regex caching: yes"
140 else
141   echo "  Compiled regex caching: no"
142 fi
143
144 dnl summary for ENT and ASE
145 OG_MULTIARG_SUMMARY([ent], [Enhanced Number Types], [  ])
146 dnl OG_MULTIARG_SUMMARY([ase], [Algebraic Structures based on ENT], [  ])
147 dnl summary for EF
148 OG_MULTIARG_SUMMARY([experimental-features], [Experimental Features], [  ])
149
150 echo "
151 Window System:"
152 if test "$with_x11" = "yes"; then
153   echo "  Compiling in support for the X window system:"
154   echo "    - X Windows headers location:                 $x_includes"
155   echo "    - X Windows libraries location:               $x_libraries"
156   if test "$with_xauth" != yes; then
157     echo "    - Xau (X authority) not available."
158   fi
159   if test "$with_xmu" != yes; then
160     echo "    - Xmu library not available; substituting equivalent routines."
161   fi
162   if test "$with_wmcommand" != no; then
163     echo "    - Handling WM_COMMAND properly."
164   fi
165 fi
166 if test "$need_athena" = "yes"; then
167   echo "  Compiling in support for the Athena widget set:"
168   echo "    - Athena headers location:                    $athena_h_path"
169   echo "    - Athena library to link:                     $athena_lib"
170 fi
171 case "$with_menubars" in
172   lucid ) echo "  Using Lucid menubars." ;;
173   motif ) echo "  Using Motif menubars."
174           echo "  *WARNING*  The Motif menubar implementation is currently buggy."
175           echo "             We recommend using the Lucid menubar instead."
176           echo "             Re-run configure with --with-menubars='lucid'." ;;
177   * )      echo "  No support for menubars."   ;;
178 esac
179 case "$with_scrollbars" in
180   lucid  ) echo "  Using Lucid scrollbars."      ;;
181   motif  ) echo "  Using Motif scrollbars."      ;;
182   athena ) echo "  Using Athena scrollbars."     ;;
183   * )      echo "  No support for scrollbars."   ;;
184 esac
185 case "$with_dialogs" in
186   motif  ) echo "  Using Motif dialog boxes."
187            if test "$unexec" = "unexaix.o"; then if test "`uname -v`" = 4 -a "`uname -r`" -ge 3; then
188              echo "  *WARNING*  The Motif dialog boxes cause problems on AIX 4.3 and higher."
189              echo "             We recommend using the Athena dialog boxes instead."
190              echo "             Install libXaw and re-run configure with --with-dialogs='athena'."
191              echo "             Read the PROBLEMS file for more information."
192            fi; fi ;;
193   athena ) echo "  Using Athena dialog boxes."     ;;
194   * )      echo "  No support for dialog boxes." ;;
195 esac
196 case "$with_widgets" in
197   motif  ) echo "  Using Motif native widgets."      ;;
198   athena ) echo "  Using Athena native widgets."     ;;
199   * )      echo "  No support for native widgets."   ;;
200 esac
201 case "$with_toolbars" in
202   yes )       echo "  Support for toolbars."         ;;
203   no )        echo "  No support for toolbars."      ;;
204   * ) ;;
205 esac
206
207 echo "
208 TTY:"
209 test "$with_ncurses" = yes && echo "  Compiling in support for ncurses."
210 test "$with_gpm" = yes && echo "  Compiling in support for GPM (General Purpose Mouse)."
211
212 echo "
213 Databases:"
214 OG_MULTIARG_SUMMARY([database], [File-based Databases], [  ])
215
216 echo "  Compiling in support for further database interfaces:"
217 if test "$have_ldap" = "yes"; then
218   echo $ECHO_N "    - LDAP"$ECHO_C
219   if test "$have_ldap_lber" = "yes" -o "$have_ldap_krb" -o "$have_ldap_des"; then
220         echo $ECHO_N " (with"$ECHO_C
221         test "$have_ldap_lber" = "yes" && echo $ECHO_N " lber"$ECHO_C
222         test "$have_ldap_krb" = "yes" && echo $ECHO_N " krb"$ECHO_C
223         test "$have_ldap_des" = "yes" && echo $ECHO_N " des"$ECHO_C
224         echo $ECHO_N ")"$ECHO_C
225   fi
226   echo "."
227 fi
228 if test "$have_postgresql" = "yes"; then
229   echo $ECHO_N "    - PostgreSQL"$ECHO_C
230   test "$have_postgresqlv7" = yes && \
231         echo $ECHO_N " (V7 bindings)"$ECHO_C
232   echo "."
233 fi
234
235 echo "
236 Media:"
237 dnl
238 OG_MULTIARG_SUMMARY([image], [Image Formats], [  ])
239 OG_MULTIARG_SUMMARY([sound], [Audio Outputs], [  ])
240 test "$with_pulseaudio" = yes && echo "    PulseAudio has been enabled.  Good luck!"
241 OG_MULTIARG_SUMMARY([media], [Media Stream Handlers], [  ])
242
243 dnl old stuff ... originally these were elifs
244 dnl if test "$with_x11" = yes; then
245 dnl   echo "    WARNING: -----------------------------------------------------------"
246 dnl   echo "    WARNING: Compiling without XPM image support."
247 dnl   if test "$xpm_problem" != ""; then
248 dnl     echo "    Reason: $xpm_problem"
249 dnl   fi
250 dnl   echo "    WARNING: You should strongly consider installing XPM."
251 dnl   echo "    WARNING: Otherwise toolbars and other graphics will look suboptimal."
252 dnl   echo "    WARNING: -----------------------------------------------------------"
253 dnl fi
254 dnl if test "$window_system" != "none"; then
255 dnl   echo "    WARNING: -----------------------------------------------------------"
256 dnl   echo "    WARNING: Compiling without PNG image support."
257 dnl   if test "$png_problem" != ""; then
258 dnl     echo "    Reason: $png_problem"
259 dnl   fi
260 dnl   echo "    WARNING: You should strongly consider installing the PNG libraries."
261 dnl   echo "    WARNING: Otherwise certain images and glyphs may not display."
262 dnl   echo "    WARNING: -----------------------------------------------------------"
263 dnl fi
264
265 echo "
266 Cryptography:"
267 if test "$have_openssl $with_openssl" = "yes yes"; then
268   echo "  Compiling in support for OpenSSL ciphers and digests."
269   echo "    - Submodules: RAND MD HMAC CIPHER HYBRID SIGN" \
270   `test "$openssl_no_rsa" = no && echo "RSA"` \
271   `test "$openssl_no_dsa" = no && echo "DSA"` \
272   `test "$openssl_no_ec" = no && echo "EC"` \
273   `test "$openssl_no_dh" = no && echo "DH"` \
274   "PEM" \
275   `test "$openssl_ssl" = yes && echo "SSL"`
276 fi
277
278 echo "
279 Internationalization:"
280 test "$with_mule" = yes && echo "  Compiling in support for Mule (multi-lingual Emacs)."
281 test "$with_file_coding" = yes && echo "  Compiling in support for file coding."
282 test "$with_xim" != no && echo "  Compiling in support for XIM (X11R5+ I18N input method)."
283 test "$with_xim" = motif && echo "    - Using Motif to provide XIM support."
284 test "$with_xim" = xlib && echo "    - Using raw Xlib to provide XIM support."
285 test "$with_xfs" = yes && echo "    - Using XFontSet to provide bilingual menubar."
286 test "$with_canna" = yes && echo "  Compiling in support for Canna on Mule."
287 if test "$with_wnn" = yes; then
288   echo "  Compiling in support for the WNN input method on Mule."
289   test "$with_wnn6" = yes && echo "    - Using WNN version 6."
290 fi
291
292 echo "
293 Mail:"
294 test "$with_pop" = yes && echo "  Compiling in support for POP mail retrieval."
295 test "$with_kerberos" = yes && echo "  Compiling in support for Kerberos POP authentication."
296 test "$with_hesiod" = yes && echo "  Compiling in support for Hesiod POP server access."
297 test -n "$with_mail_locking" && echo "  Compiling in support for \"$with_mail_locking\" mail spool file locking method."
298
299 echo "
300 Modules:"
301 OG_MULTIARG_SUMMARY([modules], [Dynamic Shared Object Modules], [  ])
302 OG_MULTIARG_SUMMARY([static-modules], [Static Modules], [  ])
303
304 echo "
305 Other Features:"
306 test "$with_ipv6_cname" = no && echo "  Inhibiting IPv6 canonicalization at startup."
307 test "$with_socks" = yes && echo "  Compiling in support for SOCKS."
308 test "$with_dnet" = yes && echo "  Compiling in support for DNET."
309 if test "$with_regex_malloc" = no; then
310   echo "  WARNING: -----------------------------------------------------------"
311   echo "  Using alloca to allocate the failure stack."
312   echo "  It may be impossible to detect stack exhaustion, and you will crash."
313   echo "  Do NOT use this build of SXEmacs for ordinary work."
314   echo "  WARNING: -----------------------------------------------------------"
315 fi
316 test "$with_pdump" = yes && echo "  Using the new portable dumper."
317 test "$with_debug" = yes && echo "  Compiling in support for extra debugging code."
318 test "$usage_tracking" = yes && echo "  Compiling in support for active usage tracking (Sun internal)."
319 echo ""
320
321 ## explanation for flags
322 echo "Footnotes:"
323 echo "  + means not requested but enabled"
324 echo "  * means requested but disabled"
325 echo ""
326
327 ## bogus configure opts
328 if test -n "$bogus_cmd_opts"; then
329         echo "The following option were unrecognised and will be ignored:
330 ----------------------------------------------------------"
331         echo "$bogus_cmd_opts"
332         echo ""
333         echo "I'm tempted to remove the entire directory now ..."
334         echo "... fortunately I think I'm in a good mood, so have a nice build anyway."
335 else
336         echo "No bogus options. Have a nice build :)"
337 fi
338 echo ""
339 ) | tee -a Installation
340 dnl echo "The above configure report is appended to \"Installation\" file."
341
342         popdef([CODENAME])
343 ])dnl SXE_SUMMARY
344
345 dnl sxe-summary.m4 ends here