[MLton-commit] r7365
Wesley Terpstra
wesley at mlton.org
Sat Nov 7 08:32:07 PST 2009
Try another build to solve the mips issue.
----------------------------------------------------------------------
U mlton/trunk/package/debian/changelog
U mlton/trunk/package/debian/control
A mlton/trunk/package/debian/patches/00-fpic-on-mips.patch
D mlton/trunk/package/debian/patches/00-gcc-4.4-mips.patch
U mlton/trunk/package/debian/rules
----------------------------------------------------------------------
Modified: mlton/trunk/package/debian/changelog
===================================================================
--- mlton/trunk/package/debian/changelog 2009-11-07 16:24:24 UTC (rev 7364)
+++ mlton/trunk/package/debian/changelog 2009-11-07 16:32:06 UTC (rev 7365)
@@ -1,3 +1,12 @@
+mlton (20091107) unstable; urgency=low
+
+ * gcc-4.4 miscompiles more than just fpclassify. It is unusable.
+ * gcc-4.1 ICEs so also not an option.
+ * => on mips we must use gcc-4.3, despite an off-by-one bug in branch generation
+ * Using -fPIC to compile changes the assembler enough to get past #552341
+
+ -- Wesley W. Terpstra (Debian) <terpstra at debian.org> Sat, 07 Nov 2009 17:26:11 +0100
+
mlton (20091104) unstable; urgency=low
* Two more regressions disabled on hurd (thread2 and world5)
Modified: mlton/trunk/package/debian/control
===================================================================
--- mlton/trunk/package/debian/control 2009-11-07 16:24:24 UTC (rev 7364)
+++ mlton/trunk/package/debian/control 2009-11-07 16:32:06 UTC (rev 7365)
@@ -2,12 +2,12 @@
Section: devel
Priority: optional
Maintainer: Wesley W. Terpstra (Debian) <terpstra at debian.org>
-Build-Depends: mlton (>= 20070826), gcc-4.4 [mips mipsel], htmldoc, libgmp3-dev (>= 4.0.1), texlive-latex-base, procps, debhelper (>= 7.0.0), cdbs (>= 0.4.52)
+Build-Depends: mlton (>= 20070826), htmldoc, libgmp3-dev (>= 4.0.1), texlive-latex-base, procps, debhelper (>= 7.0.0), cdbs (>= 0.4.52)
Standards-Version: 3.8.3.0
Package: mlton
Architecture: alpha amd64 hppa hurd-i386 i386 ia64 kfreebsd-i386 kfreebsd-amd64 mips mipsel powerpc s390 sparc
-Depends: ${shlibs:Depends}, ${misc:Depends}, gcc, gcc-4.4 [mips mipsel], libc6-dev, libgmp3-dev (>= 4.0.1)
+Depends: ${shlibs:Depends}, ${misc:Depends}, gcc, libc6-dev, libgmp3-dev (>= 4.0.1)
Homepage: http://mlton.org/
Description: Optimizing compiler for Standard ML
MLton is a whole-program optimizing compiler
Added: mlton/trunk/package/debian/patches/00-fpic-on-mips.patch
===================================================================
--- mlton/trunk/package/debian/patches/00-fpic-on-mips.patch 2009-11-07 16:24:24 UTC (rev 7364)
+++ mlton/trunk/package/debian/patches/00-fpic-on-mips.patch 2009-11-07 16:32:06 UTC (rev 7365)
@@ -0,0 +1,25 @@
+diff -Nur -x '*.orig' -x '*~' mlton/bin/mlton-script mlton.new/bin/mlton-script
+--- mlton/bin/mlton-script 2009-11-07 17:29:05.000000000 +0100
++++ mlton.new/bin/mlton-script 2009-11-07 17:31:43.000000000 +0100
+@@ -115,6 +115,7 @@
+ -target-cc-opt openbsd '-I/usr/local/include' \
+ -target-cc-opt aix '-maix64' \
+ -target-cc-opt ia64 "$ia64hpux -mtune=itanium2" \
++ -target-cc-opt mips '-fPIC' \
+ -target-cc-opt sparc '-m32 -mcpu=v8 -Wa,-xarch=v8plusa' \
+ -target-cc-opt x86 \
+ '-m32
+diff -Nur -x '*.orig' -x '*~' mlton/runtime/Makefile mlton.new/runtime/Makefile
+--- mlton/runtime/Makefile 2009-11-01 18:36:04.000000000 +0100
++++ mlton.new/runtime/Makefile 2009-11-07 17:31:14.000000000 +0100
+@@ -84,6 +84,10 @@
+ AR := ar -X 64 rc
+ endif
+
++ifeq ($(TARGET_ARCH), mips)
++FLAGS += -fPIC
++endif
++
+ ifeq ($(TARGET_ARCH), sparc)
+ FLAGS += -m32 -mcpu=v8 -Wa,-xarch=v8plusa
+ endif
Deleted: mlton/trunk/package/debian/patches/00-gcc-4.4-mips.patch
===================================================================
--- mlton/trunk/package/debian/patches/00-gcc-4.4-mips.patch 2009-11-07 16:24:24 UTC (rev 7364)
+++ mlton/trunk/package/debian/patches/00-gcc-4.4-mips.patch 2009-11-07 16:32:06 UTC (rev 7365)
@@ -1,19 +0,0 @@
-diff -Nur -x '*.orig' -x '*~' mlton/bin/mlton-script mlton.new/bin/mlton-script
---- mlton/bin/mlton-script 2009-11-01 18:37:00.000000000 +0100
-+++ mlton.new/bin/mlton-script 2009-11-01 18:45:26.000000000 +0100
-@@ -7,7 +7,14 @@
- dir=`dirname "$0"`
- lib=`cd "$dir/../lib" && pwd`
- eval `"$lib/platform"`
--gcc='gcc'
-+case "$HOST_ARCH" in
-+mips*)
-+ gcc='gcc-4.4'
-+;;
-+*)
-+ gcc='gcc'
-+;;
-+esac
- case "$HOST_OS" in
- mingw)
- exe='.exe'
Modified: mlton/trunk/package/debian/rules
===================================================================
--- mlton/trunk/package/debian/rules 2009-11-07 16:24:24 UTC (rev 7364)
+++ mlton/trunk/package/debian/rules 2009-11-07 16:32:06 UTC (rev 7365)
@@ -6,14 +6,8 @@
HEAPSIZE := $(shell . debian/heap-size)
-ifeq (,$(findstring mips, $(DEB_HOST_ARCH_CPU)))
-CC := gcc
-else
-CC := gcc-4.4
-endif
-
# MLton compiles optimized, debug, and pic versions on its own.
-DEB_MAKE_INVOKE = $(DEB_MAKE_ENVVARS) make -C $(DEB_BUILDDIR) CC="$(CC) -std=gnu99"
+DEB_MAKE_INVOKE = $(DEB_MAKE_ENVVARS) make -C $(DEB_BUILDDIR)
# The MLton guide is html. Don't compress example .sml files.
DEB_COMPRESS_EXCLUDE = mlton/guide .sml
More information about the MLton-commit
mailing list