Ben Wing <ben(a)xemacs.org> writes:
 Vin -- these fixes were needed to get things compiling under Cygwin.
 Unfortunately I couldn't verify whether XEmacs actually runs, due to a
 recurring crash early in temacs, but I'm pretty sure these are correct;
 maybe some other Cygwin user could verify. 
I only needed the sheap.c fix when I built this afternoon, but then
again, I wasn't using ldap.  Be sure to configure --pdump and you
should be good to go.  (I specified --with-x11=no, btw.)
Volker, do you care to comment on any of these patches?
  - vin
  
 ChangeLog addition:
 2005-01-24  Ben Wing  <ben(a)xemacs.org>
 	* configure.in (AC_INIT_NOTICE):
 	* configure.in (XE_COMPUTE_RUNPATH):
 	Copy LDAP fixes from 21.5.
 src/ChangeLog addition:
 2005-01-24  Ben Wing  <ben(a)xemacs.org>
 	* mule-charset.c (get_unallocated_leading_byte):
 	Warning fix from 21.5.
 	
 	* sheap.c (more_static_core):
 	Fix multi-line string.
 latest-stable source patch:
 Diff command:   bash -ci "cvs-diff --show-c-function -no-changelog "
 Files affected: src/sheap.c src/mule-charset.c nt/installer/Wise/xemacs.tmpl
nt/installer/Wise/welcome.dlg nt/installer/Wise/version.py nt/installer/Wise/type.dlg
nt/installer/Wise/pre_wise.py nt/installer/Wise/libs.dlg nt/installer/Wise/display
nt/installer/Wise/dirs.py nt/Emacs.ad.h netinstall/resource.h netinstall/res.rc
lib-src/winclient.c configure.in
 cvs server: Diffing .
 Index: configure.in
 ===================================================================
 RCS file: /pack/xemacscvs/XEmacs/xemacs/configure.in,v
 retrieving revision 1.151.2.30
 diff -u -p -r1.151.2.30 configure.in
 --- configure.in	2005/01/23 16:22:57	1.151.2.30
 +++ configure.in	2005/01/25 01:09:23
 @@ -6,7 +6,7 @@ define([AC_INIT_NOTICE],
  #### Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 Free Software
Foundation, Inc.
  #### Copyright (C) 1993-1995 Board of Trustees, University of Illinois.
  #### Copyright (C) 1996, 1997 Sun Microsystems, Inc.
 -#### Copyright (C) 1995, 1996 Ben Wing.
 +#### Copyright (C) 1995, 1996, 2005 Ben Wing.
  #### Copyright (C) 2000, 2001 Martin Buchholz.
  #### Copyright (C) 1998, 1999 J. Kean Johnston.
  
 @@ -3208,28 +3208,32 @@ AC_CHECKING(for LDAP)
  test -z "$with_ldap" && { AC_CHECK_HEADER(ldap.h, ,with_ldap=no) }
  test -z "$with_ldap" && { AC_CHECK_HEADER(lber.h, ,with_ldap=no) }
  if test "$with_ldap" != "no"; then
 -  AC_CHECK_LIB(ldap, ldap_search, with_ldap_nolber=yes, with_ldap_nolber=no)
 -  test "$with_ldap_nolber" = "no" && { AC_CHECK_LIB(ldap,
ldap_open, with_ldap_lber=yes, with_ldap_lber=no, -llber) }
 -  test "$with_ldap_nolber" = "no" -a "$with_ldap_lber" =
"no" && { AC_CHECK_LIB(ldap, ldap_open, with_ldap_krb=yes,
with_ldap_krb=no, -llber -lkrb) }
 -  test "$with_ldap_nolber" = "no" -a "$with_ldap_lber" =
"no" -a "$with_ldap_krb" = "no" && {
AC_CHECK_LIB(ldap, ldap_open, with_ldap_krbdes=yes, with_ldap_krbdes=no, -llber -lkrb
-ldes) }
 -  test -z "$with_ldap" -a \( "$with_ldap_lber" = "yes" -o
"$with_ldap_nolber" = "yes" -o "$with_ldap_krb" =
"yes" -o "$with_ldap_krbdes" = "yes" \) &&
with_ldap=yes
 +  AC_CHECK_LIB(ldap, ldap_search, with_ldap=yes)
 +  dnl Check for other libraries we need to link with to get the main routines.
 +  test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap,
ldap_open, [with_ldap=yes with_ldap_lber=yes], , -llber) }
 +  test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap,
ldap_open, [with_ldap=yes with_ldap_lber=yes with_ldap_krb=yes], , -llber -lkrb) }
 +  test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap,
ldap_open, [with_ldap=yes with_ldap_lber=yes with_ldap_krb=yes with_ldap_des=yes], ,
-llber -lkrb -ldes) }
 +  dnl Recently, we need -lber even though the main routines are elsewhere,
 +  dnl because otherwise be get link errors w.r.t. ber_pvt_opt_on.  So just
 +  dnl check for that (it's a variable not a fun but that doesn't seem to
 +  dnl matter in these checks)  and stick in -lber if so.  Can't hurt (even to
 +  dnl stick it in always shouldn't hurt, I don't think) ... #### Someone who
 +  dnl #### understands LDAP needs to fix this properly.
 +  test "$with_ldap_lber" != "yes" && { AC_CHECK_LIB(lber,
ber_pvt_opt_on, with_ldap_lber=yes) }
  fi
  if test "$with_ldap" = "yes"; then
    AC_DEFINE(HAVE_LDAP)
    XE_ADD_OBJS(eldap.o)
 -  if test "$with_ldap_nolber" = "yes" ; then
 -    XE_PREPEND(-lldap, LIBS)
 -  else
 -    if test "$with_ldap_krb" = "yes" ; then
 -      XE_PREPEND(-lkrb, LIBS)
 -    fi
 -    if test "$with_ldap_krbdes" = "yes" ; then
 -      XE_PREPEND(-ldes, LIBS)
 -      XE_PREPEND(-lkrb, LIBS)
 -    fi
 +  if test "$with_ldap_des" = "yes" ; then
 +    XE_PREPEND(-ldes, LIBS)
 +  fi
 +  if test "$with_ldap_krb" = "yes" ; then
 +    XE_PREPEND(-lkrb, LIBS)
 +  fi
 +  if test "$with_ldap_lber" = "yes" ; then
      XE_PREPEND(-llber, LIBS)
 -    XE_PREPEND(-lldap, LIBS)
    fi
 +  XE_PREPEND(-lldap, LIBS)
    AC_CHECK_FUNCS(ldap_set_option ldap_get_lderrno ldap_result2error ldap_parse_result)
  fi
  
 cvs server: Diffing dynodump
 cvs server: Diffing dynodump/i386
 cvs server: Diffing dynodump/ppc
 cvs server: Diffing dynodump/sparc
 cvs server: Diffing etc
 cvs server: Diffing etc/custom
 cvs server: Diffing etc/custom/example-themes
 cvs server: Diffing etc/eos
 cvs server: Diffing etc/idd
 cvs server: Diffing etc/photos
 cvs server: Diffing etc/sparcworks
 cvs server: Diffing etc/tests
 cvs server: Diffing etc/tests/external-widget
 cvs server: Diffing etc/toolbar
 cvs server: Diffing info
 cvs server: Diffing lib-src
 Index: src/mule-charset.c
 ===================================================================
 RCS file: /pack/xemacscvs/XEmacs/xemacs/src/mule-charset.c,v
 retrieving revision 1.19.2.1
 diff -u -p -r1.19.2.1 mule-charset.c
 --- src/mule-charset.c	2001/05/09 09:54:06	1.19.2.1
 +++ src/mule-charset.c	2005/01/25 01:10:23
 @@ -508,15 +508,22 @@ get_unallocated_leading_byte (int dimens
  
    if (dimension == 1)
      {
 -      if (chlook->next_allocated_1_byte_leading_byte >
MAX_LEADING_BYTE_PRIVATE_1)
 +      if (chlook->next_allocated_1_byte_leading_byte >
 +	  MAX_LEADING_BYTE_PRIVATE_1)
  	lb = 0;
        else
  	lb = chlook->next_allocated_1_byte_leading_byte++;
      }
    else
      {
 -      if (chlook->next_allocated_2_byte_leading_byte >
MAX_LEADING_BYTE_PRIVATE_2)
 -	lb = 0;
 +      /* awfully fragile, but correct */
 +#if MAX_LEADING_BYTE_PRIVATE_2 == 255
 +      if (chlook->next_allocated_2_byte_leading_byte == 0)
 +#else
 +      if (chlook->next_allocated_2_byte_leading_byte >
 +	  MAX_LEADING_BYTE_PRIVATE_2)
 +#endif
 +        lb = 0;
        else
  	lb = chlook->next_allocated_2_byte_leading_byte++;
      }
 Index: src/sheap.c
 ===================================================================
 RCS file: /pack/xemacscvs/XEmacs/xemacs/src/sheap.c,v
 retrieving revision 1.12
 diff -u -p -r1.12 sheap.c
 --- src/sheap.c	2001/04/12 18:24:19	1.12
 +++ src/sheap.c	2005/01/25 01:10:23
 @@ -82,16 +82,16 @@ void* more_static_core ( ptrdiff_t incre
  	{
  	  printf(
  
 -"\nRequested %d bytes, static heap exhausted!  base is %p, current ptr
 -is %p. You have exhausted the static heap. 
 -
 -If you are simply trying to compile, remove sheap-adjust.h
 -and recompile from the top level. If this doesn't
 -work then STATIC_HEAP_SLOP (defined in this file) is too small.
 -
 -If you want to run temacs, change SHEAP_ADJUSTMENT in sheap-adjust.h
 -to 0 or a +ve number. Generally you should *not* try to run temacs
 -with a static heap, you should dump first.\n", size,
 +"\nRequested %d bytes, static heap exhausted!  base is %p, current ptr\n"
 +"is %p. You have exhausted the static heap. \n"
 +"\n"
 +"If you are simply trying to compile, remove sheap-adjust.h\n"
 +"and recompile from the top level. If this doesn't\n"
 +"work then STATIC_HEAP_SLOP (defined in this file) is too small.\n"
 +"\n"
 +"If you want to run temacs, change SHEAP_ADJUSTMENT in sheap-adjust.h\n"
 +"to 0 or a +ve number. Generally you should *not* try to run temacs\n"
 +"with a static heap, you should dump first.\n", size,
  static_heap_base, static_heap_ptr);
  
  	  exit(-1);
 cvs server: Diffing src/m
 cvs server: Diffing src/s
 cvs server: Diffing tests
 cvs server: Diffing tests/DLL
 cvs server: Diffing tests/Dnd
 cvs server: Diffing tests/automated
 cvs server: Diffing tests/gtk
 cvs server: Diffing tests/mule
 cvs server: Diffing tests/tooltalk