update pre-built libraries

This commit is contained in:
Matthew Flatt 2012-02-01 20:15:53 -07:00
parent 4ea306ed61
commit 2f5430e227
10 changed files with 103 additions and 60 deletions

View File

@ -9,7 +9,7 @@
[(unix) (ffi-lib "libcairo" '("2" ""))] [(unix) (ffi-lib "libcairo" '("2" ""))]
[(macosx) [(macosx)
(ffi-lib "libpixman-1.0.dylib") (ffi-lib "libpixman-1.0.dylib")
(ffi-lib "libpng14.14.dylib") (ffi-lib "libpng15.15.dylib")
(ffi-lib "libcairo.2.dylib")] (ffi-lib "libcairo.2.dylib")]
[(win32) [(win32)
(ffi-lib "zlib1.dll") (ffi-lib "zlib1.dll")

View File

@ -10,12 +10,15 @@
(define-runtime-lib glib-lib (define-runtime-lib glib-lib
[(unix) (ffi-lib "libglib-2.0" '("0" ""))] [(unix) (ffi-lib "libglib-2.0" '("0" ""))]
[(macosx) (ffi-lib "libglib-2.0.0")] [(macosx)
(ffi-lib "libintl.8.dylib")
(ffi-lib "libglib-2.0.0.dylib")]
[(windows) (ffi-lib "libglib-2.0-0.dll")]) [(windows) (ffi-lib "libglib-2.0-0.dll")])
(define-runtime-lib gmodule-lib (define-runtime-lib gmodule-lib
[(unix) (ffi-lib "libgmodule-2.0" '("0" ""))] [(unix) (ffi-lib "libgmodule-2.0" '("0" ""))]
[(macosx) [(macosx)
(ffi-lib "libgthread-2.0.0.dylib")
(ffi-lib "libgmodule-2.0.0.dylib")] (ffi-lib "libgmodule-2.0.0.dylib")]
[(win32) [(win32)
(ffi-lib "libgmodule-2.0-0.dll")] (ffi-lib "libgmodule-2.0-0.dll")]
@ -25,7 +28,9 @@
(define-runtime-lib gobj-lib (define-runtime-lib gobj-lib
[(unix) (ffi-lib "libgobject-2.0" '("0" ""))] [(unix) (ffi-lib "libgobject-2.0" '("0" ""))]
[(macosx) (ffi-lib "libgobject-2.0.0")] [(macosx)
(ffi-lib "libffi.5.dylib")
(ffi-lib "libgobject-2.0.0.dylib")]
[(windows) (ffi-lib "libgobject-2.0-0.dll")]) [(windows) (ffi-lib "libgobject-2.0-0.dll")])
(define-ffi-definer define-glib glib-lib) (define-ffi-definer define-glib glib-lib)

View File

@ -9,11 +9,8 @@
(define-runtime-lib pango-lib (define-runtime-lib pango-lib
[(unix) (ffi-lib "libpango-1.0" '("0" ""))] [(unix) (ffi-lib "libpango-1.0" '("0" ""))]
[(macosx) [(macosx) (ffi-lib "libpango-1.0.0.dylib")]
(ffi-lib "libintl.8.dylib") [(windows) (ffi-lib "libpango-1.0-0.dll")])
(ffi-lib "libpango-1.0.0.dylib")]
[(windows)
(ffi-lib "libpango-1.0-0.dll")])
(define-runtime-lib pangowin32-lib (define-runtime-lib pangowin32-lib
[(unix) #f] [(unix) #f]

View File

@ -13,7 +13,7 @@
(with-handlers ([exn:fail:filesystem? (with-handlers ([exn:fail:filesystem?
(lambda (exn) (ffi-lib "libpng"))]) (lambda (exn) (ffi-lib "libpng"))])
(ffi-lib "libpng12" '("0" "")))] (ffi-lib "libpng12" '("0" "")))]
[(macosx) (ffi-lib "libpng14.14.dylib")] [(macosx) (ffi-lib "libpng15.15.dylib")]
[(windows) [(windows)
(ffi-lib "zlib1.dll") (ffi-lib "zlib1.dll")
(ffi-lib "libpng14-14.dll")]) (ffi-lib "libpng14-14.dll")])

View File

@ -4,7 +4,7 @@
(provide do-download) (provide do-download)
(define url-host "download.racket-lang.org") (define url-host "download.racket-lang.org")
(define url-path "/libs/4/") (define url-path "/libs/6/")
(define url-base (string-append "http://" url-host url-path)) (define url-base (string-append "http://" url-host url-path))
(define architecture #f) ;; set in `do-download' (define architecture #f) ;; set in `do-download'

View File

@ -15,56 +15,59 @@
'[core '[core
[win32/i386 [win32/i386
["iconv.dll" 892928] ["iconv.dll" 892928]
["libeay32.dll" 1089536] ["libeay32.dll" 1099776]
["ssleay32.dll" 237568]] ["ssleay32.dll" 239104]]
[win32/x86_64 [win32/x86_64
["libiconv-2.dll" 1378028] ["libiconv-2.dll" 1378028]
["libeay32.dll" 1410560] ["libeay32.dll" 1503232]
["ssleay32.dll" 247808]]] ["ssleay32.dll" 309760]]]
;; GUI Libraries ;; GUI Libraries
[list [list
'gui 'gui
'[i386-macosx '[i386-macosx
["libcairo.2.dylib" 803196] ["libcairo.2.dylib" 802620]
["libintl.8.dylib" 57604] ["libffi.5.dylib" 22424]
["libgio-2.0.0.dylib" 736720] ["libintl.8.dylib" 63084]
["libgio-2.0.0.dylib" 1511444]
["libjpeg.62.dylib" 412024] ["libjpeg.62.dylib" 412024]
["libglib-2.0.0.dylib" 1009572] ["libglib-2.0.0.dylib" 1272192]
["libpango-1.0.0.dylib" 345476] ["libpango-1.0.0.dylib" 351672]
["libgmodule-2.0.0.dylib" 18836] ["libgmodule-2.0.0.dylib" 18820]
["libpangocairo-1.0.0.dylib" 83612] ["libpangocairo-1.0.0.dylib" 83728]
["libgobject-2.0.0.dylib" 284384] ["libgobject-2.0.0.dylib" 308304]
["libpixman-1.0.dylib" 526564] ["libpixman-1.0.dylib" 526716]
["libgthread-2.0.0.dylib" 24368] ["libgthread-2.0.0.dylib" 12708]
["libpng14.14.dylib" 182732] ["libpng15.15.dylib" 200876]
["PSMTabBarControl.tgz" 94103 "PSMTabBarControl.framework" 251764]] ["PSMTabBarControl.tgz" 94103 "PSMTabBarControl.framework" 251764]]
'[x86_64-macosx '[x86_64-macosx
["libcairo.2.dylib" 919840] ["libcairo.2.dylib" 926648]
["libintl.8.dylib" 61016] ["libffi.5.dylib" 23568]
["libgio-2.0.0.dylib" 897624] ["libintl.8.dylib" 63156]
["libgio-2.0.0.dylib" 2136056]
["libjpeg.62.dylib" 153360] ["libjpeg.62.dylib" 153360]
["libglib-2.0.0.dylib" 1162256] ["libglib-2.0.0.dylib" 1689952]
["libpango-1.0.0.dylib" 394768] ["libpango-1.0.0.dylib" 392432]
["libgmodule-2.0.0.dylib" 19832] ["libgmodule-2.0.0.dylib" 19768]
["libpangocairo-1.0.0.dylib" 94952] ["libpangocairo-1.0.0.dylib" 96352]
["libgobject-2.0.0.dylib" 344024] ["libgobject-2.0.0.dylib" 438192]
["libpixman-1.0.dylib" 577128] ["libpixman-1.0.dylib" 633368]
["libgthread-2.0.0.dylib" 21728] ["libgthread-2.0.0.dylib" 8592]
["libpng14.14.dylib" 192224] ["libpng15.15.dylib" 214836]
["PSMTabBarControl.tgz" 107267 "PSMTabBarControl.framework" 316528]] ["PSMTabBarControl.tgz" 107267 "PSMTabBarControl.framework" 316528]]
'[ppc-macosx '[ppc-macosx
["libcairo.2.dylib" 2716096] ["libcairo.2.dylib" 2620616]
["libintl.8.dylib" 133156] ["libffi.5.dylib" 67920]
["libgio-2.0.0.dylib" 936176] ["libintl.8.dylib" 132252]
["libgio-2.0.0.dylib" 937488]
["libjpeg.62.dylib" 209688] ["libjpeg.62.dylib" 209688]
["libglib-2.0.0.dylib" 1242368] ["libglib-2.0.0.dylib" 1242448]
["libpango-1.0.0.dylib" 761292] ["libpango-1.0.0.dylib" 760792]
["libgmodule-2.0.0.dylib" 19872] ["libgmodule-2.0.0.dylib" 19476]
["libpangocairo-1.0.0.dylib" 199440] ["libpangocairo-1.0.0.dylib" 195372]
["libgobject-2.0.0.dylib" 352728] ["libgobject-2.0.0.dylib" 352680]
["libpixman-1.0.dylib" 1366816] ["libpixman-1.0.dylib" 1626104]
["libgthread-2.0.0.dylib" 25416] ["libgthread-2.0.0.dylib" 25068]
["libpng14.14.dylib" 505920] ["libpng15.15.dylib" 570228]
["PSMTabBarControl.tgz" 96039 "PSMTabBarControl.framework" 229501]] ["PSMTabBarControl.tgz" 96039 "PSMTabBarControl.framework" 229501]]
(append (append
'[win32/i386 '[win32/i386

View File

@ -1,13 +1,14 @@
Information on building 3rd-party libraries needed for Mac OS X GRacket. Information on building 3rd-party libraries needed for Mac OS X GRacket.
Get these packages (or newer, if compatible): Get these packages (or newer, if compatible):
pkg-config-0.23.tar.gz pkg-config-0.25.tar.gz [PowerPC: pkg-config-0.23.tar.gz]
libpng-1.4.0.tar.gz libpng-1.5.7.tar.gz
pixman-0.21.6.tar.gz pixman-0.24.2.tar.gz [PowerPC: pixman-0.21.6.tar.gz]
cairo-1.10.2.tar.gz cairo-1.10.2.tar.gz
gettext-0.17.tar.gz gettext-0.18.1.1.tar.gz [PowerPC: gettext-0.17.tar.gz]
glib-2.22.4.tar.gz libffi-3.0.10.tar.gz [PowerPC: skip]
pango-1.28.0.tar.gz glib-2.31.14.tar.gz [PowerPC: glib-2.22.4.tar.gz]
pango-1.29.5.tar.gz [PowerPC: pango-1.28.0.tar.gz]
libjpeg62 (maybe in binary form) libjpeg62 (maybe in binary form)
PSMTabBarControl, probably from "maccode.googlecode.com", PSMTabBarControl, probably from "maccode.googlecode.com",
@ -21,8 +22,8 @@ Patches:
buf = cairo_path_head (path); buf = cairo_path_head (path);
if (buf->num_ops > 4) if (buf->num_ops > 4)
return TRUE; return TRUE;
glib/glib/gconvert.c:54: change to glib/glib/gconvert.c:61: comment out #error near
#if !(defined(__APPLE__) && defined(__LP64__)) && !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H) #if defined(USE_LIBICONV_GNU) && !defined (_LIBICONV_H)
pango/pango/modules.c:573: change to pango/pango/modules.c:573: change to
// read_modules (); // read_modules ();
pango/modules/basic/basic-atsui.c:60: add pango/modules/basic/basic-atsui.c:60: add
@ -33,6 +34,14 @@ Patches:
&metrics->underline_position); &metrics->underline_position);
metrics->underline_position = -(metrics->underline_position metrics->underline_position = -(metrics->underline_position
+ metrics->underline_thickness); + metrics->underline_thickness);
pango/pangocairo-coretextfont.c:150: add
metrics->underline_position = -metrics->underline_position;
pango_quantize_line_geometry (&metrics->underline_thickness,
&metrics->underline_position);
metrics->underline_position = -(metrics->underline_position
+ metrics->underline_thickness);
gettext/gettext-tools/gnulib-lib/stpncpy.c:28: may need to comment out
// # define __stpncpy stpncpy
PSMTabBarControl/PSMTabBarControl.m:216: change to PSMTabBarControl/PSMTabBarControl.m:216: change to
// copy _cells because removing a cell // copy _cells because removing a cell
// can modify the array (which is not allowed) // can modify the array (which is not allowed)
@ -45,8 +54,12 @@ Configures (where <dest> is some temporary area):
pixman: --prefix=<dest> pixman: --prefix=<dest>
Cairo: PATH=<dest>/bin:... --disable-xlib --disable-ft --disable-fc --prefix=<dest> Cairo: PATH=<dest>/bin:... --disable-xlib --disable-ft --disable-fc --prefix=<dest>
gettext: --prefix=<dest> gettext: --prefix=<dest>
libffi: --prefix=<dest>
glib: PATH=<dest>/bin:... CFLAGS=-I<dest>/include LDFLAGS=-L<dest>/lib --prefix=<dest> glib: PATH=<dest>/bin:... CFLAGS=-I<dest>/include LDFLAGS=-L<dest>/lib --prefix=<dest>
Pango: PATH=<dest>/bin:... --without-x --with-included-modules=yes --with-dynamic-modules=no [PowerPC: after configure, set "allow_undefined_flag" to "" in "libtool";
add "-lresolv" to link command for "libgio"]
Pango: PATH=<dest>/bin:... --without-x --with-included-modules=yes --with-dynamic-modules=no --prefix=<dest>
[PowerPC: same as glib for "libtool"; use PATH for `make', too]
To support 10.4, add To support 10.4, add
CC=gcc-4.0 CC=gcc-4.0
@ -57,6 +70,12 @@ Configures (where <dest> is some temporary area):
Note: PATH above ensures that pkg-config binaries are used to find Note: PATH above ensures that pkg-config binaries are used to find
things in <dest> rather than some other area, such as /opt/local. things in <dest> rather than some other area, such as /opt/local.
Be sure to use two-level namespaces for all libraries. While
two-level namespaces are the default on Mac OS X, some packages turn
on flat namespaces, at least on PowerPC. Use `otol -vh' and look for
"TWOLEVEL" in the output to check that a library uses two-level
namespaces.
XCode: XCode:
Build PSMTabBarControl. You only need the Framework target, and Build PSMTabBarControl. You only need the Framework target, and
in Release mode. in Release mode.
@ -75,6 +94,9 @@ Install:
just the platform that you're using. just the platform that you're using.
-------------------------------------------------- --------------------------------------------------
# This script isn't right, because the versions are out of date
# and libffi isn't included, but maybe it clarifies some of
# the instructions above
DESTDIR= DESTDIR=
WORKDIR= WORKDIR=

View File

@ -8,7 +8,8 @@
#f))) #f)))
(define libs (define libs
'("libgio-2.0.0" '("libffi.5"
"libgio-2.0.0"
"libgmodule-2.0.0" "libgmodule-2.0.0"
"libgthread-2.0.0" "libgthread-2.0.0"
"libglib-2.0.0" "libglib-2.0.0"
@ -18,7 +19,7 @@
"libpangocairo-1.0.0" "libpangocairo-1.0.0"
"libcairo.2" "libcairo.2"
"libpixman-1.0" "libpixman-1.0"
"libpng14.14" "libpng15.15"
"libjpeg.62")) "libjpeg.62"))
(define (fixup p p-new) (define (fixup p p-new)

View File

@ -13,12 +13,12 @@
consistently.) consistently.)
*/ */
#define MZSCHEME_VERSION "5.2.1.4" #define MZSCHEME_VERSION "5.2.1.5"
#define MZSCHEME_VERSION_X 5 #define MZSCHEME_VERSION_X 5
#define MZSCHEME_VERSION_Y 2 #define MZSCHEME_VERSION_Y 2
#define MZSCHEME_VERSION_Z 1 #define MZSCHEME_VERSION_Z 1
#define MZSCHEME_VERSION_W 4 #define MZSCHEME_VERSION_W 5
#define MZSCHEME_VERSION_MAJOR ((MZSCHEME_VERSION_X * 100) + MZSCHEME_VERSION_Y) #define MZSCHEME_VERSION_MAJOR ((MZSCHEME_VERSION_X * 100) + MZSCHEME_VERSION_Y)
#define MZSCHEME_VERSION_MINOR ((MZSCHEME_VERSION_Z * 1000) + MZSCHEME_VERSION_W) #define MZSCHEME_VERSION_MINOR ((MZSCHEME_VERSION_Z * 1000) + MZSCHEME_VERSION_W)

View File

@ -107,6 +107,21 @@ and they must be installed into
The "get-libs.rkt" script in "racket\src" can download the libraries, The "get-libs.rkt" script in "racket\src" can download the libraries,
and the script is used by "build.bat". and the script is used by "build.bat".
Pre-built libraries use "msvcrt.dll", as opposed to the run-time
library for a particular version of MSVC. For more information on that
choice, in case you want to compile you own, see
http://kobyk.wordpress.com/2007/07/20/
dynamically-linking-with-msvcrtdll-using-visual-c-2005/
In the case of OpenSSL v1.0.0g, two files that use `_stat' lead to an
unresolved reference to `_stat64i32'. That function is equivalent to
`_stat' as exported by "msvcrt.dll"; due to a tangle of `#define's, to
make the OpenSSL source refer to `_stat', you must use `struct
_stat64i32' in place of `struct stat', `#undef _stat', and use
`_stat()' in place of `stat()'.
Building Racket3m and GRacket3m Building Racket3m and GRacket3m
------------------------------- -------------------------------