From: Ivan Maidanski Date: Thu, 27 Dec 2018 09:03:29 +0000 (+0300) Subject: Support de_win.c compilation by Makefile.direct (cord/de) X-Git-Tag: v8.0.4~23 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e3502c3bfd736c7054178f04b4fd789f1e03d00a;p=gc Support de_win.c compilation by Makefile.direct (cord/de) * 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). --- diff --git a/Makefile.direct b/Makefile.direct index ada92536..4630146e 100644 --- a/Makefile.direct +++ b/Makefile.direct @@ -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` @@ -351,7 +352,7 @@ cord/de: $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o base_lib \ ./if_mach ALPHA LINUX $(CC) $(CFLAGS) -o cord/de $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o gc.a -lcurses `./threadlibs` ./if_mach IA64 LINUX $(CC) $(CFLAGS) -o cord/de $(srcdir)/cord/tests/de.c cord/cordbscs.o cord/cordxtra.o gc.a -lcurses `./threadlibs` ./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 diff --git a/cord/tests/de_win.c b/cord/tests/de_win.c index a41eb3d7..2d2c528d 100644 --- a/cord/tests/de_win.c +++ b/cord/tests/de_win.c @@ -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 */