Mercurial > emacs
view make-dist @ 974:4f88a1b78a46
* xfns.c (x_get_arg): Return Qunbound for an unspecified
resource, not nil. That way, we can tell the difference between a
false resource and an unspecified resource.
(x_default_error): Use DEFLT if x_get_arg returns Qunbound, not Qnil.
(x_figure_window_size, x_icon, Fx_create_frame): Deal with
Qunbound and Qnil properly.
* xfns.c (Fx_create_frame): Pass the correct number of arguments
to x_set_font.
* xfns.c [not HAVE_X11] (Fx_create_frame): Delete section that's
only included if we *do* have X11. Blind patching.
* xfns.c (x_icon): Rewritten to call x_wm_set_icon_position and
x_wm_set_window_state instead of calling XSetWMHints directly.
(x_wm_set_window_state, x_wm_set_icon_pixmap,
x_wm_set_icon_position): Use x_wm_hints.
(x_term_init): Set the `input' field of x_wm_hints, and its flag.
* xfns.c (x_default_parameter): Don't call store_frame_param here;
it's already taken care of by x_set_frame_parameters.
* xfns.c (Fx_create_frame): Check for the `icon-type',
`auto-raise', and `auto-lower' parameters. Have `icon-type'
default to t, indicating that we want the nifty gnu in our icons.
(Qauto_lower): New symbol.
* xfns.c (x_set_icon_type): UNBLOCK_INPUT before reporting the
error, not after. error doesn't return, sklitch-brain.
* xfns.c (x_set_frame_parameters): Properly recognize changes to
the height of the frame. Recognize changes of the frame's
position.
* xfns.c (x_set_frame_parameters): Iterate over ALIST while the
current element is cons, not while it's non-nil.
(syms_of_xfns): Call init_x_parm_symbols after interning all the
other atoms; init_x_parm_symbols expects Qx_frame_parameter to be
initialized.
* xfns.c (Qbackground_color, Qborder_color, Qborder_width,
Qcursor_color, Qfont, Qforeground_color, Qgeometry,
Qhorizontal_scroll_bar, Qicon_left, Qicon_top, Qiconic_startup,
Qinternal_border_width, Qleft, Qmouse_color, Qparent_id,
Qsuppress_icon, Qsuppress_initial_map, Qtop, Qundefined_color,
Qvertical_scroll_bar, Qwindow_id, Qx_frame_parameter): New
symbols, with lisp code to rebuild syms_of_xfns.
(syms_of_xfns): Initialize and staticpro them.
(Qheight, Qminibuffer, Qname, Qnone, Qonly, Qwidth,
Qunsplittable): Add extern declaration for these.
(x_init_parm_symbols): Don't initialize Qx_frame_parameter here;
it's done in syms_of_xfns.
(x_default_parameter): Change the argument char *PROPNAME into a
Lisp_Object PROP; let the caller take care of interning the atom.
(Fx_geometry, x_figure_window_size, x_icon, Fx_create_frame): Use
the new Q... variables, instead of interning things.
* xfns.c (x_set_frame_param): Replaced by x_set_frame_parameters.
(x_set_frame_parameters): Process the alist of parameters here.
Notice `width', `height', `top', and `left' parameters.
Hold off changing the frame size and position until the end, so we
can do both parameters at once when they are both specified.
(x_default_parameter): Call x_set_frame_parameters, not
x_set_frame_param.
* xfns.c (x_figure_window_size): Indicate that this function
returns an int, rather than just leaving it unstated.
* xfns.c (Fx_create_frame): Call change_frame_size with a DELAY of 0.
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Wed, 12 Aug 1992 14:33:03 +0000 |
parents | eca8812e61cd |
children | 144a9a018e7c |
line wrap: on
line source
#!/bin/sh # # make-dist: create an Emacs distribution tar file from the current # source tree. This basically creates a duplicate directory # structure, and then hard links into it only those files that should # be distributed. This means that if you add a file with an odd name, # you should make sure that this script will include it. progname="$0" # Exit if a command fails. set -e # Print out each line we read, for debugging's sake. # set -v clean_up=yes make_tar=yes while [ $# -gt 0 ]; do case "$1" in "--no-clean_up" ) clean_up=no ;; "--no-tar" ) make_tar=no clean_up=no ;; * ) echo "${progname}: Unrecognized argument: $1" >&2 exit 1 ;; esac shift done # Make sure we're running in the right place. if [ ! -d src -o ! -f src/lisp.h -o ! -d lisp -o ! -f lisp/version.el ]; then echo "${progname}: must run in the top directory of the Emacs" >&2 echo "distribution tree. Cd to that directory and try again." >&2 exit 1 fi # Find out which version of Emacs this is. version=`grep 'defconst[ ]*emacs-version' lisp/version.el \ | sed -e 's/^.*"\([0-9]+\.[0-9]+\)\..*$/\1/'` if [ ! "${version}" ]; then echo "${progname}: can't find current emacs version in ./lisp/version.el." >&2 exit 1 fi # Make sure the subdirectory is available. tempparent="make-dist.$$" if [ -d ${tempparent} ]; then echo "${progname}: staging directory ${tempparent} already exists. Perhaps a previous invocation of ${progname} failed to clean up after itself. Check that directories whose names are of the form make-dist.NNNNN don't contain any important information, remove them, and try again." >&2 exit 1 fi echo "Creating staging directory: ${tempparent}" mkdir ${tempparent} emacsname="emacs-${version}" tempdir="${tempparent}/${emacsname}" echo "Creating top directory: ${tempdir}" mkdir ${tempdir} # We copy in the top-level files before creating the subdirectories in # hopes that this will make the top-level files appear first in the # tar file; this means that people can start reading the INSTALL and # README while the rest of the tar file is still unpacking. Whoopee. echo "Copying top-level files." ln GETTING.GNU.SOFTWARE INSTALL PROBLEMS README ${tempdir} ln ChangeLog Makefile.in build-install.in configure make-dist ${tempdir} echo "Creating subdirectories." for subdir in lisp lisp/term src src/m src/s lib-src oldXMenu \ etc lock local-lisp arch-lib cpp info man shortnames; do mkdir ${tempdir}/${subdir} done echo "Copying lisp." # Don't distribute =*.el files, site-init.el, or site-load.el. (cd lisp ln [a-zA-Z]*.el ../${tempdir}/lisp ln [a-zA-Z]*.elc ../${tempdir}/lisp ln [a-zA-Z]*.defns ../${tempdir}/lisp ln ChangeLog README ../${tempdir}/lisp cd ../${tempdir}/lisp rm -f site-init site-init.el site-init.elc rm -f site-load site-load.el site-load.elc) echo "Copying lisp/term." # Don't distribute =*.el files. (cd lisp/term ln [a-zA-Z]*.el ../../${tempdir}/lisp/term ln [a-zA-Z]*.elc ../../${tempdir}/lisp/term ln README ../../${tempdir}/lisp/term) echo "Copying src." # Don't distribute =*.[ch] files, or the configured versions of # config.h.in, paths.h.in, or Makefile.in. (cd src ln [a-zA-Z]*.c ../${tempdir}/src ln [a-zA-Z]*.h ../${tempdir}/src ln [a-zA-Z]*.s ../${tempdir}/src ln README Makefile.in ymakefile ChangeLog config.h.in paths.h.in \ ../${tempdir}/src ln .gdbinit .dbxinit ../${tempdir}/src ln *.com *.opt vms-pp.trans vmsbuild ../${tempdir}/src cd ../${tempdir}/src etags *.h *.c ../lisp/*.el) echo "Copying src/m." (cd src/m ln README *.h ../../${tempdir}/src/m) echo "Copying src/s." (cd src/s ln README *.h ../../${tempdir}/src/s) echo "Copying lib-src." (cd lib-src ln [a-zA-Z]*.c [a-zA-Z]*.h [a-zA-Z]*.y [a-zA-Z]*.lex ../${tempdir}/lib-src ln ChangeLog Makefile.in README testfile ../${tempdir}/lib-src) echo "Copying oldXMenu." (cd oldXMenu ln *.c *.h ../${tempdir}/oldXMenu ln README Makefile Imakefile ChangeLog ../${tempdir}/oldXMenu) echo "Copying etc." # Don't distribute DOC files, backups, autosaves, or tex litter. (cd etc ln [0-9a-zA-Z]* ../${tempdir}/etc cd ../${tempdir}/etc # Avoid an error when expanding the wildcards later. for dummy in DOC-dummy dummy~ \#dummy\# dummy.dvi dummy.log; do ln MACHINES ${dummy} done rm -f DOC* *~ \#*\# *.dvi *.log core) # For now, we comment these out, since I'm not changing them any. #!! echo "Copying cpp." #!! (cd cpp #!! ln cccp.c cexp.y Makefile README ../${tempdir}/cpp) #!! #!! echo "Copying info." #!! # Don't distribute backups or autosaves. #!! (cd info #!! ln [a-zA-Z]* ../${tempdir}/info #!! cd ../${tempdir}/info #!! # Avoid an error when expanding the wildcards later. #!! ln emacs dummy~ ; ln emacs \#dummy\# #!! rm -f *~ \#*\# core) #!! #!! echo "Copying man." #!! (cd man #!! ln *.tex *.texinfo *.texi *.aux *.cps *.fns *.kys *.vrs ../${tempdir}/man #!! ln *.c ../${tempdir}/man #!! ln ChangeLog Makefile README split-man ../${tempdir}/man) echo "Copying shortnames." (cd shortnames ln *.c ../${tempdir}/shortnames ln Makefile reserved special ../${tempdir}/shortnames) echo "Making sure copying notices are symlinks." if [ -f ${tempdir}/etc/COPYING ]; then rm ${tempdir}/etc/COPYING ln etc/COPYING ${tempdir}/etc/COPYING fi for subdir in lisp src lib-src info shortnames; do if [ -f ${tempdir}/${subdir}/COPYING ]; then rm ${tempdir}/${subdir}/COPYING fi ln -s ../etc/COPYING ${tempdir}/${subdir} done if [ "${make_tar}" = yes ]; then echo "Creating tar file." (cd ${tempparent}; tar cvf - ${emacsname}) | compress > ${emacsname}.tar.Z fi if [ "${clean_up}" = yes ]; then echo "Cleaning up the staging directory." rm -rf ${tempparent} fi