Mercurial > emacs
annotate admin/build-configs @ 95948:d55ec23f052d
*** empty log message ***
| author | Glenn Morris <rgm@gnu.org> |
|---|---|
| date | Sun, 15 Jun 2008 02:53:17 +0000 |
| parents | e6db9ee945b8 |
| children | ce88a631c161 |
| rev | line source |
|---|---|
| 38850 | 1 #! /usr/bin/perl |
|
94833
e6db9ee945b8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79744
diff
changeset
|
2 # Build Emacs in several different configurations. |
| 38850 | 3 |
| 79744 | 4 # Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 |
| 75348 | 5 # Free Software Foundation, Inc. |
|
94833
e6db9ee945b8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79744
diff
changeset
|
6 |
| 38850 | 7 # This file is part of GNU Emacs. |
|
94833
e6db9ee945b8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79744
diff
changeset
|
8 |
|
e6db9ee945b8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79744
diff
changeset
|
9 # GNU Emacs is free software: you can redistribute it and/or modify |
| 38850 | 10 # it under the terms of the GNU General Public License as published by |
|
94833
e6db9ee945b8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79744
diff
changeset
|
11 # the Free Software Foundation, either version 3 of the License, or |
|
e6db9ee945b8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79744
diff
changeset
|
12 # (at your option) any later version. |
|
e6db9ee945b8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79744
diff
changeset
|
13 |
| 38850 | 14 # GNU Emacs is distributed in the hope that it will be useful, |
| 15 # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 17 # GNU General Public License for more details. | |
|
94833
e6db9ee945b8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79744
diff
changeset
|
18 |
| 38850 | 19 # You should have received a copy of the GNU General Public License |
|
94833
e6db9ee945b8
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79744
diff
changeset
|
20 # along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
| 38850 | 21 |
| 22 | |
|
40052
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
23 require 5; |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
24 use Getopt::Long; |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
25 use File::Basename; |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
26 use Cwd; |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
27 |
| 38850 | 28 @configs = |
| 29 ( | |
| 30 ["--without-x", "--optim"], | |
| 31 ["--without-x-toolkit", "--optim"], | |
| 32 ["--without-toolkit-scroll-bars", "--optim"], | |
| 33 ["--with-x-toolkit=lucid", "--optim"], | |
| 34 ["--with-x-toolkit=motif", "--optim"], | |
| 35 ["--with-x-toolkit=motif", "--enable-checking"], | |
| 36 ["--with-x-toolkit=motif", "--gcc3"], | |
| 37 ["--with-x-toolkit=motif", ""], | |
| 38 ); | |
| 39 | |
| 40 $log = "/tmp/$$.out"; | |
| 41 print "Using log file $log\n"; | |
| 42 unlink $log; | |
| 43 | |
| 44 $root = $ENV{"EMACS_ROOT"}; | |
| 45 $root = "/gd/gnu/emacs" unless $root; | |
|
40052
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
46 |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
47 $rc = GetOptions ("help" => \$help); |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
48 if ($rc == 0 || $help) |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
49 { |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
50 print <<USAGE; |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
51 build-configs |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
52 |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
53 Build Emacs in different configurations. |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
54 |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
55 --help show this help |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
56 |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
57 USAGE |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
58 exit 1; |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
59 } |
|
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 # 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
|
62 # containing Emacs, use the default. |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
63 |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
64 while (! -f "src/emacs.c" && cwd () ne "/") |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
65 { |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
66 chdir ".."; |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
67 } |
|
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 chdir $root if cwd () eq "/"; |
|
0f6e6a0405c4
Add --help option. Add support for building
Gerd Moellmann <gerd@gnu.org>
parents:
38850
diff
changeset
|
70 print "Build in ", cwd (), "\n"; |
| 38850 | 71 |
| 72 foreach $config (@configs) | |
| 73 { | |
| 74 my $configure_options = @$config[0]; | |
| 75 my $make_options = @$config[1]; | |
| 76 my $rc; | |
| 77 | |
| 78 print "$configure_options, $make_options\n"; | |
| 79 unlink "config.cache"; | |
| 80 | |
| 81 $rc = system ("$root/configure $configure_options >>$log 2>&1"); | |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
40052
diff
changeset
|
82 if ($rc != 0) |
| 38850 | 83 { |
| 84 print "configure failed\n"; | |
| 85 exit 1; | |
| 86 } | |
| 87 | |
| 88 $rc = system ("make-emacs --all $make_options >>$log 2>&1"); | |
|
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
40052
diff
changeset
|
89 if ($rc != 0) |
| 38850 | 90 { |
| 91 print "Make failed\n"; | |
| 92 exit 1; | |
| 93 } | |
| 94 } | |
| 95 | |
| 96 # Local Variables: | |
| 97 # mode: cperl | |
| 98 # End: | |
| 52401 | 99 |
| 100 # arch-tag: 20a4452d-610a-4e54-9abc-ffe79f5c0d30 |
