Mercurial > emacs
annotate INSTALL.CVS @ 54341:80dfe07a1d65
New file (image.c) for Image consolidation:
(COLOR_TABLE_SUPPORT): New define to control whether
color table support is available (X only).
(Bitmap_Record): Common name for x_bitmap_record,
w32_bitmap_record, and mac_bitmap_record.
(XImagePtr): Common name for pointer to XImage or equivalent.
(XImagePtr_or_DC): New type to simplify code sharing; equivalent
to XImagePtr on X+MAC, and to HDC on W32.
(GET_PIXEL): Wrapper for XGetPixel or equivalent.
(NO_PIXMAP): Common name for "None" or equivalent.
(PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
(RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
(PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
(FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen): Define
with suitable equivalents on W32 and MAC for code sharing.
(XDrawLine): Define on MAC for code sharing.
(Destroy_Image, Free_Pixmap): Wrappers for code sharing.
(IF_LIB_AVAILABLE): Macro to simplify code sharing.
(Vx_bitmap_file_path, Vimage_cache_eviction_delay)
(x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
(x_reference_bitmap, x_create_bitmap_from_data)
(x_create_bitmap_from_file, x_destroy_bitmap)
(x_destroy_all_bitmaps, x_create_bitmap_mask)
(XGetImage, XPutPixel, XGetPixel, XDestroyImage)
(QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
(QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
(Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
(define_image_type, lookup_image_type, valid_image_p)
(image_error, enum image_value_type, struct image_keyword)
(parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
(make_image, free_image, prepare_image_for_display, image_ascent)
(four_corners_best, image_background, image_background_transparent)
(x_clear_image_1, x_clear_image, x_alloc_image_color)
(make_image_cache, free_image_cache, clear_image_cache)
(Fclear_image_cache, postprocess_image, lookup_image, cache_image)
(forall_images_in_image_cache, x_create_x_image_and_pixmap)
(x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
(find_image_fsspec, image_load_qt_1, image_load_quicktime)
(init_image_func_pointer, image_load_quartz2d)
(struct ct_color, init_color_table, free_color_table)
(lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
(cross_disabled_images, x_to_xcolors, x_from_xcolors)
(x_detect_edges, x_emboss, x_laplace, x_edge_detection)
(x_disable_image, x_build_heuristic_mask)
(XBM support, XPM support, PBM support, PNG support, JPEG support)
(TIFF support, GIF support, Ghostscript support): Consolidate image
code from xfns.c, w32fns.c, and macfns.c.
(syms_of_image): Consolidate image related symbol setup here.
(init_image): Consolidate image related initializations here.
author | Kim F. Storm <storm@cua.dk> |
---|---|
date | Thu, 11 Mar 2004 00:28:24 +0000 |
parents | 6a13a0f9d22b |
children | 821beb22a34c |
rev | line source |
---|---|
53439
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
1 Building and Installing Emacs from CVS |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
2 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
3 Some of the files that are included in the Emacs tarball, such as |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
4 byte-compiled Lisp files, are not stored in the CVS repository. |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
5 Therefore, to build from CVS you must run "make bootstrap" |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
6 instead of just "make": |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
7 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
8 $ ./configure |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
9 $ make bootstrap |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
10 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
11 The bootstrap process makes sure all necessary files are rebuilt |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
12 before it builds the final Emacs binary. |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
13 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
14 Normally, it is not necessary to use "make bootstrap" after every CVS |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
15 update. Unless there are problems, we suggest the following |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
16 procedure: |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
17 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
18 $ ./configure |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
19 $ make |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
20 $ cd lisp |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
21 $ make recompile EMACS=../src/emacs |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
22 $ cd .. |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
23 $ make |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
24 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
25 (If you want to install the Emacs binary, type "make install" instead |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
26 of "make" in the last command.) |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
27 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
28 Occasionally the file "lisp/loaddefs.el" will need be updated to reflect |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
29 new autoloaded functions. If you see errors about undefined lisp |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
30 functions during compilation, that may be the reason. Another symptom |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
31 may be an error saying that "loaddefs.el" could not be found; this is |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
32 due to a change in the way loaddefs.el was handled in CVS, and should |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
33 only happen once, for users that are updating old CVS trees. |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
34 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
35 To update loaddefs.el, do: |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
36 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
37 $ cd lisp |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
38 $ make autoloads EMACS=../src/emacs |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
39 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
40 If either of above procedures fails, try "make bootstrap". |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
41 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
42 Users of non-Posix systems (MS-Windows etc.) should run the |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
43 platform-specific configuration scripts (nt/configure.bat, config.bat, |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
44 etc.) before "make bootstrap" or "make"; the rest of the procedure is |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
45 applicable to those systems as well. |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
46 |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
47 Questions, requests, and bug reports about the CVS versions of Emacs |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
48 should be sent to emacs-pretest-bug@gnu.org rather than gnu.emacs.help |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
49 or gnu.emacs.bug. Ideally, use M-x report-emacs-bug RET which will |
19d4dac27e5c
Renamed INSTALL-CVS to INSTALL.CVS to avoid file-name
Eli Zaretskii <eliz@is.elta.co.il>
parents:
diff
changeset
|
50 send it to the proper place. |
54055
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
51 |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
52 |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
53 Note on using SSH to access the CVS repository from inside emacs |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
54 ---------------------------------------------------------------- |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
55 |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
56 Write access to the CVS repository requires using SSH v2. |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
57 |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
58 If you execute cvs commands inside emacs, specifically if you use |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
59 pcl-cvs, output from CVS may be lost due to a problem in the |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
60 interface between ssh, cvs, and emacs. Corrupted checkins are |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
61 also been reported to have happened. |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
62 |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
63 To fix the problem, save the following script into a file, make it |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
64 executable, and set CVS_RSH to the file name of the script: |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
65 |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
66 #!/bin/bash |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
67 exec 2> >(exec cat >&2 2>/dev/null) |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
68 exec ssh "$@" |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
69 |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
70 This may be combined with the following entry in ~/.ssh/config to |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
71 simplify accessing the CVS repository: |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
72 |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
73 Host subversions.gnu.org |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
74 Protocol 2 |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
75 ForwardX11 no |
6a13a0f9d22b
Add info about ssh/cvs related problems and work-around.
Kim F. Storm <storm@cua.dk>
parents:
53439
diff
changeset
|
76 User YOUR_USERID |