diff --git a/make-windows-installer.sh b/make-windows-installer.sh index 7c89e5f..92b7775 100644 --- a/make-windows-installer.sh +++ b/make-windows-installer.sh @@ -27,9 +27,9 @@ cd output :direction :output :if-exists :supersede) (write-line (lisp-implementation-version) f)) - (quit))' + (quit))' && \ -"$WIX_PATH/candle" sbcl.wxs +"$WIX_PATH/candle" sbcl.wxs && \ "$WIX_PATH/light" sbcl.wixobj "$WIX_PATH/wixui.wixlib" \ -loc "$WIX_PATH/WixUI_en-us.wxl" \ -out sbcl-`cat version.txt`.msi diff --git a/src/compiler/x86/parms.lisp b/src/compiler/x86/parms.lisp index 67655cd..ff801c5 100644 --- a/src/compiler/x86/parms.lisp +++ b/src/compiler/x86/parms.lisp @@ -169,17 +169,17 @@ #!+win32 (progn - (def!constant read-only-space-start #x02000000) - (def!constant read-only-space-end #x020ff000) + (def!constant read-only-space-start #x22000000) + (def!constant read-only-space-end #x220ff000) - (def!constant static-space-start #x02100000) - (def!constant static-space-end #x021ff000) + (def!constant static-space-start #x22100000) + (def!constant static-space-end #x221ff000) - (def!constant dynamic-space-start #x09000000) - (def!constant dynamic-space-end #x29000000) + (def!constant dynamic-space-start #x22300000) + (def!constant dynamic-space-end #x42300000) - (def!constant linkage-table-space-start #x02200000) - (def!constant linkage-table-space-end #x022ff000)) + (def!constant linkage-table-space-start #x22200000) + (def!constant linkage-table-space-end #x222ff000)) #!+linux (progn diff --git a/src/runtime/Config.x86-win32 b/src/runtime/Config.x86-win32 index 2eac98b..b51c4da 100644 --- a/src/runtime/Config.x86-win32 +++ b/src/runtime/Config.x86-win32 @@ -27,6 +27,7 @@ OS_SRC = win32-os.c x86-win32-os.c os-common.c # working on one and it would be a nice thing to have.) OS_LINK_FLAGS = -Wl,--export-dynamic,-mno-cygwin OS_LIBS = -mno-cygwin +OS_OBJS = icon.o GC_SRC = gencgc.c @@ -38,6 +39,10 @@ CC = gcc LD = ld NM = nm +icon.o: + echo 'IDI_ICON1 ICON DISCARDABLE "../../contrib/sbcl.ico"' | \ + windres --use-temp-file -O coff -o icon.o + # Nothing to do for after-grovel-headers. .PHONY: after-grovel-headers after-grovel-headers: diff --git a/src/runtime/runtime.c b/src/runtime/runtime.c index a4fc68a..61ff803 100644 --- a/src/runtime/runtime.c +++ b/src/runtime/runtime.c @@ -420,7 +420,7 @@ main(int argc, char *argv[], char *envp[]) #ifdef LISP_FEATURE_WIN32 fprintf(stderr, "\n\ This is experimental prerelease support for the Windows platform: use\n\ -at your own risk. \"Your Kitten of Death awaits!\"\n"); +at your own risk.\n"); fflush(stdout); fflush(stderr); #endif diff --git a/tools-for-build/wxs.lisp b/tools-for-build/wxs.lisp index 1374799..ee08916 100644 --- a/tools-for-build/wxs.lisp +++ b/tools-for-build/wxs.lisp @@ -110,6 +110,7 @@ (id (format nil "File_~A" (enough-namestring pathname *sbcl-source-root*)))) (defparameter *ignored-directories* '("CVS" ".svn")) +(defparameter *ignored-files* '(".cvsignore" ".gitignore" "exe" "texinfo" "test-passed" "Makefile")) (defparameter *pathname-type-abbrevs* '(("lisp" . "lsp") @@ -160,6 +161,8 @@ ,@(loop for file in (directory (make-pathname :name :wild :type :wild :defaults root)) when (or (pathname-name file) (pathname-type file)) + unless (or (member (pathname-name file) *ignored-files* :test #'equalp) + (member (pathname-type file) *ignored-files* :test #'equalp)) collect `("File" ("Id" ,(file-id file) ,@(file-names file) "Source" ,(enough-namestring file))))))) @@ -247,6 +250,7 @@ "Directory" "ProgramMenuFolder" "Name" "SBCL" "LongName" ,(application-name) + "WorkingDirectory" "INSTALLDIR" "Arguments" "--core \"[#sbcl.core]\""))) ("File" ("Id" "sbcl.core" "Name" "sbcl.cre"