Skip to content
This repository was archived by the owner on Jun 20, 2019. It is now read-only.

Commit 3c220ea

Browse files
committed
Merge pull request #127 from jpf91/noDI
Remove .di file generation in druntime
2 parents be9ebb5 + fdb1090 commit 3c220ea

File tree

2 files changed

+20
-201
lines changed

2 files changed

+20
-201
lines changed

libphobos/libdruntime/Makefile.am

+10-100
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
OUR_CFLAGS=@DEFS@ -I ../ -I $(srcdir)/gcc -I $(srcdir)/../zlib
1919
D_EXTRA_DFLAGS=-nostdinc -pipe -Wno-deprecated -I $(srcdir) -I ./$(host_alias) -I .
2020
ALL_DFLAGS = $(DFLAGS) $(D_EXTRA_DFLAGS) $(MULTIFLAGS)
21-
IMPDIR = import
2221

2322
toolexecdir = $(phobos_toolexecdir)
2423
toolexeclibdir = $(phobos_toolexeclibdir)
@@ -30,27 +29,6 @@ SUFFIXES = .d
3029
%.o : %.d
3130
$(GDC) -o $@ $(ALL_DFLAGS) -c $<
3231

33-
# Used to generate .di headers, now just copy from source.d to import/source.di
34-
$(IMPDIR):
35-
mkdir -p $(IMPDIR)
36-
mkdir -p $(IMPDIR)/core/internal
37-
mkdir -p $(IMPDIR)/core/stdc
38-
mkdir -p $(IMPDIR)/core/sync
39-
mkdir -p $(IMPDIR)/core/sys/freebsd/sys
40-
mkdir -p $(IMPDIR)/core/sys/linux/sys
41-
mkdir -p $(IMPDIR)/core/sys/osx/mach
42-
mkdir -p $(IMPDIR)/core/sys/posix/arpa
43-
mkdir -p $(IMPDIR)/core/sys/posix/net
44-
mkdir -p $(IMPDIR)/core/sys/posix/netinet
45-
mkdir -p $(IMPDIR)/core/sys/posix/sys
46-
mkdir -p $(IMPDIR)/core/sys/windows
47-
mkdir -p $(IMPDIR)/gcc
48-
mkdir -p $(IMPDIR)/gcc/unwind
49-
mkdir -p $(IMPDIR)/gcc/gthreads
50-
51-
$(IMPDIR)/%.di: %.d $(IMPDIR)
52-
cp $< $@
53-
5432
# %.o : %.c
5533
# Use .c.o to override Automake
5634
.c.o:
@@ -132,81 +110,9 @@ RT_WINDOWS_OBJS=core/sys/windows/dbghelp.o core/sys/windows/dll.o \
132110

133111
D_GC_MODULES=@D_GC_MODULES@
134112

135-
# Regardless of OS, all import headers are generated.
136-
CORE_IMPORTS=core/atomic.di core/bitop.di core/checkedint.di core/cpuid.di \
137-
core/demangle.di core/exception.di core/math.di core/memory.di \
138-
core/runtime.di core/simd.di core/thread.di core/time.di \
139-
core/vararg.di \
140-
\
141-
core/internal/traits.di \
142-
\
143-
core/stdc/complex.di core/stdc/config.di core/stdc/ctype.di \
144-
core/stdc/errno.di core/stdc/fenv.di core/stdc/float_.di \
145-
core/stdc/inttypes.di core/stdc/limits.di core/stdc/locale.di \
146-
core/stdc/math.di core/stdc/signal.di core/stdc/stdarg.di \
147-
core/stdc/stddef.di core/stdc/stdint.di core/stdc/stdio.di \
148-
core/stdc/stdlib.di core/stdc/string.di core/stdc/tgmath.di \
149-
core/stdc/time.di core/stdc/wchar_.di core/stdc/wctype.di \
150-
\
151-
core/sync/barrier.di core/sync/condition.di core/sync/config.di \
152-
core/sync/exception.di core/sync/mutex.di core/sync/rwmutex.di \
153-
core/sync/semaphore.di \
154-
\
155-
core/sys/freebsd/dlfcn.di core/sys/freebsd/execinfo.di \
156-
core/sys/freebsd/sys/elf32.di core/sys/freebsd/sys/elf64.di \
157-
core/sys/freebsd/sys/elf_common.di core/sys/freebsd/sys/elf.di \
158-
core/sys/freebsd/sys/event.di core/sys/freebsd/sys/link_elf.di \
159-
\
160-
core/sys/linux/config.di core/sys/linux/dlfcn.di \
161-
core/sys/linux/elf.di core/sys/linux/epoll.di \
162-
core/sys/linux/errno.di core/sys/linux/execinfo.di \
163-
core/sys/linux/link.di core/sys/linux/termios.di \
164-
core/sys/linux/sys/inotify.di core/sys/linux/sys/mman.di \
165-
core/sys/linux/sys/signalfd.di core/sys/linux/sys/xattr.di \
166-
\
167-
core/sys/osx/execinfo.di core/sys/osx/mach/dyld.di \
168-
core/sys/osx/mach/getsect.di core/sys/osx/mach/kern_return.di \
169-
core/sys/osx/mach/loader.di core/sys/osx/mach/port.di \
170-
core/sys/osx/mach/semaphore.di core/sys/osx/mach/thread_act.di \
171-
core/sys/osx/pthread.di \
172-
\
173-
core/sys/posix/arpa/inet.di core/sys/posix/config.di \
174-
core/sys/posix/dirent.di core/sys/posix/dlfcn.di \
175-
core/sys/posix/fcntl.di core/sys/posix/grp.di \
176-
core/sys/posix/inttypes.di core/sys/posix/netdb.di \
177-
core/sys/posix/poll.di core/sys/posix/pthread.di \
178-
core/sys/posix/pwd.di core/sys/posix/sched.di \
179-
core/sys/posix/semaphore.di core/sys/posix/setjmp.di \
180-
core/sys/posix/signal.di core/sys/posix/stdio.di \
181-
core/sys/posix/stdlib.di core/sys/posix/syslog.di \
182-
core/sys/posix/termios.di core/sys/posix/time.di \
183-
core/sys/posix/ucontext.di core/sys/posix/unistd.di \
184-
core/sys/posix/utime.di core/sys/posix/net/if_.di \
185-
core/sys/posix/netinet/in_.di core/sys/posix/netinet/tcp.di \
186-
core/sys/posix/sys/ioctl.di core/sys/posix/sys/ipc.di \
187-
core/sys/posix/sys/mman.di core/sys/posix/sys/resource.di \
188-
core/sys/posix/sys/select.di core/sys/posix/sys/shm.di \
189-
core/sys/posix/sys/socket.di core/sys/posix/sys/stat.di \
190-
core/sys/posix/sys/statvfs.di core/sys/posix/sys/time.di \
191-
core/sys/posix/sys/types.di core/sys/posix/sys/uio.di \
192-
core/sys/posix/sys/un.di core/sys/posix/sys/utsname.di \
193-
core/sys/posix/sys/wait.di \
194-
\
195-
core/sys/windows/dbghelp.di core/sys/windows/dll.di \
196-
core/sys/windows/stacktrace.di core/sys/windows/threadaux.di \
197-
core/sys/windows/windows.di
198-
199-
GCC_IMPORTS=gcc/atomics.di gcc/attribute.di gcc/backtrace.di \
200-
gcc/builtins.di gcc/config.di gcc/libbacktrace.di \
201-
gcc/unwind/arm.di gcc/unwind/generic.di gcc/unwind/package.di \
202-
gcc/unwind/pe.di gcc/gthreads/package.di gcc/gthreads/posix.di \
203-
gcc/gthreads/single.di gcc/gthreads/win32.di
204-
205113
ALL_DRUNTIME_OBJS = $(DRUNTIME_OBJS) $(CORE_OBJS) $(D_GC_MODULES) $(GCC_OBJS)
206114

207-
libgdruntime.a : $(ALL_DRUNTIME_OBJS) \
208-
$(subst core/,$(IMPDIR)/core/,$(CORE_IMPORTS)) \
209-
$(subst gcc/,$(IMPDIR)/gcc/,$(GCC_IMPORTS))
115+
libgdruntime.a : $(ALL_DRUNTIME_OBJS)
210116
if BACKTRACE_SUPPORTED
211117
cp -f $(LIBBACKTRACE_LIB) $@
212118
$(AR) -q $@ $(ALL_DRUNTIME_OBJS)
@@ -248,23 +154,27 @@ install-data-local: libgdruntime.a
248154
core/sys/posix/netinet core/sys/posix/sys \
249155
core/sys/windows; do \
250156
$(mkinstalldirs) $(DESTDIR)$(gdc_include_dir)/$$i; \
251-
for f in $(IMPDIR)/$$i/*.di; do \
157+
for f in $(srcdir)/$$i/*.d; do \
252158
$(INSTALL_HEADER) $$f $(DESTDIR)$(gdc_include_dir)/$$i; \
253159
done; \
254160
done
255161
for i in gcc gcc/unwind gcc/gthreads; do \
256162
$(mkinstalldirs) $(DESTDIR)$(gdc_include_dir)/$$i; \
257-
for f in $(IMPDIR)/$$i/*.di; do \
163+
for f in $(srcdir)/$$i/*.d; do \
164+
$(INSTALL_HEADER) $$f $(DESTDIR)$(gdc_include_dir)/$$i; \
165+
done; \
166+
done
167+
# Install files build generated by configure script
168+
for i in gcc; do \
169+
$(mkinstalldirs) $(DESTDIR)$(gdc_include_dir)/$$i; \
170+
for f in $$i/*.d; do \
258171
$(INSTALL_HEADER) $$f $(DESTDIR)$(gdc_include_dir)/$$i; \
259172
done; \
260173
done
261174

262175
clean-local:
263176
rm -f $(ALL_DRUNTIME_OBJS)
264177
rm -f $(ALL_DRUNTIME_OBJS:.o=.t.o)
265-
rm -f $(CORE_IMPORTS)
266-
rm -f $(GCC_IMPORTS)
267-
rm -rf $(IMPDIR)
268178
rm -f unittest.o
269179
rm -f unittest$(EXEEXT)
270180
rm -f libgdruntime.a

libphobos/libdruntime/Makefile.in

+10-101
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,6 @@ top_srcdir = @top_srcdir@
214214
OUR_CFLAGS = @DEFS@ -I ../ -I $(srcdir)/gcc -I $(srcdir)/../zlib
215215
D_EXTRA_DFLAGS = -nostdinc -pipe -Wno-deprecated -I $(srcdir) -I ./$(host_alias) -I .
216216
ALL_DFLAGS = $(DFLAGS) $(D_EXTRA_DFLAGS) $(MULTIFLAGS)
217-
IMPDIR = import
218217
toolexecdir = $(phobos_toolexecdir)
219218
toolexeclibdir = $(phobos_toolexeclibdir)
220219
SUFFIXES = .d
@@ -275,77 +274,6 @@ RT_WINDOWS_OBJS = core/sys/windows/dbghelp.o core/sys/windows/dll.o \
275274
core/sys/windows/stacktrace.o core/sys/windows/threadaux.o \
276275
core/sys/windows/windows.o
277276

278-
279-
# Regardless of OS, all import headers are generated.
280-
CORE_IMPORTS = core/atomic.di core/bitop.di core/checkedint.di core/cpuid.di \
281-
core/demangle.di core/exception.di core/math.di core/memory.di \
282-
core/runtime.di core/simd.di core/thread.di core/time.di \
283-
core/vararg.di \
284-
\
285-
core/internal/traits.di \
286-
\
287-
core/stdc/complex.di core/stdc/config.di core/stdc/ctype.di \
288-
core/stdc/errno.di core/stdc/fenv.di core/stdc/float_.di \
289-
core/stdc/inttypes.di core/stdc/limits.di core/stdc/locale.di \
290-
core/stdc/math.di core/stdc/signal.di core/stdc/stdarg.di \
291-
core/stdc/stddef.di core/stdc/stdint.di core/stdc/stdio.di \
292-
core/stdc/stdlib.di core/stdc/string.di core/stdc/tgmath.di \
293-
core/stdc/time.di core/stdc/wchar_.di core/stdc/wctype.di \
294-
\
295-
core/sync/barrier.di core/sync/condition.di core/sync/config.di \
296-
core/sync/exception.di core/sync/mutex.di core/sync/rwmutex.di \
297-
core/sync/semaphore.di \
298-
\
299-
core/sys/freebsd/dlfcn.di core/sys/freebsd/execinfo.di \
300-
core/sys/freebsd/sys/elf32.di core/sys/freebsd/sys/elf64.di \
301-
core/sys/freebsd/sys/elf_common.di core/sys/freebsd/sys/elf.di \
302-
core/sys/freebsd/sys/event.di core/sys/freebsd/sys/link_elf.di \
303-
\
304-
core/sys/linux/config.di core/sys/linux/dlfcn.di \
305-
core/sys/linux/elf.di core/sys/linux/epoll.di \
306-
core/sys/linux/errno.di core/sys/linux/execinfo.di \
307-
core/sys/linux/link.di core/sys/linux/termios.di \
308-
core/sys/linux/sys/inotify.di core/sys/linux/sys/mman.di \
309-
core/sys/linux/sys/signalfd.di core/sys/linux/sys/xattr.di \
310-
\
311-
core/sys/osx/execinfo.di core/sys/osx/mach/dyld.di \
312-
core/sys/osx/mach/getsect.di core/sys/osx/mach/kern_return.di \
313-
core/sys/osx/mach/loader.di core/sys/osx/mach/port.di \
314-
core/sys/osx/mach/semaphore.di core/sys/osx/mach/thread_act.di \
315-
core/sys/osx/pthread.di \
316-
\
317-
core/sys/posix/arpa/inet.di core/sys/posix/config.di \
318-
core/sys/posix/dirent.di core/sys/posix/dlfcn.di \
319-
core/sys/posix/fcntl.di core/sys/posix/grp.di \
320-
core/sys/posix/inttypes.di core/sys/posix/netdb.di \
321-
core/sys/posix/poll.di core/sys/posix/pthread.di \
322-
core/sys/posix/pwd.di core/sys/posix/sched.di \
323-
core/sys/posix/semaphore.di core/sys/posix/setjmp.di \
324-
core/sys/posix/signal.di core/sys/posix/stdio.di \
325-
core/sys/posix/stdlib.di core/sys/posix/syslog.di \
326-
core/sys/posix/termios.di core/sys/posix/time.di \
327-
core/sys/posix/ucontext.di core/sys/posix/unistd.di \
328-
core/sys/posix/utime.di core/sys/posix/net/if_.di \
329-
core/sys/posix/netinet/in_.di core/sys/posix/netinet/tcp.di \
330-
core/sys/posix/sys/ioctl.di core/sys/posix/sys/ipc.di \
331-
core/sys/posix/sys/mman.di core/sys/posix/sys/resource.di \
332-
core/sys/posix/sys/select.di core/sys/posix/sys/shm.di \
333-
core/sys/posix/sys/socket.di core/sys/posix/sys/stat.di \
334-
core/sys/posix/sys/statvfs.di core/sys/posix/sys/time.di \
335-
core/sys/posix/sys/types.di core/sys/posix/sys/uio.di \
336-
core/sys/posix/sys/un.di core/sys/posix/sys/utsname.di \
337-
core/sys/posix/sys/wait.di \
338-
\
339-
core/sys/windows/dbghelp.di core/sys/windows/dll.di \
340-
core/sys/windows/stacktrace.di core/sys/windows/threadaux.di \
341-
core/sys/windows/windows.di
342-
343-
GCC_IMPORTS = gcc/atomics.di gcc/attribute.di gcc/backtrace.di \
344-
gcc/builtins.di gcc/config.di gcc/libbacktrace.di \
345-
gcc/unwind/arm.di gcc/unwind/generic.di gcc/unwind/package.di \
346-
gcc/unwind/pe.di gcc/gthreads/package.di gcc/gthreads/posix.di \
347-
gcc/gthreads/single.di gcc/gthreads/win32.di
348-
349277
ALL_DRUNTIME_OBJS = $(DRUNTIME_OBJS) $(CORE_OBJS) $(D_GC_MODULES) $(GCC_OBJS)
350278

351279
# Work around what appears to be a GNU make bug handling MAKEFLAGS
@@ -518,27 +446,6 @@ all-local: libgdruntime.a
518446
%.o : %.d
519447
$(GDC) -o $@ $(ALL_DFLAGS) -c $<
520448

521-
# Used to generate .di headers, now just copy from source.d to import/source.di
522-
$(IMPDIR):
523-
mkdir -p $(IMPDIR)
524-
mkdir -p $(IMPDIR)/core/internal
525-
mkdir -p $(IMPDIR)/core/stdc
526-
mkdir -p $(IMPDIR)/core/sync
527-
mkdir -p $(IMPDIR)/core/sys/freebsd/sys
528-
mkdir -p $(IMPDIR)/core/sys/linux/sys
529-
mkdir -p $(IMPDIR)/core/sys/osx/mach
530-
mkdir -p $(IMPDIR)/core/sys/posix/arpa
531-
mkdir -p $(IMPDIR)/core/sys/posix/net
532-
mkdir -p $(IMPDIR)/core/sys/posix/netinet
533-
mkdir -p $(IMPDIR)/core/sys/posix/sys
534-
mkdir -p $(IMPDIR)/core/sys/windows
535-
mkdir -p $(IMPDIR)/gcc
536-
mkdir -p $(IMPDIR)/gcc/unwind
537-
mkdir -p $(IMPDIR)/gcc/gthreads
538-
539-
$(IMPDIR)/%.di: %.d $(IMPDIR)
540-
cp $< $@
541-
542449
# %.o : %.c
543450
# Use .c.o to override Automake
544451
.c.o:
@@ -553,9 +460,7 @@ $(IMPDIR)/%.di: %.d $(IMPDIR)
553460
%.t.o : %.o
554461
cp $< $@
555462

556-
libgdruntime.a : $(ALL_DRUNTIME_OBJS) \
557-
$(subst core/,$(IMPDIR)/core/,$(CORE_IMPORTS)) \
558-
$(subst gcc/,$(IMPDIR)/gcc/,$(GCC_IMPORTS))
463+
libgdruntime.a : $(ALL_DRUNTIME_OBJS)
559464
@BACKTRACE_SUPPORTED_TRUE@ cp -f $(LIBBACKTRACE_LIB) $@
560465
@BACKTRACE_SUPPORTED_TRUE@ $(AR) -q $@ $(ALL_DRUNTIME_OBJS)
561466
@BACKTRACE_SUPPORTED_FALSE@ $(AR) -r $@ $(ALL_DRUNTIME_OBJS)
@@ -591,23 +496,27 @@ install-data-local: libgdruntime.a
591496
core/sys/posix/netinet core/sys/posix/sys \
592497
core/sys/windows; do \
593498
$(mkinstalldirs) $(DESTDIR)$(gdc_include_dir)/$$i; \
594-
for f in $(IMPDIR)/$$i/*.di; do \
499+
for f in $(srcdir)/$$i/*.d; do \
595500
$(INSTALL_HEADER) $$f $(DESTDIR)$(gdc_include_dir)/$$i; \
596501
done; \
597502
done
598503
for i in gcc gcc/unwind gcc/gthreads; do \
599504
$(mkinstalldirs) $(DESTDIR)$(gdc_include_dir)/$$i; \
600-
for f in $(IMPDIR)/$$i/*.di; do \
505+
for f in $(srcdir)/$$i/*.d; do \
506+
$(INSTALL_HEADER) $$f $(DESTDIR)$(gdc_include_dir)/$$i; \
507+
done; \
508+
done
509+
# Install files build generated by configure script
510+
for i in gcc; do \
511+
$(mkinstalldirs) $(DESTDIR)$(gdc_include_dir)/$$i; \
512+
for f in $$i/*.d; do \
601513
$(INSTALL_HEADER) $$f $(DESTDIR)$(gdc_include_dir)/$$i; \
602514
done; \
603515
done
604516

605517
clean-local:
606518
rm -f $(ALL_DRUNTIME_OBJS)
607519
rm -f $(ALL_DRUNTIME_OBJS:.o=.t.o)
608-
rm -f $(CORE_IMPORTS)
609-
rm -f $(GCC_IMPORTS)
610-
rm -rf $(IMPDIR)
611520
rm -f unittest.o
612521
rm -f unittest$(EXEEXT)
613522
rm -f libgdruntime.a

0 commit comments

Comments
 (0)