* configure.in: Allow compiling Emacs with GTK on Cygwin.

* src/s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.

* src/emacs.c (main): Set the G_SLICE environment variable for Cygwin
GTK builds.
This commit is contained in:
Chong Yidong 2009-12-09 01:06:32 +00:00
parent 0f0ea87e8c
commit a4ef73c887
5 changed files with 22 additions and 10 deletions

View file

@ -1,3 +1,7 @@
2009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
* configure.in: Allow compiling Emacs with GTK on Cygwin.
2009-12-01 Glenn Morris <rgm@gnu.org>
* make-dist: Add etc/images/mpc directory.

View file

@ -3026,16 +3026,6 @@ fi
echo
if test "$USE_X_TOOLKIT" = GTK; then
case "$canonical" in
*cygwin*)
echo "There are known problems with Emacs and Gtk+ on cygwin, so you
will probably get a crash on startup. If this happens, please use another
toolkit for Emacs. See etc/PROBLEMS for more information."
;;
esac
fi
if test "$HAVE_NS" = "yes"; then
echo
echo "You must run \"make install\" in order to test the built application.

View file

@ -1,3 +1,10 @@
2009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
* s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
* emacs.c (main): Set the G_SLICE environment variable for Cygwin
GTK builds.
2009-12-07 Andreas Schwab <schwab@linux-m68k.org>
* unexelf.c (unexec): Don't search for .data twice.

View file

@ -809,6 +809,11 @@ main (int argc, char **argv)
stack_base = &dummy;
#endif
#if defined (USE_GTK) && defined (G_SLICE_ALWAYS_MALLOC)
/* This is used by the Cygwin build. */
setenv ("G_SLICE", "always-malloc", 1);
#endif
if (!initialized)
{
extern char my_endbss[];

View file

@ -126,6 +126,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Virtual addresses of pure and impure space can vary, as on Windows. */
#define VIRT_ADDR_VARIES
/* Emacs supplies its own malloc, but glib (part of Gtk+) calls
memalign and on Cygwin, that becomes the Cygwin-supplied memalign.
As malloc is not the Cygwin malloc, the Cygwin memalign always
returns ENOSYS. A workaround is to set G_SLICE=always-malloc. */
#define G_SLICE_ALWAYS_MALLOC
/* the end */
/* arch-tag: 5ae7ba00-83b0-4ab3-806a-3e845779191b