Support de_win.c compilation by Makefile.direct (cord/de)
authorIvan Maidanski <ivmai@mail.ru>
Thu, 27 Dec 2018 09:03:29 +0000 (12:03 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Thu, 27 Dec 2018 10:35:49 +0000 (13:35 +0300)
* Makefile.direct (cord/de): Add dependency on de_win.c and de_win.h;
compile cord/tests/de_win.c (in case of if_not_there case).
* cord/tests/de_win.c [!__BORLANDC__ && !__CYGWIN__ && !__MINGW32__
&& !__NT__ && !_WIN32 && !WIN32]: Skip the whole file (compile
"extern int GC_quiet" instead).

Makefile.direct
cord/tests/de_win.c

index 24facf4..94064c1 100644 (file)
@@ -340,7 +340,8 @@ cord/cordtest$(EXEEXT): $(srcdir)/cord/tests/cordtest.c $(CORD_OBJS) \
        ./if_mach M68K AMIGA $(CC) $(CFLAGS) -UGC_AMIGA_MAKINGLIB -o cord/cordtest $(srcdir)/cord/tests/cordtest.c $(CORD_OBJS) gc.a `./threadlibs`
        ./if_not_there cord/cordtest$(EXEEXT) || $(CC) $(CFLAGS) -o cord/cordtest$(EXEEXT) $(srcdir)/cord/tests/cordtest.c $(CORD_OBJS) gc.a `./threadlibs`
 
-cord/de: $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o base_lib \
+cord/de: $(srcdir)/cord/tests/de.c $(srcdir)/cord/tests/de_win.c \
+  $(srcdir)/cord/tests/de_win.h cord/cordbscs.o cord/cordxtra.o base_lib \
   $(UTILS)
        rm -f cord/de
        ./if_mach SPARC DRSNX $(CC) $(CFLAGS) -o cord/de $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o gc.a -lcurses -ltermlib -lucb `./threadlibs`
@@ -348,7 +349,7 @@ cord/de: $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o base_lib \
        ./if_mach POWERPC AIX $(CC) $(CFLAGS) -o cord/de $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o gc.a -lcurses
        ./if_mach POWERPC DARWIN $(CC) $(CFLAGS) -o cord/de $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o gc.a
        ./if_mach M68K AMIGA $(CC) $(CFLAGS) -UGC_AMIGA_MAKINGLIB -o cord/de $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o gc.a -lcurses
-       ./if_not_there cord/de$(EXEEXT) || $(CC) $(CFLAGS) -o cord/de$(EXEEXT) $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o gc.a $(CURSES) `./threadlibs`
+       ./if_not_there cord/de$(EXEEXT) || $(CC) $(CFLAGS) -o cord/de$(EXEEXT) $(srcdir)/cord/tests/de.c $(srcdir)/cord/tests/de_win.c cord/cordbscs.o cord/cordxtra.o gc.a $(CURSES) `./threadlibs`
 
 if_mach$(EXEEXT): $(srcdir)/tools/if_mach.c \
   $(srcdir)/include/private/gcconfig.h
index a41eb3d..2d2c528 100644 (file)
@@ -18,6 +18,8 @@
  *
  * This was written by a nonexpert windows programmer.
  */
+#if defined(__BORLANDC__) || defined(__CYGWIN__) || defined(__MINGW32__) \
+    || defined(__NT__) || defined(_WIN32) || defined(WIN32)
 
 #ifndef WIN32_LEAN_AND_MEAN
 # define WIN32_LEAN_AND_MEAN 1
@@ -375,3 +377,11 @@ void invalidate_line(int i)
     get_line_rect(i, COLS*char_width, &line_r);
     InvalidateRect(hwnd, &line_r, FALSE);
 }
+
+#else
+
+  extern int GC_quiet;
+        /* ANSI C doesn't allow translation units to be empty.  */
+        /* So we guarantee this one is nonempty.                */
+
+#endif /* !WIN32 */