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" ""))]
[(macosx)
(ffi-lib "libpixman-1.0.dylib")
(ffi-lib "libpng14.14.dylib")
(ffi-lib "libpng15.15.dylib")
(ffi-lib "libcairo.2.dylib")]
[(win32)
(ffi-lib "zlib1.dll")

View File

@ -10,12 +10,15 @@
(define-runtime-lib glib-lib
[(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")])
(define-runtime-lib gmodule-lib
[(unix) (ffi-lib "libgmodule-2.0" '("0" ""))]
[(macosx)
(ffi-lib "libgthread-2.0.0.dylib")
(ffi-lib "libgmodule-2.0.0.dylib")]
[(win32)
(ffi-lib "libgmodule-2.0-0.dll")]
@ -25,7 +28,9 @@
(define-runtime-lib gobj-lib
[(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")])
(define-ffi-definer define-glib glib-lib)

View File

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

View File

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

View File

@ -4,7 +4,7 @@
(provide do-download)
(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 architecture #f) ;; set in `do-download'

View File

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

View File

@ -1,13 +1,14 @@
Information on building 3rd-party libraries needed for Mac OS X GRacket.
Get these packages (or newer, if compatible):
pkg-config-0.23.tar.gz
libpng-1.4.0.tar.gz
pixman-0.21.6.tar.gz
pkg-config-0.25.tar.gz [PowerPC: pkg-config-0.23.tar.gz]
libpng-1.5.7.tar.gz
pixman-0.24.2.tar.gz [PowerPC: pixman-0.21.6.tar.gz]
cairo-1.10.2.tar.gz
gettext-0.17.tar.gz
glib-2.22.4.tar.gz
pango-1.28.0.tar.gz
gettext-0.18.1.1.tar.gz [PowerPC: gettext-0.17.tar.gz]
libffi-3.0.10.tar.gz [PowerPC: skip]
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)
PSMTabBarControl, probably from "maccode.googlecode.com",
@ -21,8 +22,8 @@ Patches:
buf = cairo_path_head (path);
if (buf->num_ops > 4)
return TRUE;
glib/glib/gconvert.c:54: change to
#if !(defined(__APPLE__) && defined(__LP64__)) && !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H)
glib/glib/gconvert.c:61: comment out #error near
#if defined(USE_LIBICONV_GNU) && !defined (_LIBICONV_H)
pango/pango/modules.c:573: change to
// read_modules ();
pango/modules/basic/basic-atsui.c:60: add
@ -33,6 +34,14 @@ Patches:
&metrics->underline_position);
metrics->underline_position = -(metrics->underline_position
+ 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
// copy _cells because removing a cell
// can modify the array (which is not allowed)
@ -45,8 +54,12 @@ Configures (where <dest> is some temporary area):
pixman: --prefix=<dest>
Cairo: PATH=<dest>/bin:... --disable-xlib --disable-ft --disable-fc --prefix=<dest>
gettext: --prefix=<dest>
libffi: --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
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
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:
Build PSMTabBarControl. You only need the Framework target, and
in Release mode.
@ -75,6 +94,9 @@ Install:
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=
WORKDIR=

View File

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

View File

@ -13,12 +13,12 @@
consistently.)
*/
#define MZSCHEME_VERSION "5.2.1.4"
#define MZSCHEME_VERSION "5.2.1.5"
#define MZSCHEME_VERSION_X 5
#define MZSCHEME_VERSION_Y 2
#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_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,
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
-------------------------------