diff options
author | Bjoern Michaelsen <bjoern.michaelsen@canonical.com> | 2011-07-21 18:51:33 +0200 |
---|---|---|
committer | Bjoern Michaelsen <bjoern.michaelsen@canonical.com> | 2011-07-21 18:51:33 +0200 |
commit | 31796472e75b70e2ccb972ef482368420ad89edb (patch) | |
tree | 73f181e8d7603bbef168673037c57364d3706a92 /cairo | |
parent | 31daa1bd60b3d2118393752cbc1a1d44d9a802f7 (diff) | |
parent | 7862353ab6a63182dec29993a2a582b3d2cb7b08 (diff) |
Merge branch 'master' into feature/gnumake4
Diffstat (limited to 'cairo')
-rw-r--r-- | cairo/cairo-1.8.0.ios.patch | 66 | ||||
-rw-r--r-- | cairo/cairo/makefile.mk | 31 | ||||
-rw-r--r-- | cairo/pixman/makefile.mk | 6 |
3 files changed, 83 insertions, 20 deletions
diff --git a/cairo/cairo-1.8.0.ios.patch b/cairo/cairo-1.8.0.ios.patch new file mode 100644 index 000000000000..a5cc8e975e2d --- /dev/null +++ b/cairo/cairo-1.8.0.ios.patch @@ -0,0 +1,66 @@ +--- misc/build/cairo-1.8.0.org/src/cairo-quartz.h ++++ misc/build/cairo-1.8.0/src/cairo-quartz.h +@@ -40,7 +40,7 @@ + + #if CAIRO_HAS_QUARTZ_SURFACE + +-#include <ApplicationServices/ApplicationServices.h> ++#include <CoreGraphics/CoreGraphics.h> + + CAIRO_BEGIN_DECLS + +@@ -66,8 +66,12 @@ + cairo_public cairo_font_face_t * + cairo_quartz_font_face_create_for_cgfont (CGFontRef font); + ++#if 0 ++ + cairo_public cairo_font_face_t * + cairo_quartz_font_face_create_for_atsu_font_id (ATSUFontID font_id); ++ ++#endif /* 0 */ + + #endif /* CAIRO_HAS_QUARTZ_FONT */ + +--- misc/build/cairo-1.8.0.org/src/cairo-quartz-surface.c ++++ misc/build/cairo-1.8.0/src/cairo-quartz-surface.c +@@ -152,10 +152,6 @@ + CGContextGetAllowsFontSmoothingPtr = dlsym(RTLD_DEFAULT, "CGContextGetAllowsFontSmoothing"); + CGContextSetAllowsFontSmoothingPtr = dlsym(RTLD_DEFAULT, "CGContextSetAllowsFontSmoothing"); + +- if (Gestalt(gestaltSystemVersion, &_cairo_quartz_osx_version) != noErr) { +- // assume 10.4 +- _cairo_quartz_osx_version = 0x1040; +- } + + _cairo_quartz_symbol_lookup_done = TRUE; + } +@@ -2093,7 +2093,10 @@ + yprev = yf; + } + +- if (_cairo_quartz_osx_version >= 0x1050 && isClipping) { ++ if (0) { ++ /* Assume the bug mentioned below is not present in iOS, ++ * until proven otherwise. ++ */ + /* If we're clipping, OSX 10.5 (at least as of 10.5.2) has a + * bug (apple bug ID #5834794) where the glyph + * advances/positions are not transformed by the text matrix +--- misc/build/cairo-1.8.0.org/src/cairo-quartz-font.c ++++ misc/build/cairo-1.8.0/src/cairo-quartz-font.c +@@ -766,6 +766,8 @@ + } + + ++#if 0 ++ + /* + * compat with old ATSUI backend + */ +@@ -808,3 +808,5 @@ + { + return cairo_quartz_font_face_create_for_atsu_font_id (font_id); + } ++ ++#endif /* 0 */ diff --git a/cairo/cairo/makefile.mk b/cairo/cairo/makefile.mk index 4059504e35bc..3f411aa4ca3a 100644 --- a/cairo/cairo/makefile.mk +++ b/cairo/cairo/makefile.mk @@ -35,14 +35,9 @@ EXTERNAL_WARNINGS_NOT_ERRORS := TRUE .INCLUDE : settings.mk -.IF "$(ENABLE_CAIRO)" == "" +.IF "$(SYSTEM_CAIRO)" == "YES" || "$(GUIBASE)" == "android" all: - @echo "Nothing to do (Cairo not enabled)." - -.ELIF "$(SYSTEM_CAIRO)" == "YES" -all: - @echo "Nothing to do, using system cairo." - + @echo "Not building cairo." .ENDIF # --- Files -------------------------------------------------------- @@ -54,6 +49,10 @@ TARFILE_MD5=4ea70ea87b47e92d318d4e7f5b940f47 PATCH_FILES=..$/$(TARFILE_NAME).patch +.IF "$(OS)" == "IOS" +PATCH_FILES+=..$/$(TARFILE_NAME).ios.patch +.ENDIF + cairo_CFLAGS=$(SOLARINC) cairo_LDFLAGS=$(SOLARLIB) @@ -148,21 +147,21 @@ cairo_CFLAGS+=-march=i486 CONFIGURE_DIR= -.IF "$(OS)"=="ANDROID" -# No pkg-config in the Android NDK +.IF "$(OS)"=="IOS" || "$(OS)"=="ANDROID" +# No pkg-config on MacOSX (for iOS) or in the Android NDK CONFIGURE_ACTION=cp $(SRC_ROOT)$/$(PRJNAME)$/cairo$/dummy_pkg_config . && .$/configure .ELSE CONFIGURE_ACTION=.$/configure .ENDIF .IF "$(OS)"=="IOS" -CONFIGURE_FLAGS=--disable-shared +CONFIGURE_FLAGS=--disable-shared --disable-xlib --enable-quartz --enable-quartz-font .ELSE CONFIGURE_FLAGS=--disable-static --enable-xlib .ENDIF -.IF "$(OS)"=="ANDROID" -CONFIGURE_FLAGS+=--disable-ft +.IF "$(OS)"=="IOS" || "$(OS)"=="ANDROID" +CONFIGURE_FLAGS+=--disable-ft PKG_CONFIG=./dummy_pkg_config .ELSE CONFIGURE_FLAGS+=--enable-ft .ENDIF @@ -177,9 +176,13 @@ BUILD_ACTION=$(GNUMAKE) BUILD_FLAGS+= -j$(EXTMAXPROCESS) BUILD_DIR=$(CONFIGURE_DIR) +.IF "$(OS)" == "IOS" +OUT2INC+=src$/cairo-quartz.h +.ELSE OUT2INC+=src$/cairo-xlib.h \ src$/cairo-xlib-xrender.h \ src$/cairo-ft.h +.ENDIF .ENDIF @@ -189,12 +192,10 @@ OUT2INC+=src$/cairo-xlib.h \ .IF "$(OS)" != "WNT" || "$(COM)" == "GCC" # all other platforms except vanilla WNT, which does not use configure -.IF "$(BUILD_PIXMAN)" == "YES" # pixman is in this module # We include paths to this module also in LDFLAGS/CFLAGS to guarantee search order. # However pixman_* vars need to be also set for configure to work properly on all platforms. CONFIGURE_FLAGS+=pixman_CFLAGS="-I$(SRC_ROOT)$/$(PRJNAME)$/$(INPATH)$/inc" pixman_LIBS="-L$(SRC_ROOT)$/$(PRJNAME)$/$(INPATH)$/lib -lpixman-1" -.ENDIF .IF "$(debug)"!="" cairo_CFLAGS+=-g @@ -229,7 +230,7 @@ OUT2LIB+=src$/release$/*.lib OUT2BIN+=src$/release$/*.dll .ENDIF .ELIF "$(OS)"=="IOS" || "$(OS)"=="ANDROID" -OUT2LIB+=src$/.libs$/libcairo-1.a +OUT2LIB+=src$/.libs$/libcairo*.a .ELSE OUT2LIB+=src$/.libs$/libcairo.so* .ENDIF diff --git a/cairo/pixman/makefile.mk b/cairo/pixman/makefile.mk index d2124079c5d2..58fcda2803bd 100644 --- a/cairo/pixman/makefile.mk +++ b/cairo/pixman/makefile.mk @@ -35,11 +35,7 @@ EXTERNAL_WARNINGS_NOT_ERRORS := TRUE .INCLUDE : settings.mk -.IF "$(ENABLE_CAIRO)" == "" -all: - @echo "Nothing to do (Cairo not enabled)." - -.ELIF "$(BUILD_PIXMAN)" == "" +.IF "$(SYSTEM_CAIRO)" == "YES" || "$(GUIBASE)" == "android" all: @echo "Not building pixman." |