On Friday, 30 December 2011 at 00:34:13 UTC, Trass3r wrote:
The reason is druntime doesn't build separate libs like phobos
does.
A quick and dirty patch would be:
diff --git a/posix.mak b/posix.mak
index 5fd7fee..9ed2004 100644
--- a/posix.mak
+++ b/posix.mak
@@ -32,9 +32,9 @@ UDFLAGS=-m$(MODEL) -O -release -nofloat -w -d
-Isrc -Iimport -property
CFLAGS=-m$(MODEL) -O
-OBJDIR=obj
+OBJDIR=obj/$(MODEL)
DRUNTIME_BASE=druntime
-DRUNTIME=lib/lib$(DRUNTIME_BASE).a
+DRUNTIME=lib/$(MODEL)/lib$(DRUNTIME_BASE).a
DOCFMT=
I've been using a similar patch for a while, originally from
https://bugs.gentoo.org/show_bug.cgi?id=355527 but less of those
changes are needed now so it's been stripped down a lot. Would be
nice to have this upstream so a proper multilib d toolchain can
be built out of the box
--- a/src/druntime/posix.mak 2011-06-25 01:39:28.000000000 +0100
+++ b/src/druntime/posix.mak 2011-07-13 16:27:21.307999841 +0100
@@ -25,16 +25,16 @@
DOCDIR=doc
IMPDIR=import
-MODEL=32
+MODEL?=32
DFLAGS=-m$(MODEL) -O -release -inline -nofloat -w -d -Isrc
-Iimport -property
UDFLAGS=-m$(MODEL) -O -release -nofloat -w -d -Isrc -Iimport
-property
CFLAGS=-m$(MODEL) -O
-OBJDIR=obj
+OBJDIR=obj$(MODEL)
DRUNTIME_BASE=druntime
-DRUNTIME=lib/lib$(DRUNTIME_BASE).a
+DRUNTIME=lib$(MODEL)/lib$(DRUNTIME_BASE).a
DOCFMT=
--- a/src/phobos/posix.mak 2011-07-10 21:19:30.000000000 +0100
+++ b/src/phobos/posix.mak 2011-07-13 16:27:11.585999804 +0100
@@ -75,7 +75,7 @@
# Set DRUNTIME name and full path
ifeq (,$(findstring win,$(OS)))
- DRUNTIME = $(DRUNTIME_PATH)/lib/libdruntime.a
+ DRUNTIME = $(DRUNTIME_PATH)/lib$(MODEL)/libdruntime.a
else
DRUNTIME = $(DRUNTIME_PATH)/lib/druntime.lib
endif