[MLton-commit] r7206
Wesley Terpstra
wesley at mlton.org
Sat Jul 4 09:55:27 PDT 2009
Fix packaging issues for Windows 7 and include 64-bit support.
----------------------------------------------------------------------
U mlton/trunk/package/mingw/Makefile
A mlton/trunk/package/mingw/dl/gmp64.get
A mlton/trunk/package/mingw/dl/mingw64.get
A mlton/trunk/package/mingw/dl/wget.get
U mlton/trunk/package/mingw/mlton.bat
U mlton/trunk/package/mingw/mlton.wxs
U mlton/trunk/package/mingw/msys.bat
----------------------------------------------------------------------
Modified: mlton/trunk/package/mingw/Makefile
===================================================================
--- mlton/trunk/package/mingw/Makefile 2009-07-04 16:42:02 UTC (rev 7205)
+++ mlton/trunk/package/mingw/Makefile 2009-07-04 16:55:26 UTC (rev 7206)
@@ -1,5 +1,5 @@
MLTON=../../build/bin/mlton
-PKG=self dbg runtime w32api binutils gcc gmp msys gdb dlfcn
+PKG=self runtime w32api binutils gcc gmp msys gdb dlfcn wget self64 gmp64 mingw64
PKG_LST=$(patsubst %,%.lst,$(PKG))
PKG_WXS=$(patsubst %,%.wxs,$(PKG))
@@ -21,14 +21,29 @@
rm -rf staging
$(MAKE) -C ../.. PREFIX= install
mv ../../install staging
- cd staging; find * -type f ! -name *-gdb.a > ../$@.tmp
+ rm staging/lib/mlton/self/*-gdb.a
+ cd staging; find * -type f > ../$@.tmp
mv $@.tmp $@
-dbg.lst: self.lst
- cd staging; find * -type f -name *-gdb.a > ../$@.tmp
+self64.lst: self.lst
+ rm -rf ../../runtime.x64
+ cp -a ../../runtime ../../runtime.x64
+ $(MAKE) -C ../../runtime.x64 TARGET=x86_64-w64-mingw32 TARGET_ARCH=amd64 TARGET_OS=mingw clean all
+ mkdir -p staging/lib/mlton/sml/basis/config/c/amd64-mingw
+ cp ../../runtime.x64/gen/c-types.sml staging/lib/mlton/sml/basis/config/c/amd64-mingw
+ mkdir -p staging/lib/mlton/x86_64-w64-mingw32/include
+ cp ../../runtime.x64/gen/c-types.h staging/lib/mlton/x86_64-w64-mingw32/include
+ cp ../../runtime.x64/gen/sizes ../../runtime.x64/*.a staging/lib/mlton/x86_64-w64-mingw32
+ rm staging/lib/mlton/x86_64-w64-mingw32/*-gdb.a
+ rm -rf ../../runtime.x64
+ mlton -target x86_64-w64-mingw32 -build-constants true > staging/w64-constants.c
+ mlton -target x86_64-w64-mingw32 -verbose 1 staging/w64-constants.c
+ ./staging/w64-constants > staging/lib/mlton/x86_64-w64-mingw32/constants
+ echo "x86_64-w64-mingw32 amd64 mingw" >> staging/lib/mlton/target-map
+ cd staging; find lib/mlton/x86_64-w64-mingw32 lib/mlton/sml/basis/config/c/amd64-mingw -type f > ../$@.tmp
mv $@.tmp $@
-
-%.lst: dl/%.get dbg.lst
+
+%.lst: dl/%.get self.lst
cd staging; . ../$< | tar --exclude postinstall -t -k | sed 's@^\./@@' > ../$@.tmp
cd staging; . ../$< | tar -x
mv $@.tmp $@
Added: mlton/trunk/package/mingw/dl/gmp64.get
===================================================================
--- mlton/trunk/package/mingw/dl/gmp64.get 2009-07-04 16:42:02 UTC (rev 7205)
+++ mlton/trunk/package/mingw/dl/gmp64.get 2009-07-04 16:55:26 UTC (rev 7206)
@@ -0,0 +1,4 @@
+. ../dl/mirrors
+f=gmp-4.3.1-w64-static.tar.bz2
+get "$REBUILT" "$f"
+bzip2 -dc "$f"
Added: mlton/trunk/package/mingw/dl/mingw64.get
===================================================================
--- mlton/trunk/package/mingw/dl/mingw64.get 2009-07-04 16:42:02 UTC (rev 7205)
+++ mlton/trunk/package/mingw/dl/mingw64.get 2009-07-04 16:55:26 UTC (rev 7206)
@@ -0,0 +1,4 @@
+. ../dl/mirrors
+f=mingw-w64_x86-64_mingw32_4.4.0-1.tar.bz2
+get "$REBUILT" "$f"
+bzip2 -dc "$f"
Added: mlton/trunk/package/mingw/dl/wget.get
===================================================================
--- mlton/trunk/package/mingw/dl/wget.get 2009-07-04 16:42:02 UTC (rev 7205)
+++ mlton/trunk/package/mingw/dl/wget.get 2009-07-04 16:55:26 UTC (rev 7206)
@@ -0,0 +1,4 @@
+. ../dl/mirrors
+f=wget.tar.bz2
+get "$REBUILT" "$f"
+bunzip2 -dc "$f"
Modified: mlton/trunk/package/mingw/mlton.bat
===================================================================
--- mlton/trunk/package/mingw/mlton.bat 2009-07-04 16:42:02 UTC (rev 7205)
+++ mlton/trunk/package/mingw/mlton.bat 2009-07-04 16:55:26 UTC (rev 7206)
@@ -66,7 +66,7 @@
set ccopts=-O1 -fno-strict-aliasing -fomit-frame-pointer -w
set ccopts=%ccopts% -fno-strength-reduce -fschedule-insns -fschedule-insns2
set ccopts=%ccopts% -malign-functions=5 -malign-jumps=2 -malign-loops=2
-set linkopts=-lm -lgmp -lws2_32 -lkernel32 -lpsapi -lnetapi32 -lwinmm -Wl,--enable-stdcall-fixup
+set linkopts=-lm -lgmp -lws2_32 -lkernel32 -lpsapi -lnetapi32 -lwinmm -Wl,--enable-stdcall-fixup -Wl,-s
"%mlton%" @MLton ram-slop 0.5 %rargs% -- "%lib%" -cc "%cc%" -ar-script "%bin%\static-library.bat" -cc-opt-quote "-I%lib%\include" -cc-opt "%ccopts%" -mlb-path-map "%lib%\mlb-path-map" -link-opt "%linkopts%" %args%
set retval=%errorlevel%
Modified: mlton/trunk/package/mingw/mlton.wxs
===================================================================
--- mlton/trunk/package/mingw/mlton.wxs 2009-07-04 16:42:02 UTC (rev 7205)
+++ mlton/trunk/package/mingw/mlton.wxs 2009-07-04 16:55:26 UTC (rev 7206)
@@ -81,17 +81,9 @@
<ComponentRef Id='component.download.url' />
<ComponentRef Id='component.readme.txt' />
<ComponentRef Id='component.documentation' />
- <Feature Id='Debug' Title='Debug' Description='The MLton runtime libraries with included debug information.' Level='10' AllowAdvertise='no'>
- <ComponentGroupRef Id='component.dbg' />
- </Feature>
</Feature>
- <Feature Id='GMP' Title='GMP' Description='An arbitrary precision integer artihmetic library.' Level='1' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'>
- <ComponentGroupRef Id='component.gmp' />
- </Feature>
- <Feature Id='dlfcn' Title='Dlfcn' Description='An implementation of the POSIX dynamic linking loader API for Windows.' Level='1' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'>
- <ComponentGroupRef Id='component.dlfcn' />
- </Feature>
- <Feature Id='MinGW' Title='MinGW' Description='The minimalist GNU for Windows C compiler toolchain.' Level='1' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'>
+
+ <Feature Id='MinGW32' Title='MinGW32' Description='The minimalist GNU for Windows C compiler toolchain, targetting Win32.' Level='1' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'>
<Feature Id='Runtime' Title='Runtime' Description='An assortment of thin wrappers that provide POSIX-like functionality on a windows platform.' Level='1' AllowAdvertise='no'>
<ComponentGroupRef Id='component.runtime' />
</Feature>
@@ -112,12 +104,34 @@
<ComponentRef Id='component.path' />
<ComponentGroupRef Id='component.msys' />
</Feature>
+ <Feature Id='GMP' Title='GMP' Description='An arbitrary precision integer artihmetic library.' Level='1' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'>
+ <ComponentGroupRef Id='component.gmp' />
+ </Feature>
+ <Feature Id='dlfcn' Title='Dlfcn' Description='An implementation of the POSIX dynamic linking loader API for Windows.' Level='1' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'>
+ <ComponentGroupRef Id='component.dlfcn' />
+ </Feature>
<Feature Id='GDB' Title='GDB' Description='A command-line operated program debugger.' Level='10' AllowAdvertise='no'>
<ComponentRef Id='component.path' />
<ComponentGroupRef Id='component.gdb' />
</Feature>
+ <Feature Id='WGet' Title='WGet' Description='A command-line tool for retrieving files from the web.' Level='10' AllowAdvertise='no'>
+ <ComponentRef Id='component.path' />
+ <ComponentGroupRef Id='component.wget' />
+ </Feature>
</Feature>
+ <Feature Id='Win64' Title='Win64' Description='Support compiling programs for the Win64 platform.' Level='10' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'>
+ <Feature Id='MinGW64' Title='MinGW64' Description='The minimalist GNU for Windows C compiler toolchain, targetting Win64 platforms.' Level='10' AllowAdvertise='no'>
+ <ComponentGroupRef Id='component.mingw64' />
+ </Feature>
+ <Feature Id='MLton64' Title='MLton64' Description='Libraries and target information to build 64-bit SML programs.' Level='10' AllowAdvertise='no'>
+ <ComponentGroupRef Id='component.self64' />
+ </Feature>
+ <Feature Id='GMP64' Title='GMP64' Description='An arbitrary precision integer artihmetic library.' Level='10' ConfigurableDirectory='INSTALLDIR' AllowAdvertise='no'>
+ <ComponentGroupRef Id='component.gmp64' />
+ </Feature>
+ </Feature>
+
<UIRef Id="WixUI_Mondo" />
<WixVariable Id="WixUIBannerBmp" Value="Bitmaps/bannrbmp.bmp" />
<WixVariable Id="WixUIDialogBmp" Value="Bitmaps/dlgbmp.bmp" />
Modified: mlton/trunk/package/mingw/msys.bat
===================================================================
--- mlton/trunk/package/mingw/msys.bat 2009-07-04 16:42:02 UTC (rev 7205)
+++ mlton/trunk/package/mingw/msys.bat 2009-07-04 16:55:26 UTC (rev 7206)
@@ -46,10 +46,10 @@
if NOT EXIST "%WD%msys-1.0.dll" set WD=%~dp0
rem ember Set up option to use rxvt based on value of %1
-if "x%MSYSCON%" == "x" set MSYSCON=rxvt.exe
-if "x%1" == "x-norxvt" set MSYSCON=sh.exe
-if "x%1" == "x--norxvt" set MSYSCON=sh.exe
-if "x%MSYSCON%" == "xsh.exe" shift
+if "x%MSYSCON%" == "x" set MSYSCON=sh.exe
+if "x%1" == "x-rxvt" set MSYSCON=rxvt.exe
+if "x%1" == "x--rxvt" set MSYSCON=rxvt.exe
+if "x%MSYSCON%" == "xrxvt.exe" shift
if "x%MSYSTEM%" == "x" set MSYSTEM=MINGW32
if "%1" == "MINGW32" set MSYSTEM=MINGW32
More information about the MLton-commit
mailing list