s4/build: Indicate whether Samba4 is being built against the system
[Samba/eduardoll.git] / source4 / build / smb_build / summary.pm
blob09f5ff83ce9c4055e06ab12e82f339871a75b7ec
1 # Samba Build System
2 # - write out summary
4 # Copyright (C) Jelmer Vernooij 2006
5 # Released under the GNU GPL
7 package summary;
8 use smb_build::config;
9 use strict;
11 sub enabled($)
13 my ($val) = @_;
15 return (defined($val) && $val =~ m/yes|true/i);
18 sub showitem($$$)
20 my ($output,$desc,$items) = @_;
22 my @need = ();
24 foreach (@$items) {
25 push (@need, $_) if (enabled($config::enable{$_}));
28 print "Support for $desc: ";
29 if ($#need >= 0) {
30 print "no (install " . join(',',@need) . ")\n";
31 } else {
32 print "yes\n";
36 sub showisexternal($$$)
38 my ($output, $desc, $name) = @_;
39 print "Using external $desc: ";
40 if ($output->{$name}->{TYPE} eq "SUBSYSTEM" or
41 $output->{$name}->{TYPE} eq "LIBRARY") {
42 print "no";
43 } else {
44 print "yes";
46 print "\n";
49 sub show($$)
51 my ($output,$config) = @_;
53 print "Summary:\n\n";
54 showitem($output, "SSL in SWAT and LDAP", ["GNUTLS"]);
55 showitem($output, "threads in server (see --with-pthread)", ["PTHREAD"]);
56 showitem($output, "intelligent command line editing", ["READLINE"]);
57 showitem($output, "changing process titles (see --with-setproctitle)", ["SETPROCTITLE"]);
58 showitem($output, "using extended attributes", ["XATTR"]);
59 showitem($output, "using libblkid", ["BLKID"]);
60 showitem($output, "using iconv", ["ICONV"]);
61 showitem($output, "using pam", ["PAM"]);
62 showitem($output, "python bindings", ["LIBPYTHON"]);
63 showisexternal($output, "popt", "LIBPOPT");
64 showisexternal($output, "talloc", "LIBTALLOC");
65 showisexternal($output, "tdb", "LIBTDB");
66 showisexternal($output, "tevent", "LIBTEVENT");
67 showisexternal($output, "ldb", "LIBLDB");
68 showisexternal($output, "heimdal", "HEIMDAL_KRB5");
69 print "Developer mode: ".(enabled($config->{developer})?"yes":"no")."\n";
70 print "Automatic dependencies: ".
71 (enabled($config->{automatic_dependencies})
72 ? "yes" : "no (install GNU make >= 3.81 and see --enable-automatic-dependencies)") .
73 "\n";
75 print "Building shared libraries: " .
76 (enabled($config->{BLDSHARED})
77 ? "yes" : "no (not supported on this system)") .
78 "\n";
79 print "Using shared libraries internally: " .
80 (enabled($config->{USESHARED})
81 ? "yes" : "no (specify --enable-dso)") .
82 "\n";
84 print "\n";