]> granicus.if.org Git - gc/blob - digimars.mak
Do not hold GC_fault_handler_lock when in Sleep (Win32)
[gc] / digimars.mak
1 # Makefile to build Hans Boehm garbage collector using the Digital Mars\r
2 # compiler from www.digitalmars.com\r
3 # Written by Walter Bright\r
4 \r
5 DEFINES=-D_WINDOWS -DGC_DLL -DGC_THREADS -DGC_DISCOVER_TASK_THREADS -DALL_INTERIOR_POINTERS -DENABLE_DISCLAIM -DGC_ATOMIC_UNCOLLECTABLE -DGC_GCJ_SUPPORT -DJAVA_FINALIZATION -DNO_EXECUTE_PERMISSION -DUSE_MUNMAP\r
6 CFLAGS=-Iinclude -Ilibatomic_ops\src $(DEFINES) -wx -g\r
7 LFLAGS=/ma/implib/co\r
8 CC=sc\r
9 \r
10 .c.obj:\r
11         $(CC) -c $(CFLAGS) $*\r
12 \r
13 .cpp.obj:\r
14         $(CC) -c $(CFLAGS) -Aa $*\r
15 \r
16 OBJS=   \\r
17         allchblk.obj\\r
18         alloc.obj\\r
19         blacklst.obj\\r
20         checksums.obj\\r
21         dbg_mlc.obj\\r
22         fnlz_mlc.obj\\r
23         dyn_load.obj\\r
24         finalize.obj\\r
25         gc_cpp.obj\\r
26         gcj_mlc.obj\\r
27         headers.obj\\r
28         mach_dep.obj\\r
29         malloc.obj\\r
30         mallocx.obj\\r
31         mark.obj\\r
32         mark_rts.obj\\r
33         misc.obj\\r
34         new_hblk.obj\\r
35         obj_map.obj\\r
36         os_dep.obj\\r
37         ptr_chck.obj\\r
38         reclaim.obj\\r
39         typd_mlc.obj\\r
40         win32_threads.obj\r
41 \r
42 targets: gc.dll gc.lib\r
43 \r
44 check: gctest.exe test_cpp.exe\r
45         gctest.exe\r
46         test_cpp.exe\r
47 \r
48 gc.lib: gc.dll\r
49 \r
50 gc.dll: $(OBJS) gc.def digimars.mak\r
51         $(CC) -ogc.dll $(OBJS) -L$(LFLAGS) gc.def kernel32.lib user32.lib\r
52 \r
53 gc.def: digimars.mak\r
54         echo LIBRARY GC >gc.def\r
55         echo DESCRIPTION "Boehm-Demers-Weiser Garbage Collector" >>gc.def\r
56         echo EXETYPE NT >>gc.def\r
57         echo EXPORTS >>gc.def\r
58         echo GC_is_visible_print_proc >>gc.def\r
59         echo GC_is_valid_displacement_print_proc >>gc.def\r
60 \r
61 clean:\r
62         del *.log gc.def gc.dll gc.lib gc.map gctest.map test_cpp.map\r
63         del tests\test.obj gctest.exe tests\test_cpp.obj test_cpp.exe\r
64         del $(OBJS)\r
65 \r
66 gctest.exe: gc.lib tests\test.obj\r
67         $(CC) -ogctest.exe tests\test.obj gc.lib\r
68 \r
69 tests\test.obj: tests\test.c\r
70         $(CC) -c $(CFLAGS) tests\test.c -otests\test.obj\r
71 \r
72 test_cpp.exe: gc.lib tests\test_cpp.obj\r
73         $(CC) -otest_cpp.exe tests\test_cpp.obj gc.lib\r
74 \r
75 tests\test_cpp.obj: tests\test_cpp.cc\r
76         $(CC) -c $(CFLAGS) -cpp tests\test_cpp.cc -otests\test_cpp.obj\r
77 \r
78 allchblk.obj: allchblk.c\r
79 alloc.obj: alloc.c\r
80 blacklst.obj: blacklst.c\r
81 checksums.obj: checksums.c\r
82 dbg_mlc.obj: dbg_mlc.c\r
83 dyn_load.obj: dyn_load.c\r
84 finalize.obj: finalize.c\r
85 fnlz_mlc.obj: fnlz_mlc.c\r
86 gc_cpp.obj: gc_cpp.cc gc_cpp.cpp\r
87 headers.obj: headers.c\r
88 mach_dep.obj: mach_dep.c\r
89 malloc.obj: malloc.c\r
90 mallocx.obj: mallocx.c\r
91 mark.obj: mark.c\r
92 mark_rts.obj: mark_rts.c\r
93 misc.obj: misc.c\r
94 new_hblk.obj: new_hblk.c\r
95 obj_map.obj: obj_map.c\r
96 os_dep.obj: os_dep.c\r
97 ptr_chck.obj: ptr_chck.c\r
98 reclaim.obj: reclaim.c\r
99 typd_mlc.obj: typd_mlc.c\r
100 win32_threads.obj: win32_threads.c\r