Mercurial > hg > xemacs-beta
view lwlib/Makefile.in.in @ 5038:9410323e4b0d
major dynarr fixes
-------------------- ChangeLog entries follow: --------------------
src/ChangeLog addition:
2010-02-20 Ben Wing <ben@xemacs.org>
* device-x.c (Fx_get_resource):
* dynarr.c:
* dynarr.c (Dynarr_realloc):
* dynarr.c (Dynarr_newf):
* dynarr.c (Dynarr_lisp_realloc):
* dynarr.c (Dynarr_lisp_newf):
* dynarr.c (Dynarr_resize):
* dynarr.c (Dynarr_insert_many):
* dynarr.c (Dynarr_delete_many):
* dynarr.c (Dynarr_memory_usage):
* dynarr.c (stack_like_free):
* file-coding.c (coding_reader):
* file-coding.c (gzip_convert):
* gutter.c (output_gutter):
* lisp.h:
* lisp.h (Dynarr_declare):
* lisp.h (DYNARR_SET_LISP_IMP):
* lisp.h (CHECK_NATNUM):
* profile.c (create_timing_profile_table):
* redisplay-output.c (sync_rune_structs):
* redisplay-output.c (sync_display_line_structs):
* redisplay-output.c (redisplay_output_window):
* redisplay.c:
* redisplay.c (get_display_block_from_line):
* redisplay.c (add_ichar_rune_1):
* redisplay.c (ensure_modeline_generated):
* redisplay.c (generate_displayable_area):
* redisplay.c (regenerate_window):
* redisplay.c (update_line_start_cache):
* signal.c:
* signal.c (check_quit):
Lots of rewriting of dynarr code.
(1) Lots of documentation added. Also fix places that
referenced a now-bogus internals node concerning redisplay
critical sections.
(2) Rename:
Dynarr_add_lisp_string -> Dynarr_add_ext_lisp_string
Dynarr_set_length -> Dynarr_set_lengthr ("restricted")
Dynarr_increment -> Dynarr_incrementr
Dynarr_resize_if -> Dynarr_resize_to_add
(3) New functions:
Dynarr_elsize = dy->elsize_
Dynarr_set_length(): Set length, resizing as necessary
Dynarr_set_length_and_zero(): Set length, resizing as necessary,
zeroing out new elements
Dynarr_increase_length(), Dynarr_increase_length_and_zero():
Optimization of Dynarr_set_length(), Dynarr_set_length_and_zero()
when size is known to increase
Dynarr_resize_to_fit(): Resize as necessary to fit a given length.
Dynarr_set(): Set element at a given position, increasing length
as necessary and setting any newly created positions to 0
(4) Use Elemcount, Bytecount.
(5) Rewrite many macros as inline functions.
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Sat, 20 Feb 2010 03:46:22 -0600 |
parents | ad2f4ae9895b |
children | ade4c7e2c6cb |
line wrap: on
line source
## Makefile for Lucid Widget Library ## Copyright (C) 1994 Lucid, Inc. ## Copyright (C) 1995 Tinker Systems and INS Engineering Corp. ## Copyright (C) 1994, 1995 Board of Trustees, University of Illinois ## Copyright (C) 1996, 1997 Sun Microsystems, Inc. ## Copyright (C) 2005 Ben Wing. ## This file is part of the Lucid Widget Library. ## The Lucid Widget Library is free software; 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 2, or (at your option) ## any later version. ## The Lucid Widget Library is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## You should have received a copy of the GNU General Public License ## along with XEmacs; see the file COPYING. If not, write to ## the Free Software Foundation, Inc., 59 Temple Place - Suite 330, ## Boston, MA 02111-1307, USA. ## For performance and consistency, no built-in rules .SUFFIXES: .SUFFIXES: .c .h .o .i .s srcdir=@srcdir@ @SET_MAKE@ SHELL=/bin/sh RM = rm -f AR = ar cq CC=@XEMACS_CC@ CPP=@CPP@ CFLAGS=@XE_CFLAGS@ CPPFLAGS=@CPPFLAGS@ RANLIB=@RANLIB@ #define NOT_C_CODE #include "../src/config.h" #ifdef USE_GNU_MAKE vpath %.c @srcdir@ vpath %.h @srcdir@ #else VPATH=@srcdir@ #endif objs = lwlib.o lwlib-utils.o lwlib-colors.o lwlib-fonts.o @lwlib_objs@ all: liblw.a c_switch_all=@c_switch_all@ cppflags = $(CPPFLAGS) -I. -I$(srcdir)/../src $(c_switch_all) cflags = $(CFLAGS) $(cppflags) #ifdef SOLARIS2 %.o : %.c #else .c.o: #endif $(CC) -c $(cflags) $< ## Create preprocessor output (debugging purposes only) .c.i: #ifdef __GNUC__ $(CC) -E $(cppflags) -o $@ $< #else /* works on Solaris; what about other systems? */ $(CC) -P $(cppflags) $< #endif /* compiler */ ## Create assembler output (debugging purposes only) .c.s: $(CC) -S -c $(cflags) $< liblw.a: $(objs) $(RM) $@ $(AR) $@ $(objs) @-test -n "$(RANLIB)" && $(RANLIB) $@ .PHONY: mostlyclean clean distclean realclean extraclean .PHONY: distclean-noconfig realclean-noconfig extraclean-noconfig mostlyclean: -$(RM) liblw.a liblw_pure_*.a *.o *.i core clean: mostlyclean distclean-noconfig: clean -$(RM) config.h TAGS ## This is used in making a distribution. ## Do not use it on development directories! distclean: distclean-noconfig -$(RM) GNUmakefile Makefile Makefile.in realclean-noconfig: distclean-noconfig realclean: distclean extraclean-noconfig: realclean-noconfig -$(RM) *~ \#* extraclean: realclean -$(RM) *~ \#* CONFIG_H = ../src/config.h config.h ## Following correct as of 19980312 lwlib-Xaw.o: $(CONFIG_H) lwlib-Xaw.h lwlib-internal.h lwlib.h xlwmenu.h xlwradio.h \ xlwgauge.h xlwcheckbox.h lwlib-Xlw.o: $(CONFIG_H) lwlib-Xlw.h lwlib-internal.h lwlib.h xlwmenu.h xlwscrollbar.h \ xlwtabs.h xlwgcs.h lwlib-Xm.o: $(CONFIG_H) lwlib-Xm.h lwlib-internal.h lwlib-utils.h lwlib.h xlwmenu.h lwlib-utils.o: $(CONFIG_H) lwlib-utils.h lwlib-colors.o: $(CONFIG_H) lwlib-colors.h lwlib-fonts.o: $(CONFIG_H) lwlib-fonts.h lwlib.o: $(CONFIG_H) lwlib-Xaw.h lwlib-Xlw.h lwlib-Xm.h lwlib-internal.h lwlib-utils.h lwlib.h xlwmenu.h xlwmenu.o: $(CONFIG_H) lwlib.h xlwmenu.h xlwmenuP.h xlwscrollbar.o: $(CONFIG_H) xlwscrollbar.h xlwscrollbarP.h xlwtabs.o: $(CONFIG_H) xlwtabs.h xlwtabsP.h xlwradio.o: $(CONFIG_H) xlwradio.h xlwradioP.h xlwcheckbox.o: $(CONFIG_H) xlwcheckbox.h xlwcheckboxP.h xlwgauge.o: $(CONFIG_H) xlwgauge.h xlwgaugeP.h xlwgcs.o: $(CONFIG_H) xlwgcs.h