annotate mac/make-package @ 58175:eeb5474ef89f

(window_scroll_pixel_based, Frecenter): Use move_it_vertically_backward directly. (Frecenter): Fix calculation of new start pos for negative arg. Before, the new start pos was sometimes chosen too far back, so the last line became only partially visible, and thus would be either only semi-visible or automatically scrolled to the middle of the window by redisplay.
author Kim F. Storm <storm@cua.dk>
date Fri, 12 Nov 2004 14:26:53 +0000
parents 695cf19ef79e
children 23a17af379b1 375f2633d815
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
1 #!/bin/sh
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
3 #### make-package: create a Mac OS X package for use by the installer.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
4 #### The installer will place the Emacs OSX application in
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
5 #### /Application/Emacs and the rest of emacs in the usual unix places
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
6 #### under /usr/local or some other location if specified as the first
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
7 #### argument. The disc image will be in the file EmacsInstaller.dmg.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
8 ####
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
9 #### Upon installation, this will leave two versions of emacs on the
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
10 #### computer, 20.7 and 21.1.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
11 ####
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
12 #### Examples:
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
13 #### ./make-package
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
14 #### Will create an installer that will place the emacs support
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
15 #### files inside /usr/local.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
16 #### ./make-package /usr
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
17 #### Will create an installer that will place the emacs support
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
18 #### files inside /usr. This will replace the default version of
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
19 #### emacs included with Mac OS X.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
20
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
21 # Copyright (C) 2002 Free Software Foundation, Inc.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
22 #
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
23 # This file is part of GNU Emacs.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
24 #
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
25 # GNU Emacs is free software; you can redistribute it and/or modify
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
26 # it under the terms of the GNU General Public License as published by
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
27 # the Free Software Foundation; either version 2, or (at your option)
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
28 # any later version.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
29 #
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
30 # GNU Emacs is distributed in the hope that it will be useful,
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
31 # but WITHOUT ANY WARRANTY; without even the implied warranty of
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
32 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
33 # GNU General Public License for more details.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
34 #
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
35 # You should have received a copy of the GNU General Public License
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
36 # along with GNU Emacs; see the file COPYING. If not, write to the
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
37 # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
38 # Boston, MA 02111-1307, USA.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
39 #
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
40 # Contributed by Steven Tamm (steventamm@mac.com).
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
41
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
42 progname="$0"
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
43
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
44 srcdir="`pwd`/.."
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
45 builddir=${srcdir}
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
46
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
47 ## Default location to place it is /usr/local
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
48 prefix=/usr/local
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
49 appsdir=/Applications
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
50 emapp=Emacs.app
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
51 with_config=yes
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
52 with_app=yes
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
53 with_x=no
49005
5c4e830c411b * make-package: Now copies License and ReadMe files into the
Steven Tamm <steventamm@mac.com>
parents: 48990
diff changeset
54 comp_diskimage=no
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
55 self_contained=no
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
56 app_symlink=no
48616
d78591287910 Switched copying of .el files to be on by default.
Steven Tamm <steventamm@mac.com>
parents: 48605
diff changeset
57 full_dist=yes
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
58 build_in_place=no
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
59 keep_directory=no
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
60
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
61 ac_prev=
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
62 display_usage=false;
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
63 config_options=;
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
64 while test $# != 0
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
65 do
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
66 if test -n "$ac_prev"; then
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
67 eval "$ac_prev=\$1"
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
68 ac_prev=
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
69 continue
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
70 fi
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
71 case $1 in
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
72 -help | --help | --hel | --he | -h)
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
73 display_usage=yes ;;
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
74 -p | -prefix | --p | --prefix)
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
75 ac_prev=prefix ;;
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
76 -p=* | -prefix=* | --p=* | --prefix=*)
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
77 prefix=`expr "x$1" : 'x[^=]*=\(.*\)'` ;;
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
78 --build-in-place | --build-in-place )
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
79 build_in_place=yes ;;
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
80 --build-dir | -build-dir | --builddir | -build-dir)
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
81 build_in_place=no
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
82 ac_prev=builddir;;
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
83 --build-dir=* | -build-dir=* | -builddir=* | --builddir=*)
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
84 build_in_place=no
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
85 builddir=`expr "x$1" : 'x[^=]*=\(.*\)'`;;
47782
de56ca3f523d make-package: Now calls make bootstrap if .elc files are missing
Steven Tamm <steventamm@mac.com>
parents: 46297
diff changeset
86 -no-configure | -no-conf | --no-configure | --no-conf | --without-config)
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
87 with_config=no ;;
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
88 -no-app | --no-app | -without-app | --without-app)
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
89 with_app=no ;;
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
90 -without-x | --without-x)
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
91 with_x=no ;;
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
92 -with-x | --with-x)
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
93 with_x=yes
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
94 with_app=no ;;
48616
d78591287910 Switched copying of .el files to be on by default.
Steven Tamm <steventamm@mac.com>
parents: 48605
diff changeset
95 --without-full-dist | -without-full-dist | -no-full-dist | -no-full)
d78591287910 Switched copying of .el files to be on by default.
Steven Tamm <steventamm@mac.com>
parents: 48605
diff changeset
96 full_dist=no ;;
48749
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
97 --self-contained | -self-contained | --with-self-contained-app | -sc)
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
98 self_contained=yes ;;
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
99 -app-symlink | --app-symlink | -symlink | --symlink | --asl)
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
100 app_symlink=yes ;;
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
101 --keep-dir)
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
102 keep_directory=yes ;;
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
103 -C,* | -c,*)
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
104 config_options="$config_options `expr "x$1" : 'x[^,]*,\(.*\)'`" ;;
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
105 -M,* | -m,*)
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
106 make_options="$make_options `expr "x$1" : 'x[^,]*,\(.*\)'`" ;;
48749
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
107 *)
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
108 display_usage=yes ;;
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
109 esac
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
110 shift
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
111 done
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
112
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
113 if test "$with_x" = "no"; then
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
114 config_options="--without-x $config_options"
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
115 fi
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
116
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
117 if test "$display_usage" = "yes"; then
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
118 cat <<EOF
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
119 \`make-package' generates a Mac OS X installer package from an Emacs
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
120 distribution. By default, this first runs ./configure on the emacs
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
121 directory. Then make install to create the emacs distribution.
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
122 Then some mac-specific commands to generate the required information
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
123 for the mac package. The installer will, by default, create a
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
124 Carbon application called Emacs in the ${appsdir} directory, with the
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
125 shared emacs files in /usr/local
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
126
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
127 Usage: $0 [OPTION]
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
128
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
129 Options:
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
130 -h, --help display this help and exit
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
131 --prefix=DIR Set install location for the Mac OS X package
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
132 of the emacs related file. By default /usr/local
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
133 --no-conf Do not run the configure script before running
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
134 make install.
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
135 --without-app Do not create the Emacs application bundle
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
136 --with-x Setup the install to use X Windows for its
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
137 windowed display, instead of carbon. Implies
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
138 --without-app.
48616
d78591287910 Switched copying of .el files to be on by default.
Steven Tamm <steventamm@mac.com>
parents: 48605
diff changeset
139 --without-full-dist Do not include all the .el files in the distribution.
d78591287910 Switched copying of .el files to be on by default.
Steven Tamm <steventamm@mac.com>
parents: 48605
diff changeset
140 This is discouraged except if disk space is critical.
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
141 --app-symlink Have the Emacs.app executable be a symlink
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
142 to the install in [prefix]/bin/emacs and have
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
143 the emacs executable link to emacs-${version}
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
144 --self-contained Create an Emacs.app that is self-contained;
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
145 prefix will be ignored and all files installed
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
146 inside the application
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
147 --build-in-place Build the application in the source directory
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
148 instead of a temporary directory.
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
149 --build-dir=DIR Build the application in the specified directory
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
150 instead of a temporary directory. Mutually exclusive
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
151 with --build-in-place.
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
152 -C,option Pass option to configure
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
153 -M,option Pass option to make
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
154 EOF
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
155 exit 0
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
156 fi
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
157
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
158 ### Exit if a command fails.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
159 #set -e
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
160
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
161 ### Print out each line we read, for debugging's sake.
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
162 #set -v
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
163
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
164 LANGUAGE=C
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
165 LC_ALL=C
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
166 LC_MESSAGES=
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
167 LANG=
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
168 export LANGUAGE LC_ALL LC_MESSAGES LANG
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
169
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
170 ## Don't restrict access to any files.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
171 umask 0
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
172
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
173 ### Make sure we're running in the right place.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
174 if [ -f Emacs.pkg ]; then
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
175 echo "${progname}: Package Emacs.pkg already exists.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
176 Perhaps a previous invocation of \`${progname}' failed to clean up after
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
177 itself. Move or delete Emacs.pkg and try again." >&2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
178 exit 1
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
179 fi
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
180
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
181 if test $with_app == "yes" && [ ! -f ${emapp}/Contents/PkgInfo ]; then
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
182 echo "${progname}: Can't find \`${emapp}/Contents/PkgInfo'" >&2
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
183 echo "${progname} must be run in the \`mac' directory of the Emacs" >&2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
184 echo "distribution tree. cd to that directory and try again." >&2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
185 exit 1
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
186 fi
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
187
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
188 ### Check whether file ../lisp/version.el exists.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
189 if [ ! -f ../lisp/version.el ]; then
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
190 echo "${progname}: Can't find \`../lisp/version.el'" >&2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
191 exit 1
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
192 fi
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
193
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
194 ### Find out which version of Emacs this is.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
195 shortversion=`grep 'defconst[ ]*emacs-version' ../lisp/version.el \
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
196 | sed -e 's/^.*"\([0-9][0-9]*\.[0-9][0-9]*\).*$/\1/'`
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
197 version=`grep 'defconst[ ]*emacs-version' ../lisp/version.el \
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
198 | sed -e 's/^[^"]*"\([^"]*\)".*$/\1/'`
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
199 if [ ! "${version}" ]; then
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
200 echo "${progname}: can't find current Emacs version in \`./lisp/version.el'" >&2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
201 exit 1
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
202 fi
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
203
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
204 echo Version numbers are $version and $shortversion
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
205
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
206 ### Make sure we don't already have a directory emacs-${version}.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
207
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
208 emacsname="emacs-${version}${new_extension}"
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
209
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
210 if [ -d ${emacsname} ]
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
211 then
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
212 echo Directory "${emacsname}" already exists >&2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
213 exit 1
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
214 fi
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
215
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
216 ### Make sure the subdirectory is available.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
217 tempparent="make-package.tmp.$$"
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
218 if [ -d ${tempparent} ]; then
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
219 echo "${progname}: staging directory \`${tempparent}' already exists.
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
220 Perhaps a previous invocation of \`${progname}' failed to clean up after
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
221 itself. Check that directories whose names are of the form
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
222 \`make-dist.tmp.NNNNN' don't contain any important information, remove
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
223 them, and try again." >&2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
224 exit 1
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
225 fi
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
226
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
227 if [ -d /Volumes/Emacs ]; then
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
228 echo "${progname}: Already have an Emacs disc image mounted. Please
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
229 eject that disc image and try again." >&2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
230 exit 1
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
231 fi
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
232
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
233 tempparentfull="`pwd`/${tempparent}"
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
234 tempparentdist=${tempparentfull}/dist
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
235
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
236 if test "$build_in_place" = "no"; then
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
237 case ${builddir} in
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
238 ${srcdir})
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
239 tempbuild="make-package.build.$$"
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
240 builddir="`pwd`/${tempbuild}"
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
241 removable_build_dir=${builddir}
49230
6f94f884d68e * make-package: Fixed problem where the building without
Steven Tamm <steventamm@mac.com>
parents: 49091
diff changeset
242 mkdir -p ${builddir}
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
243 ;;
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
244 [\\/]* | ?:[\\/]* ) #Absolutepath.
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
245 mkdir -p ${builddir}
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
246 ;;
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
247 *)
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
248 mkdir -p ${builddir}
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
249 builddir=`cd $builddir && pwd`
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
250 ;;
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
251 esac
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
252 fi
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
253 # Location of install package
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
254 packagedir=${builddir}/mac/Emacs.pkg
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
255
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
256 echo Building in directory ${builddir}
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
257 echo Installing into directory ${tempparentfull} >&2
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
258
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
259 ### This trap ensures that the staging directory will be cleaned up even
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
260 ### when the script is interrupted in mid-career.
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
261 trap "echo 'Interrupted...cleaning up the staging directory'; rm -rf ${tempparent} ${removable_build_dir} ${packagedir}; exit 1" 1 2 15
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
262
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
263 # Run configure in the new tempparent directory
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
264 if test "$with_config" = "yes"; then
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
265 (cd ${builddir}; ${srcdir}/configure ${config_options} --prefix=${prefix})
46183
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
266 fi
24320eec547a 2002-07-05 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46177
diff changeset
267
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
268 installprefix=${tempparentfull}${prefix}
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
269 if test "$self_contained" = "yes"; then
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
270 # If selfcontained, the local directory is Resources directory
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
271 installprefix=$tempparentfull/$appsdir/$emapp/Contents/Resources
47782
de56ca3f523d make-package: Now calls make bootstrap if .elc files are missing
Steven Tamm <steventamm@mac.com>
parents: 46297
diff changeset
272 fi
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
273
49091
4d9ad5d4f2d4 * INSTALL: Added documentation about --enable-carbon-app and
Steven Tamm <steventamm@mac.com>
parents: 49005
diff changeset
274
4d9ad5d4f2d4 * INSTALL: Added documentation about --enable-carbon-app and
Steven Tamm <steventamm@mac.com>
parents: 49005
diff changeset
275 make_options="prefix=${installprefix} $make_options"
4d9ad5d4f2d4 * INSTALL: Added documentation about --enable-carbon-app and
Steven Tamm <steventamm@mac.com>
parents: 49005
diff changeset
276
4d9ad5d4f2d4 * INSTALL: Added documentation about --enable-carbon-app and
Steven Tamm <steventamm@mac.com>
parents: 49005
diff changeset
277 if test "$with_app" = "yes"; then
4d9ad5d4f2d4 * INSTALL: Added documentation about --enable-carbon-app and
Steven Tamm <steventamm@mac.com>
parents: 49005
diff changeset
278 make_options="carbon_appdir=${tempparentfull}/Applications $make_options"
4d9ad5d4f2d4 * INSTALL: Added documentation about --enable-carbon-app and
Steven Tamm <steventamm@mac.com>
parents: 49005
diff changeset
279 fi
4d9ad5d4f2d4 * INSTALL: Added documentation about --enable-carbon-app and
Steven Tamm <steventamm@mac.com>
parents: 49005
diff changeset
280
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
281 ## Make bootstrap if .elc files are missing from distribution
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
282 if [ ! -f ${srcdir}/lisp/abbrev.elc ]; then
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
283 echo "Required .elc files missing; making bootstrap..."
49091
4d9ad5d4f2d4 * INSTALL: Added documentation about --enable-carbon-app and
Steven Tamm <steventamm@mac.com>
parents: 49005
diff changeset
284 if ! (cd ${builddir}; make bootstrap $make_options); then
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
285 echo "Make bootstrap failed... Aborting make-package."
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
286 exit 2
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
287 fi
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
288 fi
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
289
49091
4d9ad5d4f2d4 * INSTALL: Added documentation about --enable-carbon-app and
Steven Tamm <steventamm@mac.com>
parents: 49005
diff changeset
290 if ! (cd ${builddir}; make install $make_options); then
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
291 echo "Make failed... Aborting make-package."
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
292 exit 1
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
293 fi
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
294
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
295 if test "$full_dist" == "no"; then
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
296 echo "Removing unneeded .el files"
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
297 sharedir=$installprefix/share/emacs/$version
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
298 find $sharedir/lisp $sharedir/leim -name "*.elc" -print | sed 's|\(.*\)\.elc$|/bin/rm -f \1.el|' | /bin/sh -s
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
299 fi
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
300
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
301 if test "$with_app" == "yes"; then
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
302 echo "Creating Emacs.app application"
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
303 tempappdir=${tempparentfull}${appsdir}
48749
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
304 tempemapp=${tempappdir}/${emapp}/Contents/MacOS/Emacs
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
305 ## Delete any CVS files
48789
f433f827b70f Fix syntax for find.
Andreas Schwab <schwab@suse.de>
parents: 48749
diff changeset
306 find ${tempappdir} -name "CVS" -type d -exec rm -rf {} \;
48749
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
307
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
308 ## Have application be a symlink to ${prefix}/bin/emacs
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
309 if test "$app_symlink" == "yes"; then
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
310 echo "Creating application symlink"
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
311 rm ${tempemapp}
48749
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
312 ln -s ${prefix}/bin/${emacsname} ${tempemapp}
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
313 fi
47808
5db3fc34243e * make-package: Added ability to pass command line options
Steven Tamm <steventamm@mac.com>
parents: 47782
diff changeset
314 fi
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
315
50450
33c5c2bf40c2 Place libexec executables directly under the Contents/MacOS/libexec if
Steven Tamm <steventamm@mac.com>
parents: 49600
diff changeset
316 compver=powerpc-apple-darwin`uname -r`
33c5c2bf40c2 Place libexec executables directly under the Contents/MacOS/libexec if
Steven Tamm <steventamm@mac.com>
parents: 49600
diff changeset
317
48749
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
318 if test "$self_contained" = "yes"; then
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
319 # Move shared files down to Resources directory
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
320 mv $installprefix/share/emacs/$version/* $installprefix
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
321 rm -rf $installprefix/share
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
322 # These directories might remain in Resources
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
323 mv $installprefix/bin $installprefix/../MacOS/bin
50450
33c5c2bf40c2 Place libexec executables directly under the Contents/MacOS/libexec if
Steven Tamm <steventamm@mac.com>
parents: 49600
diff changeset
324 mv $installprefix/libexec/emacs/$version/$compver $installprefix/../MacOS/libexec
48749
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
325 # Make the application binary a hard link
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
326 rm $installprefix/../MacOS/Emacs
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
327 ln $installprefix/../MacOS/bin/emacs $installprefix/../MacOS/Emacs
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
328 fi
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
329
94d8efd47824 Now correctly creates a self-contained application
Steven Tamm <steventamm@mac.com>
parents: 48616
diff changeset
330
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
331 # Remove unnecessary .el files
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
332 #if test "$full_dist" = no; then
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
333 #fi
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
334
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
335 echo "Creating Package Info file"
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
336
49230
6f94f884d68e * make-package: Fixed problem where the building without
Steven Tamm <steventamm@mac.com>
parents: 49091
diff changeset
337 mkdir -p ${packagedir}
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
338 mkdir ${packagedir}/Contents
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
339 mkdir ${packagedir}/Contents/Resources
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
340 mkdir ${packagedir}/Contents/Resources/English.lproj
49005
5c4e830c411b * make-package: Now copies License and ReadMe files into the
Steven Tamm <steventamm@mac.com>
parents: 48990
diff changeset
341 echo -n 'pmkrpkg1' > ${packagedir}/Contents/PkgInfo
5c4e830c411b * make-package: Now copies License and ReadMe files into the
Steven Tamm <steventamm@mac.com>
parents: 48990
diff changeset
342
5c4e830c411b * make-package: Now copies License and ReadMe files into the
Steven Tamm <steventamm@mac.com>
parents: 48990
diff changeset
343 # Create ReadMe and License files
5c4e830c411b * make-package: Now copies License and ReadMe files into the
Steven Tamm <steventamm@mac.com>
parents: 48990
diff changeset
344 cp ${srcdir}/COPYING ${packagedir}/Contents/Resources/License.txt
5c4e830c411b * make-package: Now copies License and ReadMe files into the
Steven Tamm <steventamm@mac.com>
parents: 48990
diff changeset
345 cp ${srcdir}/mac/README ${packagedir}/Contents/Resources/ReadMe.txt
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
346
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
347 infofile=${packagedir}/Contents/Resources/English.lproj/Emacs.info
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
348
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
349 echo 'Title GNU Emacs' > ${infofile}
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
350 echo "Version ${version}" >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
351 echo "Description Install GNU Emacs ${version} as a command-line app and a Mac OS Application" >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
352 echo 'DefaultLocation /' >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
353 echo 'DeleteWarning' >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
354 echo 'NeedsAuthorization YES' >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
355 echo 'Required NO' >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
356 echo 'Relocatable NO' >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
357 echo 'RequiresReboot NO' >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
358 echo 'UseUserMask NO' >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
359 echo 'OverwritePermissions NO' >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
360 echo 'InstallFat NO' >> ${infofile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
361
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
362 ### Set the install directory to install files as root...
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
363 ### Not sure if this is a good diea
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
364 # echo "Setting owner to root"
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
365 # chown -Rh 0 ${tempparentfull}
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
366
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
367 echo "Creating pax file"
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
368 (cd ${tempparentfull}; pax -w -f ${packagedir}/Contents/Resources/Emacs.pax .)
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
369 echo "Compressing pax file"
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
370 gzip ${packagedir}/Contents/Resources/Emacs.pax
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
371
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
372 echo "Creating bom file"
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
373 mkbom ${tempparentfull} ${packagedir}/Contents/Resources/Emacs.bom
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
374
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
375 echo "Generating sizes file"
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
376 sizesfile=${packagedir}/Contents/Resources/Emacs.sizes
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
377
48979
81b2338bea6e * make-package: Fix typo where tmpparent was used instead of
Steven Tamm <steventamm@mac.com>
parents: 48789
diff changeset
378 numFiles=`du -a ${tempparent} | wc -l`
81b2338bea6e * make-package: Fix typo where tmpparent was used instead of
Steven Tamm <steventamm@mac.com>
parents: 48789
diff changeset
379 installedSize=`du -s ${tempparent} | cut -f1`
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
380 compressedSize=`du -s ${packagedir} | cut -f1`
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
381
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
382 echo "NumFiles ${numFiles}" > ${sizesfile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
383 echo "InstalledSize ${installedSize}" >> ${sizesfile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
384 echo "CompressedSize ${compressedSize}" >> ${sizesfile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
385 cat ${sizesfile}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
386
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
387 echo "Creating Disc Image"
50724
efd65678bb08 * make-package: Allocate 5% extra space on disk image for directories
Andrew Choi <akochoi@shaw.ca>
parents: 50450
diff changeset
388 ## From hdiutil man page, a sector is 512k. Allocate an extra 5% for
efd65678bb08 * make-package: Allocate 5% extra space on disk image for directories
Andrew Choi <akochoi@shaw.ca>
parents: 50450
diff changeset
389 ## directories and partition tables.
efd65678bb08 * make-package: Allocate 5% extra space on disk image for directories
Andrew Choi <akochoi@shaw.ca>
parents: 50450
diff changeset
390 sectorsAlloced=`echo 2.1*${compressedSize}|bc`
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
391 hdiutil create -ov ${builddir}/mac/EmacsRW -sectors ${sectorsAlloced}
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
392 ## Need to format the disc image before mounting
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
393 mountLoc=`hdid -nomount ${builddir}/mac/EmacsRW.dmg | grep HFS | cut -f1`
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
394 /sbin/newfs_hfs -v Emacs ${mountLoc}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
395 hdiutil eject ${mountLoc}
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
396 echo "Copying Package to Disc Image"
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
397 hdid ${builddir}/mac/EmacsRW.dmg
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
398
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
399 if test "$keep_directory" = "no"; then
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
400 rm -rf ${tempparentfull}
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
401 else
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
402 mv ${tempparentfull} ${emacsname}
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
403 fi
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
404
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
405 if [ ! -d /Volumes/Emacs ]; then
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
406 echo "Could not create disc image. The Emacs installer package (Emacs.pkg)
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 49230
diff changeset
407 in this directory should be correct. Please use the Disc Copy program to
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
408 create a disc image." >&2
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
409 exit 0
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
410 fi
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
411
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
412 cp -R ${packagedir} /Volumes/Emacs
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
413
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
414 ## Converting Disk Image to read-only
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
415 echo 'Converting Disc Image to read-only'
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
416 hdiutil eject ${mountLoc}
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
417 hdiutil resize ${builddir}/mac/EmacsRW.dmg -sectors min
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
418 if test "$comp_diskimage" = "yes"; then
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
419 hdiutil convert ${builddir}/mac/EmacsRW.dmg -format UDZO -imagekey zlib-level=2 -o ${srcdir}/mac/EmacsInstaller.dmg
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
420 else
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
421 hdiutil convert ${builddir}/mac/EmacsRW.dmg -format UDRO -o ${srcdir}/mac/EmacsInstaller.dmg
48603
ac86b769c135 Added a lot of options to reduce disk size of both the installer and the final
Steven Tamm <steventamm@mac.com>
parents: 47876
diff changeset
422 fi
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
423 rm ${builddir}/mac/EmacsRW.dmg
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
424
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
425 echo "Cleaning up the staging directory"
48990
dfea5194194f * make-package: Defaults to building the source tree in a
Steven Tamm <steventamm@mac.com>
parents: 48979
diff changeset
426 rm -rf ${builddir}/mac/Emacs.pkg ${removable_build_dir}
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
427
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 50724
diff changeset
428 # arch-tag: 1b631d0d-9fde-4f71-80c0-33e0e5815515
46177
76bedba7ffd6 2002-07-04 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
429 ### make-package ends here