diff options
author | Boris Samorodov <bsam@FreeBSD.org> | 2008-06-03 14:36:50 +0000 |
---|---|---|
committer | Boris Samorodov <bsam@FreeBSD.org> | 2008-06-03 14:36:50 +0000 |
commit | 23f3a4a8581cdabcfc22dbb9fefff7f9ed696b06 (patch) | |
tree | c99a2336f9e69091c7a86ca141f970f4ae14ef89 /editors | |
parent | 7ee76ecac5a7a35cd9b94b74b409b19c68d42de4 (diff) | |
download | ports-23f3a4a8581cdabcfc22dbb9fefff7f9ed696b06.tar.gz ports-23f3a4a8581cdabcfc22dbb9fefff7f9ed696b06.zip |
Notes
Diffstat (limited to 'editors')
-rw-r--r-- | editors/emacs/Makefile | 4 | ||||
-rw-r--r-- | editors/emacs/distinfo | 6 | ||||
-rw-r--r-- | editors/emacs/files/patch-configure | 10 | ||||
-rw-r--r-- | editors/emacs/files/patch-src-gmalloc.c | 606 | ||||
-rw-r--r-- | editors/emacs/pkg-plist | 22 | ||||
-rw-r--r-- | editors/emacs22/Makefile | 4 | ||||
-rw-r--r-- | editors/emacs22/distinfo | 6 | ||||
-rw-r--r-- | editors/emacs22/files/patch-configure | 10 | ||||
-rw-r--r-- | editors/emacs22/files/patch-src-gmalloc.c | 606 | ||||
-rw-r--r-- | editors/emacs22/pkg-plist | 22 | ||||
-rw-r--r-- | editors/emacs23/Makefile | 4 | ||||
-rw-r--r-- | editors/emacs23/distinfo | 6 | ||||
-rw-r--r-- | editors/emacs23/files/patch-configure | 10 | ||||
-rw-r--r-- | editors/emacs23/files/patch-src-gmalloc.c | 606 | ||||
-rw-r--r-- | editors/emacs23/pkg-plist | 22 |
15 files changed, 75 insertions, 1869 deletions
diff --git a/editors/emacs/Makefile b/editors/emacs/Makefile index c81405e870d9..e9d850d66872 100644 --- a/editors/emacs/Makefile +++ b/editors/emacs/Makefile @@ -7,7 +7,7 @@ PORTNAME= emacs PORTVERSION= ${EMACS_VER} -PORTREVISION= 5 +PORTREVISION= 0 CATEGORIES= editors ipv6 MASTER_SITES= ${MASTER_SITE_GNU} MASTER_SITE_SUBDIR= ${PORTNAME} @@ -29,7 +29,7 @@ CONFLICTS= emacs-19.* emacs-21.* \ xemacs-[0-9]* xemacs-devel-[0-9]* \ xemacs-mule-[0-9]* xemacs-devel-mule-[0-9]* -EMACS_VER= 22.1 +EMACS_VER= 22.2 GNU_CONFIGURE= yes USE_GMAKE= yes diff --git a/editors/emacs/distinfo b/editors/emacs/distinfo index 024ae719a029..80788e833eb8 100644 --- a/editors/emacs/distinfo +++ b/editors/emacs/distinfo @@ -1,3 +1,3 @@ -MD5 (emacs-22.1.tar.gz) = 6949df37caec2d7a2e0eee3f1b422726 -SHA256 (emacs-22.1.tar.gz) = 1ec43bef7127e572f92d7c3a846951cf8e263e27445c62c867035f94681c3ed0 -SIZE (emacs-22.1.tar.gz) = 38172226 +MD5 (emacs-22.2.tar.gz) = d6ee586b8752351334ebf072904c4d51 +SHA256 (emacs-22.2.tar.gz) = 216839e1fb38ca4f2ed0a07689fb47ee80d90845f34e0a56fe781d6aa462e367 +SIZE (emacs-22.2.tar.gz) = 38694318 diff --git a/editors/emacs/files/patch-configure b/editors/emacs/files/patch-configure deleted file mode 100644 index ea507e10728b..000000000000 --- a/editors/emacs/files/patch-configure +++ /dev/null @@ -1,10 +0,0 @@ ---- configure.orig Fri Feb 8 09:19:48 2008 -+++ configure Fri Feb 8 09:20:26 2008 -@@ -2204,6 +2204,7 @@ - opsys=freebsd - case "${canonical}" in - alpha*-*-freebsd*) machine=alpha ;; -+ arm*-*-freebsd*) machine=arm ;; - ia64-*-freebsd*) machine=ia64 ;; - sparc64-*-freebsd*) machine=sparc ;; - powerpc-*-freebsd*) machine=macppc ;; diff --git a/editors/emacs/files/patch-src-gmalloc.c b/editors/emacs/files/patch-src-gmalloc.c deleted file mode 100644 index c46344980d9a..000000000000 --- a/editors/emacs/files/patch-src-gmalloc.c +++ /dev/null @@ -1,606 +0,0 @@ ---- ./src/gmalloc.c.orig 2007-09-27 19:31:50.000000000 +0300 -+++ ./src/gmalloc.c 2007-09-27 19:31:54.000000000 +0300 -@@ -1,9 +1,6 @@ - /* This file is no longer automatically generated from libc. */ - - #define _MALLOC_INTERNAL --#ifdef HAVE_GTK_AND_PTHREAD --#define USE_PTHREAD --#endif - - /* The malloc headers and source files from the C library follow here. */ - -@@ -40,6 +37,10 @@ - #include <config.h> - #endif - -+#ifdef HAVE_GTK_AND_PTHREAD -+#define USE_PTHREAD -+#endif -+ - #if ((defined __cplusplus || (defined (__STDC__) && __STDC__) \ - || defined STDC_HEADERS || defined PROTOTYPES) \ - && ! defined (BROKEN_PROTOTYPES)) -@@ -128,6 +129,8 @@ - #if ! (defined (_MALLOC_INTERNAL) && __DJGPP__ - 0 == 1) /* Avoid conflict. */ - extern __ptr_t memalign PP ((__malloc_size_t __alignment, - __malloc_size_t __size)); -+extern int posix_memalign PP ((__ptr_t *, __malloc_size_t, -+ __malloc_size_t size)); - #endif - - /* Allocate SIZE bytes on a page boundary. */ -@@ -135,6 +138,10 @@ - extern __ptr_t valloc PP ((__malloc_size_t __size)); - #endif - -+#ifdef USE_PTHREAD -+/* Set up mutexes and make malloc etc. thread-safe. */ -+extern void malloc_enable_thread PP ((void)); -+#endif - - #ifdef _MALLOC_INTERNAL - -@@ -235,14 +242,38 @@ - extern __ptr_t _malloc_internal PP ((__malloc_size_t __size)); - extern __ptr_t _realloc_internal PP ((__ptr_t __ptr, __malloc_size_t __size)); - extern void _free_internal PP ((__ptr_t __ptr)); -+extern __ptr_t _malloc_internal_nolock PP ((__malloc_size_t __size)); -+extern __ptr_t _realloc_internal_nolock PP ((__ptr_t __ptr, __malloc_size_t __size)); -+extern void _free_internal_nolock PP ((__ptr_t __ptr)); - - #ifdef USE_PTHREAD --extern pthread_mutex_t _malloc_mutex; --#define LOCK() pthread_mutex_lock (&_malloc_mutex) --#define UNLOCK() pthread_mutex_unlock (&_malloc_mutex) -+extern pthread_mutex_t _malloc_mutex, _aligned_blocks_mutex; -+extern int _malloc_thread_enabled_p; -+#define LOCK() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_lock (&_malloc_mutex); \ -+ } while (0) -+#define UNLOCK() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_unlock (&_malloc_mutex); \ -+ } while (0) -+#define LOCK_ALIGNED_BLOCKS() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_lock (&_aligned_blocks_mutex); \ -+ } while (0) -+#define UNLOCK_ALIGNED_BLOCKS() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_unlock (&_aligned_blocks_mutex); \ -+ } while (0) - #else - #define LOCK() - #define UNLOCK() -+#define LOCK_ALIGNED_BLOCKS() -+#define UNLOCK_ALIGNED_BLOCKS() - #endif - - #endif /* _MALLOC_INTERNAL. */ -@@ -373,7 +404,7 @@ - extern __ptr_t bss_sbrk PP ((ptrdiff_t __size)); - extern int bss_sbrk_did_unexec; - #endif --__ptr_t (*__morecore) PP ((ptrdiff_t __size)) = __default_morecore; -+__ptr_t (*__morecore) PP ((__malloc_ptrdiff_t __size)) = __default_morecore; - - /* Debugging hook for `malloc'. */ - __ptr_t (*__malloc_hook) PP ((__malloc_size_t __size)); -@@ -553,8 +584,49 @@ - } - - #ifdef USE_PTHREAD --static pthread_once_t malloc_init_once_control = PTHREAD_ONCE_INIT; --pthread_mutex_t _malloc_mutex; -+pthread_mutex_t _malloc_mutex = PTHREAD_MUTEX_INITIALIZER; -+pthread_mutex_t _aligned_blocks_mutex = PTHREAD_MUTEX_INITIALIZER; -+int _malloc_thread_enabled_p; -+ -+static void -+malloc_atfork_handler_prepare () -+{ -+ LOCK (); -+ LOCK_ALIGNED_BLOCKS (); -+} -+ -+static void -+malloc_atfork_handler_parent () -+{ -+ UNLOCK_ALIGNED_BLOCKS (); -+ UNLOCK (); -+} -+ -+static void -+malloc_atfork_handler_child () -+{ -+ UNLOCK_ALIGNED_BLOCKS (); -+ UNLOCK (); -+} -+ -+/* Set up mutexes and make malloc etc. thread-safe. */ -+void -+malloc_enable_thread () -+{ -+ if (_malloc_thread_enabled_p) -+ return; -+ -+ /* Some pthread implementations call malloc for statically -+ initialized mutexes when they are used first. To avoid such a -+ situation, we initialize mutexes here while their use is -+ disabled in malloc etc. */ -+ pthread_mutex_init (&_malloc_mutex, NULL); -+ pthread_mutex_init (&_aligned_blocks_mutex, NULL); -+ pthread_atfork (malloc_atfork_handler_prepare, -+ malloc_atfork_handler_parent, -+ malloc_atfork_handler_child); -+ _malloc_thread_enabled_p = 1; -+} - #endif - - static void -@@ -567,17 +639,6 @@ - if (__malloc_initialize_hook) - (*__malloc_initialize_hook) (); - --#ifdef USE_PTHREAD -- { -- pthread_mutexattr_t attr; -- -- pthread_mutexattr_init (&attr); -- pthread_mutexattr_settype (&attr, PTHREAD_MUTEX_RECURSIVE); -- pthread_mutex_init (&_malloc_mutex, &attr); -- pthread_mutexattr_destroy (&attr); -- } --#endif -- - heapsize = HEAP / BLOCKSIZE; - _heapinfo = (malloc_info *) align (heapsize * sizeof (malloc_info)); - if (_heapinfo == NULL) -@@ -596,18 +657,16 @@ - return; - } - --/* Set everything up and remember that we have. */ -+/* Set everything up and remember that we have. -+ main will call malloc which calls this function. That is before any threads -+ or signal handlers has been set up, so we don't need thread protection. */ - int - __malloc_initialize () - { --#ifdef USE_PTHREAD -- pthread_once (&malloc_init_once_control, malloc_initialize_1); --#else - if (__malloc_initialized) - return 0; - - malloc_initialize_1 (); --#endif - - return __malloc_initialized; - } -@@ -616,9 +675,9 @@ - - /* Get neatly aligned memory, initializing or - growing the heap info table as necessary. */ --static __ptr_t morecore PP ((__malloc_size_t)); -+static __ptr_t morecore_nolock PP ((__malloc_size_t)); - static __ptr_t --morecore (size) -+morecore_nolock (size) - __malloc_size_t size; - { - __ptr_t result; -@@ -661,7 +720,7 @@ - `morecore_recursing' flag and return null. */ - int save = errno; /* Don't want to clobber errno with ENOMEM. */ - morecore_recursing = 1; -- newinfo = (malloc_info *) _realloc_internal -+ newinfo = (malloc_info *) _realloc_internal_nolock - (_heapinfo, newsize * sizeof (malloc_info)); - morecore_recursing = 0; - if (newinfo == NULL) -@@ -717,7 +776,7 @@ - /* Reset _heaplimit so _free_internal never decides - it can relocate or resize the info table. */ - _heaplimit = 0; -- _free_internal (oldinfo); -+ _free_internal_nolock (oldinfo); - PROTECT_MALLOC_STATE (0); - - /* The new heap limit includes the new table just allocated. */ -@@ -732,7 +791,7 @@ - - /* Allocate memory from the heap. */ - __ptr_t --_malloc_internal (size) -+_malloc_internal_nolock (size) - __malloc_size_t size; - { - __ptr_t result; -@@ -752,7 +811,6 @@ - return NULL; - #endif - -- LOCK (); - PROTECT_MALLOC_STATE (0); - - if (size < sizeof (struct list)) -@@ -802,8 +860,10 @@ - /* No free fragments of the desired size, so get a new block - and break it into fragments, returning the first. */ - #ifdef GC_MALLOC_CHECK -- result = _malloc_internal (BLOCKSIZE); -+ result = _malloc_internal_nolock (BLOCKSIZE); - PROTECT_MALLOC_STATE (0); -+#elif defined (USE_PTHREAD) -+ result = _malloc_internal_nolock (BLOCKSIZE); - #else - result = malloc (BLOCKSIZE); - #endif -@@ -874,7 +934,7 @@ - _heaplimit += wantblocks - lastblocks; - continue; - } -- result = morecore (wantblocks * BLOCKSIZE); -+ result = morecore_nolock (wantblocks * BLOCKSIZE); - if (result == NULL) - goto out; - block = BLOCK (result); -@@ -932,7 +992,19 @@ - - PROTECT_MALLOC_STATE (1); - out: -+ return result; -+} -+ -+__ptr_t -+_malloc_internal (size) -+ __malloc_size_t size; -+{ -+ __ptr_t result; -+ -+ LOCK (); -+ result = _malloc_internal_nolock (size); - UNLOCK (); -+ - return result; - } - -@@ -940,10 +1012,21 @@ - malloc (size) - __malloc_size_t size; - { -+ __ptr_t (*hook) (__malloc_size_t); -+ - if (!__malloc_initialized && !__malloc_initialize ()) - return NULL; - -- return (__malloc_hook != NULL ? *__malloc_hook : _malloc_internal) (size); -+ /* Copy the value of __malloc_hook to an automatic variable in case -+ __malloc_hook is modified in another thread between its -+ NULL-check and the use. -+ -+ Note: Strictly speaking, this is not a right solution. We should -+ use mutexes to access non-read-only variables that are shared -+ among multiple threads. We just leave it for compatibility with -+ glibc malloc (i.e., assignments to __malloc_hook) for now. */ -+ hook = __malloc_hook; -+ return (hook != NULL ? *hook : _malloc_internal) (size); - } - - #ifndef _LIBC -@@ -1024,9 +1107,9 @@ - struct alignlist *_aligned_blocks = NULL; - - /* Return memory to the heap. -- Like `free' but don't call a __free_hook if there is one. */ -+ Like `_free_internal' but don't lock mutex. */ - void --_free_internal (ptr) -+_free_internal_nolock (ptr) - __ptr_t ptr; - { - int type; -@@ -1043,9 +1126,9 @@ - if (ptr == NULL) - return; - -- LOCK (); - PROTECT_MALLOC_STATE (0); - -+ LOCK_ALIGNED_BLOCKS (); - for (l = _aligned_blocks; l != NULL; l = l->next) - if (l->aligned == ptr) - { -@@ -1053,6 +1136,7 @@ - ptr = l->exact; - break; - } -+ UNLOCK_ALIGNED_BLOCKS (); - - block = BLOCK (ptr); - -@@ -1158,7 +1242,7 @@ - table's blocks to the system before we have copied them to - the new location. */ - _heaplimit = 0; -- _free_internal (_heapinfo); -+ _free_internal_nolock (_heapinfo); - _heaplimit = oldlimit; - - /* Tell malloc to search from the beginning of the heap for -@@ -1166,8 +1250,8 @@ - _heapindex = 0; - - /* Allocate new space for the info table and move its data. */ -- newinfo = (malloc_info *) _malloc_internal (info_blocks -- * BLOCKSIZE); -+ newinfo = (malloc_info *) _malloc_internal_nolock (info_blocks -+ * BLOCKSIZE); - PROTECT_MALLOC_STATE (0); - memmove (newinfo, _heapinfo, info_blocks * BLOCKSIZE); - _heapinfo = newinfo; -@@ -1230,8 +1314,8 @@ - _chunks_free -= BLOCKSIZE >> type; - _bytes_free -= BLOCKSIZE; - --#ifdef GC_MALLOC_CHECK -- _free_internal (ADDRESS (block)); -+#if defined (GC_MALLOC_CHECK) || defined (USE_PTHREAD) -+ _free_internal_nolock (ADDRESS (block)); - #else - free (ADDRESS (block)); - #endif -@@ -1269,6 +1353,16 @@ - } - - PROTECT_MALLOC_STATE (1); -+} -+ -+/* Return memory to the heap. -+ Like `free' but don't call a __free_hook if there is one. */ -+void -+_free_internal (ptr) -+ __ptr_t ptr; -+{ -+ LOCK (); -+ _free_internal_nolock (ptr); - UNLOCK (); - } - -@@ -1278,8 +1372,10 @@ - free (ptr) - __ptr_t ptr; - { -- if (__free_hook != NULL) -- (*__free_hook) (ptr); -+ void (*hook) (__ptr_t) = __free_hook; -+ -+ if (hook != NULL) -+ (*hook) (ptr); - else - _free_internal (ptr); - } -@@ -1415,7 +1511,7 @@ - new region. This module has incestuous knowledge of the - internals of both free and malloc. */ - __ptr_t --_realloc_internal (ptr, size) -+_realloc_internal_nolock (ptr, size) - __ptr_t ptr; - __malloc_size_t size; - { -@@ -1425,15 +1521,14 @@ - - if (size == 0) - { -- _free_internal (ptr); -- return _malloc_internal (0); -+ _free_internal_nolock (ptr); -+ return _malloc_internal_nolock (0); - } - else if (ptr == NULL) -- return _malloc_internal (size); -+ return _malloc_internal_nolock (size); - - block = BLOCK (ptr); - -- LOCK (); - PROTECT_MALLOC_STATE (0); - - type = _heapinfo[block].busy.type; -@@ -1443,11 +1538,11 @@ - /* Maybe reallocate a large block to a small fragment. */ - if (size <= BLOCKSIZE / 2) - { -- result = _malloc_internal (size); -+ result = _malloc_internal_nolock (size); - if (result != NULL) - { - memcpy (result, ptr, size); -- _free_internal (ptr); -+ _free_internal_nolock (ptr); - goto out; - } - } -@@ -1467,7 +1562,7 @@ - Now we will free this chunk; increment the statistics counter - so it doesn't become wrong when _free_internal decrements it. */ - ++_chunks_used; -- _free_internal (ADDRESS (block + blocks)); -+ _free_internal_nolock (ADDRESS (block + blocks)); - result = ptr; - } - else if (blocks == _heapinfo[block].busy.info.size) -@@ -1482,8 +1577,8 @@ - /* Prevent free from actually returning memory to the system. */ - oldlimit = _heaplimit; - _heaplimit = 0; -- _free_internal (ptr); -- result = _malloc_internal (size); -+ _free_internal_nolock (ptr); -+ result = _malloc_internal_nolock (size); - PROTECT_MALLOC_STATE (0); - if (_heaplimit == 0) - _heaplimit = oldlimit; -@@ -1493,13 +1588,13 @@ - the thing we just freed. Unfortunately it might - have been coalesced with its neighbors. */ - if (_heapindex == block) -- (void) _malloc_internal (blocks * BLOCKSIZE); -+ (void) _malloc_internal_nolock (blocks * BLOCKSIZE); - else - { - __ptr_t previous -- = _malloc_internal ((block - _heapindex) * BLOCKSIZE); -- (void) _malloc_internal (blocks * BLOCKSIZE); -- _free_internal (previous); -+ = _malloc_internal_nolock ((block - _heapindex) * BLOCKSIZE); -+ (void) _malloc_internal_nolock (blocks * BLOCKSIZE); -+ _free_internal_nolock (previous); - } - goto out; - } -@@ -1519,18 +1614,31 @@ - { - /* The new size is different; allocate a new space, - and copy the lesser of the new size and the old. */ -- result = _malloc_internal (size); -+ result = _malloc_internal_nolock (size); - if (result == NULL) - goto out; - memcpy (result, ptr, min (size, (__malloc_size_t) 1 << type)); -- _free_internal (ptr); -+ _free_internal_nolock (ptr); - } - break; - } - - PROTECT_MALLOC_STATE (1); - out: -+ return result; -+} -+ -+__ptr_t -+_realloc_internal (ptr, size) -+ __ptr_t ptr; -+ __malloc_size_t size; -+{ -+ __ptr_t result; -+ -+ LOCK(); -+ result = _realloc_internal_nolock (ptr, size); - UNLOCK (); -+ - return result; - } - -@@ -1539,11 +1647,13 @@ - __ptr_t ptr; - __malloc_size_t size; - { -+ __ptr_t (*hook) (__ptr_t, __malloc_size_t); -+ - if (!__malloc_initialized && !__malloc_initialize ()) - return NULL; - -- return (__realloc_hook != NULL ? *__realloc_hook : _realloc_internal) -- (ptr, size); -+ hook = __realloc_hook; -+ return (hook != NULL ? *hook : _realloc_internal) (ptr, size); - } - /* Copyright (C) 1991, 1992, 1994 Free Software Foundation, Inc. - -@@ -1681,9 +1791,10 @@ - { - __ptr_t result; - unsigned long int adj, lastadj; -+ __ptr_t (*hook) (__malloc_size_t, __malloc_size_t) = __memalign_hook; - -- if (__memalign_hook) -- return (*__memalign_hook) (alignment, size); -+ if (hook) -+ return (*hook) (alignment, size); - - /* Allocate a block with enough extra space to pad the block with up to - (ALIGNMENT - 1) bytes if necessary. */ -@@ -1718,6 +1829,7 @@ - of an allocated block. */ - - struct alignlist *l; -+ LOCK_ALIGNED_BLOCKS (); - for (l = _aligned_blocks; l != NULL; l = l->next) - if (l->aligned == NULL) - /* This slot is free. Use it. */ -@@ -1725,21 +1837,58 @@ - if (l == NULL) - { - l = (struct alignlist *) malloc (sizeof (struct alignlist)); -- if (l == NULL) -+ if (l != NULL) - { -- free (result); -- return NULL; -+ l->next = _aligned_blocks; -+ _aligned_blocks = l; - } -- l->next = _aligned_blocks; -- _aligned_blocks = l; - } -- l->exact = result; -- result = l->aligned = (char *) result + alignment - adj; -+ if (l != NULL) -+ { -+ l->exact = result; -+ result = l->aligned = (char *) result + alignment - adj; -+ } -+ UNLOCK_ALIGNED_BLOCKS (); -+ if (l == NULL) -+ { -+ free (result); -+ result = NULL; -+ } - } - - return result; - } - -+#ifndef ENOMEM -+#define ENOMEM 12 -+#endif -+ -+#ifndef EINVAL -+#define EINVAL 22 -+#endif -+ -+int -+posix_memalign (memptr, alignment, size) -+ __ptr_t *memptr; -+ __malloc_size_t alignment; -+ __malloc_size_t size; -+{ -+ __ptr_t mem; -+ -+ if (alignment == 0 -+ || alignment % sizeof (__ptr_t) != 0 -+ || (alignment & (alignment - 1)) != 0) -+ return EINVAL; -+ -+ mem = memalign (alignment, size); -+ if (mem == NULL) -+ return ENOMEM; -+ -+ *memptr = mem; -+ -+ return 0; -+} -+ - #endif /* Not DJGPP v1 */ - /* Allocate memory on a page boundary. - Copyright (C) 1991, 92, 93, 94, 96 Free Software Foundation, Inc. diff --git a/editors/emacs/pkg-plist b/editors/emacs/pkg-plist index 0dff1b354583..363b7557fb91 100644 --- a/editors/emacs/pkg-plist +++ b/editors/emacs/pkg-plist @@ -203,6 +203,7 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/kill-group.xpm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/mail-reply.pbm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/mail-reply.xpm +%%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/mail-send.xpm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/next-ur.pbm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/next-ur.xpm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/post.pbm @@ -905,6 +906,7 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-extra.elc %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-indent.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-indent.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-loaddefs.el %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-macs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-macs.elc %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-seq.el.gz @@ -1100,8 +1102,6 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-netsplit.elc %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-networks.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-networks.elc -%%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-nicklist.el.gz -%%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-nicklist.elc %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-notify.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-notify.elc %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-page.el.gz @@ -1909,6 +1909,8 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/net/rlogin.elc %%DATADIR%%/%%EMACS_VER%%/lisp/net/snmp-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/net/snmp-mode.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/net/socks.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/net/socks.elc %%DATADIR%%/%%EMACS_VER%%/lisp/net/telnet.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/net/telnet.elc %%DATADIR%%/%%EMACS_VER%%/lisp/net/tls.el.gz @@ -2235,6 +2237,10 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/sql.elc %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/tcl.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/tcl.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vera-mode.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vera-mode.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/verilog-mode.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/verilog-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vhdl-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vhdl-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/which-func.el.gz @@ -2377,8 +2383,12 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bib-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex-style.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex-style.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/conf-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/conf-mode.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/css-mode.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/css-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/dns-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/dns-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/enriched.el.gz @@ -2543,12 +2553,20 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/userlock.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-arch.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-arch.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-bzr.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-bzr.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-cvs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-cvs.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-git.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-git.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-hg.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-hg.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-hooks.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-hooks.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-mcvs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-mcvs.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-mtn.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-mtn.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-rcs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-rcs.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-sccs.el.gz diff --git a/editors/emacs22/Makefile b/editors/emacs22/Makefile index c81405e870d9..e9d850d66872 100644 --- a/editors/emacs22/Makefile +++ b/editors/emacs22/Makefile @@ -7,7 +7,7 @@ PORTNAME= emacs PORTVERSION= ${EMACS_VER} -PORTREVISION= 5 +PORTREVISION= 0 CATEGORIES= editors ipv6 MASTER_SITES= ${MASTER_SITE_GNU} MASTER_SITE_SUBDIR= ${PORTNAME} @@ -29,7 +29,7 @@ CONFLICTS= emacs-19.* emacs-21.* \ xemacs-[0-9]* xemacs-devel-[0-9]* \ xemacs-mule-[0-9]* xemacs-devel-mule-[0-9]* -EMACS_VER= 22.1 +EMACS_VER= 22.2 GNU_CONFIGURE= yes USE_GMAKE= yes diff --git a/editors/emacs22/distinfo b/editors/emacs22/distinfo index 024ae719a029..80788e833eb8 100644 --- a/editors/emacs22/distinfo +++ b/editors/emacs22/distinfo @@ -1,3 +1,3 @@ -MD5 (emacs-22.1.tar.gz) = 6949df37caec2d7a2e0eee3f1b422726 -SHA256 (emacs-22.1.tar.gz) = 1ec43bef7127e572f92d7c3a846951cf8e263e27445c62c867035f94681c3ed0 -SIZE (emacs-22.1.tar.gz) = 38172226 +MD5 (emacs-22.2.tar.gz) = d6ee586b8752351334ebf072904c4d51 +SHA256 (emacs-22.2.tar.gz) = 216839e1fb38ca4f2ed0a07689fb47ee80d90845f34e0a56fe781d6aa462e367 +SIZE (emacs-22.2.tar.gz) = 38694318 diff --git a/editors/emacs22/files/patch-configure b/editors/emacs22/files/patch-configure deleted file mode 100644 index ea507e10728b..000000000000 --- a/editors/emacs22/files/patch-configure +++ /dev/null @@ -1,10 +0,0 @@ ---- configure.orig Fri Feb 8 09:19:48 2008 -+++ configure Fri Feb 8 09:20:26 2008 -@@ -2204,6 +2204,7 @@ - opsys=freebsd - case "${canonical}" in - alpha*-*-freebsd*) machine=alpha ;; -+ arm*-*-freebsd*) machine=arm ;; - ia64-*-freebsd*) machine=ia64 ;; - sparc64-*-freebsd*) machine=sparc ;; - powerpc-*-freebsd*) machine=macppc ;; diff --git a/editors/emacs22/files/patch-src-gmalloc.c b/editors/emacs22/files/patch-src-gmalloc.c deleted file mode 100644 index c46344980d9a..000000000000 --- a/editors/emacs22/files/patch-src-gmalloc.c +++ /dev/null @@ -1,606 +0,0 @@ ---- ./src/gmalloc.c.orig 2007-09-27 19:31:50.000000000 +0300 -+++ ./src/gmalloc.c 2007-09-27 19:31:54.000000000 +0300 -@@ -1,9 +1,6 @@ - /* This file is no longer automatically generated from libc. */ - - #define _MALLOC_INTERNAL --#ifdef HAVE_GTK_AND_PTHREAD --#define USE_PTHREAD --#endif - - /* The malloc headers and source files from the C library follow here. */ - -@@ -40,6 +37,10 @@ - #include <config.h> - #endif - -+#ifdef HAVE_GTK_AND_PTHREAD -+#define USE_PTHREAD -+#endif -+ - #if ((defined __cplusplus || (defined (__STDC__) && __STDC__) \ - || defined STDC_HEADERS || defined PROTOTYPES) \ - && ! defined (BROKEN_PROTOTYPES)) -@@ -128,6 +129,8 @@ - #if ! (defined (_MALLOC_INTERNAL) && __DJGPP__ - 0 == 1) /* Avoid conflict. */ - extern __ptr_t memalign PP ((__malloc_size_t __alignment, - __malloc_size_t __size)); -+extern int posix_memalign PP ((__ptr_t *, __malloc_size_t, -+ __malloc_size_t size)); - #endif - - /* Allocate SIZE bytes on a page boundary. */ -@@ -135,6 +138,10 @@ - extern __ptr_t valloc PP ((__malloc_size_t __size)); - #endif - -+#ifdef USE_PTHREAD -+/* Set up mutexes and make malloc etc. thread-safe. */ -+extern void malloc_enable_thread PP ((void)); -+#endif - - #ifdef _MALLOC_INTERNAL - -@@ -235,14 +242,38 @@ - extern __ptr_t _malloc_internal PP ((__malloc_size_t __size)); - extern __ptr_t _realloc_internal PP ((__ptr_t __ptr, __malloc_size_t __size)); - extern void _free_internal PP ((__ptr_t __ptr)); -+extern __ptr_t _malloc_internal_nolock PP ((__malloc_size_t __size)); -+extern __ptr_t _realloc_internal_nolock PP ((__ptr_t __ptr, __malloc_size_t __size)); -+extern void _free_internal_nolock PP ((__ptr_t __ptr)); - - #ifdef USE_PTHREAD --extern pthread_mutex_t _malloc_mutex; --#define LOCK() pthread_mutex_lock (&_malloc_mutex) --#define UNLOCK() pthread_mutex_unlock (&_malloc_mutex) -+extern pthread_mutex_t _malloc_mutex, _aligned_blocks_mutex; -+extern int _malloc_thread_enabled_p; -+#define LOCK() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_lock (&_malloc_mutex); \ -+ } while (0) -+#define UNLOCK() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_unlock (&_malloc_mutex); \ -+ } while (0) -+#define LOCK_ALIGNED_BLOCKS() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_lock (&_aligned_blocks_mutex); \ -+ } while (0) -+#define UNLOCK_ALIGNED_BLOCKS() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_unlock (&_aligned_blocks_mutex); \ -+ } while (0) - #else - #define LOCK() - #define UNLOCK() -+#define LOCK_ALIGNED_BLOCKS() -+#define UNLOCK_ALIGNED_BLOCKS() - #endif - - #endif /* _MALLOC_INTERNAL. */ -@@ -373,7 +404,7 @@ - extern __ptr_t bss_sbrk PP ((ptrdiff_t __size)); - extern int bss_sbrk_did_unexec; - #endif --__ptr_t (*__morecore) PP ((ptrdiff_t __size)) = __default_morecore; -+__ptr_t (*__morecore) PP ((__malloc_ptrdiff_t __size)) = __default_morecore; - - /* Debugging hook for `malloc'. */ - __ptr_t (*__malloc_hook) PP ((__malloc_size_t __size)); -@@ -553,8 +584,49 @@ - } - - #ifdef USE_PTHREAD --static pthread_once_t malloc_init_once_control = PTHREAD_ONCE_INIT; --pthread_mutex_t _malloc_mutex; -+pthread_mutex_t _malloc_mutex = PTHREAD_MUTEX_INITIALIZER; -+pthread_mutex_t _aligned_blocks_mutex = PTHREAD_MUTEX_INITIALIZER; -+int _malloc_thread_enabled_p; -+ -+static void -+malloc_atfork_handler_prepare () -+{ -+ LOCK (); -+ LOCK_ALIGNED_BLOCKS (); -+} -+ -+static void -+malloc_atfork_handler_parent () -+{ -+ UNLOCK_ALIGNED_BLOCKS (); -+ UNLOCK (); -+} -+ -+static void -+malloc_atfork_handler_child () -+{ -+ UNLOCK_ALIGNED_BLOCKS (); -+ UNLOCK (); -+} -+ -+/* Set up mutexes and make malloc etc. thread-safe. */ -+void -+malloc_enable_thread () -+{ -+ if (_malloc_thread_enabled_p) -+ return; -+ -+ /* Some pthread implementations call malloc for statically -+ initialized mutexes when they are used first. To avoid such a -+ situation, we initialize mutexes here while their use is -+ disabled in malloc etc. */ -+ pthread_mutex_init (&_malloc_mutex, NULL); -+ pthread_mutex_init (&_aligned_blocks_mutex, NULL); -+ pthread_atfork (malloc_atfork_handler_prepare, -+ malloc_atfork_handler_parent, -+ malloc_atfork_handler_child); -+ _malloc_thread_enabled_p = 1; -+} - #endif - - static void -@@ -567,17 +639,6 @@ - if (__malloc_initialize_hook) - (*__malloc_initialize_hook) (); - --#ifdef USE_PTHREAD -- { -- pthread_mutexattr_t attr; -- -- pthread_mutexattr_init (&attr); -- pthread_mutexattr_settype (&attr, PTHREAD_MUTEX_RECURSIVE); -- pthread_mutex_init (&_malloc_mutex, &attr); -- pthread_mutexattr_destroy (&attr); -- } --#endif -- - heapsize = HEAP / BLOCKSIZE; - _heapinfo = (malloc_info *) align (heapsize * sizeof (malloc_info)); - if (_heapinfo == NULL) -@@ -596,18 +657,16 @@ - return; - } - --/* Set everything up and remember that we have. */ -+/* Set everything up and remember that we have. -+ main will call malloc which calls this function. That is before any threads -+ or signal handlers has been set up, so we don't need thread protection. */ - int - __malloc_initialize () - { --#ifdef USE_PTHREAD -- pthread_once (&malloc_init_once_control, malloc_initialize_1); --#else - if (__malloc_initialized) - return 0; - - malloc_initialize_1 (); --#endif - - return __malloc_initialized; - } -@@ -616,9 +675,9 @@ - - /* Get neatly aligned memory, initializing or - growing the heap info table as necessary. */ --static __ptr_t morecore PP ((__malloc_size_t)); -+static __ptr_t morecore_nolock PP ((__malloc_size_t)); - static __ptr_t --morecore (size) -+morecore_nolock (size) - __malloc_size_t size; - { - __ptr_t result; -@@ -661,7 +720,7 @@ - `morecore_recursing' flag and return null. */ - int save = errno; /* Don't want to clobber errno with ENOMEM. */ - morecore_recursing = 1; -- newinfo = (malloc_info *) _realloc_internal -+ newinfo = (malloc_info *) _realloc_internal_nolock - (_heapinfo, newsize * sizeof (malloc_info)); - morecore_recursing = 0; - if (newinfo == NULL) -@@ -717,7 +776,7 @@ - /* Reset _heaplimit so _free_internal never decides - it can relocate or resize the info table. */ - _heaplimit = 0; -- _free_internal (oldinfo); -+ _free_internal_nolock (oldinfo); - PROTECT_MALLOC_STATE (0); - - /* The new heap limit includes the new table just allocated. */ -@@ -732,7 +791,7 @@ - - /* Allocate memory from the heap. */ - __ptr_t --_malloc_internal (size) -+_malloc_internal_nolock (size) - __malloc_size_t size; - { - __ptr_t result; -@@ -752,7 +811,6 @@ - return NULL; - #endif - -- LOCK (); - PROTECT_MALLOC_STATE (0); - - if (size < sizeof (struct list)) -@@ -802,8 +860,10 @@ - /* No free fragments of the desired size, so get a new block - and break it into fragments, returning the first. */ - #ifdef GC_MALLOC_CHECK -- result = _malloc_internal (BLOCKSIZE); -+ result = _malloc_internal_nolock (BLOCKSIZE); - PROTECT_MALLOC_STATE (0); -+#elif defined (USE_PTHREAD) -+ result = _malloc_internal_nolock (BLOCKSIZE); - #else - result = malloc (BLOCKSIZE); - #endif -@@ -874,7 +934,7 @@ - _heaplimit += wantblocks - lastblocks; - continue; - } -- result = morecore (wantblocks * BLOCKSIZE); -+ result = morecore_nolock (wantblocks * BLOCKSIZE); - if (result == NULL) - goto out; - block = BLOCK (result); -@@ -932,7 +992,19 @@ - - PROTECT_MALLOC_STATE (1); - out: -+ return result; -+} -+ -+__ptr_t -+_malloc_internal (size) -+ __malloc_size_t size; -+{ -+ __ptr_t result; -+ -+ LOCK (); -+ result = _malloc_internal_nolock (size); - UNLOCK (); -+ - return result; - } - -@@ -940,10 +1012,21 @@ - malloc (size) - __malloc_size_t size; - { -+ __ptr_t (*hook) (__malloc_size_t); -+ - if (!__malloc_initialized && !__malloc_initialize ()) - return NULL; - -- return (__malloc_hook != NULL ? *__malloc_hook : _malloc_internal) (size); -+ /* Copy the value of __malloc_hook to an automatic variable in case -+ __malloc_hook is modified in another thread between its -+ NULL-check and the use. -+ -+ Note: Strictly speaking, this is not a right solution. We should -+ use mutexes to access non-read-only variables that are shared -+ among multiple threads. We just leave it for compatibility with -+ glibc malloc (i.e., assignments to __malloc_hook) for now. */ -+ hook = __malloc_hook; -+ return (hook != NULL ? *hook : _malloc_internal) (size); - } - - #ifndef _LIBC -@@ -1024,9 +1107,9 @@ - struct alignlist *_aligned_blocks = NULL; - - /* Return memory to the heap. -- Like `free' but don't call a __free_hook if there is one. */ -+ Like `_free_internal' but don't lock mutex. */ - void --_free_internal (ptr) -+_free_internal_nolock (ptr) - __ptr_t ptr; - { - int type; -@@ -1043,9 +1126,9 @@ - if (ptr == NULL) - return; - -- LOCK (); - PROTECT_MALLOC_STATE (0); - -+ LOCK_ALIGNED_BLOCKS (); - for (l = _aligned_blocks; l != NULL; l = l->next) - if (l->aligned == ptr) - { -@@ -1053,6 +1136,7 @@ - ptr = l->exact; - break; - } -+ UNLOCK_ALIGNED_BLOCKS (); - - block = BLOCK (ptr); - -@@ -1158,7 +1242,7 @@ - table's blocks to the system before we have copied them to - the new location. */ - _heaplimit = 0; -- _free_internal (_heapinfo); -+ _free_internal_nolock (_heapinfo); - _heaplimit = oldlimit; - - /* Tell malloc to search from the beginning of the heap for -@@ -1166,8 +1250,8 @@ - _heapindex = 0; - - /* Allocate new space for the info table and move its data. */ -- newinfo = (malloc_info *) _malloc_internal (info_blocks -- * BLOCKSIZE); -+ newinfo = (malloc_info *) _malloc_internal_nolock (info_blocks -+ * BLOCKSIZE); - PROTECT_MALLOC_STATE (0); - memmove (newinfo, _heapinfo, info_blocks * BLOCKSIZE); - _heapinfo = newinfo; -@@ -1230,8 +1314,8 @@ - _chunks_free -= BLOCKSIZE >> type; - _bytes_free -= BLOCKSIZE; - --#ifdef GC_MALLOC_CHECK -- _free_internal (ADDRESS (block)); -+#if defined (GC_MALLOC_CHECK) || defined (USE_PTHREAD) -+ _free_internal_nolock (ADDRESS (block)); - #else - free (ADDRESS (block)); - #endif -@@ -1269,6 +1353,16 @@ - } - - PROTECT_MALLOC_STATE (1); -+} -+ -+/* Return memory to the heap. -+ Like `free' but don't call a __free_hook if there is one. */ -+void -+_free_internal (ptr) -+ __ptr_t ptr; -+{ -+ LOCK (); -+ _free_internal_nolock (ptr); - UNLOCK (); - } - -@@ -1278,8 +1372,10 @@ - free (ptr) - __ptr_t ptr; - { -- if (__free_hook != NULL) -- (*__free_hook) (ptr); -+ void (*hook) (__ptr_t) = __free_hook; -+ -+ if (hook != NULL) -+ (*hook) (ptr); - else - _free_internal (ptr); - } -@@ -1415,7 +1511,7 @@ - new region. This module has incestuous knowledge of the - internals of both free and malloc. */ - __ptr_t --_realloc_internal (ptr, size) -+_realloc_internal_nolock (ptr, size) - __ptr_t ptr; - __malloc_size_t size; - { -@@ -1425,15 +1521,14 @@ - - if (size == 0) - { -- _free_internal (ptr); -- return _malloc_internal (0); -+ _free_internal_nolock (ptr); -+ return _malloc_internal_nolock (0); - } - else if (ptr == NULL) -- return _malloc_internal (size); -+ return _malloc_internal_nolock (size); - - block = BLOCK (ptr); - -- LOCK (); - PROTECT_MALLOC_STATE (0); - - type = _heapinfo[block].busy.type; -@@ -1443,11 +1538,11 @@ - /* Maybe reallocate a large block to a small fragment. */ - if (size <= BLOCKSIZE / 2) - { -- result = _malloc_internal (size); -+ result = _malloc_internal_nolock (size); - if (result != NULL) - { - memcpy (result, ptr, size); -- _free_internal (ptr); -+ _free_internal_nolock (ptr); - goto out; - } - } -@@ -1467,7 +1562,7 @@ - Now we will free this chunk; increment the statistics counter - so it doesn't become wrong when _free_internal decrements it. */ - ++_chunks_used; -- _free_internal (ADDRESS (block + blocks)); -+ _free_internal_nolock (ADDRESS (block + blocks)); - result = ptr; - } - else if (blocks == _heapinfo[block].busy.info.size) -@@ -1482,8 +1577,8 @@ - /* Prevent free from actually returning memory to the system. */ - oldlimit = _heaplimit; - _heaplimit = 0; -- _free_internal (ptr); -- result = _malloc_internal (size); -+ _free_internal_nolock (ptr); -+ result = _malloc_internal_nolock (size); - PROTECT_MALLOC_STATE (0); - if (_heaplimit == 0) - _heaplimit = oldlimit; -@@ -1493,13 +1588,13 @@ - the thing we just freed. Unfortunately it might - have been coalesced with its neighbors. */ - if (_heapindex == block) -- (void) _malloc_internal (blocks * BLOCKSIZE); -+ (void) _malloc_internal_nolock (blocks * BLOCKSIZE); - else - { - __ptr_t previous -- = _malloc_internal ((block - _heapindex) * BLOCKSIZE); -- (void) _malloc_internal (blocks * BLOCKSIZE); -- _free_internal (previous); -+ = _malloc_internal_nolock ((block - _heapindex) * BLOCKSIZE); -+ (void) _malloc_internal_nolock (blocks * BLOCKSIZE); -+ _free_internal_nolock (previous); - } - goto out; - } -@@ -1519,18 +1614,31 @@ - { - /* The new size is different; allocate a new space, - and copy the lesser of the new size and the old. */ -- result = _malloc_internal (size); -+ result = _malloc_internal_nolock (size); - if (result == NULL) - goto out; - memcpy (result, ptr, min (size, (__malloc_size_t) 1 << type)); -- _free_internal (ptr); -+ _free_internal_nolock (ptr); - } - break; - } - - PROTECT_MALLOC_STATE (1); - out: -+ return result; -+} -+ -+__ptr_t -+_realloc_internal (ptr, size) -+ __ptr_t ptr; -+ __malloc_size_t size; -+{ -+ __ptr_t result; -+ -+ LOCK(); -+ result = _realloc_internal_nolock (ptr, size); - UNLOCK (); -+ - return result; - } - -@@ -1539,11 +1647,13 @@ - __ptr_t ptr; - __malloc_size_t size; - { -+ __ptr_t (*hook) (__ptr_t, __malloc_size_t); -+ - if (!__malloc_initialized && !__malloc_initialize ()) - return NULL; - -- return (__realloc_hook != NULL ? *__realloc_hook : _realloc_internal) -- (ptr, size); -+ hook = __realloc_hook; -+ return (hook != NULL ? *hook : _realloc_internal) (ptr, size); - } - /* Copyright (C) 1991, 1992, 1994 Free Software Foundation, Inc. - -@@ -1681,9 +1791,10 @@ - { - __ptr_t result; - unsigned long int adj, lastadj; -+ __ptr_t (*hook) (__malloc_size_t, __malloc_size_t) = __memalign_hook; - -- if (__memalign_hook) -- return (*__memalign_hook) (alignment, size); -+ if (hook) -+ return (*hook) (alignment, size); - - /* Allocate a block with enough extra space to pad the block with up to - (ALIGNMENT - 1) bytes if necessary. */ -@@ -1718,6 +1829,7 @@ - of an allocated block. */ - - struct alignlist *l; -+ LOCK_ALIGNED_BLOCKS (); - for (l = _aligned_blocks; l != NULL; l = l->next) - if (l->aligned == NULL) - /* This slot is free. Use it. */ -@@ -1725,21 +1837,58 @@ - if (l == NULL) - { - l = (struct alignlist *) malloc (sizeof (struct alignlist)); -- if (l == NULL) -+ if (l != NULL) - { -- free (result); -- return NULL; -+ l->next = _aligned_blocks; -+ _aligned_blocks = l; - } -- l->next = _aligned_blocks; -- _aligned_blocks = l; - } -- l->exact = result; -- result = l->aligned = (char *) result + alignment - adj; -+ if (l != NULL) -+ { -+ l->exact = result; -+ result = l->aligned = (char *) result + alignment - adj; -+ } -+ UNLOCK_ALIGNED_BLOCKS (); -+ if (l == NULL) -+ { -+ free (result); -+ result = NULL; -+ } - } - - return result; - } - -+#ifndef ENOMEM -+#define ENOMEM 12 -+#endif -+ -+#ifndef EINVAL -+#define EINVAL 22 -+#endif -+ -+int -+posix_memalign (memptr, alignment, size) -+ __ptr_t *memptr; -+ __malloc_size_t alignment; -+ __malloc_size_t size; -+{ -+ __ptr_t mem; -+ -+ if (alignment == 0 -+ || alignment % sizeof (__ptr_t) != 0 -+ || (alignment & (alignment - 1)) != 0) -+ return EINVAL; -+ -+ mem = memalign (alignment, size); -+ if (mem == NULL) -+ return ENOMEM; -+ -+ *memptr = mem; -+ -+ return 0; -+} -+ - #endif /* Not DJGPP v1 */ - /* Allocate memory on a page boundary. - Copyright (C) 1991, 92, 93, 94, 96 Free Software Foundation, Inc. diff --git a/editors/emacs22/pkg-plist b/editors/emacs22/pkg-plist index 0dff1b354583..363b7557fb91 100644 --- a/editors/emacs22/pkg-plist +++ b/editors/emacs22/pkg-plist @@ -203,6 +203,7 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/kill-group.xpm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/mail-reply.pbm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/mail-reply.xpm +%%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/mail-send.xpm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/next-ur.pbm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/next-ur.xpm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/post.pbm @@ -905,6 +906,7 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-extra.elc %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-indent.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-indent.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-loaddefs.el %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-macs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-macs.elc %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-seq.el.gz @@ -1100,8 +1102,6 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-netsplit.elc %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-networks.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-networks.elc -%%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-nicklist.el.gz -%%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-nicklist.elc %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-notify.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-notify.elc %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-page.el.gz @@ -1909,6 +1909,8 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/net/rlogin.elc %%DATADIR%%/%%EMACS_VER%%/lisp/net/snmp-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/net/snmp-mode.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/net/socks.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/net/socks.elc %%DATADIR%%/%%EMACS_VER%%/lisp/net/telnet.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/net/telnet.elc %%DATADIR%%/%%EMACS_VER%%/lisp/net/tls.el.gz @@ -2235,6 +2237,10 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/sql.elc %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/tcl.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/tcl.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vera-mode.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vera-mode.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/verilog-mode.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/verilog-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vhdl-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vhdl-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/which-func.el.gz @@ -2377,8 +2383,12 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bib-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex-style.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex-style.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/conf-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/conf-mode.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/css-mode.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/css-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/dns-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/dns-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/enriched.el.gz @@ -2543,12 +2553,20 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/userlock.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-arch.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-arch.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-bzr.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-bzr.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-cvs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-cvs.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-git.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-git.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-hg.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-hg.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-hooks.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-hooks.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-mcvs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-mcvs.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-mtn.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-mtn.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-rcs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-rcs.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-sccs.el.gz diff --git a/editors/emacs23/Makefile b/editors/emacs23/Makefile index c81405e870d9..e9d850d66872 100644 --- a/editors/emacs23/Makefile +++ b/editors/emacs23/Makefile @@ -7,7 +7,7 @@ PORTNAME= emacs PORTVERSION= ${EMACS_VER} -PORTREVISION= 5 +PORTREVISION= 0 CATEGORIES= editors ipv6 MASTER_SITES= ${MASTER_SITE_GNU} MASTER_SITE_SUBDIR= ${PORTNAME} @@ -29,7 +29,7 @@ CONFLICTS= emacs-19.* emacs-21.* \ xemacs-[0-9]* xemacs-devel-[0-9]* \ xemacs-mule-[0-9]* xemacs-devel-mule-[0-9]* -EMACS_VER= 22.1 +EMACS_VER= 22.2 GNU_CONFIGURE= yes USE_GMAKE= yes diff --git a/editors/emacs23/distinfo b/editors/emacs23/distinfo index 024ae719a029..80788e833eb8 100644 --- a/editors/emacs23/distinfo +++ b/editors/emacs23/distinfo @@ -1,3 +1,3 @@ -MD5 (emacs-22.1.tar.gz) = 6949df37caec2d7a2e0eee3f1b422726 -SHA256 (emacs-22.1.tar.gz) = 1ec43bef7127e572f92d7c3a846951cf8e263e27445c62c867035f94681c3ed0 -SIZE (emacs-22.1.tar.gz) = 38172226 +MD5 (emacs-22.2.tar.gz) = d6ee586b8752351334ebf072904c4d51 +SHA256 (emacs-22.2.tar.gz) = 216839e1fb38ca4f2ed0a07689fb47ee80d90845f34e0a56fe781d6aa462e367 +SIZE (emacs-22.2.tar.gz) = 38694318 diff --git a/editors/emacs23/files/patch-configure b/editors/emacs23/files/patch-configure deleted file mode 100644 index ea507e10728b..000000000000 --- a/editors/emacs23/files/patch-configure +++ /dev/null @@ -1,10 +0,0 @@ ---- configure.orig Fri Feb 8 09:19:48 2008 -+++ configure Fri Feb 8 09:20:26 2008 -@@ -2204,6 +2204,7 @@ - opsys=freebsd - case "${canonical}" in - alpha*-*-freebsd*) machine=alpha ;; -+ arm*-*-freebsd*) machine=arm ;; - ia64-*-freebsd*) machine=ia64 ;; - sparc64-*-freebsd*) machine=sparc ;; - powerpc-*-freebsd*) machine=macppc ;; diff --git a/editors/emacs23/files/patch-src-gmalloc.c b/editors/emacs23/files/patch-src-gmalloc.c deleted file mode 100644 index c46344980d9a..000000000000 --- a/editors/emacs23/files/patch-src-gmalloc.c +++ /dev/null @@ -1,606 +0,0 @@ ---- ./src/gmalloc.c.orig 2007-09-27 19:31:50.000000000 +0300 -+++ ./src/gmalloc.c 2007-09-27 19:31:54.000000000 +0300 -@@ -1,9 +1,6 @@ - /* This file is no longer automatically generated from libc. */ - - #define _MALLOC_INTERNAL --#ifdef HAVE_GTK_AND_PTHREAD --#define USE_PTHREAD --#endif - - /* The malloc headers and source files from the C library follow here. */ - -@@ -40,6 +37,10 @@ - #include <config.h> - #endif - -+#ifdef HAVE_GTK_AND_PTHREAD -+#define USE_PTHREAD -+#endif -+ - #if ((defined __cplusplus || (defined (__STDC__) && __STDC__) \ - || defined STDC_HEADERS || defined PROTOTYPES) \ - && ! defined (BROKEN_PROTOTYPES)) -@@ -128,6 +129,8 @@ - #if ! (defined (_MALLOC_INTERNAL) && __DJGPP__ - 0 == 1) /* Avoid conflict. */ - extern __ptr_t memalign PP ((__malloc_size_t __alignment, - __malloc_size_t __size)); -+extern int posix_memalign PP ((__ptr_t *, __malloc_size_t, -+ __malloc_size_t size)); - #endif - - /* Allocate SIZE bytes on a page boundary. */ -@@ -135,6 +138,10 @@ - extern __ptr_t valloc PP ((__malloc_size_t __size)); - #endif - -+#ifdef USE_PTHREAD -+/* Set up mutexes and make malloc etc. thread-safe. */ -+extern void malloc_enable_thread PP ((void)); -+#endif - - #ifdef _MALLOC_INTERNAL - -@@ -235,14 +242,38 @@ - extern __ptr_t _malloc_internal PP ((__malloc_size_t __size)); - extern __ptr_t _realloc_internal PP ((__ptr_t __ptr, __malloc_size_t __size)); - extern void _free_internal PP ((__ptr_t __ptr)); -+extern __ptr_t _malloc_internal_nolock PP ((__malloc_size_t __size)); -+extern __ptr_t _realloc_internal_nolock PP ((__ptr_t __ptr, __malloc_size_t __size)); -+extern void _free_internal_nolock PP ((__ptr_t __ptr)); - - #ifdef USE_PTHREAD --extern pthread_mutex_t _malloc_mutex; --#define LOCK() pthread_mutex_lock (&_malloc_mutex) --#define UNLOCK() pthread_mutex_unlock (&_malloc_mutex) -+extern pthread_mutex_t _malloc_mutex, _aligned_blocks_mutex; -+extern int _malloc_thread_enabled_p; -+#define LOCK() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_lock (&_malloc_mutex); \ -+ } while (0) -+#define UNLOCK() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_unlock (&_malloc_mutex); \ -+ } while (0) -+#define LOCK_ALIGNED_BLOCKS() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_lock (&_aligned_blocks_mutex); \ -+ } while (0) -+#define UNLOCK_ALIGNED_BLOCKS() \ -+ do { \ -+ if (_malloc_thread_enabled_p) \ -+ pthread_mutex_unlock (&_aligned_blocks_mutex); \ -+ } while (0) - #else - #define LOCK() - #define UNLOCK() -+#define LOCK_ALIGNED_BLOCKS() -+#define UNLOCK_ALIGNED_BLOCKS() - #endif - - #endif /* _MALLOC_INTERNAL. */ -@@ -373,7 +404,7 @@ - extern __ptr_t bss_sbrk PP ((ptrdiff_t __size)); - extern int bss_sbrk_did_unexec; - #endif --__ptr_t (*__morecore) PP ((ptrdiff_t __size)) = __default_morecore; -+__ptr_t (*__morecore) PP ((__malloc_ptrdiff_t __size)) = __default_morecore; - - /* Debugging hook for `malloc'. */ - __ptr_t (*__malloc_hook) PP ((__malloc_size_t __size)); -@@ -553,8 +584,49 @@ - } - - #ifdef USE_PTHREAD --static pthread_once_t malloc_init_once_control = PTHREAD_ONCE_INIT; --pthread_mutex_t _malloc_mutex; -+pthread_mutex_t _malloc_mutex = PTHREAD_MUTEX_INITIALIZER; -+pthread_mutex_t _aligned_blocks_mutex = PTHREAD_MUTEX_INITIALIZER; -+int _malloc_thread_enabled_p; -+ -+static void -+malloc_atfork_handler_prepare () -+{ -+ LOCK (); -+ LOCK_ALIGNED_BLOCKS (); -+} -+ -+static void -+malloc_atfork_handler_parent () -+{ -+ UNLOCK_ALIGNED_BLOCKS (); -+ UNLOCK (); -+} -+ -+static void -+malloc_atfork_handler_child () -+{ -+ UNLOCK_ALIGNED_BLOCKS (); -+ UNLOCK (); -+} -+ -+/* Set up mutexes and make malloc etc. thread-safe. */ -+void -+malloc_enable_thread () -+{ -+ if (_malloc_thread_enabled_p) -+ return; -+ -+ /* Some pthread implementations call malloc for statically -+ initialized mutexes when they are used first. To avoid such a -+ situation, we initialize mutexes here while their use is -+ disabled in malloc etc. */ -+ pthread_mutex_init (&_malloc_mutex, NULL); -+ pthread_mutex_init (&_aligned_blocks_mutex, NULL); -+ pthread_atfork (malloc_atfork_handler_prepare, -+ malloc_atfork_handler_parent, -+ malloc_atfork_handler_child); -+ _malloc_thread_enabled_p = 1; -+} - #endif - - static void -@@ -567,17 +639,6 @@ - if (__malloc_initialize_hook) - (*__malloc_initialize_hook) (); - --#ifdef USE_PTHREAD -- { -- pthread_mutexattr_t attr; -- -- pthread_mutexattr_init (&attr); -- pthread_mutexattr_settype (&attr, PTHREAD_MUTEX_RECURSIVE); -- pthread_mutex_init (&_malloc_mutex, &attr); -- pthread_mutexattr_destroy (&attr); -- } --#endif -- - heapsize = HEAP / BLOCKSIZE; - _heapinfo = (malloc_info *) align (heapsize * sizeof (malloc_info)); - if (_heapinfo == NULL) -@@ -596,18 +657,16 @@ - return; - } - --/* Set everything up and remember that we have. */ -+/* Set everything up and remember that we have. -+ main will call malloc which calls this function. That is before any threads -+ or signal handlers has been set up, so we don't need thread protection. */ - int - __malloc_initialize () - { --#ifdef USE_PTHREAD -- pthread_once (&malloc_init_once_control, malloc_initialize_1); --#else - if (__malloc_initialized) - return 0; - - malloc_initialize_1 (); --#endif - - return __malloc_initialized; - } -@@ -616,9 +675,9 @@ - - /* Get neatly aligned memory, initializing or - growing the heap info table as necessary. */ --static __ptr_t morecore PP ((__malloc_size_t)); -+static __ptr_t morecore_nolock PP ((__malloc_size_t)); - static __ptr_t --morecore (size) -+morecore_nolock (size) - __malloc_size_t size; - { - __ptr_t result; -@@ -661,7 +720,7 @@ - `morecore_recursing' flag and return null. */ - int save = errno; /* Don't want to clobber errno with ENOMEM. */ - morecore_recursing = 1; -- newinfo = (malloc_info *) _realloc_internal -+ newinfo = (malloc_info *) _realloc_internal_nolock - (_heapinfo, newsize * sizeof (malloc_info)); - morecore_recursing = 0; - if (newinfo == NULL) -@@ -717,7 +776,7 @@ - /* Reset _heaplimit so _free_internal never decides - it can relocate or resize the info table. */ - _heaplimit = 0; -- _free_internal (oldinfo); -+ _free_internal_nolock (oldinfo); - PROTECT_MALLOC_STATE (0); - - /* The new heap limit includes the new table just allocated. */ -@@ -732,7 +791,7 @@ - - /* Allocate memory from the heap. */ - __ptr_t --_malloc_internal (size) -+_malloc_internal_nolock (size) - __malloc_size_t size; - { - __ptr_t result; -@@ -752,7 +811,6 @@ - return NULL; - #endif - -- LOCK (); - PROTECT_MALLOC_STATE (0); - - if (size < sizeof (struct list)) -@@ -802,8 +860,10 @@ - /* No free fragments of the desired size, so get a new block - and break it into fragments, returning the first. */ - #ifdef GC_MALLOC_CHECK -- result = _malloc_internal (BLOCKSIZE); -+ result = _malloc_internal_nolock (BLOCKSIZE); - PROTECT_MALLOC_STATE (0); -+#elif defined (USE_PTHREAD) -+ result = _malloc_internal_nolock (BLOCKSIZE); - #else - result = malloc (BLOCKSIZE); - #endif -@@ -874,7 +934,7 @@ - _heaplimit += wantblocks - lastblocks; - continue; - } -- result = morecore (wantblocks * BLOCKSIZE); -+ result = morecore_nolock (wantblocks * BLOCKSIZE); - if (result == NULL) - goto out; - block = BLOCK (result); -@@ -932,7 +992,19 @@ - - PROTECT_MALLOC_STATE (1); - out: -+ return result; -+} -+ -+__ptr_t -+_malloc_internal (size) -+ __malloc_size_t size; -+{ -+ __ptr_t result; -+ -+ LOCK (); -+ result = _malloc_internal_nolock (size); - UNLOCK (); -+ - return result; - } - -@@ -940,10 +1012,21 @@ - malloc (size) - __malloc_size_t size; - { -+ __ptr_t (*hook) (__malloc_size_t); -+ - if (!__malloc_initialized && !__malloc_initialize ()) - return NULL; - -- return (__malloc_hook != NULL ? *__malloc_hook : _malloc_internal) (size); -+ /* Copy the value of __malloc_hook to an automatic variable in case -+ __malloc_hook is modified in another thread between its -+ NULL-check and the use. -+ -+ Note: Strictly speaking, this is not a right solution. We should -+ use mutexes to access non-read-only variables that are shared -+ among multiple threads. We just leave it for compatibility with -+ glibc malloc (i.e., assignments to __malloc_hook) for now. */ -+ hook = __malloc_hook; -+ return (hook != NULL ? *hook : _malloc_internal) (size); - } - - #ifndef _LIBC -@@ -1024,9 +1107,9 @@ - struct alignlist *_aligned_blocks = NULL; - - /* Return memory to the heap. -- Like `free' but don't call a __free_hook if there is one. */ -+ Like `_free_internal' but don't lock mutex. */ - void --_free_internal (ptr) -+_free_internal_nolock (ptr) - __ptr_t ptr; - { - int type; -@@ -1043,9 +1126,9 @@ - if (ptr == NULL) - return; - -- LOCK (); - PROTECT_MALLOC_STATE (0); - -+ LOCK_ALIGNED_BLOCKS (); - for (l = _aligned_blocks; l != NULL; l = l->next) - if (l->aligned == ptr) - { -@@ -1053,6 +1136,7 @@ - ptr = l->exact; - break; - } -+ UNLOCK_ALIGNED_BLOCKS (); - - block = BLOCK (ptr); - -@@ -1158,7 +1242,7 @@ - table's blocks to the system before we have copied them to - the new location. */ - _heaplimit = 0; -- _free_internal (_heapinfo); -+ _free_internal_nolock (_heapinfo); - _heaplimit = oldlimit; - - /* Tell malloc to search from the beginning of the heap for -@@ -1166,8 +1250,8 @@ - _heapindex = 0; - - /* Allocate new space for the info table and move its data. */ -- newinfo = (malloc_info *) _malloc_internal (info_blocks -- * BLOCKSIZE); -+ newinfo = (malloc_info *) _malloc_internal_nolock (info_blocks -+ * BLOCKSIZE); - PROTECT_MALLOC_STATE (0); - memmove (newinfo, _heapinfo, info_blocks * BLOCKSIZE); - _heapinfo = newinfo; -@@ -1230,8 +1314,8 @@ - _chunks_free -= BLOCKSIZE >> type; - _bytes_free -= BLOCKSIZE; - --#ifdef GC_MALLOC_CHECK -- _free_internal (ADDRESS (block)); -+#if defined (GC_MALLOC_CHECK) || defined (USE_PTHREAD) -+ _free_internal_nolock (ADDRESS (block)); - #else - free (ADDRESS (block)); - #endif -@@ -1269,6 +1353,16 @@ - } - - PROTECT_MALLOC_STATE (1); -+} -+ -+/* Return memory to the heap. -+ Like `free' but don't call a __free_hook if there is one. */ -+void -+_free_internal (ptr) -+ __ptr_t ptr; -+{ -+ LOCK (); -+ _free_internal_nolock (ptr); - UNLOCK (); - } - -@@ -1278,8 +1372,10 @@ - free (ptr) - __ptr_t ptr; - { -- if (__free_hook != NULL) -- (*__free_hook) (ptr); -+ void (*hook) (__ptr_t) = __free_hook; -+ -+ if (hook != NULL) -+ (*hook) (ptr); - else - _free_internal (ptr); - } -@@ -1415,7 +1511,7 @@ - new region. This module has incestuous knowledge of the - internals of both free and malloc. */ - __ptr_t --_realloc_internal (ptr, size) -+_realloc_internal_nolock (ptr, size) - __ptr_t ptr; - __malloc_size_t size; - { -@@ -1425,15 +1521,14 @@ - - if (size == 0) - { -- _free_internal (ptr); -- return _malloc_internal (0); -+ _free_internal_nolock (ptr); -+ return _malloc_internal_nolock (0); - } - else if (ptr == NULL) -- return _malloc_internal (size); -+ return _malloc_internal_nolock (size); - - block = BLOCK (ptr); - -- LOCK (); - PROTECT_MALLOC_STATE (0); - - type = _heapinfo[block].busy.type; -@@ -1443,11 +1538,11 @@ - /* Maybe reallocate a large block to a small fragment. */ - if (size <= BLOCKSIZE / 2) - { -- result = _malloc_internal (size); -+ result = _malloc_internal_nolock (size); - if (result != NULL) - { - memcpy (result, ptr, size); -- _free_internal (ptr); -+ _free_internal_nolock (ptr); - goto out; - } - } -@@ -1467,7 +1562,7 @@ - Now we will free this chunk; increment the statistics counter - so it doesn't become wrong when _free_internal decrements it. */ - ++_chunks_used; -- _free_internal (ADDRESS (block + blocks)); -+ _free_internal_nolock (ADDRESS (block + blocks)); - result = ptr; - } - else if (blocks == _heapinfo[block].busy.info.size) -@@ -1482,8 +1577,8 @@ - /* Prevent free from actually returning memory to the system. */ - oldlimit = _heaplimit; - _heaplimit = 0; -- _free_internal (ptr); -- result = _malloc_internal (size); -+ _free_internal_nolock (ptr); -+ result = _malloc_internal_nolock (size); - PROTECT_MALLOC_STATE (0); - if (_heaplimit == 0) - _heaplimit = oldlimit; -@@ -1493,13 +1588,13 @@ - the thing we just freed. Unfortunately it might - have been coalesced with its neighbors. */ - if (_heapindex == block) -- (void) _malloc_internal (blocks * BLOCKSIZE); -+ (void) _malloc_internal_nolock (blocks * BLOCKSIZE); - else - { - __ptr_t previous -- = _malloc_internal ((block - _heapindex) * BLOCKSIZE); -- (void) _malloc_internal (blocks * BLOCKSIZE); -- _free_internal (previous); -+ = _malloc_internal_nolock ((block - _heapindex) * BLOCKSIZE); -+ (void) _malloc_internal_nolock (blocks * BLOCKSIZE); -+ _free_internal_nolock (previous); - } - goto out; - } -@@ -1519,18 +1614,31 @@ - { - /* The new size is different; allocate a new space, - and copy the lesser of the new size and the old. */ -- result = _malloc_internal (size); -+ result = _malloc_internal_nolock (size); - if (result == NULL) - goto out; - memcpy (result, ptr, min (size, (__malloc_size_t) 1 << type)); -- _free_internal (ptr); -+ _free_internal_nolock (ptr); - } - break; - } - - PROTECT_MALLOC_STATE (1); - out: -+ return result; -+} -+ -+__ptr_t -+_realloc_internal (ptr, size) -+ __ptr_t ptr; -+ __malloc_size_t size; -+{ -+ __ptr_t result; -+ -+ LOCK(); -+ result = _realloc_internal_nolock (ptr, size); - UNLOCK (); -+ - return result; - } - -@@ -1539,11 +1647,13 @@ - __ptr_t ptr; - __malloc_size_t size; - { -+ __ptr_t (*hook) (__ptr_t, __malloc_size_t); -+ - if (!__malloc_initialized && !__malloc_initialize ()) - return NULL; - -- return (__realloc_hook != NULL ? *__realloc_hook : _realloc_internal) -- (ptr, size); -+ hook = __realloc_hook; -+ return (hook != NULL ? *hook : _realloc_internal) (ptr, size); - } - /* Copyright (C) 1991, 1992, 1994 Free Software Foundation, Inc. - -@@ -1681,9 +1791,10 @@ - { - __ptr_t result; - unsigned long int adj, lastadj; -+ __ptr_t (*hook) (__malloc_size_t, __malloc_size_t) = __memalign_hook; - -- if (__memalign_hook) -- return (*__memalign_hook) (alignment, size); -+ if (hook) -+ return (*hook) (alignment, size); - - /* Allocate a block with enough extra space to pad the block with up to - (ALIGNMENT - 1) bytes if necessary. */ -@@ -1718,6 +1829,7 @@ - of an allocated block. */ - - struct alignlist *l; -+ LOCK_ALIGNED_BLOCKS (); - for (l = _aligned_blocks; l != NULL; l = l->next) - if (l->aligned == NULL) - /* This slot is free. Use it. */ -@@ -1725,21 +1837,58 @@ - if (l == NULL) - { - l = (struct alignlist *) malloc (sizeof (struct alignlist)); -- if (l == NULL) -+ if (l != NULL) - { -- free (result); -- return NULL; -+ l->next = _aligned_blocks; -+ _aligned_blocks = l; - } -- l->next = _aligned_blocks; -- _aligned_blocks = l; - } -- l->exact = result; -- result = l->aligned = (char *) result + alignment - adj; -+ if (l != NULL) -+ { -+ l->exact = result; -+ result = l->aligned = (char *) result + alignment - adj; -+ } -+ UNLOCK_ALIGNED_BLOCKS (); -+ if (l == NULL) -+ { -+ free (result); -+ result = NULL; -+ } - } - - return result; - } - -+#ifndef ENOMEM -+#define ENOMEM 12 -+#endif -+ -+#ifndef EINVAL -+#define EINVAL 22 -+#endif -+ -+int -+posix_memalign (memptr, alignment, size) -+ __ptr_t *memptr; -+ __malloc_size_t alignment; -+ __malloc_size_t size; -+{ -+ __ptr_t mem; -+ -+ if (alignment == 0 -+ || alignment % sizeof (__ptr_t) != 0 -+ || (alignment & (alignment - 1)) != 0) -+ return EINVAL; -+ -+ mem = memalign (alignment, size); -+ if (mem == NULL) -+ return ENOMEM; -+ -+ *memptr = mem; -+ -+ return 0; -+} -+ - #endif /* Not DJGPP v1 */ - /* Allocate memory on a page boundary. - Copyright (C) 1991, 92, 93, 94, 96 Free Software Foundation, Inc. diff --git a/editors/emacs23/pkg-plist b/editors/emacs23/pkg-plist index 0dff1b354583..363b7557fb91 100644 --- a/editors/emacs23/pkg-plist +++ b/editors/emacs23/pkg-plist @@ -203,6 +203,7 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/kill-group.xpm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/mail-reply.pbm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/mail-reply.xpm +%%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/mail-send.xpm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/next-ur.pbm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/next-ur.xpm %%DATADIR%%/%%EMACS_VER%%/etc/images/gnus/post.pbm @@ -905,6 +906,7 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-extra.elc %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-indent.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-indent.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-loaddefs.el %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-macs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-macs.elc %%DATADIR%%/%%EMACS_VER%%/lisp/emacs-lisp/cl-seq.el.gz @@ -1100,8 +1102,6 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-netsplit.elc %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-networks.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-networks.elc -%%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-nicklist.el.gz -%%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-nicklist.elc %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-notify.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-notify.elc %%DATADIR%%/%%EMACS_VER%%/lisp/erc/erc-page.el.gz @@ -1909,6 +1909,8 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/net/rlogin.elc %%DATADIR%%/%%EMACS_VER%%/lisp/net/snmp-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/net/snmp-mode.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/net/socks.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/net/socks.elc %%DATADIR%%/%%EMACS_VER%%/lisp/net/telnet.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/net/telnet.elc %%DATADIR%%/%%EMACS_VER%%/lisp/net/tls.el.gz @@ -2235,6 +2237,10 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/sql.elc %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/tcl.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/tcl.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vera-mode.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vera-mode.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/verilog-mode.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/verilog-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vhdl-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/vhdl-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/progmodes/which-func.el.gz @@ -2377,8 +2383,12 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bib-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex-style.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/bibtex-style.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/conf-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/conf-mode.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/css-mode.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/css-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/dns-mode.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/dns-mode.elc %%DATADIR%%/%%EMACS_VER%%/lisp/textmodes/enriched.el.gz @@ -2543,12 +2553,20 @@ libexec/emacs/%%EMACS_VER%%/%%EMACS_ARCH%%/vcdiff %%DATADIR%%/%%EMACS_VER%%/lisp/userlock.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-arch.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-arch.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-bzr.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-bzr.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-cvs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-cvs.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-git.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-git.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-hg.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-hg.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-hooks.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-hooks.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-mcvs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-mcvs.elc +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-mtn.el.gz +%%DATADIR%%/%%EMACS_VER%%/lisp/vc-mtn.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-rcs.el.gz %%DATADIR%%/%%EMACS_VER%%/lisp/vc-rcs.elc %%DATADIR%%/%%EMACS_VER%%/lisp/vc-sccs.el.gz |