I needed the following patch to get it to build under mswindows:
cvs server: Diffing lib-src
Index: lib-src/gnuclient.c
===================================================================
RCS file: /usr/CVSroot/XEmacs/xemacs/lib-src/gnuclient.c,v
retrieving revision 1.17.2.12.4.2
diff -u -r1.17.2.12.4.2 gnuclient.c
--- gnuclient.c 2001/02/17 04:39:44     1.17.2.12.4.2
+++ gnuclient.c 2001/03/01 22:16:59
@@ -641,13 +641,15 @@
         }
        else /* !suppress_windows_system */
         {
+         if (0)
+           ;
  #ifdef HAVE_X_WINDOWS
-         if (display)
+         else if (display)
             sprintf (command, "(gnuserv-edit-files '(x %s) '(",
                      clean_string (display));
  #endif
  #ifdef HAVE_GTK
-         if (display)
+         else if (display)
             strcpy (command, "(gnuserv-edit-files '(gtk nil) '(");
  #endif
  #ifdef HAVE_MS_WINDOWS
I also see the looping problem in compiling auto-autoloads.el but I don't 
think this is gtk specific. Debugging gave me a SIGSEGV but no useful 
stacktrace.
This is cygwin
andy