Commit graph

583 commits

Author SHA1 Message Date
Glenn Morris
ef02c9fd1a Merge from origin/emacs-26
5bdc344 ; Reduce quoting for SELECTOR in 'make -C test' (Bug#31744)
b6b793b ; test/Makefile.in: Add TEST_INTERACTIVE option (Bug#31744).
1aa906f Make 'tags' targets respect --with-silent-rules (Bug#31744)

Conflicts:
	test/Makefile.in
	test/README
2018-06-18 12:14:24 -07:00
Noam Postavsky
1aa906f10d Make 'tags' targets respect --with-silent-rules (Bug#31744)
* lwlib/Makefile.in (TAGS):
* lisp/Makefile.in (TAGS):
* src/Makefile.in (TAGS): Use AM_V_GEN and AM_V_at.
* src/Makefile.in: Note that TAGS are generated in build dir.
2018-06-12 07:26:06 -04:00
Paul Eggert
ef1deb48f4 More porting to GCC 8 of --enable-gcc-warnings
* lwlib/lwlib-Xaw.h (xaw_update_one_value, xaw_popup_menu):
* lwlib/lwlib-Xlw.h (xlw_update_one_value, xlw_pop_instance):
* lwlib/lwlib.h (lw_allow_resizing, lw_set_main_areas) [!USE_MOTIF]:
No longer const.
* src/emacs-module.c: Ignore -Wcast-function-type.
2018-05-03 11:17:32 -07:00
Paul Eggert
5c7dd8a783 Update copyright year to 2018
Run admin/update-copyright.
2018-01-01 00:57:59 -08:00
Paul Eggert
8cdd8b920a Merge from Gnulib
This is mostly to change http: to https: in licenses.
* COPYING, build-aux/config.guess, build-aux/config.sub:
* doc/emacs/doclicense.texi, doc/emacs/gpl.texi:
* doc/lispintro/doclicense.texi, doc/lispref/doclicense.texi:
* doc/lispref/gpl.texi, doc/misc/doclicense.texi:
* doc/misc/gpl.texi, etc/COPYING, leim/COPYING:
* lib-src/COPYING, lib/COPYING, lisp/COPYING, lwlib/COPYING:
* msdos/COPYING, nt/COPYING, src/COPYING:
Copy from Gnulib.
2017-10-01 18:31:10 -07:00
Paul Eggert
cbc8324488 Prefer HTTPS to HTTP for gnu.org
This catches some URLs I missed in my previous scan,
or perhaps were added after the scan.
2017-09-29 17:48:22 -07:00
Paul Eggert
bc511a64f6 Prefer HTTPS to FTP and HTTP in documentation
Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November.  Change these FTP URLs to https://ftp.gnu.org
instead.  Make similar changes for URLs to other organizations moving
away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
2017-09-13 15:54:37 -07:00
Paul Eggert
bf8cf95d7d Streamline dependency-file generation
* configure.ac (AUTODEPEND_PARENTS): New var.
mkdir the dependency directories here, to simplify ‘make’.
Remove dependency files just before outputting Makefiles, so that
they are preserved if ‘configure’ exits early due to some other problem.
* lib/Makefile.in, lwlib/Makefile.in, oldXMenu/Makefile.in:
* src/Makefile.in: Adjust deps strategies to be similar, as follows:
(MKDEPDIR): Remove.  All uses removed.  This cuts down on the
number of processes spun off by ‘make’.
(clean mostlyclean): Remove $(DEPDIR) contents, not $(DEPDIR) itself.
(distclean): Remove $(DEPDIR) itself.
* lwlib/Makefile.in (all): Move to front, so that depdir includes
do not alter default action.
2017-03-21 09:59:31 -07:00
Paul Eggert
ec168376d1 Tweak X toolkit code to pacify modern GCC
* lwlib/lwlib-Xaw.c, lwlib/lwlib-Xm.c, lwlib/lwlib.c:
Don’t include <stdlib.h>, since this code now calls emacs_abort
rather than abort.
* lwlib/lwlib-Xaw.c (make_dialog, xaw_generic_callback)
(wm_delete_window):
* lwlib/lwlib-Xm.c (make_menu_in_widget, do_call):
* lwlib/lwlib.c (instantiate_widget_instance, lw_make_widget):
* lwlib/xlwmenu.c (abort_gracefully, draw_separator)
(separator_height, XlwMenuInitialize):
Use emacs_abort, not abort.  Without this change, some calls
to ‘abort’ were invalid, as stdlib.h was not always included.
* src/widget.c (resources, emacsFrameClassRec):
* src/xfns.c (x_window) [USE_X_TOOLKIT]:
* src/xmenu.c (create_and_show_popup_menu) [USE_X_TOOLKIT]:
* src/xterm.c (emacs_options) [USE_X_TOOLKIT}:
(x_term_init) [USE_X_TOOLKIT]:
Cast string constants to char * to pacify --enable-gcc-warnings.
2017-03-10 09:31:59 -08:00
Paul Eggert
952d0f2ce4 Remove @SET_MAKE@ from manually-maintained files
Emacs now assumes GNU Make, so @SET_MAKE@ is no longer needed.
* Makefile.in, lwlib/Makefile.in, nextstep/Makefile.in:
* src/Makefile.in: Remove @SET_MAKE@.
2017-01-07 18:15:37 -08:00
Paul Eggert
bcf244ef9b Merge from origin/emacs-25
2e2a806 Fix copyright years by hand
5badc81 Update copyright year to 2017
2017-01-01 01:10:47 -08:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Paul Eggert
9221b77c99 Adjust lwlib to recent config.h change
* lwlib/lwlib-Xaw.c: Include <stdlib.h> for 'abort' (Bug#24506).
2016-11-29 09:20:18 -08:00
Paul Eggert
f4eb890029 Limit <config.h>’s includes
This follows up on recent problems with the fact that config.h
includes stdlib.h etc.; some files need to include stdlib.h later.
config.h generally should limit itself to includes that are
universally safe; outside of MS-Windows, only stdbool.h makes
the cut among the files currently included.  So, move the
other includes to just the files that need them (Bug#24506).
* configure.ac (config_opsysfile): Remove, as this generic hook
is no longer needed.
* lib-src/etags.c, src/unexmacosx.c, src/w32.c, src/w32notify.c:
* src/w32proc.c (_GNU_SOURCE):
Remove, as it’s OK for config.h to do this now.
* src/conf_post.h: Include <ms-w32.h>, instead of the generic
config_opsysfile, for simplicity as this old way of configuring is
now done only for the MS-Windows port.  Do not include <ms-w32.h>
if DEFER_MS_W32_H, for the benefit of the few files that want its
effects later.  Do not include <alloca.h>, <string.h>, or
<stdlib.h>.  Other files modified to include these headers as
needed, or to not include headers that are no longer needed.
* src/lisp.h: Include <alloca.h> and <string.h> here, since
some of the inline functions need them.
* src/regex.c: Include <alloca.h> if not emacs.  (If emacs,
we can rely on SAFE_ALLOCA.)  There is no longer any need to
worry about HAVE_ALLOCA_H.
* src/unexmacosx.c: Rely on config.h not including stdlib.h.
* src/w32.c, src/w32notify.c, src/w32proc.c (DEFER_MS_W32_H):
Define before including <config.h> first, and include <ms-w32.h>
after the troublesome headers.
2016-09-30 12:38:52 -07:00
Dmitry Antipov
d942c39c44 Avoid yet another possible NULL pointer dereference found by GCC 6.1.1
* lwlib/lwlib.c (lw_get_all_values): Always check the value returned by
get_widget_info.
2016-07-01 18:45:24 +03:00
John Wiegley
1dd4f26ab6 Merge from origin/emacs-25
ef33bc7 Spelling and grammar fixes
9c3dbab Fix copyright years by hand
0e96320 Update copyright year to 2016
2016-01-11 22:48:07 -08:00
Glenn Morris
c6d3c60f28 Build tweaks related to tags files.
* lib-src/Makefile.in (tagsfiles): New variable.
(TAGS): Also depend on the source files.  Use our own etags program.
* lisp/Makefile.in (ETAGS): Add EXEEXT.
(lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
Remove.
(tagsfiles): New, replacing lisptagsfiles1 etc.
Remove irrelevant source files here rather than in the TAGS rule.
(${ETAGS}): New rule.
(TAGS): Also depend on the etags executable.
* lwlib/Makefile.in (EXEEXT): New, set by configure.
(ETAGS): Add EXEEXT.
(${ETAGS}): New rule.
(ctagsfiles): Use "wildcard".
(TAGS): Also depend on the etags executable.
* nt/Makefile.in (ETAGS, tagsfiles): New variables.
(${ETAGS}): New rule.
(TAGS): Fix dependencies.
* oldXMenu/Makefile.in (EXEEXT): New, set by configure.
(ETAGS): New variable, replacing $TAGS.  Use our own etags program.
Remove "-t" argument.
(${ETAGS}): New rule.
(tagsfiles): New variable.
(TAGS): New rule, with proper dependencies.
* src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
(ctagsfiles1, ctagsfiles2): Use "wildcard".
(ctagsfiles3): Remove.
(TAGS): Depend on etags.
(../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
directories decide if updates are needed.
2016-01-06 18:25:47 -05:00
Paul Eggert
0e963201d0 Update copyright year to 2016
Run admin/update-copyright.
2016-01-01 01:34:24 -08:00
Paul Eggert
7d7e742fe3 Remove SunOS 4.x cruft
Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
* lib-src/pop.c [sun]: Remove no-longer-needed include.
* lwlib/xlwmenu.c (SUNSO41): Remove.
2015-12-18 17:11:23 -08:00
Paul Eggert
55ba8c022b Make src headers idempotent and standalone
Redo src/*.h so that each include file is idempotent (that is, can
be included multiple times with the latter inclusions having no
effect) and standalone (that is, can be included by itself,
with no include file other than config.h needed as a prerequisite).
This is standard practice in GNU programs nowadays.
* lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
* src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
* src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
* src/regex.h [emacs]:
* src/syntax.h, src/systty.h, src/termhooks.h:
Include lisp.h, for Lisp_Object.
* src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
* src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
* src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
* src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
* src/termopts.h, src/tparam.h, src/unexec.h:
Protect against multiple inclusion.
* src/buffer.h: Include character.h, for STRING_CHAR.
* src/emacsgtkfixed.h (struct frame):
* src/fontset.h (struct face):
* src/region-cache.h (struct buffer):
* src/termhooks.h (struct glyph):
* src/xsettings.h (struct x_display_info):
Add possibly-forward decl.
* src/syntax.h: Include buffer.h, for BVAR.
* src/sysselect.h: Include lisp.h, for eassume.
* src/termchar.h: Include <stdio.h>, for FILE.
* src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
* src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
2015-10-16 14:56:11 -07:00
Glenn Morris
7934415695 * Makefile.in (SUBDIR_MAKEFILES):
* lwlib/Makefile.in (WARN_CFLAGS):
Use built-in Make functions rather than echo+sed.
2015-06-09 15:23:47 -04:00
Paul Eggert
78c9b2e847 ; Omit entries that will appear in ChangeLog.2 2015-05-23 08:36:28 -07:00
Jan D
6445ee0fb7 Merge branch 'master' into cairo 2015-05-17 16:46:34 +02:00
Glenn Morris
48e384d710 Replace AC_SUBST_FILE in configure with include in Makefiles.
* configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
(oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
(AUTO_DEPEND): New output variable.
* lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
(DEPFLAGS, MKDEPDIR): Set directly via conditional.
(lwlib_deps_frag): Replace by conditional include.
* lwlib/autodeps.mk: Remove file.
* oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
(DEPFLAGS, MKDEPDIR): Set directly via conditional.
(oldxmenu_deps_frag): Replace by conditional include.
* oldXMenu/autodeps.mk: Remove file.
* src/Makefile.in (AUTO_DEPEND): New, set by configure.
(DEPFLAGS, MKDEPDIR): Set directly via conditional.
(lisp_frag): Replace by an include.
(deps_frag): Replace by conditional include.
* src/autodeps.mk: Remove file.
2015-05-15 20:51:45 -04:00
Jan D
f92ac2e82e Merge branch 'master' into cairo 2015-04-26 13:55:01 +02:00
Paul Eggert
b5919771ae Assume C89 offsetof in xterm.c, xlwmenu.c
* lwlib/xlwmenu.c (offset):
* src/xterm.c (cvt_string_to_pixel_args):
Use offsetof, not XtOffset.
2015-04-14 00:58:37 -07:00
Paul Eggert
2346856168 Generate a ChangeLog file from commit logs
* .gitignore: Add 'ChangeLog'.
* build-aux/gitlog-to-changelog: New file, from Gnulib.
* build-aux/gitlog-to-emacslog: New file.
* CONTRIBUTE: Document the revised workflow.
* Makefile.in (clean): Remove *.tmp and etc/*.tmp*
instead of just special cases.
(CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
(ChangeLog, unchanged-history-files, change-history)
(change-history-commit): New rules.
* admin/admin.el (make-manuals-dist--1):
Don't worry about doc/ChangeLog.
* admin/authors.el: Add a FIXME.
* admin/make-tarball.txt:
* lisp/calendar/icalendar.el:
* lisp/gnus/deuglify.el:
* lisp/obsolete/gulp.el:
* lwlib/README:
Adjust to renamed ChangeLog history files.
* admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
* admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
Remove obsolete discussion of merging ChangeLog files.
New section "Maintaining ChangeLog history".
* build-aux/git-hooks/pre-commit:
Reject attempts to commit files named 'ChangeLog'.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* make-dist: Make and distribute top-level ChangeLog if there's a
.git directory.  Distribute the new ChangeLog history files
instead of scattered ChangeLog files.  Distribute the new files
gitlog-to-changelog and gitlog-to-emacslog.
Fixes: bug#19113
2015-04-07 00:00:55 -07:00
Paul Eggert
dd1404cca3 Rename ChangeLogs for gitlog-to-changelog
This patch was implemented via the following shell commands:
find * -name ChangeLog |
sed 's,.*,git mv & &.1,
s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
s, src/ChangeLog\.1$, src/ChangeLog.13,' |
sh
git commit -am"[this commit message]"
2015-04-07 00:00:06 -07:00
Jan D
75c8741afb Merge branch 'master' into cairo 2015-04-03 12:32:13 +02:00
Jan D
734900695a Add CAIRO_CFLAGS to lwlib/Makefile.in
* Makefile.in (CAIRO_CFLAGS): Add.
2015-04-03 12:18:49 +02:00
Stefan Monnier
872481d9e2 Add classes as run-time descriptors of cl-structs.
* lisp/emacs-lisp/cl-preloaded.el (cl--struct-get-class): New function.
(cl--make-slot-desc): New constructor.
(cl--plist-remove, cl--struct-register-child): New functions.
(cl-struct-define): Rewrite.
(cl-structure-class, cl-structure-object, cl-slot-descriptor)
(cl--class): New structs.
(cl--struct-default-parent): Initialize it here.
* lisp/emacs-lisp/cl-macs.el (cl--find-class): New macro.
(cl-defsubst, cl--defsubst-expand, cl--sublis): Move before first use.
(cl--struct-default-parent): New var.
(cl-defstruct): Adjust to new representation of classes; add
default parent.  In accessors, signal `wrong-type-argument' rather than
a generic error.
(cl-struct-sequence-type, cl-struct-slot-info)
(cl-struct-slot-offset): Rewrite.
* lisp/emacs-lisp/cl-generic.el (cl--generic-struct-specializers)
(cl-generic-generalizers): Rewrite.
* src/alloc.c (purecopy): Handle hash-tables.

* lisp/emacs-lisp/debug.el (debug--implement-debug-on-entry):
Bind inhibit-debug-on-entry here...
(debug): Instead of here.

* lisp/emacs-lisp/macroexp.el (macroexp--debug-eager): New var.
(internal-macroexpand-for-load): Use it.

* lwlib/xlwmenu.c (pop_up_menu): Remove debugging code.
2015-03-18 10:31:07 -04:00
Jan D
e605af8880 * xlwmenu.c (remap_menubar): Re-realize menu to force move under Gnome 3. 2015-02-28 16:20:45 +01:00
Glenn Morris
e82fc62bd4 # ChangeLog fixes 2015-01-04 00:22:29 -08:00
Paul Eggert
4d12b5540c Less 'make' chatter for lwlib
* Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0, am__v_GEN_1)
(AM_V_at, am__v_at_, am__v_at_0, am__v_at_1): New macros.
(liblw.a): Use them.
2015-01-03 18:54:34 -08:00
Paul Eggert
7e09ef09a4 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 14:26:41 -08:00
Paul Eggert
1e6879dbdb Prefer stpcpy to strcat
* admin/merge-gnulib (GNULIB_MODULES): Add stpcpy.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/stpcpy.c, m4/stpcpy.m4: New files, from gnulib.
* lib-src/ebrowse.c (sym_scope_1, operator_name, open_file):
* lib-src/emacsclient.c (get_server_config, set_local_socket)
(start_daemon_and_retry_set_socket):
* lib-src/etags.c (main, C_entries, relative_filename):
* lib-src/pop.c (sendline):
* lib-src/update-game-score.c (main):
* lwlib/xlwmenu.c (resource_widget_value):
* src/callproc.c (child_setup):
* src/dbusbind.c (xd_signature_cat):
* src/doc.c (get_doc_string, Fsnarf_documentation):
* src/editfns.c (Fuser_full_name):
* src/frame.c (xrdb_get_resource):
* src/gtkutil.c (xg_get_file_with_chooser):
* src/tparam.c (tparam1):
* src/xfns.c (xic_create_fontsetname):
* src/xrdb.c (gethomedir, get_user_db, get_environ_db):
* src/xsmfns.c (smc_save_yourself_CB):
Rewrite to avoid the need for strcat, typically by using stpcpy
and/or lispstpcpy.  strcat tends to be part of O(N**2) algorithms.
* src/doc.c (sibling_etc):
* src/xrdb.c (xdefaults):
Now a top-level static constant.
2014-12-25 15:44:23 -08:00
Ted Zlatanov
ba4502fe14 Merge branch 'emacs-24'
Conflicts:
	nt/addsection.c
	nt/inc/ms-w32.h
	src/w32.c
2014-11-26 21:31:11 -05:00
Paul Eggert
790c690572 Simplify and fix doc-related .gitignore files.
This fixes some unwanted 'git status' output after 'make docs'.
* .gitignore: Add **/Makefile, **/makefile.
Remove Makefile, makefile.
Add doc/*/*.xxx rules for the usual kinds of documentation outputs
and temporaries.  Add doc/misc/cc-mode.ss.
* doc/emacs/.gitignore, doc/lispref/.gitignore, doc/misc/.gitignore:
* lwlib/.gitignore, oldXMenu/.gitignore:
Remove, as these .gitignore files are no longer needed.
* doc/lispintro/.gitignore: Replace with list of exceptional PDF files.
2014-11-16 17:32:01 -08:00
Glenn Morris
8a85c254de Merge from emacs-24; up to 2014-07-28T06:28:15Z!dmantipov@yandex.ru 2014-10-20 20:59:41 +01:00
Glenn Morris
83bad90efe Add 24.4 release ChangeLog entries 2014-10-20 20:21:15 +01:00
Paul Eggert
177030baaa Fix typo in previous change's ChangeLog. 2014-09-01 02:54:12 -07:00
Paul Eggert
bc12381e60 --enable-silent-warnings now suppresses more chatter.
* INSTALL, etc/NEWS: Document this.
* lib-src/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_)
(am__v_CC_0, am__v_CC_1, AM_V_CCLD, am__v_CCLD_, am__v_CCLD_0)
(am__v_CCLD_1): New macros, taken from Automake.
(regex.o, etags${EXEEXT}, ctags${EXEEXT}, ebrowse${EXEEXT})
(profile${EXEEXT}, make-docfile${EXEEXT}, movemail${EXEEXT})
(pop.o, emacsclient${EXEEXT}, emacsclientw${EXEEXT})
(emacsclientw${EXEEXT}, ntlib.o, hexl${EXEEXT})
(update-game-score${EXEEXT}): Use them.
* lwlib/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_)
(am__v_CC_0, am__v_CC_1): New macros, taken from Automake.
(.c.o): Use them.
* oldXMenu/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_)
(am__v_CC_0, am__v_CC_1): New macros, taken from Automake.
(.c.o): Use them.
* src/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_)
(am__v_CC_0, am__v_CC_1, AM_V_CCLD, am__v_CCLD_, am__v_CCLD_0)
(am__v_CCLD_1): New macros, taken from Automake.
(.c.o, .m.o, temacs$(EXEEXT)): Use them.
2014-09-01 02:49:51 -07:00
Dmitry Antipov
60c6e448eb * lwlib/lwlib.h (toplevel): Use unsigned int for LWLIB_ID.
* src/xmenu.c (toplevel): Use LWLIB_ID for next_menubar_widget_id.
(pop_down_menu) [USE_X_TOOLKIT]: Accept integer arg.
(create_and_show_popup_menu, create_and_show_dialog) [USE_X_TOOLKIT]:
Use record_unwind_protect_int and avoid consing.
(syms_of_xmenu) [USE_X_TOOLKIT]: Declare WIDGET_ID_TICK_START.
2014-07-15 13:59:05 +04:00
Glenn Morris
93160ec392 Use gcc auto-dependency information for lwlib and oldXMenu
* configure.ac (lwlib_deps_frag, oldxmenu_deps_frag): New output files.

* make-dist (lwlib, oldXMenu): Distribute *.mk.

* lwlib/Makefile.in: Move old dependency information to new file deps.mk.
(MKDIR_P, DEPFLAGS, MKDEPDIR, lwlib_deps_frag):
New, set by configure.
(DEPDIR): New variable.
(ALL_CFLAGS): Add DEPFLAGS.
(.c.o): Add MKDEPDIR.
(clean, mostlyclean): Delete DEPDIR.

* lwlib/deps.mk, lwlib/autodeps.mk: New files.

* oldXMenu/Makefile.in: Move old dependency information to new file deps.mk.
(MKDIR_P, DEPFLAGS, MKDEPDIR, oldxmenu_deps_frag):
New, set by configure.
(DEPDIR): New variable.
(ALL_CFLAGS): Add DEPFLAGS.
(.c.o): Add MKDEPDIR.
(clean, mostlyclean): Delete DEPDIR.

* oldXMenu/deps.mk, oldXMenu/autodeps.mk: New files.

* src/deps.mk: Comment update.

* .bzrignore: Ignore lwlib/deps, oldXMenu/deps.
2014-06-28 15:57:23 -07:00
Paul Eggert
73bfe891e2 Omit redundant extern decls.
Most of this patch is from Dmitry Antipov, in:
http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00263.html
* configure.ac (WERROR_CFLAGS): Add -Wredundant-decls.
* lib-src/emacsclient.c (getenv): Remove decl.
* lib-src/make-docfile.c (write_globals): Add ATTRIBUTE_CONST for
Fbyteorder, Ftool_bar_height, Fmax_char, Fidentity.
* lwlib/lwlib-Xm.c (lw_motif_widget_p, xm_update_one_value)
(xm_create_dialog, xm_destroy_instance, xm_popup_menu)
(xm_set_keyboard_focus, xm_set_main_areas): Remove decls.
* src/commands.h (update_mode_lines):
* src/frame.h (Qbackground_color, Qforeground_color)
(x_set_menu_bar_lines):
* src/ftfont.c (ftfont_font_format):
* src/intervals.h (Qkeymap, Qfont):
* src/keyboard.c (timer_check, safe_run_hooks, Qregion_extract_function):
* src/lisp.h (Ffboundp, Qnil, Qt, Qlambda, Qintegerp, Qwholenump)
(Qsymbolp, Qlisp, Qconsp, Qstringp, Qarrayp, Qbufferp, Qmarkerp)
(Qvectorp, Qbuffer_or_string_p, Qchar_table_p, Qvector_or_char_table_p)
(Qfloatp, Qnumberp, Qfont_spec, Qfont_entity, Qfont_object)
(Fbyteorder, wrong_type_argument, Fmax_char, syms_of_composite)
(Fidentity, extract_float, init_display, syms_of_display, Qdisplay):
(Qimage, Qbox, redisplay_preserve_echo_area, char_table_ref)
(char_table_set, char_table_translate, Qautoload, Qbottom, Qtop)
(Qvisible, Qfont, Qfront_sticky, Qrear_nonsticky, init_sigio)
(Qtool_bar, Qheader_line):
* src/macros.c (Fexecute_kbd_macro):
* src/xdisp.c (Ftool_bar_height, Ftool_bar_height):
* src/xterm.c (x_delete_terminal, XSetIMValues):
* src/xterm.h (x_set_window_size, x_query_color, x_get_focus_frame)
(x_implicitly_set_name, popup_activated)
(widget_store_internal_border):
Remove redundant decls.
* src/frame.c [USE_X_TOOLKIT]: Include widget.h.
* src/keyboard.c (Fexit_recursive_edit, Fabort_recursive_edit):
Remove _Noreturn, as make-docfile now does that for us.
* src/lisp.h (DEFUN): Don't declare fnname here; rely on make-docfile.
(Qregion_extract_function): New decl.
* src/window.c, src/xfns.c: Include menu.h.
2014-06-17 09:09:19 -07:00
Glenn Morris
0d9f81376b Use make -C' rather than cd && make'
* Makefile.in: Use `make -C' rather than `cd && make' throughout.

* lib-src/Makefile.in (../lib/libgnu.a): Use `make -C' rather than `cd && make'.

* lisp/Makefile.in (leim, semantic): Use `make -C' rather than `cd && make'.

* lwlib/Makefile.in ($(globals_h)): Use `make -C' rather than `cd && make'.

* src/Makefile.in: Use `make -C' rather than `cd && make' throughout.
2014-06-14 17:34:22 -07:00
Glenn Morris
0e6929ecab Parallelize clean rules using GNU make features
* Makefile.in: (submake_template): New definition.
(mostlyclean_dirs, clean_dirs, distclean_dirs, maintainer_clean_dirs):
New variables.
(mostlyclean, clean, distclean, bootstrap-clean, maintainer-clean)
(extraclean): Define using each subdirectory as a prequisite.

* lib/Makefile.am (bootstrap-clean):
* doc/emacs/Makefile.in (bootstrap-clean):
* doc/lispintro/Makefile.in (bootstrap-clean):
* doc/lispref/Makefile.in (bootstrap-clean):
* doc/misc/Makefile.in (bootstrap-clean):
* lib-src/Makefile.in (bootstrap-clean):
* lwlib/Makefile.in (bootstrap-clean):
* nextstep/Makefile.in (bootstrap-clean):
* nt/Makefile.in (bootstrap-clean):
* oldXMenu/Makefile.in (bootstrap-clean):
New rules, for symmetry/simplicity.

* lwlib/Makefile.in (mostlyclean, clean, distclean, maintainer-clean):
* oldXMenu/Makefile.in (mostlyclean, clean, distclean, maintainer-clean, tags):
Declare as PHONY.
2014-06-14 17:17:21 -07:00
Glenn Morris
f9d80c5110 With GNU make, MFLAGS is not needed
* Makefile.in (CC, CFLAGS, LDFLAGS, CPPFLAGS, abs_top_srcdir):
Remove, no longer used.
(lib, lib-src, lisp, nt, src, blessmail, install-arch-dep)
(install-nt, install-strip, uninstall, uninstall-nt)
(mostlyclean, clean, distclean, bootstrap-clean)
(maintainer-clean, extraclean, TAGS, tags, check, $(DOCS)):
($(INSTALL_DOC), $(UNINSTALL_DOC), info, bootstrap, check-declare):
GNU make automatically passes command-line arguments to sub-makes.

* admin/unidata/Makefile.in (${DSTDIR}/charprop.el):
GNU make automatically passes command-line arguments to sub-makes.

* lib-src/Makefile.in (../lib/libgnu.a):
GNU make automatically passes command-line arguments to sub-makes.

* lisp/Makefile.in ($(lisp)/cus-load.el, $(lisp)/finder-inf.el)
(autoloads, $(lisp)/subdirs.el, compile-main, leim, semantic, compile)
(compile-always): GNU make automatically passes
command-line arguments to sub-makes.

* lwlib/Makefile.in ($(globals_h)):
GNU make automatically passes command-line arguments to sub-makes.

* src/Makefile.in ($(leimdir)/leim-list.el, $(srcdir)/macuvs.h)
($(lispsource)/international/charprop.el)
($(libsrc)/make-docfile$(EXEEXT), $(lwlibdir)/liblw.a)
($(oldXMenudir)/libXMenu11.a, ns-app, .el.elc)
($(lispsource)/loaddefs.el, bootstrap-emacs$(EXEEXT)):
GNU make automatically passes command-line arguments to sub-makes.

* test/automated/Makefile.in (compile-main):
GNU make automatically passes command-line arguments to sub-makes.
2014-06-13 19:05:00 -04:00
Dmitry Antipov
39ec03147e * lwlib-widget.h (widget_value) [USE_X_TOOLKIT]: Use X toolkit
fields conditionally.
2014-06-04 07:20:11 +04:00
Paul Eggert
181f08a7d8 Do not require libXt-devel when building with gtk.
* lwlib/lwlib-widget.h: New file, with contents taken from lwlib.h.
(widget_value) [HAVE_NTGUI]: New member 'title'.
* lwlib/lwlib.h: Include lwlib-widget.h.
(change_type, enum button_type, widget_value):
Move to lwlib-widget.h.
* src/gtkutil.h, src/menu.h: Include lwlib-widget.h, not lwlib-h, to avoid
dependency on libXt-devel.
* src/menu.h [HAVE_NTGUI]: Include lwlib-widget.h in this case too.
(enum button_type, widget_value) [HAVE_NTGUI]: Remove, as
lwlib-widget.h now does this.
* src/nsmenu.m (ns_menu_show): "enabled" -> "enable" to fix typo.
2014-06-03 12:59:55 -07:00
Dmitry Antipov
0882152e22 * xlwmenu.c (openXftFont): Do not load regular X font here.
(XlwMenuInitialize): Remove ancient #if 0 code.
(XlwMenuDestroy): Likewise.  Free regular X font here.
2014-06-03 08:17:53 +04:00
Dmitry Antipov
5668fb88bf Use common memory management functions for lwlib and refactor users.
* lwlib/lwlib.h (widget_value): Do not maintain a free list any more.
(malloc_widget_value, free_widget_value): Remove prototypes.
* lwlib/lwlib.c (malloc_widget_value, free_widget_value):
(widget_value_free_list, malloc_cpt): Remove.
(free_widget_value_tree, copy_widget_value_tree): Adjust users.
* src/menu.h (xmalloc_widget_value): Replaced by ...
(make_widget_value): ... new prototype.
* src/menu.c (xmalloc_widget_value): Replaced by ...
(make_widget_value): ... new function.
(free_menubar_widget_value_tree, digest_single_submenu): Adjust users.
* src/gtkutil.c (malloc_widget_value, free_widget_value):
(widget_value_free_list, malloc_cpt): Remove old lwlib-compatible code.
* src/keyboard.h (enum button_type, struct _widget_value):
* src/gtkutil.h, src/nsgui.h, src/w32gui.h (malloc_widget_value):
(free_widget_value): Likewise.
* src/nsmenu.m (ns_update_menubar, ns_menu_show):
* src/w32menu.c (set_frame_menubar, w32_menu_show, w32_dialog_show):
* src/xmenu.c (set_frame_menubar, xmenu_show, x_dialog_show): Adjust users.
* src/xterm.h (XtParent) [USE_GTK]: Remove unused macro.
2014-06-02 22:01:21 +04:00
Dmitry Antipov
a084532342 Use common string allocation and freeing functions where applicable.
* lwlib.h (safe_strdup): Remove prototype.
* lwlib.c (safe_strdup, safe_free_str): Remove.
(copy_widget_value_tree, allocate_widget_info, free_widget_info):
(merge_widget_value): Prefer xstrdup, xfree and dupstring.
* lwlib-Xm.c (make_destroyed_instance, xm_update_one_value): Ditto.
2014-05-30 17:22:29 +04:00
Juanma Barranquero
35e951cd4b */ChangeLog: Trivial fixes. 2014-03-03 05:57:26 +01:00
Glenn Morris
38942b9cf5 ChangeLog fixes 2014-01-21 00:49:46 -08:00
Glenn Morris
c6c863df8d ChangeLog fixes 2014-01-15 00:49:38 -08:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Paul Eggert
96c0686368 Use bool for boolean, focusing on headers.
* configure.ac (PTY_OPEN, GC_MARK_SECONDARY_STACK):
Use bool for boolean.
* lib-src/emacsclient.c, lib-src/etags.c, lib-src/hexl.c (FALSE, TRUE):
Remove.  All uses replaced with uncapitalized version.
* lib-src/emacsclient.c (message):
* lib-src/etags.c (make_tag, pfnote, consider_token, make_C_tag, lang_names):
* lib-src/hexl.c (un_flag, iso_flag, endian):
* lib-src/pop.c (pop_debug, pop_open, pop_multi_first, pop_multi_next)
(pop_trash):
Use bool for boolean.
* lib-src/etags.c (bool): Remove.
* lib-src/etags.c (globals, members, declarations, no_line_directive)
(no_duplicates): Use 'int' for boolean values that getopt requires
to be 'int'.  Formerly, these were 'bool' and 'bool' was 'int',
but we can no longer rely on this implementation.
* lib-src/pop.h (struct _popserver): Use bool_bf for boolean bit-fields.
* lwlib/xlwmenuP.h (XlwMenu_part): Use bool_bf for boolean bit-fields.
* src/atimer.h, src/lisp.h, src/syssignal.h, src/syswait.h, src/unexelf.c:
No need to include <stdbool.h>, since conf_post.h does it now.
* src/buffer.h (BUF_COMPUTE_UNCHANGED, DECODE_POSITION)
(BUFFER_CHECK_INDIRECTION, GET_OVERLAYS_AT, PER_BUFFER_VALUE_P)
(SET_PER_BUFFER_VALUE_P):
* src/ccl.c, src/ccl.h (setup_ccl_program):
* src/ccl.h (CHECK_CCL_PROGRAM):
* src/character.h (MAKE_CHAR_UNIBYTE, CHECK_CHARACTER_CAR)
(CHECK_CHARACTER_CDR, CHAR_STRING_ADVANCE, NEXT_CHAR_BOUNDARY)
(PREV_CHAR_BOUNDARY, FETCH_STRING_CHAR_ADVANCE)
(FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
(FETCH_STRING_CHAR_ADVANCE_NO_CHECK, FETCH_CHAR_ADVANCE)
(FETCH_CHAR_ADVANCE_NO_CHECK, INC_POS, DEC_POS, INC_BOTH)
(DEC_BOTH, BUF_INC_POS, BUF_DEC_POS):
* src/charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
(CHECK_CHARSET_GET_ATTR, CHECK_CHARSET_GET_CHARSET)
(CHARSET_FAST_MAP_SET):
* src/coding.c (decode_coding_ccl, encode_coding_ccl):
* src/coding.h (CHECK_CODING_SYSTEM, CHECK_CODING_SYSTEM_GET_SPEC)
(CHECK_CODING_SYSTEM_GET_ID, SJIS_TO_JIS, SJIS_TO_JIS2)
(JIS_TO_SJIS, JIS_TO_SJIS2, ENCODE_FILE, DECODE_FILE)
(ENCODE_SYSTEM, DECODE_SYSTEM, ENCODE_UTF_8)
(decode_coding_c_string):
* src/composite.h (COMPOSITION_DECODE_REFS, COMPOSITION_DECODE_RULE):
* src/conf_post.h (has_attribute):
* src/dispextern.h (trace_redisplay_p):
(INC_TEXT_POS, DEC_TEXT_POS, SET_GLYPH_FROM_GLYPH_CODE)
(SET_CHAR_GLYPH, SET_CHAR_GLYPH_FROM_GLYPH)
(SET_GLYPH_FROM_CHAR_GLYPH):
(WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P)
(FACE_SUITABLE_FOR_ASCII_CHAR_P, FACE_SUITABLE_FOR_CHAR_P)
(PRODUCE_GLYPHS, reset_mouse_highlight, in_display_vector_p)
(cursor_in_mouse_face_p):
* src/dispnew.c (adjust_glyph_matrix, clear_glyph_matrix_rows)
(blank_row, prepare_desired_row)
(build_frame_matrix_from_leaf_window, make_current)
(mirror_make_current, mirrored_line_dance, mirror_line_dance)
(update_window, scrolling_window, update_frame_line):
* src/disptab.h (GLYPH_FOLLOW_ALIASES):
* src/editfns.c (Fformat):
* src/font.h (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC)
(FONT_WIDTH_SYMBOLIC, FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE)
(FONT_WIDTH_FOR_FACE, FONT_WEIGHT_NAME_NUMERIC)
(FONT_SLANT_NAME_NUMERIC, FONT_WIDTH_NAME_NUMERIC)
(FONT_SET_STYLE, CHECK_FONT, CHECK_FONT_SPEC, CHECK_FONT_ENTITY)
(CHECK_FONT_OBJECT, CHECK_FONT_GET_OBJECT, FONT_ADD_LOG)
(FONT_DEFERRED_LOG):
* src/frame.h (FRAME_W32_P, FRAME_MSDOS_P, FRAME_WINDOW_P):
(FRAME_EXTERNAL_TOOL_BAR, FRAME_EXTERNAL_MENU_BAR, FOR_EACH_FRAME)
(FRAME_MOUSE_UPDATE):
* src/fringe.c (Fdefine_fringe_bitmap):
* src/image.c (x_create_bitmap_from_data, x_create_bitmap_mask)
(x_create_bitmap_from_xpm_data, xpm_load_image):
* src/intervals.h (INTERVAL_HAS_PARENT, INTERVAL_PARENT)
(set_interval_parent, RESET_INTERVAL, COPY_INTERVAL_CACHE)
(MERGE_INTERVAL_CACHE):
* src/keymap.h (KEYMAPP):
* src/lisp.h (eassert, USE_LSB_TAG, CHECK_LISP_OBJECT_TYPE)
(STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE, DEFSYM, PSEUDOVECTORP)
(CHECK_RANGED_INTEGER, CHECK_TYPE_RANGED_INTEGER)
(CHECK_NUMBER_COERCE_MARKER, CHECK_NUMBER_OR_FLOAT_COERCE_MARKER)
(DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
(DEFVAR_BUFFER_DEFAULTS, DEFVAR_KBOARD, QUIT)
(RETURN_UNGCPRO, USE_SAFE_ALLOCA, SAFE_NALLOCA, SAFE_FREE)
(SAFE_ALLOCA_LISP, FOR_EACH_ALIST_VALUE, functionp):
* src/syntax.h (SYNTAX_ENTRY, SYNTAX_WITH_FLAGS, SYNTAX)
(UPDATE_SYNTAX_TABLE_FORWARD, UPDATE_SYNTAX_TABLE_BACKWARD)
(SETUP_BUFFER_SYNTAX_TABLE):
* src/systime.h (timespec_valid_p):
* src/term.c (save_and_enable_current_matrix):
* src/window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P):
* src/xdisp.c (in_display_vector_p, display_tool_bar_line)
(redisplay_internal, try_window_reusing_current_matrix)
(sync_frame_with_window_matrix_rows, try_window_id)
(display_menu_bar, display_tty_menu_item, display_mode_line)
(coords_in_mouse_face_p, cursor_in_mouse_face_p):
* src/xmenu.c (xmenu_show):
* src/xterm.c (use_xim, x_term_init):
* src/xterm.h (XSync, GTK_CHECK_VERSION, use_xim, SET_SCROLL_BAR_X_WIDGET)
(struct x_bitmap_record):
Use bool for booleans.
* src/ccl.c (struct buffer_text):
* src/ccl.h (struct ccl_program):
* src/charset.h (struct charset):
* src/cm.h (struct cm):
* src/coding.h (struct iso_2022_spec, struct coding_system):
* src/dispextern.h (struct glyph, struct glyph_matrix, struct glyph_row)
(struct glyph_string, struct face, struct face_cache)
(struct bidi_string_data, struct bidi_it)
(struct draw_fringe_bitmap_params, struct it, Mouse_HLInfo)
(struct image):
* src/editfns.c (Fformat):
* src/frame.h (struct frame):
* src/fringe.c (struct fringe_bitmap):
* src/intervals.h (struct interval):
* src/keyboard.h (struct kboard):
* src/lisp.h (struct Lisp_Symbol, struct Lisp_Misc_Any, struct Lisp_Marker)
(struct Lisp_Overlay, struct Lisp_Save_Value, struct Lisp_Free)
(struct Lisp_Buffer_Local_Value, union specbinding):
* src/macfont.m (struct macfont_info):
* src/process.h (struct Lisp_Process):
* src/termchar.h (struct tty_display_info):
* src/window.h (struct window):
* src/xterm.h (struct x_output):
Use bool_bf for boolean bit-fields.
* src/ccl.c (setup_ccl_program): Now returns bool instead of -1 or 0.
All callers changed.
* src/ccl.h (struct ccl_program): Remove unused members private_state,
src_multibyte, dst_multibyte, cr_consumed, suppress_error,
eight_bit_control.
(struct ccl_spec): Remove unused members cr_carryover,
eight_bit_carryover.
* src/conf_post.h: Include <stdbool.h>.
(bool_bf): New type.
* src/dispextern.h (TRACE, PREPARE_FACE_FOR_DISPLAY):
* src/interval.h (RESET_INTERVAL, COPY_INTERVAL_CACHE, MERGE_INTERVAL_CACHE)
Surround statement macro with proper 'do { ... } while (false)' brackets.
(SET_MATRIX_ROW_ENABLED_P): Assume 2nd arg is bool.
(PRODUCE_GLYPHS): Simplify use of boolean.
* src/fileio.c (Fcopy_file):
If I is an integer, prefer 'if (I != 0)' to 'if (I)'.
* src/lisp.h (UNGCPRO): Return void, not int.
(FOR_EACH_TAIL): Use void expression, not int expression.
* src/region-cache.c: Reindent.
* src/region-cache.h: Copy comments from region-cache.c, to fix
incorrect remarks about booleans.
2013-12-14 13:36:44 -08:00
Paul Eggert
f224e50022 Spelling and punctuation fixes. 2013-12-01 14:33:13 -08:00
Paul Eggert
d672ac3c61 Prefer tail calls.
* lib-src/ebrowse.c (xstrdup):
* lib-src/etags.c (savenstr):
* lwlib/lwlib.c (safe_strdup):
* src/xfns.c (xic_create_fontsetname):
* src/xrdb.c (gethomedir): Prefer tail calls.
* lib-src/etags.c (concat): Omit unnecessary assignment.
2013-11-13 17:52:18 -08:00
Glenn Morris
c617f3d0b1 Use relative filenames in TAGS files.
* src/Makefile.in (abs_srcdir): Remove it again.
(.PHONY): Remove frc.
(maintainer-clean): No more TAGS-LISP file.
(TAGS): Pass relative file names to etags.
(../lisp/TAGS): Rename from TAGS-LISP.  Work in ../lisp.

* lisp/Makefile.in (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3)
(lisptagsfiles4, TAGS): Use relative file names.
(TAGS-LISP): Remove.
(maintainer-clean): No more TAGS-LISP file.

* lwlib/Makefile.in (abs_srcdir): Remove it again.
(ctagsfiles, TAGS): Use relative filenames.

* .bzrignore: Remove TAGS-LISP.
2013-11-02 12:41:33 -07:00
Glenn Morris
b0b9e59232 Small Makefile cleanup mainly related to tags file generation
* src/Makefile.in (abs_srcdir): New, set by configure.
(maintainer-clean): Remove pointless echo.  That should be in the
top-level Makefile, if anywhere.  Delete TAGS-LISP.
(extraclean): No s/ and m/ directories for some time.
(TAGS): Remove no-longer-defined S_FILE.
Pass absolute filenames to etags once more.
(TAGS-LISP, $(lwlibdir)/TAGS): Correctly pass ETAGS to sub-makes.
($(lwlibdir)/TAGS): Remove useless subshell, check cd return value.

* lisp/Makefile.in (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3)
(lisptagsfiles4): Use absolute filenames again.
(TAGS, TAGS-LISP): Not everything needs to run in one line.
Remove all *loaddefs files, not just the first.  Remove esh-groups.
(maintainer-clean): Delete TAGS, TAGS-LISP.

* lwlib/Makefile.in (abs_srcdir): New, set by configure.
(ETAGS, ctagsfiles): New variables.
(TAGS): Use ETAGS, ctagsfiles.  Use absolute filenames again.
2013-11-02 12:18:50 -07:00
Glenn Morris
11e5e2eba1 Fix whitespace in previous Makefile.in changes 2013-10-23 21:05:54 -07:00
Glenn Morris
eb9a36619e Attempt at a fix for mingw CPPFLAGS
* configure.ac (CPPFLAGS) [mingw32]: Use abs_top_srcdir.

* Makefile.in (abs_top_srcdir):
* lib-src/Makefile.in (abs_top_srcdir):
* lwlib/Makefile.in (abs_top_srcdir):
* nt/Makefile.in (abs_top_srcdir):
* oldXMenu/Makefile.in (abs_top_srcdir):
* src/Makefile.in (abs_top_srcdir):
New, set by configure.
2013-10-23 19:15:16 -07:00
Paul Eggert
224e313d3b Makefile improvements.
* Makefile.in (lib): Depend on am--refresh, to avoid a race.
(src): Remove duplicate dependency on FRC.
Invoke just one submake, not two.  Avoid the need for 'pwd'.
* lwlib/Makefile.in (all): Put this first.  Don't use double-colon
rules, as they are not portable according to POSIX.  Mark as phony.
* oldXMenu/Makefile.in (all, tags): Don't use double-colon rules, as they
are not portable according to POSIX.  Mark as phony.
* src/Makefile.in (config.status): Don't use double-colon rules, as
they are not portable according to POSIX.  Fix shell typo with `;
I guess this rule has never been tested?
(VCSWITNESS): New macro, to override any environment var.
2013-09-03 23:45:44 -07:00
Glenn Morris
bbece175c9 Use a @configure_input@ comment at the start of generated Makefiles 2013-07-23 18:57:17 -04:00
Paul Eggert
1d71c1d9de Fix minor problems found by static checking.
* lwlib/lwlib-Xaw.h (xaw_update_one_value, xaw_popup_menu):
* lwlib/lwlib-Xlw.h (xlw_update_one_value, xlw_pop_instance):
* lwlib/lwlib.h (lw_allow_resizing, lw_set_main_areas) [!USE_MOTIF]:
Now const.
* src/widget.c (resize_cb): Remove unused local.
2013-06-30 09:14:22 -07:00
Juanma Barranquero
4f40506961 Fix typos in ChangeLogs. 2013-06-19 22:10:57 +02:00
Paul Eggert
ab422c4d68 Update copyright notices for 2013. 2013-01-01 09:11:05 +00:00
Paul Eggert
fee0bd5f32 Use URLs, not Boston addresses, in copyright notices. 2012-12-31 07:34:32 -08:00
Ulrich Mueller
150798c5ac Let configure set ar and associated flags
* lwlib/Makefile.in (AR, ARFLAGS):
* oldXMenu/Makefile.in (AR, ARFLAGS): Get values from configure.

Fixes: debbugs:12549
2012-10-05 20:42:28 -04:00
Paul Eggert
620f13b061 Use ASCII tests for character types.
* admin/merge-gnulib (GNULIB_MODULES): Add c-ctype.
* lwlib/lwlib-Xaw.c, lwlib/lwlib.c, lwlib/xlwmenu.c:
Don't include <ctype.h>; no longer needed.
* lwlib/lwlib-Xaw.c (openFont):
* lwlib/xlwmenu.c (openXftFont): Test just for ASCII digits.
* src/category.c, src/dispnew.c, src/doprnt.c, src/editfns.c, src/syntax.c
* src/term.c, src/xfns.c, src/xterm.c:
Don't include <ctype.h>; was not needed.
* src/charset.c, src/doc.c, src/fileio.c, src/font.c, src/frame.c:
* src/gtkutil.c, src/image.c, src/sysdep.c, src/xfaces.c:
Include <c-ctype.h> instead of <ctype.h>.
* src/nsterm.m: Include <c-ctype.h>.
* src/charset.c (read_hex):
* src/doc.c (Fsnarf_documentation):
* src/fileio.c (IS_DRIVE) [WINDOWSNT]:
(DRIVE_LETTER) [DOS_NT]:
(Ffile_name_directory, Fexpand_file_name)
(Fsubstitute_in_file_name):
* src/font.c (font_parse_xlfd, font_parse_fcname):
* src/frame.c (x_set_font_backend):
* src/gtkutil.c (xg_get_font):
* src/image.c (xbm_scan, xpm_scan, pbm_scan_number):
* src/nsimage.m (hexchar):
* src/nsterm.m (ns_xlfd_to_fontname):
* src/sysdep.c (system_process_attributes):
* src/xfaces.c (hash_string_case_insensitive):
Use C-locale tests instead of locale-specific tests for character
types, since we want the ASCII interpretation here, not the
interpretation suitable for whatever happens to be the current locale.
2012-08-16 14:58:44 -07:00
Glenn Morris
0f6cabdbbb * lwlib/Makefile.in (config_h): Add conf_post.h. 2012-08-01 13:55:15 -04:00
Dmitry Antipov
c09bfb2f14 Miscellaneous fixes for non-default X toolkits.
* configure.ac (MOTIF): Check for /usr/include/openmotif
and /usr/(lib|lib64)/openmotif if --with-x-toolkit=motif.
* lwlib/lwlib-Xm.c (make_menu_in_widget): Remove unused variable.
* src/xfns.c (Fx_file_dialog): Change to SSDATA to avoid warnings.
* src/xterm.c (x_frame_of_widget): Remove redundant prototype.
Move under #ifdef USE_LUCID.
(x_create_toolkit_scroll_bar): Adjust scroll_bar_name
definition and usage to avoid warnings.
2012-07-31 15:37:38 +04:00
Juanma Barranquero
ed9265fc7d Fix typos in ChangeLogs. 2012-07-14 04:08:32 +02:00
Paul Eggert
fee5959dd8 Use c_strcasecmp for ASCII case-insensitive comparison.
Fixes: debbugs:11786
2012-07-06 14:07:46 -07:00
Paul Eggert
cf38a720e8 Clean out last vestiges of the old HAVE_CONFIG_H stuff. 2012-06-25 18:05:39 -07:00
Dmitry Antipov
3511c78479 * configure.in (AC_CHECK_FUNCS): Detect library functions
strcasecmp and strncasecmp.
* lib-src/etags.c (etags_strcasecmp, etags_strncasecmp): Define to
library functions strcasecmp and strncasecmp if available.
* lwlib/lwlib.c (my_strcasecmp): Rename to lwlib_strcasecmp, which
may be defined to library function strcasecmp if available.
* src/dispextern.c (xstrcasecmp): Define to library function
strcasecmp if available.
* src/xfaces.c: Do not use xstrcasecmp if strcasecmp is available.
2012-06-25 18:07:04 +04:00
Paul Eggert
845ca89390 Switch from NO_RETURN to C11's _Noreturn.
Fixes: debbugs:11750
2012-06-24 10:39:14 -07:00
Paul Eggert
ba93a18774 Remove obsolete '#define static' cruft.
* etc/PROBLEMS: Remove obsolete '#define static' cruft.
* lwlib/xlwmenu.c [emacs]: Include "bitmaps/gray.xbm".
(gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits) [!emacs]:
Remove; all uses replaced with definiens.
* src/s/hpux10-20.h (_FILE_OFFSET_BITS): Don't #undef.
This #undef was "temporary" in 2000; it is no longer needed
now that '#define static' has gone away.
* src/xfns.c, src/xterm.h (gray_bitmap_width, gray_bitmap_height)
(gray_bitmap_bits): Remove; no longer needed.
All uses replaced with definiens.
* src/xterm.c: Include "bitmaps/gray.xbm".
2012-05-30 22:08:37 -07:00
Paul Eggert
6c94c34fe8 Merge from trunk. 2012-04-18 09:45:13 -07:00
Paul Eggert
ae6e112df0 Merge from trunk. 2012-04-17 14:38:34 -07:00
Paul Eggert
bdf35b6a6a Merge from trunk. 2012-04-13 21:37:44 -07:00
Glenn Morris
2f097256b9 Repurpose C_SWITCH_X_SYSTEM as GNUSTEP_CFLAGS
This is the only thing left that uses it.

* configure.in (GNUSTEP_CFLAGS): Rename from C_SWITCH_X_SYSTEM.

* src/Makefile.in (GNUSTEP_CFLAGS): Rename from C_SWITCH_X_SYSTEM.

* lwlib/Makefile.in (C_SWITCH_X_SYSTEM): Remove.
(ALL_CFLAGS): Remove C_SWITCH_X_SYSTEM.

* oldXMenu/Makefile.in (C_SWITCH_X_SYSTEM): Remove.
(ALL_CFLAGS): Remove C_SWITCH_X_SYSTEM.

* msdos/sedlibmk.inp, msdos/sed1v2.inp:
GNUSTEP_CFLAGS replaces C_SWITCH_X_SYSTEM.
2012-04-10 21:25:51 -04:00
Paul Eggert
9f46df23a3 Merge from trunk; add Bug#. 2012-04-09 12:51:06 -07:00
Paul Eggert
b8df54ffbe configure: new option --enable-gcc-warnings
I have been using this change for many months in my private copy
of Emacs, and have used it to find several bugs.  It's mature
enough to publish now.
* Makefile.in (GNULIB_MODULES): Add warnings, manywarnings.
* configure.in: Support --enable-gcc-warnings, in the style of
other GNU packages such as coreutils.
(C_WARNINGS_SWITCH): Remove, replacing with...
(WARN_CFLAGS, GNULIB_WARN_CFLAGS): New variable.
(PKG_CHECK_MODULES, C_SWITCH_X_SITE): Use -isystem rather than -I,
when including system files with GCC.
* etc/NEWS: Mention --enable-gcc-warnings.
* lib/Makefile.am (AM_CFLAGS): New macro.
* m4/manywarnings.m4, m4/warnings.m4: New files, from gnulib.
* lib-src/Makefile.in (C_WARNINGS_SWITCH): Remove.
(WARN_CFLAGS, WERROR_CFLAGS): New macros.
(BASE_CFLAGS): Use new macros rather than old.
* lwlib/Makefile.in (C_WARNINGS_SWITCH): Remove.
(WARN_CFLAGS, WERROR_CFLAGS): New macros.
(ALL_CFLAGS): Use new macros rather than old.
* oldXMenu/Makefile.in (C_WARNINGS_SWITCH): Remove.
(WARN_CFLAGS, WERROR_CFLAGS): New macros.
(ALL_CFLAGS): Use new macros rather than old.
* src/Makefile.in (C_WARNINGS_SWITCH): Remove.
(WARN_CFLAGS, WERROR_CFLAGS): New macros.
(ALL_CFLAGS): Use new macros rather than old.
* src/process.c: Ignore -Wstrict-overflow to work around GCC bug 52904.
* src/regex.c: Ignore -Wstrict-overflow.  If !emacs, also ignore
-Wunused-but-set-variable, -Wunused-function, -Wunused-macros,
-Wunused-result, -Wunused-variable.  This should go away once
the Emacs and Gnulib regex code is merged.
(xmalloc, xrealloc): Now static.
2012-04-09 00:45:59 -07:00
Glenn Morris
acaf905b11 Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
Juanma Barranquero
20db1522fe Fix typos. 2011-11-24 02:58:14 +01:00
Paul Eggert
40ba43b4b7 Spelling fixes. 2011-11-19 23:30:16 -08:00
Paul Eggert
3ed8598c49 Spelling fixes. 2011-11-18 00:31:02 -08:00
Dmitry Antipov
81d40c9208 Use xfree, not free, to avoid crash with --enable-checking=xmallocoverrun. 2011-10-13 07:55:46 -07:00
YAMAMOTO Mitsuharu
bc11a3942b lwlib/Makefile.in (ALL_CFLAGS): Add -I../lib for generated header files in out-of-tree build. 2011-06-27 12:00:16 +09:00
Paul Eggert
0c1477cd00 Merge: Cons<->int and similar integer overflow fixes. 2011-06-06 11:36:36 -07:00
Paul Eggert
695e5b41ac * Makefile.in (ALL_CFLAGS): Add -I$(srcdir)/../lib.
This is needed because lisp.h includes intprops.h now.
2011-06-06 11:26:04 -07:00
Paul Eggert
fd35b6f967 Static checks with GCC 4.6.0 and non-default toolkits. 2011-04-16 16:11:35 -07:00
Paul Eggert
b165261a47 * lwlib-utils.c (XtCompositeChildren): Likewise. 2011-04-16 14:23:30 -07:00
Paul Eggert
5c5e6a401e * lwlib-Xm.c (make_dialog): Rename local to avoid shadowing.
(make_menu_in_widget): Add cast to avoid warning.
2011-04-16 14:22:40 -07:00
Paul Eggert
748945cc8b * lwlib.c (first_child) [USE_MOTIF]: Protoize. 2011-04-16 09:42:58 -07:00
Paul Eggert
9ac71959cb * lwlib.c (EXPLAIN, destroy_one_instance): Avoid "else;". 2011-04-15 18:42:03 -07:00
Paul Eggert
4d511c40f4 * lwlib-utils.h, lwlib-utils.c (XtSafelyDestroyWidget): Remove; unused. 2011-04-15 18:41:12 -07:00