From 0709870ef92396afe505439eb65daf797e7e71c7 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Sat, 12 Jun 2010 09:56:01 -0600 Subject: [PATCH] Windows build and config repairs --- collects/mred/private/wx/gtk/init.rkt | 10 ++++++++++ collects/mred/private/wx/gtk/utils.rkt | 5 +---- src/gracket/get-libs.rkt | 19 +++++++++++++------ src/worksp/build.bat | 14 +++++++------- 4 files changed, 31 insertions(+), 17 deletions(-) diff --git a/collects/mred/private/wx/gtk/init.rkt b/collects/mred/private/wx/gtk/init.rkt index 4effb24055..190be27f3e 100644 --- a/collects/mred/private/wx/gtk/init.rkt +++ b/collects/mred/private/wx/gtk/init.rkt @@ -7,6 +7,16 @@ (define-gtk gtk_init (_fun (_ptr io _int) (_ptr io _pointer) -> _void)) +(define-gtk gtk_rc_parse_string (_fun _string -> _void)) +(define-gtk gtk_rc_add_default_file (_fun _path -> _void)) +(define-gtk gtk_rc_find_module_in_path (_fun _path -> _path)) +(define-gtk gtk_rc_get_module_dir (_fun -> _path)) + +(when (eq? 'windows (system-type)) + (let ([dir (simplify-path (build-path (collection-path "scheme") 'up 'up "lib"))]) + (gtk_rc_parse_string (format "module_path \"~a\"\n" dir)) + (gtk_rc_add_default_file (build-path dir "gtkrc")))) + (gtk_init 0 #f) (define pump-thread (gtk-start-event-pump)) diff --git a/collects/mred/private/wx/gtk/utils.rkt b/collects/mred/private/wx/gtk/utils.rkt index dda5ba8267..d3c6946cef 100644 --- a/collects/mred/private/wx/gtk/utils.rkt +++ b/collects/mred/private/wx/gtk/utils.rkt @@ -99,10 +99,7 @@ (define (set-gtk-object-flags! gtk v) (set-GtkObject-flags! (cast gtk _pointer _GtkObject-pointer) v)) -(define-gtk gtk_rc_parse (_fun _path -> _void)) -(define-gmodule g_module_open (_fun _path _int -> _pointer)) -(when (eq? 'windows (system-type)) - (gtk_rc_parse (build-path (collection-path "scheme") 'up 'up "lib" "gtkrc"))) +(define-gmodule g_module_open (_fun _path _int -> _pointer)) (define-syntax-rule (define-signal-handler connect-name diff --git a/src/gracket/get-libs.rkt b/src/gracket/get-libs.rkt index f7e8652e48..6af4e92cce 100644 --- a/src/gracket/get-libs.rkt +++ b/src/gracket/get-libs.rkt @@ -85,19 +85,26 @@ ;; Must be EOF (void)]))))) +(define (unixize p) + (let-values ([(base name dir?) (split-path p)]) + (if (path? base) + (string-append (unixize base) "/" (path->string name)) + (path->string name)))) + (define (download-if-needed dest-dir file) (let ([dest (build-path dest-dir file)] [tmp (build-path dest-dir (format "~a.download" file))]) (if (file-exists? dest) (printf " ~a is ready\n" file) - (let ([src (format "~a~a/~a" - url-path - (system-library-subpath #f) - file)]) + (let* ([sub (unixize (system-library-subpath #f))] + [src (format "~a~a/~a" + url-path + sub + file)]) (unless explained? (set! explained? #t) - (printf ">> Downloading files from\n>> ~a~a\n" url-base (system-library-subpath #f)) - (printf ">> If you don't want automatic download, downlaod each file\n") + (printf ">> Downloading files from\n>> ~a~a\n" url-base sub) + (printf ">> If you don't want automatic download, download each file\n") (printf ">> yourself from there to\n") (printf ">> ~a\n" (path->complete-path dest-dir))) (printf " ~a downloading..." file) diff --git a/src/worksp/build.bat b/src/worksp/build.bat index 40eb0a86b5..acd92708e6 100644 --- a/src/worksp/build.bat +++ b/src/worksp/build.bat @@ -8,7 +8,13 @@ cd gc2 ..\..\..\racketcgc -cu make.rkt cd .. -..\..\..\racketcgc -cu ..\gracket\get-libs.rkt ..\gracket ..\..\lib +..\..\racket -cu ..\gracket\get-libs.rkt ..\gracket ..\..\lib + +cd mzstart +devenv mzstart.sln /Build Release +cd ..\mrstart +devenv mrstart.sln /Build Release +cd .. cd mzcom devenv mzcom.sln /Build Release @@ -30,10 +36,4 @@ cd ..\libmysterx devenv libmysterx.sln /Build 3m cd .. -cd mzstart -devenv mzstart.sln /Build Release -cd ..\mrstart -devenv mrstart.sln /Build Release -cd .. - ..\..\racket -l setup -N "raco setup"