diff options
| author | Glenn Morris | 2010-06-10 20:35:40 -0700 |
|---|---|---|
| committer | Glenn Morris | 2010-06-10 20:35:40 -0700 |
| commit | 338648ad799881124b517183ebbe0984b0656d92 (patch) | |
| tree | 6c5c523795212f79949e6058b6ad2cdc76767407 | |
| parent | 3ef0a6a5fef081f5ea7e43cce7a1fc6bbcfbc012 (diff) | |
| download | emacs-338648ad799881124b517183ebbe0984b0656d92.tar.gz emacs-338648ad799881124b517183ebbe0984b0656d92.zip | |
Make compressing the info files optional.
* configure.in (--without-compress-info): New option.
(GZIP_INFO): New output variable.
* Makefile.in (GZIP_INFO): New, set by configure.
(install-arch-indep): Don't gzip info pages if GZIP_INFO is nil.
Handle man pages in the same way.
* etc/NEWS: Re-order installation section, and add new item.
| -rw-r--r-- | ChangeLog | 9 | ||||
| -rw-r--r-- | INSTALL | 257 | ||||
| -rw-r--r-- | Makefile.in | 10 | ||||
| -rw-r--r-- | configure.in | 10 | ||||
| -rw-r--r-- | etc/NEWS | 10 |
5 files changed, 154 insertions, 142 deletions
| @@ -1,3 +1,12 @@ | |||
| 1 | 2010-06-11 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * configure.in (--without-compress-info): New option. | ||
| 4 | (GZIP_INFO): New output variable. | ||
| 5 | |||
| 6 | * Makefile.in (GZIP_INFO): New, set by configure. | ||
| 7 | (install-arch-indep): Don't gzip info pages if GZIP_INFO is nil. | ||
| 8 | Handle man pages in the same way. | ||
| 9 | |||
| 1 | 2010-06-10 Glenn Morris <rgm@gnu.org> | 10 | 2010-06-10 Glenn Morris <rgm@gnu.org> |
| 2 | 11 | ||
| 3 | * Makefile.in (install-arch-indep): Gzip the info files too. | 12 | * Makefile.in (install-arch-indep): Gzip the info files too. |
| @@ -6,31 +6,37 @@ See the end of the file for license conditions. | |||
| 6 | 6 | ||
| 7 | 7 | ||
| 8 | This file contains general information. For more specific information | 8 | This file contains general information. For more specific information |
| 9 | for the Windows, GNUstep/Mac OS X, and MS-DOS ports, also see the files | 9 | for the MS-Windows, GNUstep/Mac OS X, and MS-DOS ports, also see the files |
| 10 | nt/INSTALL nextstep/INSTALL, and msdos/INSTALL. For information | 10 | nt/INSTALL, nextstep/INSTALL, and msdos/INSTALL. For information |
| 11 | specific to building from a Bazaar checkout (rather than a release), see | 11 | specific to building from a Bazaar checkout (rather than a release), see |
| 12 | the file INSTALL.BZR. | 12 | the file INSTALL.BZR. |
| 13 | 13 | ||
| 14 | 14 | ||
| 15 | BASIC INSTALLATION | 15 | BASIC INSTALLATION |
| 16 | 16 | ||
| 17 | The simplest way to build Emacs is to use the `configure' shell script | 17 | On most Unix systems, you can build Emacs by first running the |
| 18 | which attempts to guess correct values for various system-dependent | 18 | `configure' shell script. This attempts to deduce correct values for |
| 19 | variables and features and find the directories where various system | 19 | various system-dependent variables and features, and find the |
| 20 | headers and libraries are kept. It then creates a `Makefile' in each | 20 | directories where certain system headers and libraries are kept. |
| 21 | subdirectory and a `config.h' file containing system-dependent | 21 | In a few cases, you may need to explicitly tell configure where to |
| 22 | definitions. Running the `make' utility then builds the package for | 22 | find some things, or what options to use. |
| 23 | your system. | ||
| 24 | 23 | ||
| 25 | Here's the procedure to build Emacs using `configure' on systems which | 24 | `configure' creates a `Makefile' in several subdirectories, and a |
| 26 | are supported by it. If this simplified procedure fails, or if you | 25 | `src/config.h' file containing system-dependent definitions. |
| 27 | are using a platform such as MS-Windows, where `configure' script | 26 | Running the `make' utility then builds the package for your system. |
| 28 | doesn't work, you might need to use various non-default options, and | ||
| 29 | maybe perform some of the steps manually. The more detailed | ||
| 30 | description in the rest of the sections of this guide will help you do | ||
| 31 | that, so please refer to them if the simple procedure does not work. | ||
| 32 | 27 | ||
| 33 | 1. Make sure your system has at least 120 MB of free disk space. | 28 | Here's the procedure to build Emacs using `configure' on systems which |
| 29 | are supported by it. In rare cases, if the simplified procedure fails, | ||
| 30 | you might need to use various non-default options, and maybe perform | ||
| 31 | some of the steps manually. The more detailed description in the rest | ||
| 32 | of the sections of this guide will help you do that, so please refer | ||
| 33 | to those sections if you need to. | ||
| 34 | |||
| 35 | 1. Make sure your system has at least 230 MB of free disk space. | ||
| 36 | This is for Emacs 23.2; Emacs gets bigger as more features are added. | ||
| 37 | The size of the final installed Emacs is about half this; see below. | ||
| 38 | This includes the space-saving that comes from automatically | ||
| 39 | compressing the Lisp source files on installation. | ||
| 34 | 40 | ||
| 35 | 2a. `cd' to the directory where you unpacked Emacs and invoke the | 41 | 2a. `cd' to the directory where you unpacked Emacs and invoke the |
| 36 | `configure' script: | 42 | `configure' script: |
| @@ -52,17 +58,18 @@ that, so please refer to them if the simple procedure does not work. | |||
| 52 | system names, wrong places for headers or libraries, missing | 58 | system names, wrong places for headers or libraries, missing |
| 53 | libraries that you know are installed on your system, etc. | 59 | libraries that you know are installed on your system, etc. |
| 54 | 60 | ||
| 55 | If you find anything wrong, you will have to pass to `configure' | 61 | If you find anything wrong, you may have to pass to `configure' |
| 56 | explicit machine configuration name, and one or more options | 62 | one or more options specifying the explicit machine configuration |
| 57 | which tell it where to find various headers and libraries; refer | 63 | name, where to find various headers and libraries, etc. |
| 58 | to DETAILED BUILDING AND INSTALLATION section below. | 64 | Refer to the section DETAILED BUILDING AND INSTALLATION below. |
| 59 | 65 | ||
| 60 | If `configure' didn't find some image support libraries, such as | 66 | If `configure' didn't find some (optional) image support libraries, |
| 61 | Xpm, jpeg, etc., and you want to use them refer to the subsection | 67 | such as Xpm, jpeg, etc., and you want to use them refer to the |
| 62 | "Image support libraries", below. | 68 | subsection "Image support libraries" below. |
| 63 | 69 | ||
| 64 | If the details printed by `configure' don't make any sense to | 70 | If the details printed by `configure' don't make any sense to |
| 65 | you, assume that `configure' did its job and proceed. | 71 | you, but there are no obvious errors, assume that `configure' did |
| 72 | its job and proceed. | ||
| 66 | 73 | ||
| 67 | 4. If you need to run the `configure' script more than once (e.g., | 74 | 4. If you need to run the `configure' script more than once (e.g., |
| 68 | with some non-default options), always clean the source | 75 | with some non-default options), always clean the source |
| @@ -79,7 +86,7 @@ that, so please refer to them if the simple procedure does not work. | |||
| 79 | in the `src' directory. You can try this program, to make sure | 86 | in the `src' directory. You can try this program, to make sure |
| 80 | it works: | 87 | it works: |
| 81 | 88 | ||
| 82 | src/emacs -q | 89 | src/emacs -Q |
| 83 | 90 | ||
| 84 | 7. Assuming that the program `src/emacs' starts and displays its | 91 | 7. Assuming that the program `src/emacs' starts and displays its |
| 85 | opening screen, you can install the program and its auxiliary | 92 | opening screen, you can install the program and its auxiliary |
| @@ -93,9 +100,13 @@ that, so please refer to them if the simple procedure does not work. | |||
| 93 | 100 | ||
| 94 | make clean | 101 | make clean |
| 95 | 102 | ||
| 96 | You can also save some space by compressing (with `gzip') Info files | 103 | You can delete the entire build directory if you do not plan to |
| 97 | and installed Lisp source (.el) files which have corresponding .elc | 104 | build Emacs again. |
| 98 | versions. | 105 | |
| 106 | Note that the install automatically saves space by compressing | ||
| 107 | (provided you have the `gzip' program) those installed Lisp source (.el) | ||
| 108 | files that have corresponding .elc versions. You may also wish | ||
| 109 | to compress the installed Info files. | ||
| 99 | 110 | ||
| 100 | 111 | ||
| 101 | ADDITIONAL DISTRIBUTION FILES | 112 | ADDITIONAL DISTRIBUTION FILES |
| @@ -157,19 +168,15 @@ download and build libraries from sources. None of them are vital for | |||
| 157 | running Emacs; however, note that Emacs will not be able to use | 168 | running Emacs; however, note that Emacs will not be able to use |
| 158 | colored icons in the toolbar if XPM support is not compiled in. | 169 | colored icons in the toolbar if XPM support is not compiled in. |
| 159 | 170 | ||
| 160 | Here's the list of these optional libraries, and the URLs where they | 171 | Here's the list of some of these optional libraries, and the URLs |
| 161 | can be found: | 172 | where they can be found (in the unlikely event that your distribution |
| 173 | does not provide them): | ||
| 162 | 174 | ||
| 163 | . libXaw3d for fancy 3D-style | 175 | . libXaw3d http://directory.fsf.org/project/xaw3d/ |
| 164 | scroll bars: ftp://ftp.x.org/contrib/widgets/Xaw3d/ | 176 | . libxpm for XPM: http://www.x.org/releases/current/src/lib/ |
| 165 | . libxpm for XPM: ftp://ftp.x.org/contrib/libraries/ | 177 | . libpng for PNG: http://www.libpng.org/ |
| 166 | Get version 3.4k or later, which lets Emacs | ||
| 167 | use its own color allocation functions. | ||
| 168 | . libpng for PNG: ftp://ftp.simplesystems.org/pub/libpng/png/ | ||
| 169 | . libz (for PNG): http://www.zlib.net/ | 178 | . libz (for PNG): http://www.zlib.net/ |
| 170 | . libjpeg for JPEG: ftp://ftp.uu.net/graphics/jpeg/ | 179 | . libjpeg for JPEG: http://www.ijg.org/ (use a version newer than 6a) |
| 171 | Get version 6b -- 6a is reported to fail in | ||
| 172 | Emacs. | ||
| 173 | . libtiff for TIFF: http://www.libtiff.org/ | 180 | . libtiff for TIFF: http://www.libtiff.org/ |
| 174 | . libgif for GIF: http://sourceforge.net/projects/giflib/ | 181 | . libgif for GIF: http://sourceforge.net/projects/giflib/ |
| 175 | 182 | ||
| @@ -183,29 +190,22 @@ configure should avoid such old versions. If that happens, use the | |||
| 183 | * Extra fonts | 190 | * Extra fonts |
| 184 | 191 | ||
| 185 | The Emacs distribution does not include fonts and does not install | 192 | The Emacs distribution does not include fonts and does not install |
| 186 | them. You must do that yourself. | 193 | them. You must do that yourself, if you need more fonts than your |
| 194 | distribution normally provides. | ||
| 187 | 195 | ||
| 188 | Emacs running on the GNU system supports both X fonts and local fonts | 196 | Emacs running on the GNU system supports both X fonts and local fonts |
| 189 | (i.e. the fonts managed by the fontconfig library). | 197 | (i.e. the fonts managed by the fontconfig library). |
| 190 | 198 | ||
| 191 | For `Unicode' (ISO 10646) X fonts, see | 199 | For `Unicode' (ISO 10646) X fonts, see |
| 192 | <URL:http://czyborra.com/unifont/> (packaged in Debian), | 200 | <URL:http://czyborra.com/unifont/> (packaged in Debian), |
| 193 | <URL:http://openlab.ring.gr.jp/efont/> (packaged in Debian). (In | 201 | <URL:http://openlab.ring.gr.jp/efont/> (packaged in Debian). |
| 194 | recent Debian versions, there is an extensive `misc-fixed' iso10646-1 | 202 | (In recent Debian versions, there is an extensive `misc-fixed' |
| 195 | in the default X installation.) Perhaps also see | 203 | iso10646-1 in the default X installation.) Perhaps also see |
| 196 | <URL:http://www.cl.cam.ac.uk/%7Emgk25/ucs-fonts.html>. | 204 | <URL:http://www.cl.cam.ac.uk/%7Emgk25/ucs-fonts.html>. |
| 197 | 205 | ||
| 198 | <URL:http://czyborra.com/charsets/> has basic fonts for Emacs's | 206 | <URL:http://czyborra.com/charsets/> has basic fonts for Emacs's |
| 199 | ISO-8859 charsets. | 207 | ISO-8859 charsets. |
| 200 | 208 | ||
| 201 | XFree86 release 4 (from <URL:ftp://ftp.xfree86.org/pub/XFree86/> and mirrors) | ||
| 202 | contains font support for most, if not all, of the charsets that Emacs | ||
| 203 | currently supports, including iso10646-1 encoded fonts for use with | ||
| 204 | the mule-unicode charsets. The font files should also be usable with | ||
| 205 | older X releases. Note that XFree 4 contains many iso10646-1 fonts | ||
| 206 | with minimal character repertoires, which can cause problems -- see | ||
| 207 | etc/PROBLEMS. | ||
| 208 | |||
| 209 | BDF Unicode fonts etl-unicode.tar.gz are available from | 209 | BDF Unicode fonts etl-unicode.tar.gz are available from |
| 210 | <URL:ftp://ftp.x.org/contrib/fonts/> and | 210 | <URL:ftp://ftp.x.org/contrib/fonts/> and |
| 211 | <URL:ftp://ftp.xfree86.org/pub/mirror/X.Org/contrib/fonts/>. These | 211 | <URL:ftp://ftp.xfree86.org/pub/mirror/X.Org/contrib/fonts/>. These |
| @@ -217,15 +217,17 @@ lists a large number of free Unicode fonts. | |||
| 217 | 217 | ||
| 218 | * GNU/Linux development packages | 218 | * GNU/Linux development packages |
| 219 | 219 | ||
| 220 | Many GNU/Linux systems do not come with development packages by | 220 | Many GNU/Linux systems do not come with development packages by default; |
| 221 | default; they just include the files that you need to run Emacs, but | 221 | they include the files that you need to run Emacs, but not those you |
| 222 | not those you need to compile it. For example, to compile Emacs with | 222 | need to compile it. For example, to compile Emacs with support for X |
| 223 | X11 support, you may need to install the special `X11 development' | 223 | and graphics libraries, you may need to install the `X development' |
| 224 | package. For example, in April 2003, the package names to install | 224 | package(s) and development versions of the jpeg, png, etc. packages. |
| 225 | were `XFree86-devel' and `Xaw3d-devel' on Red Hat. On Debian, the | 225 | |
| 226 | packages necessary to build the installed version should be | 226 | The names of the packages that you need varies according to the |
| 227 | sufficient; they can be installed using `apt-get build-dep emacs21' in | 227 | GNU/Linux distribution that you use, and the options that you want to |
| 228 | Debian 3 and above. | 228 | configure Emacs with. On Debian-based systems, you can install all the |
| 229 | packages needed to build the installed version of Emacs with a command | ||
| 230 | like `apt-get build-dep emacs23'. | ||
| 229 | 231 | ||
| 230 | 232 | ||
| 231 | DETAILED BUILDING AND INSTALLATION: | 233 | DETAILED BUILDING AND INSTALLATION: |
| @@ -240,21 +242,20 @@ a program whose pure code is 1.5 MB and whose data area is at | |||
| 240 | least 2.8 MB and can reach 100 MB or more. If the swapping space is | 242 | least 2.8 MB and can reach 100 MB or more. If the swapping space is |
| 241 | insufficient, you will get an error in the command `temacs -batch -l | 243 | insufficient, you will get an error in the command `temacs -batch -l |
| 242 | loadup dump', found in `./src/Makefile.in', or possibly when | 244 | loadup dump', found in `./src/Makefile.in', or possibly when |
| 243 | running the final dumped Emacs. | 245 | running the final dumped Emacs. (This should not be an issue |
| 246 | on any recent system.) | ||
| 244 | 247 | ||
| 245 | Building Emacs requires about 140 MB of disk space (including the | 248 | Building Emacs requires about 230 MB of disk space (including the |
| 246 | Emacs sources) Once installed, Emacs occupies about 77 MB in the file | 249 | Emacs sources). Once installed, Emacs occupies about 120 MB in the file |
| 247 | system where it is installed; this includes the executable files, Lisp | 250 | system where it is installed; this includes the executable files, Lisp |
| 248 | libraries, miscellaneous data files, and on-line documentation. If | 251 | libraries, miscellaneous data files, and on-line documentation. If |
| 249 | the building and installation take place in different directories, | 252 | the building and installation take place in different directories, |
| 250 | then the installation procedure momentarily requires 140+77 MB. | 253 | then the installation procedure momentarily requires 230+120 MB. |
| 251 | 254 | ||
| 252 | 2) Consult `./etc/MACHINES' to see what configuration name you should | 255 | 2) In the unlikely event that `configure' does not detect your system |
| 253 | give to the `configure' program. That file offers hints for | 256 | type correctly, consult `./etc/MACHINES' to see what --host, --build |
| 254 | getting around some possible installation problems. The file lists | 257 | options you should pass to `configure'. That file also offers hints |
| 255 | many different configurations, but only the part for your machine and | 258 | for getting around some possible installation problems. |
| 256 | operating system is relevant. (The list is arranged in alphabetical | ||
| 257 | order by the vendor name.) | ||
| 258 | 259 | ||
| 259 | 3) You can build Emacs in the top-level Emacs source directory | 260 | 3) You can build Emacs in the top-level Emacs source directory |
| 260 | or in a separate directory. | 261 | or in a separate directory. |
| @@ -262,15 +263,10 @@ or in a separate directory. | |||
| 262 | 3a) To build in the top-level Emacs source directory, go to that | 263 | 3a) To build in the top-level Emacs source directory, go to that |
| 263 | directory and run the program `configure' as follows: | 264 | directory and run the program `configure' as follows: |
| 264 | 265 | ||
| 265 | ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ... | 266 | ./configure [--OPTION[=VALUE]] ... |
| 266 | |||
| 267 | The CONFIGURATION-NAME argument should be a configuration name given | ||
| 268 | in `./etc/MACHINES', with the system version number added at the end. | ||
| 269 | 267 | ||
| 270 | You should try first omitting CONFIGURATION-NAME. This way, | 268 | If `configure' cannot determine your system type, try again |
| 271 | `configure' will try to guess your system type. If it cannot guess, | 269 | specifying the proper --build, --host options explicitly. |
| 272 | or if something goes wrong in building or installing Emacs this way, | ||
| 273 | try again specifying the proper CONFIGURATION-NAME explicitly. | ||
| 274 | 270 | ||
| 275 | If you don't want X support, specify `--with-x=no'. If you omit this | 271 | If you don't want X support, specify `--with-x=no'. If you omit this |
| 276 | option, `configure' will try to figure out for itself whether your | 272 | option, `configure' will try to figure out for itself whether your |
| @@ -283,15 +279,16 @@ is able to find them; these options are necessary if you have your X | |||
| 283 | Window System files installed in unusual places. These options also | 279 | Window System files installed in unusual places. These options also |
| 284 | accept a list of directories, separated with colons. | 280 | accept a list of directories, separated with colons. |
| 285 | 281 | ||
| 282 | [gtk is default] | ||
| 286 | To get more attractive menus, you can specify an X toolkit when you | 283 | To get more attractive menus, you can specify an X toolkit when you |
| 287 | configure Emacs; use the option `--with-x-toolkit=TOOLKIT', where | 284 | configure Emacs; use the option `--with-x-toolkit=TOOLKIT', where |
| 288 | TOOLKIT is `athena', `motif' or `gtk' (`yes' and `lucid' are synonyms | 285 | TOOLKIT is `gtk', `athena', or `motif' (`yes' and `lucid' are synonyms |
| 289 | for `athena'). On some systems, it does not work to use a toolkit | 286 | for `athena'). On some systems, it does not work to use a toolkit |
| 290 | with shared libraries. A free implementation of Motif, called | 287 | with shared libraries. A free implementation of Motif, called |
| 291 | LessTif, is available from <http://www.lesstif.org>. Compiling with | 288 | LessTif, is available from <http://www.lesstif.org>. Compiling with |
| 292 | LessTif or Motif causes a standard File Selection Dialog to pop up | 289 | LessTif or Motif causes a standard File Selection Dialog to pop up |
| 293 | when you invoke file commands with the mouse. You can get fancy | 290 | when you invoke file commands with the mouse. You can get fancy |
| 294 | 3D-style scroll bars, even without LessTif/Motif, if you have the | 291 | 3D-style scroll bars, even without Gtk or LessTif/Motif, if you have the |
| 295 | Xaw3d library installed (see "Image support libraries" above for Xaw3d | 292 | Xaw3d library installed (see "Image support libraries" above for Xaw3d |
| 296 | availability). | 293 | availability). |
| 297 | 294 | ||
| @@ -325,10 +322,10 @@ or more of these options: | |||
| 325 | Use --without-toolkit-scroll-bars to disable LessTif/Motif or Xaw3d | 322 | Use --without-toolkit-scroll-bars to disable LessTif/Motif or Xaw3d |
| 326 | scroll bars. | 323 | scroll bars. |
| 327 | 324 | ||
| 328 | Use --without-xim to inhibit the default use of X Input Methods. In | 325 | Use --without-xim to inhibit the default use of X Input Methods. |
| 329 | this case, the X resource useXIM can be used to turn on use of XIM. | 326 | In this case, the X resource useXIM can be used to turn on use of XIM. |
| 330 | 327 | ||
| 331 | Use --disable-largefile omits support for files larger than 2GB on | 328 | Use --disable-largefile to omit support for files larger than 2GB on |
| 332 | systems which support that. | 329 | systems which support that. |
| 333 | 330 | ||
| 334 | Use --without-sound to disable sound support. | 331 | Use --without-sound to disable sound support. |
| @@ -338,11 +335,11 @@ should put emacs and its data files. This defaults to `/usr/local'. | |||
| 338 | - Emacs (and the other utilities users run) go in PREFIXDIR/bin | 335 | - Emacs (and the other utilities users run) go in PREFIXDIR/bin |
| 339 | (unless the `--exec-prefix' option says otherwise). | 336 | (unless the `--exec-prefix' option says otherwise). |
| 340 | - The architecture-independent files go in PREFIXDIR/share/emacs/VERSION | 337 | - The architecture-independent files go in PREFIXDIR/share/emacs/VERSION |
| 341 | (where VERSION is the version number of Emacs, like `19.27'). | 338 | (where VERSION is the version number of Emacs, like `23.2'). |
| 342 | - The architecture-dependent files go in | 339 | - The architecture-dependent files go in |
| 343 | PREFIXDIR/libexec/emacs/VERSION/CONFIGURATION | 340 | PREFIXDIR/libexec/emacs/VERSION/CONFIGURATION |
| 344 | (where CONFIGURATION is the configuration name, like mips-dec-ultrix4.2), | 341 | (where CONFIGURATION is the configuration name, like |
| 345 | unless the `--exec-prefix' option says otherwise. | 342 | i686-pc-linux-gnu), unless the `--exec-prefix' option says otherwise. |
| 346 | 343 | ||
| 347 | The `--exec-prefix=EXECDIR' option allows you to specify a separate | 344 | The `--exec-prefix=EXECDIR' option allows you to specify a separate |
| 348 | portion of the directory tree for installing architecture-specific | 345 | portion of the directory tree for installing architecture-specific |
| @@ -354,17 +351,16 @@ EXECDIR/bin should be a directory that is normally in users' PATHs. | |||
| 354 | 351 | ||
| 355 | For example, the command | 352 | For example, the command |
| 356 | 353 | ||
| 357 | ./configure mips-dec-ultrix --with-x11 | 354 | ./configure --build=i386-linux-gnu --without-sound |
| 358 | 355 | ||
| 359 | configures Emacs to build for a DECstation running Ultrix, with | 356 | configures Emacs to build for a 32-bit GNU/Linux distribution, |
| 360 | support for the X11 window system. | 357 | without sound. |
| 361 | 358 | ||
| 362 | `configure' doesn't do any compilation or installation | 359 | `configure' doesn't do any compilation or installation itself. |
| 363 | itself. It just creates the files that influence those things: | 360 | It just creates the files that influence those things: |
| 364 | `./Makefile', `lib-src/Makefile', `oldXMenu/Makefile', | 361 | `./Makefile' in the top-level directory and several subdirectories; |
| 365 | `lwlib/Makefile', `src/Makefile', and `./src/config.h'. For details | 362 | and `./src/config.h'. For details on exactly what it does, see the |
| 366 | on exactly what it does, see the section called `CONFIGURATION BY | 363 | section called `CONFIGURATION BY HAND', below. |
| 367 | HAND', below. | ||
| 368 | 364 | ||
| 369 | When it is done, `configure' prints a description of what it did and | 365 | When it is done, `configure' prints a description of what it did and |
| 370 | creates a shell script `config.status' which, when run, recreates the | 366 | creates a shell script `config.status' which, when run, recreates the |
| @@ -436,14 +432,9 @@ Emacs source code in the directory that `configure' is in. | |||
| 436 | To build in a separate directory, you must use a version of `make' | 432 | To build in a separate directory, you must use a version of `make' |
| 437 | that supports the `VPATH' variable, such as GNU `make'. | 433 | that supports the `VPATH' variable, such as GNU `make'. |
| 438 | 434 | ||
| 439 | 3c) Some people try to build in a separate directory by filling | 435 | (Do not try to build in a separate directory by creating many links |
| 440 | it full of symlinks to the files in the real source directory. | 436 | to the real source directory -- there is no need, and installation |
| 441 | If you do that, `make all' does work, but `make install' fails: | 437 | will fail.) |
| 442 | it copies the symbolic links rather than the actual files. | ||
| 443 | |||
| 444 | As far as is known, there is no particular reason to use | ||
| 445 | a directory full of links rather than use the standard GNU | ||
| 446 | facilities to build in a separate directory (see 3b above). | ||
| 447 | 438 | ||
| 448 | 4) Look at `./lisp/paths.el'; if some of those values are not right | 439 | 4) Look at `./lisp/paths.el'; if some of those values are not right |
| 449 | for your system, set up the file `./lisp/site-init.el' with Emacs | 440 | for your system, set up the file `./lisp/site-init.el' with Emacs |
| @@ -454,7 +445,7 @@ rather than `defvar', as used by `./lisp/paths.el'. For example, | |||
| 454 | (setq news-inews-program "/usr/bin/inews") | 445 | (setq news-inews-program "/usr/bin/inews") |
| 455 | 446 | ||
| 456 | is how you would override the default value of the variable | 447 | is how you would override the default value of the variable |
| 457 | news-inews-program (which is "/usr/local/inews"). | 448 | news-inews-program. |
| 458 | 449 | ||
| 459 | Before you override a variable this way, *look at the value* that the | 450 | Before you override a variable this way, *look at the value* that the |
| 460 | variable gets by default! Make sure you know what kind of value the | 451 | variable gets by default! Make sure you know what kind of value the |
| @@ -473,18 +464,11 @@ If you set load-path to a different value in site-init.el or | |||
| 473 | site-load.el, Emacs will use *precisely* that value when it starts up | 464 | site-load.el, Emacs will use *precisely* that value when it starts up |
| 474 | again. If you do this, you are on your own! | 465 | again. If you do this, you are on your own! |
| 475 | 466 | ||
| 476 | Note that, on some systems, the code you place in site-init.el must | ||
| 477 | not use expand-file-name or any other function which may look | ||
| 478 | something up in the system's password and user information database. | ||
| 479 | See `./etc/PROBLEMS' for more details on which systems this affects. | ||
| 480 | |||
| 481 | The `site-*.el' files are nonexistent in the distribution. You do not | 467 | The `site-*.el' files are nonexistent in the distribution. You do not |
| 482 | need to create them if you have nothing to put in them. | 468 | need to create them if you have nothing to put in them. |
| 483 | 469 | ||
| 484 | 6) Refer to the file `./etc/TERMS' for information on fields you may | 470 | 6) Refer to the file `./etc/TERMS' for information on fields you may |
| 485 | wish to add to various termcap entries. The files `./etc/termcap.ucb' | 471 | wish to add to various termcap entries. |
| 486 | and `./etc/termcap.dat' may already contain appropriately-modified | ||
| 487 | entries. | ||
| 488 | 472 | ||
| 489 | 7) Run `make' in the top directory of the Emacs distribution to finish | 473 | 7) Run `make' in the top directory of the Emacs distribution to finish |
| 490 | building Emacs in the standard way. The final executable file is | 474 | building Emacs in the standard way. The final executable file is |
| @@ -498,11 +482,11 @@ are installed in the following directories: | |||
| 498 | 482 | ||
| 499 | `/usr/local/bin' holds the executable programs users normally run - | 483 | `/usr/local/bin' holds the executable programs users normally run - |
| 500 | `emacs', `etags', `ctags', `b2m', `emacsclient', | 484 | `emacs', `etags', `ctags', `b2m', `emacsclient', |
| 501 | and `rcs-checkin'. | 485 | `grep-changelog', and `rcs-checkin'. |
| 502 | 486 | ||
| 503 | `/usr/local/share/emacs/VERSION/lisp' holds the Emacs Lisp library; | 487 | `/usr/local/share/emacs/VERSION/lisp' holds the Emacs Lisp library; |
| 504 | `VERSION' stands for the number of the Emacs version | 488 | `VERSION' stands for the number of the Emacs version |
| 505 | you are installing, like `18.59' or `19.27'. Since the | 489 | you are installing, like `23.1' or `23.2'. Since the |
| 506 | Lisp library changes from one version of Emacs to | 490 | Lisp library changes from one version of Emacs to |
| 507 | another, including the version number in the path | 491 | another, including the version number in the path |
| 508 | allows you to have several versions of Emacs installed | 492 | allows you to have several versions of Emacs installed |
| @@ -510,18 +494,17 @@ are installed in the following directories: | |||
| 510 | make Emacs unavailable while installing a new version. | 494 | make Emacs unavailable while installing a new version. |
| 511 | 495 | ||
| 512 | `/usr/local/share/emacs/VERSION/etc' holds the Emacs tutorial, the DOC | 496 | `/usr/local/share/emacs/VERSION/etc' holds the Emacs tutorial, the DOC |
| 513 | file, the `yow' database, and other | 497 | file, and other architecture-independent files Emacs |
| 514 | architecture-independent files Emacs might need while | 498 | might need while running. |
| 515 | running. VERSION is as specified for `.../lisp'. | ||
| 516 | 499 | ||
| 517 | `/usr/local/libexec/emacs/VERSION/CONFIGURATION-NAME' contains executable | 500 | `/usr/local/libexec/emacs/VERSION/CONFIGURATION-NAME' contains executable |
| 518 | programs used by Emacs that users are not expected to | 501 | programs used by Emacs that users are not expected to |
| 519 | run themselves. | 502 | run themselves. |
| 520 | `VERSION' is the number of the Emacs version you are | 503 | `VERSION' is the number of the Emacs version you are |
| 521 | installing, and `CONFIGURATION-NAME' is the argument | 504 | installing, and `CONFIGURATION-NAME' is the value |
| 522 | you gave to the `configure' program to identify the | 505 | deduced by the `configure' program to identify the |
| 523 | architecture and operating system of your machine, | 506 | architecture and operating system of your machine, |
| 524 | like `mips-dec-ultrix' or `sparc-sun-sunos'. Since | 507 | like `i686-pc-linux-gnu' or `sparc-sun-sunos'. Since |
| 525 | these files are specific to the version of Emacs, | 508 | these files are specific to the version of Emacs, |
| 526 | operating system, and architecture in use, including | 509 | operating system, and architecture in use, including |
| 527 | the configuration name in the path allows you to have | 510 | the configuration name in the path allows you to have |
| @@ -533,10 +516,9 @@ are installed in the following directories: | |||
| 533 | `/usr/local/share/info' holds the on-line documentation for Emacs, | 516 | `/usr/local/share/info' holds the on-line documentation for Emacs, |
| 534 | known as "info files". Many other GNU programs are | 517 | known as "info files". Many other GNU programs are |
| 535 | documented using info files as well, so this directory | 518 | documented using info files as well, so this directory |
| 536 | stands apart from the other, Emacs-specific | 519 | stands apart from the other, Emacs-specific directories. |
| 537 | directories. | ||
| 538 | 520 | ||
| 539 | `/usr/local/man/man1' holds the man pages for the programs installed | 521 | `/usr/local/share/man/man1' holds the man pages for the programs installed |
| 540 | in `/usr/local/bin'. | 522 | in `/usr/local/bin'. |
| 541 | 523 | ||
| 542 | Any version of Emacs, whether installed or not, also looks for Lisp | 524 | Any version of Emacs, whether installed or not, also looks for Lisp |
| @@ -599,10 +581,9 @@ Here is a complete list of the variables you may want to set. | |||
| 599 | defaults to /usr/local/share. We create the following | 581 | defaults to /usr/local/share. We create the following |
| 600 | subdirectories under `datadir': | 582 | subdirectories under `datadir': |
| 601 | - `emacs/VERSION/lisp', containing the Emacs Lisp library, and | 583 | - `emacs/VERSION/lisp', containing the Emacs Lisp library, and |
| 602 | - `emacs/VERSION/etc', containing the Emacs tutorial, the DOC | 584 | - `emacs/VERSION/etc', containing the tutorials, DOC file, etc. |
| 603 | file, and the `yow' database. | ||
| 604 | `VERSION' is the number of the Emacs version you are installing, | 585 | `VERSION' is the number of the Emacs version you are installing, |
| 605 | like `18.59' or `19.0'. Since these files vary from one version | 586 | like `23.1' or `23.2'. Since these files vary from one version |
| 606 | of Emacs to another, including the version number in the path | 587 | of Emacs to another, including the version number in the path |
| 607 | allows you to have several versions of Emacs installed at the | 588 | allows you to have several versions of Emacs installed at the |
| 608 | same time; this means that you don't have to make Emacs | 589 | same time; this means that you don't have to make Emacs |
| @@ -615,23 +596,25 @@ Here is a complete list of the variables you may want to set. | |||
| 615 | programs used by Emacs that users are not expected to run | 596 | programs used by Emacs that users are not expected to run |
| 616 | themselves. | 597 | themselves. |
| 617 | `VERSION' is the number of the Emacs version you are installing, | 598 | `VERSION' is the number of the Emacs version you are installing, |
| 618 | and `CONFIGURATION-NAME' is the argument you gave to the | 599 | and `CONFIGURATION-NAME' is the value deduced by the |
| 619 | `configure' program to identify the architecture and operating | 600 | `configure' program to identify the architecture and operating |
| 620 | system of your machine, like `mips-dec-ultrix' or | 601 | system of your machine, like `i686-pc-linux-gnu' or `sparc-sun-sunos'. |
| 621 | `sparc-sun-sunos'. Since these files are specific to the version | 602 | Since these files are specific to the version of Emacs, |
| 622 | of Emacs, operating system, and architecture in use, including | 603 | operating system, and architecture in use, including the |
| 623 | the configuration name in the path allows you to have several | 604 | configuration name in the path allows you to have several |
| 624 | versions of Emacs for any mix of machines and operating systems | 605 | versions of Emacs for any mix of machines and operating |
| 625 | installed at the same time; this is useful for sites at which | 606 | systems installed at the same time; this is useful for sites |
| 626 | different kinds of machines share the file system Emacs is | 607 | at which different kinds of machines share the file system |
| 627 | installed on. | 608 | Emacs is installed on. |
| 628 | 609 | ||
| 629 | `infodir' indicates where to put the info files distributed with | 610 | `infodir' indicates where to put the info files distributed with |
| 630 | Emacs; it defaults to `/usr/local/share/info'. | 611 | Emacs; it defaults to `/usr/local/share/info'. |
| 631 | 612 | ||
| 632 | `mandir' indicates where to put the man pages for Emacs and its | 613 | `mandir' indicates where to put the man pages for Emacs and its |
| 633 | utilities (like `etags'); it defaults to | 614 | utilities (like `etags'); it defaults to |
| 634 | `/usr/local/man/man1'. | 615 | `/usr/local/share/man/man1'. |
| 616 | |||
| 617 | [here] | ||
| 635 | 618 | ||
| 636 | `manext' gives the extension the man pages should be installed with. | 619 | `manext' gives the extension the man pages should be installed with. |
| 637 | It should contain a period, followed by the appropriate | 620 | It should contain a period, followed by the appropriate |
diff --git a/Makefile.in b/Makefile.in index d80bd1c1936..abb8d9d5005 100644 --- a/Makefile.in +++ b/Makefile.in | |||
| @@ -243,6 +243,8 @@ INSTALL_STRIP = | |||
| 243 | 243 | ||
| 244 | # We use gzip to compress installed .el files. | 244 | # We use gzip to compress installed .el files. |
| 245 | GZIP_PROG = @GZIP_PROG@ | 245 | GZIP_PROG = @GZIP_PROG@ |
| 246 | # If non-nil, gzip the installed Info and man pages. | ||
| 247 | GZIP_INFO = @GZIP_INFO@ | ||
| 246 | 248 | ||
| 247 | # ============================= Targets ============================== | 249 | # ============================= Targets ============================== |
| 248 | 250 | ||
| @@ -580,8 +582,9 @@ install-arch-indep: mkdir info install-etc | |||
| 580 | for f in `ls $$elt $$elt-[1-9] $$elt-[1-9][0-9] 2>/dev/null`; do \ | 582 | for f in `ls $$elt $$elt-[1-9] $$elt-[1-9][0-9] 2>/dev/null`; do \ |
| 581 | ${INSTALL_DATA} $$f $(DESTDIR)${infodir}/$$f; \ | 583 | ${INSTALL_DATA} $$f $(DESTDIR)${infodir}/$$f; \ |
| 582 | chmod a+r $(DESTDIR)${infodir}/$$f; \ | 584 | chmod a+r $(DESTDIR)${infodir}/$$f; \ |
| 583 | [ -n "${GZIP_PROG}" ] && \ | 585 | if [ -n "${GZIP_INFO}" ] && [ -n "${GZIP_PROG}" ]; then \ |
| 584 | ${GZIP_PROG} -9n $(DESTDIR)${infodir}/$$f; \ | 586 | ${GZIP_PROG} -9n $(DESTDIR)${infodir}/$$f; \ |
| 587 | else true; fi; \ | ||
| 585 | done; \ | 588 | done; \ |
| 586 | done); \ | 589 | done); \ |
| 587 | else true; fi | 590 | else true; fi |
| @@ -601,7 +604,10 @@ install-arch-indep: mkdir info install-etc | |||
| 601 | for page in ${MAN_PAGES}; do \ | 604 | for page in ${MAN_PAGES}; do \ |
| 602 | (cd $${thisdir}; \ | 605 | (cd $${thisdir}; \ |
| 603 | ${INSTALL_DATA} ${mansrcdir}/$${page} $(DESTDIR)${man1dir}/$${page}; \ | 606 | ${INSTALL_DATA} ${mansrcdir}/$${page} $(DESTDIR)${man1dir}/$${page}; \ |
| 604 | chmod a+r $(DESTDIR)${man1dir}/$${page}); \ | 607 | chmod a+r $(DESTDIR)${man1dir}/$${page}; \ |
| 608 | if [ -n "${GZIP_INFO}" ] && [ -n "${GZIP_PROG}" ]; then \ | ||
| 609 | ${GZIP_PROG} -9n $(DESTDIR)${man1dir}/$${page}; \ | ||
| 610 | else true; fi ); \ | ||
| 605 | done | 611 | done |
| 606 | 612 | ||
| 607 | ## Install those items from etc/ that need to end up elsewhere. | 613 | ## Install those items from etc/ that need to end up elsewhere. |
diff --git a/configure.in b/configure.in index 5de13ff065f..eeb94c6ee2d 100644 --- a/configure.in +++ b/configure.in | |||
| @@ -174,6 +174,16 @@ OPTION_DEFAULT_ON([selinux],[don't compile with SELinux support]) | |||
| 174 | dnl http://lists.gnu.org/archive/html/emacs-devel/2008-04/msg01844.html | 174 | dnl http://lists.gnu.org/archive/html/emacs-devel/2008-04/msg01844.html |
| 175 | OPTION_DEFAULT_ON([makeinfo],[don't require makeinfo for building manuals]) | 175 | OPTION_DEFAULT_ON([makeinfo],[don't require makeinfo for building manuals]) |
| 176 | 176 | ||
| 177 | ## This is an option because I do not know if all info/man support | ||
| 178 | ## compressed files, nor how to test if they do so. | ||
| 179 | OPTION_DEFAULT_ON([compress-info],[don't compress the installed Info pages]) | ||
| 180 | if test $with_compress_info = yes; then | ||
| 181 | GZIP_INFO=yes | ||
| 182 | else | ||
| 183 | GZIP_INFO= | ||
| 184 | fi | ||
| 185 | AC_SUBST(GZIP_INFO) | ||
| 186 | |||
| 177 | AC_ARG_WITH([pkg-config-prog],dnl | 187 | AC_ARG_WITH([pkg-config-prog],dnl |
| 178 | [AS_HELP_STRING([--with-pkg-config-prog=PATH], | 188 | [AS_HELP_STRING([--with-pkg-config-prog=PATH], |
| 179 | [path to pkg-config for finding GTK and librsvg])]) | 189 | [path to pkg-config for finding GTK and librsvg])]) |
| @@ -24,6 +24,13 @@ so we will look at it and add it to the manual. | |||
| 24 | 24 | ||
| 25 | * Installation Changes in Emacs 24.1 | 25 | * Installation Changes in Emacs 24.1 |
| 26 | 26 | ||
| 27 | ** Configure links against libselinux if it is found. | ||
| 28 | You can disable this by using --without-selinux. | ||
| 29 | |||
| 30 | --- | ||
| 31 | ** By default, the installed Info and man pages are compressed. | ||
| 32 | You can disable this by configuring --without-compress-info. | ||
| 33 | |||
| 27 | --- | 34 | --- |
| 28 | ** There are new configure options: | 35 | ** There are new configure options: |
| 29 | --with-mmdf, --with-mail-unlink, --with-mailhost. | 36 | --with-mmdf, --with-mail-unlink, --with-mailhost. |
| @@ -34,9 +41,6 @@ lib-src/Makefile by hand in order to use the associated features. | |||
| 34 | ** There is a new configure option --with-crt-dir. | 41 | ** There is a new configure option --with-crt-dir. |
| 35 | This is only useful if your crt*.o files are in a non-standard location. | 42 | This is only useful if your crt*.o files are in a non-standard location. |
| 36 | 43 | ||
| 37 | ** Configure links against libselinux if it is found. | ||
| 38 | You can disable this by using --without-selinux. | ||
| 39 | |||
| 40 | 44 | ||
| 41 | * Startup Changes in Emacs 24.1 | 45 | * Startup Changes in Emacs 24.1 |
| 42 | 46 | ||