Mercurial > emacs
annotate admin/build-configs @ 42209:2c4fb0cccd48
(describe-coding-system, print-coding-system-briefly): Make printed output have a similar
format as describe-character-set.
author | Werner LEMBERG <wl@gnu.org> |
---|---|
date | Thu, 20 Dec 2001 21:32:26 +0000 |
parents | 0f6e6a0405c4 |
children | 23a1cea22d13 |
rev | line source |
---|---|
38850 | 1 #! /usr/bin/perl |
2 | |
3 # Copyright (C) 2001 Free Software Foundation, Inc. | |
4 # | |
5 # This file is part of GNU Emacs. | |
6 # | |
7 # GNU Emacs is free software; you can redistribute it and/or modify | |
8 # it under the terms of the GNU General Public License as published by | |
9 # the Free Software Foundation; either version 2, or (at your option) | |
10 # any later version. | |
11 # | |
12 # GNU Emacs is distributed in the hope that it will be useful, | |
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 # GNU General Public License for more details. | |
16 # | |
17 # You should have received a copy of the GNU General Public License | |
18 # along with GNU Emacs; see the file COPYING. If not, write to the | |
19 # Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
20 # Boston, MA 02111-1307, USA. | |
21 | |
22 # Build Emacs in several different configurations. | |
23 | |
40052
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
24 require 5; |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
25 use Getopt::Long; |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
26 use File::Basename; |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
27 use Cwd; |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
28 |
38850 | 29 @configs = |
30 ( | |
31 ["--without-x", "--optim"], | |
32 ["--without-x-toolkit", "--optim"], | |
33 ["--without-toolkit-scroll-bars", "--optim"], | |
34 ["--with-x-toolkit=lucid", "--optim"], | |
35 ["--with-x-toolkit=motif", "--optim"], | |
36 ["--with-x-toolkit=motif", "--enable-checking"], | |
37 ["--with-x-toolkit=motif", "--gcc3"], | |
38 ["--with-x-toolkit=motif", ""], | |
39 ); | |
40 | |
41 $log = "/tmp/$$.out"; | |
42 print "Using log file $log\n"; | |
43 unlink $log; | |
44 | |
45 $root = $ENV{"EMACS_ROOT"}; | |
46 $root = "/gd/gnu/emacs" unless $root; | |
40052
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
47 |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
48 $rc = GetOptions ("help" => \$help); |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
49 if ($rc == 0 || $help) |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
50 { |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
51 print <<USAGE; |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
52 build-configs |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
53 |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
54 Build Emacs in different configurations. |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
55 |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
56 --help show this help |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
57 |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
58 USAGE |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
59 exit 1; |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
60 } |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
61 |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
62 # Chdir to the top-level directory of the tree. If not in a tree |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
63 # containing Emacs, use the default. |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
64 |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
65 while (! -f "src/emacs.c" && cwd () ne "/") |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
66 { |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
67 chdir ".."; |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
68 } |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
69 |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
70 chdir $root if cwd () eq "/"; |
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
71 print "Build in ", cwd (), "\n"; |
38850 | 72 |
73 foreach $config (@configs) | |
74 { | |
75 my $configure_options = @$config[0]; | |
76 my $make_options = @$config[1]; | |
77 my $rc; | |
78 | |
79 print "$configure_options, $make_options\n"; | |
80 unlink "config.cache"; | |
81 | |
82 $rc = system ("$root/configure $configure_options >>$log 2>&1"); | |
83 if ($rc != 0) | |
84 { | |
85 print "configure failed\n"; | |
86 exit 1; | |
87 } | |
88 | |
89 $rc = system ("make-emacs --all $make_options >>$log 2>&1"); | |
90 if ($rc != 0) | |
91 { | |
92 print "Make failed\n"; | |
93 exit 1; | |
94 } | |
95 } | |
96 | |
97 # Local Variables: | |
98 # mode: cperl | |
99 # End: |