Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
186 changes: 186 additions & 0 deletions dip1000.mak
Original file line number Diff line number Diff line change
@@ -0,0 +1,186 @@
# Module-specific compiler switches (needed for the -dip1000 transition)
# This file can be removed once the -dip1000 transition is complete
#etc/
aa[etc.c.curl]=-dip1000
aa[etc.c.sqlite3]=-dip1000
aa[etc.c.zlib]=-dip1000

aa[etc.c.odbc.sql]=-dip1000
aa[etc.c.odbc.sqlext]=-dip1000
aa[etc.c.odbc.sqltypes]=-dip1000
aa[etc.c.odbc.sqlucode]=-dip1000

#std/
aa[std.array]=-dip1000
aa[std.ascii]=-dip1000
aa[std.base64]=-dip1000
aa[std.bigint]=-dip1000
aa[std.bitmanip]=-dip1000 # merged https://github.com/dlang/phobos/pull/6174
aa[std.compiler]=-dip1000
aa[std.complex]=-dip1000
aa[std.concurrency]=-dip1000
aa[std.conv]=-dip25 # errors from std.typecons
aa[std.csv]=-dip1000
aa[std.demangle]=-dip1000
aa[std.encoding]=-dip1000
aa[std.exception]=-dip25 # DROP: depends on https://issues.dlang.org/show_bug.cgi?id=18478 fixed
aa[std.file]=-dip25 # probably already fixed (std.uni); currently: undefined symbol pure nothrow @nogc return @safe std.uni.SliceOverIndexed!(std.uni.Grapheme).SliceOverIndexed std.uni.SliceOverIndexed!(std.uni.Grapheme).SliceOverIndexed.opSlice()
aa[std.format]=-dip25 # @system function std.range.primitives.put
aa[std.functional]=-dip25 # DROP: cannot call @system function std.functional.__unittest_L1216_C7.memoize!(pickFirst).memoize
aa[std.getopt]=-dip1000
aa[std.json]=-dip1000
aa[std.math]=-dip1000
aa[std.mathspecial]=-dip1000
aa[std.meta]=-dip1000
aa[std.mmfile]=-dip1000
aa[std.numeric]=-dip1000
aa[std.outbuffer]=-dip25 # DROP: cannot call @system function std.outbuffer.OutBuffer.writef!(char, int).writef
aa[std.parallelism]=-dip1000
aa[std.path]=-dip25 # overhaul https://github.com/dlang/phobos/pull/6203; TODO include (if not merged already) https://github.com/dlang/phobos/pull/5045 in a fix for std.path, thus forgotten 5045 could be closed then
aa[std.process]=-dip1000
aa[std.random]=-dip1000
aa[std.signals]=-dip1000
aa[std.socket]=-dip25 # depends on https://github.com/dlang/phobos/pull/6204 merged, which will be at least deferred or possibly rejected (deprecation process required due to changed class Socket)
aa[std.stdint]=-dip1000
aa[std.stdio]=-dip25 # TODO
aa[std.string]=-dip1000
aa[std.system]=-dip1000
aa[std.traits]=-dip1000
aa[std.typecons]=-dip25 # cannot call @system function std.format.formattedWrite!(Appender!string, char, Nullable!int)
aa[std.typetuple]=-dip1000
aa[std.uni]=-dip1000 # merged https://github.com/dlang/phobos/pull/6294, https://github.com/dlang/phobos/pull/6041 (see also TODO-list there); supersedes/includes https://github.com/dlang/phobos/pull/5045; see also https://github.com/dlang/phobos/pull/6104 for improvements proposed by Seb
aa[std.uri]=-dip1000
aa[std.utf]=-dip1000 # for me (carblue) std.utf is -dip1000 compilable even without applying https://github.com/dlang/phobos/pull/5915, i.e. I don't observe a depends on (?); after applying PR 5915 it's still dip1000
aa[std.uuid]=-dip1000
aa[std.variant]=-dip1000
aa[std.xml]=-dip1000
aa[std.zip]=-dip1000
aa[std.zlib]=-dip1000

aa[std.algorithm.comparison]=-dip1000
aa[std.algorithm.internal]=-dip1000
aa[std.algorithm.iteration]=-dip25 # WIP_carblue
aa[std.algorithm.mutation]=-dip25 # depends on std.container.slist (https://github.com/dlang/phobos/pull/6295)
aa[std.algorithm.package]=-dip1000
aa[std.algorithm.searching]=-dip25 # depends on https://github.com/dlang/phobos/pull/6246 merged and std.algorithm.comparison fixed
aa[std.algorithm.setops]=-dip1000
aa[std.algorithm.sorting]=-dip25 # i.a. depends on std.algorithm.searching? and a fix for writefln

aa[std.c.fenv]=-dip1000
aa[std.c.locale]=-dip1000
aa[std.c.math]=-dip1000
aa[std.c.process]=-dip1000
aa[std.c.stdarg]=-dip1000
aa[std.c.stddef]=-dip1000
aa[std.c.stdio]=-dip1000
aa[std.c.stdlib]=-dip1000
aa[std.c.string]=-dip1000
aa[std.c.time]=-dip1000
aa[std.c.wcharh]=-dip1000
aa[std.c.freebsd.socket]=-dip1000
aa[std.c.linux.linux]=-dip1000
aa[std.c.linux.linuxextern]=-dip1000
aa[std.c.linux.pthread]=-dip1000
aa[std.c.linux.socket]=-dip1000
aa[std.c.linux.termios]=-dip1000
aa[std.c.linux.tipc]=-dip1000
aa[std.c.osx.socket]=-dip1000
aa[std.c.windows.com]=-dip1000
aa[std.c.windows.stat]=-dip1000
aa[std.c.windows.windows]=-dip1000
aa[std.c.windows.winsock]=-dip1000

aa[std.container.array]=-dip1000
aa[std.container.binaryheap]=-dip1000
aa[std.container.dlist]=-dip25 # DROP cannot call @system constructor std.container.dlist.DList!int.DList.__ctor!int.this
aa[std.container.package]=-dip1000
aa[std.container.rbtree]=-dip25 # DROP
aa[std.container.slist]=-dip25 # depends on https://github.com/dlang/phobos/pull/6295 merged
aa[std.container.util]=-dip25 # depends on aa[std.container.slist]=-dip1000

aa[std.datetime.date]=-dip25 # depends on a fix for writefln
aa[std.datetime.interval]=-dip1000
aa[std.datetime.package]=-dip1000
aa[std.datetime.stopwatch]=-dip1000
aa[std.datetime.systime]=-dip25 # merged https://github.com/dlang/phobos/pull/6181 ; depends on a fix for writefln
aa[std.datetime.timezone]=-dip1000 # merged https://github.com/dlang/phobos/pull/6183

aa[std.digest.crc]=-dip1000
aa[std.digest.digest]=-dip1000
aa[std.digest.hmac]=-dip1000
aa[std.digest.md]=-dip1000
aa[std.digest.murmurhash]=-dip1000
aa[std.digest.package]=-dip1000
aa[std.digest.ripemd]=-dip1000
aa[std.digest.sha]=-dip1000

aa[std.experimental.all]=-dip1000
aa[std.experimental.checkedint]=-dip1000
aa[std.experimental.typecons]=-dip1000
aa[std.experimental.allocator.common]=-dip1000
aa[std.experimental.allocator.gc_allocator]=-dip1000
aa[std.experimental.allocator.mallocator]=-dip1000
aa[std.experimental.allocator.mmap_allocator]=-dip1000
aa[std.experimental.allocator.package]=-dip25 # Linker errors
aa[std.experimental.allocator.showcase]=-dip1000
aa[std.experimental.allocator.typed]=-dip1000
aa[std.experimental.allocator.building_blocks.affix_allocator]=-dip25 # Linker errors
aa[std.experimental.allocator.building_blocks.allocator_list]=-dip1000
aa[std.experimental.allocator.building_blocks.ascending_page_allocator]=-dip1000
aa[std.experimental.allocator.building_blocks.bitmapped_block]=-dip25 # Linker error
aa[std.experimental.allocator.building_blocks.bucketizer]=-dip25 # Linker errors
aa[std.experimental.allocator.building_blocks.fallback_allocator]=-dip25 # Linker errors
aa[std.experimental.allocator.building_blocks.free_list]=-dip1000
aa[std.experimental.allocator.building_blocks.free_tree]=-dip1000
aa[std.experimental.allocator.building_blocks.kernighan_ritchie]=-dip1000
aa[std.experimental.allocator.building_blocks.null_allocator]=-dip1000
aa[std.experimental.allocator.building_blocks.package]=-dip1000
aa[std.experimental.allocator.building_blocks.quantizer]=-dip1000
aa[std.experimental.allocator.building_blocks.region]=-dip25 # Linker errors
aa[std.experimental.allocator.building_blocks.scoped_allocator]=-dip1000
aa[std.experimental.allocator.building_blocks.segregator]=-dip25 # Linker errors
aa[std.experimental.allocator.building_blocks.stats_collector]=-dip1000
aa[std.experimental.logger.core]=-dip1000 # merged https://github.com/dlang/phobos/pull/6266
aa[std.experimental.logger.filelogger]=-dip25 # merged https://github.com/dlang/phobos/pull/6266; depends on https://github.com/dlang/phobos/pull/5915 ? and a fix for: std.format.formattedWrite
aa[std.experimental.logger.multilogger]=-dip1000# merged https://github.com/dlang/phobos/pull/6266
aa[std.experimental.logger.nulllogger]=-dip1000 # merged https://github.com/dlang/phobos/pull/6266
aa[std.experimental.logger.package]=-dip1000

aa[std.internal.cstring]=-dip1000
aa[std.internal.scopebuffer]=-dip1000
aa[std.internal.unicode_comp]=-dip1000
aa[std.internal.unicode_decomp]=-dip1000
aa[std.internal.unicode_grapheme]=-dip1000
aa[std.internal.unicode_norm]=-dip1000
aa[std.internal.unicode_tables]=-dip1000
aa[std.internal.digest.sha_SSSE3]=-dip1000
aa[std.internal.math.biguintcore]=-dip1000
aa[std.internal.math.biguintnoasm]=-dip1000
aa[std.internal.math.biguintx86]=-dip1000
aa[std.internal.math.errorfunction]=-dip1000
aa[std.internal.math.gammafunction]=-dip1000
aa[std.internal.test.dummyrange]=-dip1000
aa[std.internal.test.range]=-dip1000
aa[std.internal.test.uda]=-dip1000
aa[std.internal.windows.advapi32]=-dip1000

aa[std.net.curl]=-dip1000 # TODO have a look into open https://github.com/dlang/phobos/pull/5052: std.net.curl: fix for -dip1000
aa[std.net.isemail]=-dip1000

aa[std.range.interfaces]=-dip1000
aa[std.range.package]=-dip25 # i.a. depends on https://github.com/dlang/phobos/pull/5915 ?
aa[std.range.primitives]=-dip1000

aa[std.regex.package]=-dip1000
aa[std.regex.internal.backtracking]=-dip1000
aa[std.regex.internal.generator]=-dip1000
aa[std.regex.internal.ir]=-dip1000
aa[std.regex.internal.kickstart]=-dip1000
aa[std.regex.internal.parser]=-dip1000
aa[std.regex.internal.tests2]=-dip1000
aa[std.regex.internal.tests]=-dip25 # i.a. depends on https://github.com/dlang/phobos/pull/5915 ? and a fix for writeln
aa[std.regex.internal.thompson]=-dip1000

aa[std.windows.charset]=-dip1000
aa[std.windows.registry]=-dip1000
aa[std.windows.syserror]=-dip1000
6 changes: 4 additions & 2 deletions posix.mak
Original file line number Diff line number Diff line change
Expand Up @@ -341,12 +341,14 @@ endif
$(addprefix $(ROOT)/unittest/,$(DISABLED_TESTS)) :
@echo Testing $@ - disabled

include dip1000.mak

UT_D_OBJS:=$(addprefix $(ROOT)/unittest/,$(addsuffix .o,$(D_MODULES)))
# need to recompile all unittest objects whenever sth. changes
$(UT_D_OBJS): $(ALL_D_FILES)
$(UT_D_OBJS): $(ROOT)/unittest/%.o: %.d
@mkdir -p $(dir $@)
$(DMD) $(DFLAGS) $(UDFLAGS) -c -of$@ $<
$(DMD) $(DFLAGS) $(UDFLAGS) $(aa[$(subst /,.,$(basename $<))]) -c -of$@ $<

ifneq (1,$(SHARED))

Expand Down Expand Up @@ -383,7 +385,7 @@ unittest/%.run : $(ROOT)/unittest/test_runner
%.test : %.d $(LIB)
T=`mktemp -d /tmp/.dmd-run-test.XXXXXX` && \
( \
$(DMD) -od$$T $(DFLAGS) -main $(UDFLAGS) $(LIB) -defaultlib= -debuglib= $(LINKDL) -cov -run $< ; \
$(DMD) -od$$T $(DFLAGS) $(aa[$(subst /,.,$(basename $<))]) -main $(UDFLAGS) $(LIB) -defaultlib= -debuglib= $(LINKDL) -cov -run $< ; \
RET=$$? ; rm -rf $$T ; exit $$RET \
)

Expand Down