8585include ../src/osmodel.mak
8686
8787export OS
88+ BUILD =release
8889
8990ifeq (freebsd,$(OS ) )
9091 SHELL =/usr/local/bin/bash
@@ -100,31 +101,40 @@ export REQUIRED_ARGS=
100101
101102ifeq ($(findstring win,$(OS ) ) ,win)
102103export ARGS =-inline -release -g -O
103- export DMD =../src/dmd.exe
104104export EXE =.exe
105105export OBJ =.obj
106106export DSEP =\\
107107export SEP=$(subst /,\,/)
108-
109- DRUNTIME_PATH =..\..\druntime
110- PHOBOS_PATH =..\..\phobos
111- export DFLAGS =-I$(DRUNTIME_PATH ) \import -I$(PHOBOS_PATH )
112- export LIB =$(PHOBOS_PATH )
113108else
114109export ARGS =-inline -release -g -O -fPIC
115- export DMD =../src/dmd
116110export EXE =
117111export OBJ =.o
118112export DSEP =/
119113export SEP =/
114+ endif
120115
116+ # auto-tester might run the testsuite with a different $(MODEL) than DMD
117+ # has been compiled with. Hence we manually check which binary exists.
118+ ifeq (,$(wildcard ../generated/$(OS ) /$(BUILD ) /64/dmd$(EXE ) ) )
119+ DMD_MODEL =32
120+ else
121+ DMD_MODEL =64
122+ endif
123+ export DMD =../generated/$(OS ) /$(BUILD ) /$(DMD_MODEL ) /dmd$(EXE )
124+
125+ ifeq ($(findstring win,$(OS ) ) ,win)
126+ DRUNTIME_PATH =..\..\druntime
127+ PHOBOS_PATH =..\..\phobos
128+ export DFLAGS =-I$(DRUNTIME_PATH ) \import -I$(PHOBOS_PATH )
129+ export LIB =$(PHOBOS_PATH )
130+ else
121131DRUNTIME_PATH =../../druntime
122132PHOBOS_PATH =../../phobos
123133# link against shared libraries (defaults to true on supported platforms, can be overridden w/ make SHARED=0)
124134SHARED =$(if $(findstring $(OS ) ,linux freebsd) ,1,)
125- DFLAGS =-I$(DRUNTIME_PATH ) /import -I$(PHOBOS_PATH ) -L-L$(PHOBOS_PATH ) /generated/$(OS ) /release /$(MODEL )
135+ DFLAGS =-I$(DRUNTIME_PATH ) /import -I$(PHOBOS_PATH ) -L-L$(PHOBOS_PATH ) /generated/$(OS ) /$( BUILD ) /$(MODEL )
126136ifeq (1,$(SHARED ) )
127- DFLAGS+=-defaultlib =libphobos2.so -L-rpath=$(PHOBOS_PATH ) /generated/$(OS ) /release /$(MODEL )
137+ DFLAGS+=-defaultlib =libphobos2.so -L-rpath=$(PHOBOS_PATH ) /generated/$(OS ) /$( BUILD ) /$(MODEL )
128138endif
129139export DFLAGS
130140endif
0 commit comments