xref: /netbsd-src/external/gpl3/gcc/dist/libphobos/libdruntime/Makefile.am (revision b1e838363e3c6fc78a55519254d99869742dd33c)
1# Makefile for the D runtime library.
2# Copyright (C) 2012-2022 Free Software Foundation, Inc.
3#
4# GCC is free software; you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation; either version 3, or (at your option)
7# any later version.
8#
9# GCC is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with GCC; see the file COPYING3.  If not see
16# <http://www.gnu.org/licenses/>.
17
18# Include D build rules
19include $(top_srcdir)/d_rules.am
20
21# Make sure GDC can find libdruntime include files
22D_EXTRA_DFLAGS=-fpreview=dip1000 -fpreview=fieldwise -fpreview=dtorfields \
23	       -nostdinc -I $(srcdir) -I .
24
25# D flags for compilation
26AM_DFLAGS= \
27	$(phobos_lt_pic_flag) $(phobos_compiler_shared_flag) \
28	$(WARN_DFLAGS) $(CHECKING_DFLAGS) $(SECTION_FLAGS) $(CET_DFLAGS)
29
30# Flags for other kinds of sources
31AM_CFLAGS=$(CET_FLAGS)
32AM_CCASFLAGS=$(CET_FLAGS)
33
34# Install all D and DI files
35ALL_DRUNTIME_INSTALL_DSOURCES = $(DRUNTIME_DSOURCES) \
36	$(DRUNTIME_DSOURCES_BIONIC) $(DRUNTIME_DSOURCES_DARWIN) \
37	$(DRUNTIME_DSOURCES_DRAGONFLYBSD) $(DRUNTIME_DSOURCES_FREEBSD) \
38	$(DRUNTIME_DSOURCES_LINUX) $(DRUNTIME_DSOURCES_NETBSD) \
39	$(DRUNTIME_DSOURCES_OPENBSD) $(DRUNTIME_DSOURCES_POSIX) \
40	$(DRUNTIME_DSOURCES_SOLARIS) $(DRUNTIME_DSOURCES_WINDOWS) \
41	$(DRUNTIME_DSOURCES_GENERATED) $(DRUNTIME_DISOURCES) \
42	$(DRUNTIME_DSOURCES_STDCXX)
43
44# Setup source files depending on configure
45DRUNTIME_SOURCES_CONFIGURED =
46
47# OS specific sources
48if DRUNTIME_OS_POSIX
49    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_POSIX)
50endif
51if DRUNTIME_OS_DARWIN
52    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_DARWIN)
53endif
54if DRUNTIME_OS_DRAGONFLYBSD
55    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_DRAGONFLYBSD)
56endif
57if DRUNTIME_OS_ANDROID
58    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_BIONIC)
59endif
60if DRUNTIME_OS_FREEBSD
61    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_FREEBSD)
62endif
63if DRUNTIME_OS_NETBSD
64    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_NETBSD)
65endif
66if DRUNTIME_OS_OPENBSD
67    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_OPENBSD)
68endif
69if DRUNTIME_OS_LINUX
70    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_LINUX)
71endif
72if DRUNTIME_OS_MINGW
73    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_WINDOWS) \
74				   config/mingw/msvc.c
75endif
76if DRUNTIME_OS_SOLARIS
77    DRUNTIME_SOURCES_CONFIGURED += $(DRUNTIME_DSOURCES_SOLARIS)
78endif
79# CPU specific sources
80if DRUNTIME_CPU_AARCH64
81    DRUNTIME_SOURCES_CONFIGURED += config/aarch64/switchcontext.S
82endif
83if DRUNTIME_CPU_ARM
84    DRUNTIME_SOURCES_CONFIGURED += config/arm/switchcontext.S
85endif
86if DRUNTIME_CPU_MIPS
87    DRUNTIME_SOURCES_CONFIGURED += config/mips/switchcontext.S
88endif
89if DRUNTIME_CPU_POWERPC
90    DRUNTIME_SOURCES_CONFIGURED += config/powerpc/switchcontext.S
91endif
92if DRUNTIME_CPU_X86
93if DRUNTIME_OS_MINGW
94    DRUNTIME_SOURCES_CONFIGURED += config/mingw/switchcontext.S
95else
96    DRUNTIME_SOURCES_CONFIGURED += config/x86/switchcontext.S
97endif
98endif
99if DRUNTIME_CPU_SYSTEMZ
100    DRUNTIME_SOURCES_CONFIGURED += config/systemz/get_tls_offset.S
101endif
102if DRUNTIME_CPU_S390
103    DRUNTIME_SOURCES_CONFIGURED += config/s390/get_tls_offset.S
104endif
105
106# Provide __start_minfo, __stop_minfo if linker doesn't.
107if !DRUNTIME_OS_MINFO_BRACKETING
108    DRTSTUFF = gcc/drtbegin.o gcc/drtend.o
109
110    toolexeclib_DATA = $(DRTSTUFF)
111
112gcc/drtbegin.o: gcc/drtstuff.c
113	$(COMPILE) -DDRT_BEGIN -c -o $@ $<
114
115gcc/drtend.o: gcc/drtstuff.c
116	$(COMPILE) -DDRT_END -c -o $@ $<
117endif
118
119# Generated by configure
120DRUNTIME_DSOURCES_GENERATED = gcc/config.d gcc/libbacktrace.d
121
122ALL_DRUNTIME_SOURCES = $(DRUNTIME_DSOURCES) $(DRUNTIME_CSOURCES) \
123	$(DRUNTIME_DSOURCES_STDCXX) \
124	$(DRUNTIME_SOURCES_CONFIGURED) $(DRUNTIME_DSOURCES_GENERATED)
125
126# Need this library to both be part of libgphobos.a, and installed separately.
127# 1) separate libgdruntime.la
128toolexeclib_LTLIBRARIES = libgdruntime.la
129libgdruntime_la_SOURCES = $(ALL_DRUNTIME_SOURCES)
130libgdruntime_la_LIBTOOLFLAGS =
131libgdruntime_la_LDFLAGS = -Wc,-nophoboslib,-dstartfiles,-B../src,-Bgcc \
132    -version-info $(libtool_VERSION)
133libgdruntime_la_LIBADD = $(LIBATOMIC) $(LIBBACKTRACE)
134libgdruntime_la_DEPENDENCIES = $(DRTSTUFF)
135# Also override library link commands: This is not strictly
136# required, but we want to record additional dependencies such
137# as pthread in the library
138libgdruntime_la_LINK = $(LIBTOOL) --tag=D $(AM_LIBTOOLFLAGS) \
139	$(LIBTOOLFLAGS) --mode=link $(GDC) $(AM_CFLAGS) $(CFLAGS) \
140	$(libgdruntime_la_LDFLAGS) $(LDFLAGS) -o $@
141
142# 2) integrated libgdruntime_convenience.la that is to be part of libgphobos.a
143noinst_LTLIBRARIES = libgdruntime_convenience.la
144libgdruntime_convenience_la_SOURCES = $(libgdruntime_la_SOURCES)
145libgdruntime_convenience_la_LIBTOOLFLAGS = $(libgdruntime_la_LIBTOOLFLAGS)
146libgdruntime_convenience_la_LDFLAGS = $(libgdruntime_la_LDFLAGS)
147libgdruntime_convenience_la_LIBADD = $(libgdruntime_la_LIBADD)
148libgdruntime_convenience_la_DEPENDENCIES = $(libgdruntime_la_DEPENDENCIES)
149libgdruntime_convenience_la_LINK = $(libgdruntime_la_LINK)
150
151# Handles generated files as well
152install-data-local:
153	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
154	  $(MKDIR_P) `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ; \
155	  if test -f $$file; then \
156	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
157	  else \
158	    $(INSTALL_HEADER) $(srcdir)/$$file \
159	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
160	  fi ; \
161	done
162
163# Source file definitions. Boring stuff, auto-generated with
164# https://gist.github.com/jpf91/8ad1dbc9902d6ad876313f134c6527d1
165# Can't use wildcards here:
166# https://www.gnu.org/software/automake/manual/html_node/Wildcards.html
167
168DRUNTIME_CSOURCES = core/stdc/errno_.c
169
170DRUNTIME_DSOURCES = core/atomic.d core/attribute.d core/bitop.d \
171	core/builtins.d core/checkedint.d core/cpuid.d core/demangle.d \
172	core/exception.d core/gc/config.d core/gc/gcinterface.d \
173	core/gc/registry.d core/int128.d core/internal/abort.d \
174	core/internal/array/appending.d core/internal/array/capacity.d \
175	core/internal/array/casting.d core/internal/array/comparison.d \
176	core/internal/array/concatenation.d core/internal/array/construction.d \
177	core/internal/array/equality.d core/internal/array/operations.d \
178	core/internal/array/utils.d core/internal/atomic.d \
179	core/internal/attributes.d core/internal/container/array.d \
180	core/internal/container/common.d core/internal/container/hashtab.d \
181	core/internal/container/treap.d core/internal/convert.d \
182	core/internal/dassert.d core/internal/destruction.d \
183	core/internal/entrypoint.d core/internal/gc/bits.d \
184	core/internal/gc/impl/conservative/gc.d \
185	core/internal/gc/impl/manual/gc.d core/internal/gc/impl/proto/gc.d \
186	core/internal/gc/os.d core/internal/gc/pooltable.d \
187	core/internal/gc/proxy.d core/internal/hash.d core/internal/lifetime.d \
188	core/internal/moving.d core/internal/parseoptions.d \
189	core/internal/postblit.d core/internal/qsort.d \
190	core/internal/spinlock.d core/internal/string.d \
191	core/internal/switch_.d core/internal/traits.d core/internal/utf.d \
192	core/internal/util/array.d core/internal/util/math.d core/lifetime.d \
193	core/math.d core/memory.d core/runtime.d core/simd.d \
194	core/stdc/assert_.d core/stdc/complex.d core/stdc/config.d \
195	core/stdc/ctype.d core/stdc/errno.d core/stdc/fenv.d \
196	core/stdc/float_.d core/stdc/inttypes.d core/stdc/limits.d \
197	core/stdc/locale.d core/stdc/math.d core/stdc/signal.d \
198	core/stdc/stdarg.d core/stdc/stddef.d core/stdc/stdint.d \
199	core/stdc/stdio.d core/stdc/stdlib.d core/stdc/string.d \
200	core/stdc/tgmath.d core/stdc/time.d core/stdc/wchar_.d \
201	core/stdc/wctype.d core/sync/barrier.d core/sync/condition.d \
202	core/sync/config.d core/sync/event.d core/sync/exception.d \
203	core/sync/mutex.d core/sync/rwmutex.d core/sync/semaphore.d \
204	core/thread/context.d core/thread/fiber.d core/thread/osthread.d \
205	core/thread/package.d core/thread/threadbase.d \
206	core/thread/threadgroup.d core/thread/types.d core/time.d \
207	core/vararg.d core/volatile.d gcc/attribute.d gcc/attributes.d \
208	gcc/backtrace.d gcc/builtins.d gcc/deh.d gcc/emutls.d gcc/gthread.d \
209	gcc/sections/common.d gcc/sections/elf.d gcc/sections/macho.d \
210	gcc/sections/package.d gcc/sections/pecoff.d gcc/unwind/arm.d \
211	gcc/unwind/arm_common.d gcc/unwind/c6x.d gcc/unwind/generic.d \
212	gcc/unwind/package.d gcc/unwind/pe.d object.d rt/aApply.d rt/aApplyR.d \
213	rt/aaA.d rt/adi.d rt/arrayassign.d rt/arraycat.d rt/cast_.d \
214	rt/config.d rt/critical_.d rt/deh.d rt/dmain2.d rt/ehalloc.d \
215	rt/invariant.d rt/lifetime.d rt/memory.d rt/minfo.d rt/monitor_.d \
216	rt/profilegc.d rt/sections.d rt/tlsgc.d rt/util/typeinfo.d \
217	rt/util/utility.d
218
219DRUNTIME_DSOURCES_STDCXX = core/stdcpp/allocator.d core/stdcpp/array.d \
220	core/stdcpp/exception.d core/stdcpp/memory.d core/stdcpp/new_.d \
221	core/stdcpp/string.d core/stdcpp/string_view.d \
222	core/stdcpp/type_traits.d core/stdcpp/typeinfo.d core/stdcpp/utility.d \
223	core/stdcpp/vector.d core/stdcpp/xutility.d
224
225DRUNTIME_DSOURCES_BIONIC = core/sys/bionic/err.d \
226	core/sys/bionic/fcntl.d core/sys/bionic/stdlib.d \
227	core/sys/bionic/string.d core/sys/bionic/unistd.d
228
229DRUNTIME_DSOURCES_DARWIN = core/sys/darwin/config.d \
230	core/sys/darwin/crt_externs.d core/sys/darwin/dlfcn.d \
231	core/sys/darwin/err.d core/sys/darwin/execinfo.d \
232	core/sys/darwin/fcntl.d core/sys/darwin/ifaddrs.d \
233	core/sys/darwin/mach/dyld.d core/sys/darwin/mach/getsect.d \
234	core/sys/darwin/mach/kern_return.d core/sys/darwin/mach/loader.d \
235	core/sys/darwin/mach/nlist.d core/sys/darwin/mach/port.d \
236	core/sys/darwin/mach/semaphore.d core/sys/darwin/mach/stab.d \
237	core/sys/darwin/mach/thread_act.d core/sys/darwin/netinet/in_.d \
238	core/sys/darwin/pthread.d core/sys/darwin/stdlib.d \
239	core/sys/darwin/string.d core/sys/darwin/sys/attr.d \
240	core/sys/darwin/sys/cdefs.d core/sys/darwin/sys/event.d \
241	core/sys/darwin/sys/mman.d core/sys/darwin/sys/sysctl.d
242
243DRUNTIME_DSOURCES_DRAGONFLYBSD = core/sys/dragonflybsd/dlfcn.d \
244	core/sys/dragonflybsd/err.d core/sys/dragonflybsd/execinfo.d \
245	core/sys/dragonflybsd/netinet/in_.d core/sys/dragonflybsd/pthread_np.d \
246	core/sys/dragonflybsd/stdlib.d core/sys/dragonflybsd/string.d \
247	core/sys/dragonflybsd/sys/_bitset.d \
248	core/sys/dragonflybsd/sys/_cpuset.d core/sys/dragonflybsd/sys/cdefs.d \
249	core/sys/dragonflybsd/sys/elf.d core/sys/dragonflybsd/sys/elf32.d \
250	core/sys/dragonflybsd/sys/elf64.d \
251	core/sys/dragonflybsd/sys/elf_common.d \
252	core/sys/dragonflybsd/sys/event.d core/sys/dragonflybsd/sys/link_elf.d \
253	core/sys/dragonflybsd/sys/mman.d core/sys/dragonflybsd/sys/socket.d \
254	core/sys/dragonflybsd/sys/sysctl.d core/sys/dragonflybsd/time.d
255
256DRUNTIME_DSOURCES_FREEBSD = core/sys/freebsd/config.d \
257	core/sys/freebsd/dlfcn.d core/sys/freebsd/err.d \
258	core/sys/freebsd/execinfo.d core/sys/freebsd/netinet/in_.d \
259	core/sys/freebsd/pthread_np.d core/sys/freebsd/stdlib.d \
260	core/sys/freebsd/string.d core/sys/freebsd/sys/_bitset.d \
261	core/sys/freebsd/sys/_cpuset.d core/sys/freebsd/sys/cdefs.d \
262	core/sys/freebsd/sys/elf.d core/sys/freebsd/sys/elf32.d \
263	core/sys/freebsd/sys/elf64.d core/sys/freebsd/sys/elf_common.d \
264	core/sys/freebsd/sys/event.d core/sys/freebsd/sys/link_elf.d \
265	core/sys/freebsd/sys/mman.d core/sys/freebsd/sys/mount.d \
266	core/sys/freebsd/sys/sysctl.d core/sys/freebsd/time.d \
267	core/sys/freebsd/unistd.d
268
269DRUNTIME_DSOURCES_LINUX = core/sys/linux/config.d \
270	core/sys/linux/dlfcn.d core/sys/linux/elf.d core/sys/linux/epoll.d \
271	core/sys/linux/err.d core/sys/linux/errno.d core/sys/linux/execinfo.d \
272	core/sys/linux/fcntl.d core/sys/linux/fs.d core/sys/linux/ifaddrs.d \
273	core/sys/linux/io_uring.d core/sys/linux/link.d \
274	core/sys/linux/netinet/in_.d core/sys/linux/netinet/tcp.d \
275	core/sys/linux/perf_event.d core/sys/linux/sched.d \
276	core/sys/linux/stdio.d core/sys/linux/string.d \
277	core/sys/linux/sys/auxv.d core/sys/linux/sys/eventfd.d \
278	core/sys/linux/sys/file.d core/sys/linux/sys/inotify.d \
279	core/sys/linux/sys/mman.d core/sys/linux/sys/prctl.d \
280	core/sys/linux/sys/procfs.d core/sys/linux/sys/signalfd.d \
281	core/sys/linux/sys/socket.d core/sys/linux/sys/sysinfo.d \
282	core/sys/linux/sys/time.d core/sys/linux/sys/xattr.d \
283	core/sys/linux/termios.d core/sys/linux/time.d \
284	core/sys/linux/timerfd.d core/sys/linux/tipc.d core/sys/linux/unistd.d
285
286DRUNTIME_DSOURCES_NETBSD = core/sys/netbsd/dlfcn.d \
287	core/sys/netbsd/err.d core/sys/netbsd/execinfo.d \
288	core/sys/netbsd/stdlib.d core/sys/netbsd/string.d \
289	core/sys/netbsd/sys/elf.d core/sys/netbsd/sys/elf32.d \
290	core/sys/netbsd/sys/elf64.d core/sys/netbsd/sys/elf_common.d \
291	core/sys/netbsd/sys/event.d core/sys/netbsd/sys/featuretest.d \
292	core/sys/netbsd/sys/link_elf.d core/sys/netbsd/sys/mman.d \
293	core/sys/netbsd/sys/sysctl.d core/sys/netbsd/time.d
294
295DRUNTIME_DSOURCES_OPENBSD = core/sys/openbsd/dlfcn.d \
296	core/sys/openbsd/err.d core/sys/openbsd/execinfo.d \
297	core/sys/openbsd/pthread_np.d core/sys/openbsd/pwd.d \
298	core/sys/openbsd/stdlib.d core/sys/openbsd/string.d \
299	core/sys/openbsd/sys/cdefs.d core/sys/openbsd/sys/elf.d \
300	core/sys/openbsd/sys/elf32.d core/sys/openbsd/sys/elf64.d \
301	core/sys/openbsd/sys/elf_common.d core/sys/openbsd/sys/link_elf.d \
302	core/sys/openbsd/sys/mman.d core/sys/openbsd/sys/sysctl.d \
303	core/sys/openbsd/time.d core/sys/openbsd/unistd.d
304
305DRUNTIME_DSOURCES_POSIX = core/sys/posix/aio.d \
306	core/sys/posix/arpa/inet.d core/sys/posix/config.d \
307	core/sys/posix/dirent.d core/sys/posix/dlfcn.d core/sys/posix/fcntl.d \
308	core/sys/posix/grp.d core/sys/posix/iconv.d core/sys/posix/inttypes.d \
309	core/sys/posix/libgen.d core/sys/posix/locale.d \
310	core/sys/posix/mqueue.d core/sys/posix/net/if_.d \
311	core/sys/posix/netdb.d core/sys/posix/netinet/in_.d \
312	core/sys/posix/netinet/tcp.d core/sys/posix/poll.d \
313	core/sys/posix/pthread.d core/sys/posix/pwd.d core/sys/posix/sched.d \
314	core/sys/posix/semaphore.d core/sys/posix/setjmp.d \
315	core/sys/posix/signal.d core/sys/posix/spawn.d \
316	core/sys/posix/stdc/time.d core/sys/posix/stdio.d \
317	core/sys/posix/stdlib.d core/sys/posix/string.d \
318	core/sys/posix/strings.d core/sys/posix/sys/filio.d \
319	core/sys/posix/sys/ioccom.d core/sys/posix/sys/ioctl.d \
320	core/sys/posix/sys/ipc.d core/sys/posix/sys/mman.d \
321	core/sys/posix/sys/msg.d core/sys/posix/sys/resource.d \
322	core/sys/posix/sys/select.d core/sys/posix/sys/shm.d \
323	core/sys/posix/sys/socket.d core/sys/posix/sys/stat.d \
324	core/sys/posix/sys/statvfs.d core/sys/posix/sys/time.d \
325	core/sys/posix/sys/ttycom.d core/sys/posix/sys/types.d \
326	core/sys/posix/sys/uio.d core/sys/posix/sys/un.d \
327	core/sys/posix/sys/utsname.d core/sys/posix/sys/wait.d \
328	core/sys/posix/syslog.d core/sys/posix/termios.d core/sys/posix/time.d \
329	core/sys/posix/ucontext.d core/sys/posix/unistd.d \
330	core/sys/posix/utime.d
331
332DRUNTIME_DSOURCES_SOLARIS = core/sys/solaris/dlfcn.d \
333	core/sys/solaris/elf.d core/sys/solaris/err.d \
334	core/sys/solaris/execinfo.d core/sys/solaris/libelf.d \
335	core/sys/solaris/link.d core/sys/solaris/stdlib.d \
336	core/sys/solaris/sys/elf.d core/sys/solaris/sys/elf_386.d \
337	core/sys/solaris/sys/elf_SPARC.d core/sys/solaris/sys/elf_amd64.d \
338	core/sys/solaris/sys/elf_notes.d core/sys/solaris/sys/elftypes.d \
339	core/sys/solaris/sys/link.d core/sys/solaris/sys/priocntl.d \
340	core/sys/solaris/sys/procset.d core/sys/solaris/sys/types.d \
341	core/sys/solaris/time.d
342
343DRUNTIME_DSOURCES_WINDOWS = core/sys/windows/accctrl.d \
344	core/sys/windows/aclapi.d core/sys/windows/aclui.d \
345	core/sys/windows/basetsd.d core/sys/windows/basetyps.d \
346	core/sys/windows/cderr.d core/sys/windows/cguid.d \
347	core/sys/windows/com.d core/sys/windows/comcat.d \
348	core/sys/windows/commctrl.d core/sys/windows/commdlg.d \
349	core/sys/windows/core.d core/sys/windows/cpl.d \
350	core/sys/windows/cplext.d core/sys/windows/custcntl.d \
351	core/sys/windows/dbghelp.d core/sys/windows/dbghelp_types.d \
352	core/sys/windows/dbt.d core/sys/windows/dde.d core/sys/windows/ddeml.d \
353	core/sys/windows/dhcpcsdk.d core/sys/windows/dlgs.d \
354	core/sys/windows/dll.d core/sys/windows/docobj.d \
355	core/sys/windows/errorrep.d core/sys/windows/exdisp.d \
356	core/sys/windows/exdispid.d core/sys/windows/httpext.d \
357	core/sys/windows/idispids.d core/sys/windows/imagehlp.d \
358	core/sys/windows/imm.d core/sys/windows/intshcut.d \
359	core/sys/windows/ipexport.d core/sys/windows/iphlpapi.d \
360	core/sys/windows/ipifcons.d core/sys/windows/iprtrmib.d \
361	core/sys/windows/iptypes.d core/sys/windows/isguids.d \
362	core/sys/windows/lm.d core/sys/windows/lmaccess.d \
363	core/sys/windows/lmalert.d core/sys/windows/lmapibuf.d \
364	core/sys/windows/lmat.d core/sys/windows/lmaudit.d \
365	core/sys/windows/lmbrowsr.d core/sys/windows/lmchdev.d \
366	core/sys/windows/lmconfig.d core/sys/windows/lmcons.d \
367	core/sys/windows/lmerr.d core/sys/windows/lmerrlog.d \
368	core/sys/windows/lmmsg.d core/sys/windows/lmremutl.d \
369	core/sys/windows/lmrepl.d core/sys/windows/lmserver.d \
370	core/sys/windows/lmshare.d core/sys/windows/lmsname.d \
371	core/sys/windows/lmstats.d core/sys/windows/lmsvc.d \
372	core/sys/windows/lmuse.d core/sys/windows/lmuseflg.d \
373	core/sys/windows/lmwksta.d core/sys/windows/lzexpand.d \
374	core/sys/windows/mapi.d core/sys/windows/mciavi.d \
375	core/sys/windows/mcx.d core/sys/windows/mgmtapi.d \
376	core/sys/windows/mmsystem.d core/sys/windows/msacm.d \
377	core/sys/windows/mshtml.d core/sys/windows/mswsock.d \
378	core/sys/windows/nb30.d core/sys/windows/nddeapi.d \
379	core/sys/windows/nspapi.d core/sys/windows/ntdef.d \
380	core/sys/windows/ntdll.d core/sys/windows/ntldap.d \
381	core/sys/windows/ntsecapi.d core/sys/windows/ntsecpkg.d \
382	core/sys/windows/oaidl.d core/sys/windows/objbase.d \
383	core/sys/windows/objfwd.d core/sys/windows/objidl.d \
384	core/sys/windows/objsafe.d core/sys/windows/ocidl.d \
385	core/sys/windows/odbcinst.d core/sys/windows/ole.d \
386	core/sys/windows/ole2.d core/sys/windows/ole2ver.d \
387	core/sys/windows/oleacc.d core/sys/windows/oleauto.d \
388	core/sys/windows/olectl.d core/sys/windows/olectlid.d \
389	core/sys/windows/oledlg.d core/sys/windows/oleidl.d \
390	core/sys/windows/pbt.d core/sys/windows/powrprof.d \
391	core/sys/windows/prsht.d core/sys/windows/psapi.d \
392	core/sys/windows/rapi.d core/sys/windows/ras.d \
393	core/sys/windows/rasdlg.d core/sys/windows/raserror.d \
394	core/sys/windows/rassapi.d core/sys/windows/reason.d \
395	core/sys/windows/regstr.d core/sys/windows/richedit.d \
396	core/sys/windows/richole.d core/sys/windows/rpc.d \
397	core/sys/windows/rpcdce.d core/sys/windows/rpcdce2.d \
398	core/sys/windows/rpcdcep.d core/sys/windows/rpcndr.d \
399	core/sys/windows/rpcnsi.d core/sys/windows/rpcnsip.d \
400	core/sys/windows/rpcnterr.d core/sys/windows/schannel.d \
401	core/sys/windows/sdkddkver.d core/sys/windows/secext.d \
402	core/sys/windows/security.d core/sys/windows/servprov.d \
403	core/sys/windows/setupapi.d core/sys/windows/shellapi.d \
404	core/sys/windows/shldisp.d core/sys/windows/shlguid.d \
405	core/sys/windows/shlobj.d core/sys/windows/shlwapi.d \
406	core/sys/windows/snmp.d core/sys/windows/sql.d \
407	core/sys/windows/sqlext.d core/sys/windows/sqltypes.d \
408	core/sys/windows/sqlucode.d core/sys/windows/sspi.d \
409	core/sys/windows/stacktrace.d core/sys/windows/stat.d \
410	core/sys/windows/stdc/malloc.d core/sys/windows/stdc/time.d \
411	core/sys/windows/subauth.d core/sys/windows/threadaux.d \
412	core/sys/windows/tlhelp32.d core/sys/windows/tmschema.d \
413	core/sys/windows/unknwn.d core/sys/windows/uuid.d \
414	core/sys/windows/vfw.d core/sys/windows/w32api.d \
415	core/sys/windows/winbase.d core/sys/windows/winber.d \
416	core/sys/windows/wincon.d core/sys/windows/wincrypt.d \
417	core/sys/windows/windef.d core/sys/windows/windows.d \
418	core/sys/windows/winerror.d core/sys/windows/wingdi.d \
419	core/sys/windows/winhttp.d core/sys/windows/wininet.d \
420	core/sys/windows/winioctl.d core/sys/windows/winldap.d \
421	core/sys/windows/winnetwk.d core/sys/windows/winnls.d \
422	core/sys/windows/winnt.d core/sys/windows/winperf.d \
423	core/sys/windows/winreg.d core/sys/windows/winsock2.d \
424	core/sys/windows/winspool.d core/sys/windows/winsvc.d \
425	core/sys/windows/winuser.d core/sys/windows/winver.d \
426	core/sys/windows/wtsapi32.d core/sys/windows/wtypes.d
427
428DRUNTIME_DISOURCES = __builtins.di __main.di
429