view modules/sample/external/Makefile.in.in @ 5803:b79e1e02bf01

Preserve extent information in the command builder code. src/ChangeLog addition: 2014-07-14 Aidan Kehoe <kehoea@parhasard.net> * event-stream.c: * event-stream.c (mark_command_builder): * event-stream.c (finalize_command_builder): Removed. * event-stream.c (allocate_command_builder): * event-stream.c (free_command_builder): Removed. Use free_normal_lisp_object() instead. * event-stream.c (echo_key_event): * event-stream.c (regenerate_echo_keys_from_this_command_keys): Detach all extents here. * event-stream.c (maybe_echo_keys): * event-stream.c (reset_key_echo): * event-stream.c (execute_help_form): * event-stream.c (Fnext_event): * event-stream.c (command_builder_find_leaf_no_jit_binding): * event-stream.c (command_builder_find_leaf): * event-stream.c (lookup_command_event): * events.h (struct command_builder): Move the command builder's echo_buf to being a Lisp string rather than a malloced Ibyte array. This allows passing through extent information, which was previously dropped. It also simplifies the allocation and release code for the command builder. Rename echo_buf_index to echo_buf_fill_pointer, better reflecting its function. Don't rely on zero-termination (something not particularly compatible with Lisp-level code) when showing a substring of echo_buf that differs from that designated by echo_buf_fill_pointer, keep a separate counter instead and use that. * minibuf.c: * minibuf.c (echo_area_append): Use the new START and END keyword arguments to #'append-message, rather than consing a new string for basically every #'next-event prompt displayed. test/ChangeLog addition: 2014-07-14 Aidan Kehoe <kehoea@parhasard.net> * automated/extent-tests.el: Check that extent information is passed through to the echo area correctly with #'next-event's PROMPT argument. lisp/ChangeLog addition: 2014-07-14 Aidan Kehoe <kehoea@parhasard.net> * simple.el (raw-append-message): Use #'write-sequence in this, take its START and END keyword arguments, so our callers don't have to cons as much. * simple.el (append-message): Pass through START and END here.
author Aidan Kehoe <kehoea@parhasard.net>
date Mon, 14 Jul 2014 13:42:42 +0100
parents 4aa8ee813265
children
line wrap: on
line source

##   Makefile for the sample module in XEmacs.
##   Copyright (C) 2002 Jerry James.
##
##   This sample Makefile is free; you can redistribute it and/or modify it
##   under the terms of the GNU General Public License as published by the
##   Free Software Foundation, either version 3 of the License, or (at your
##   option) any later version.

## This file is not part of XEmacs.

### Specialize this part for your module
MODNAME=sample
MODVER=0.0.1
MODTITLE="Sample module for XEmacs"
SRCS=sample.c

### You should not need to modify anything below this line
DESTDIR=
SHELL=/bin/sh
RM=rm -f
CFLAGS=@CFLAGS@
LDFLAGS=@LDFLAGS@

srcdir=@srcdir@
VPATH=@srcdir@

SRC_SRCS=$(SRCS:%=$(srcdir)/%)
OBJS=$(SRCS:.c=.o)

ELLCC=@ELLCC@
MODARCHDIR=$(shell @ELLCC@ --mod-archdir)
INSTALLPATH=$(shell @ELLCC@ --mod-site-location)
INSTALL=@INSTALL@
INSTALL_PROGRAM=@INSTALL_PROGRAM@

.PHONY:	clean distclean install
all: $(MODNAME).ell

.c.o:
	$(ELLCC) $(CFLAGS) --mode=compile --mod-output=$@ \
	-I$(MODARCHDIR)/include -c $<

$(MODNAME).ell: $(OBJS) $(MODNAME)_i.o
	$(ELLCC) --mode=link --mod-output=$@ $(OBJS) $(MODNAME)_i.o $(LDFLAGS)

$(MODNAME)_i.c: $(SRCS)
	ELLMAKEDOC=$(MODARCHDIR)/make-docfile $(ELLCC) --mode=init \
	--mod-output=$@ --mod-name=$(MODNAME) --mod-version=$(MODVER) \
	--mod-title=$(MODTITLE) $(SRC_SRCS)

clean:
	$(RM) $(MODNAME).ell $(OBJS) $(MODNAME)_i.* *~

distclean: clean
	$(RM) Makefile config.* configure

install: $(MODNAME).ell
	$(INSTALL_PROGRAM) $< $(DESTDIR)$(INSTALLPATH)