Simplify svg build configuration

RESOLVED INCOMPLETE

Status

()

Core
Build Config
RESOLVED INCOMPLETE
13 years ago
7 months ago

People

(Reporter: tor, Assigned: tor)

Tracking

Trunk
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

13 years ago
Currently one needs to select one of three configure options to specify
the renderer mozilla's svg uses.  These should be combined into one option,
with reasonable defaults.
(Assignee)

Comment 1

13 years ago
Created attachment 175950 [details] [diff] [review]
--enable-svg-renderer={gdiplus,libart,cairo} and defaults
Attachment #175950 - Flags: review?(benjamin)

Updated

13 years ago
Attachment #175950 - Flags: review?(benjamin) → review+
So... about a third of ports is red after this checkin.  Some are bailing at:

*** The pkg-config script could not be found. Make sure it is
*** in your path, or set the PKG_CONFIG environment variable
*** to the full path to pkg-config.
*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config.
configure: error: Library requirements (libpixman >= 0.1.2) not met; consider
adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a
nonstandard prefix so pkg-config can find them.
configure: error:
/builds/tinderbox/SeaMonkey/Linux_2.2.15pre3_Depend/mozilla/gfx/cairo/cairo/configure
failed for gfx/cairo/cairo
*** Fix above errors and then restart with "gmake -f client.mk build"

(eg otaku, monkeypox, balsa)

and some at:

cairo_xlib_surface.c: In function `_cairo_xlib_surface_set_matrix':
cairo_xlib_surface.c:314: error: `XTransform' undeclared (first use in this
function)

(and going on from there; this would be lhasa).
This quite happily configured (which it should not have?) and then died at build
time on my machine, by the way, since I took the newsgroup post on its face and
didn't change my mozconfig (I was building libart before, but figured I may want
to try cairo).  The configure output included:

and the following font backends:
   freetype: no
   atsui: no

when cairo configured itself (this SHOULD have been a configure error, dammit!)
and then when building:

/home/bzbarsky/mozilla/debug/mozilla/gfx/cairo/cairo/src/cairo_font.c:88:
`CAIRO_FONT_BACKEND_DEFAULT' undeclared (first use in this function)

Indeed, the code in gfx/cairo/cairo/src/cairoint.h does:

749 #ifdef CAIRO_HAS_FT_FONT 
...
754 #define CAIRO_FONT_BACKEND_DEFAULT &cairo_ft_font_backend
755 
756 #elif defined(CAIRO_HAS_ATSUI_FONT)
...
760 #define CAIRO_FONT_BACKEND_DEFAULT &cairo_atsui_font_backend
761 
762 #endif

It should probably have an #else with an #error or something, instead of just
dying when other code tries to use CAIRO_FONT_BACKEND_DEFAULT and fails.  More
importantly, if it can't build without a font backend, it shouldn't let itself
configure without a font backend.

You may want to make some sort of general announcement for people who build svg
(for testing) but don't read the svg newsgroup.... (and it would have been nice
to do that _before_ landing the build changes).
OK, the issue I was seeing on my machine seems to have been due to pkg-config
being installed as a single binary, so it depended on the env var (which tor
changed) to find all the config files.
This can probably die now, no?
QA Contact: build-config

Comment 6

7 months ago
Mass bug cleanup for Core:Build Config.

If you feel this bug has been closed in error, please re-open with new details.
Status: NEW → RESOLVED
Last Resolved: 7 months ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.