Closed
Bug 87148
Opened 24 years ago
Closed 24 years ago
Xprint break Qt Mozilla compile due to gdk.h dependency
Categories
(Core Graveyard :: Printing: Xprint, defect)
Tracking
(Not tracked)
VERIFIED
FIXED
mozilla0.9.3
People
(Reporter: jcgriggs, Assigned: roland.mainz)
References
Details
Attachments
(1 file)
7.77 KB,
patch
|
Details | Diff | Splinter Review |
XPrint will not compile under the Qt build of Mozilla due to a dependency on
gdk/gdk.h (via nsXPrintContext.h, nsFontMetricsXlib.h and, finally, nsGCache.h).
Until this is fixed the Qt Build should be configured with the --disable-xprint
option.
Assignee | ||
Comment 1•24 years ago
|
||
swapping QA<-->owner as usual, fixing OS s/Win95/Linux/ - Xprint is X11-based
(and therefore a Unix/Linux only thing (usually)), setting target milestone
0.9.3 - ASAP (starting with tuesday...)...
Assignee: katakai → Roland.Mainz
Severity: normal → critical
Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: Windows 95 → Linux
QA Contact: Roland.Mainz → katakai
Target Milestone: --- → mozilla0.9.3
Assignee | ||
Comment 2•24 years ago
|
||
Accepting bug.
Reporter... I do not have Qt-toolkit on my box (Solaris SPARC). Wanna help me
with the patches by testing them, please ?
Status: NEW → ASSIGNED
Reporter | ||
Comment 3•24 years ago
|
||
I would be more than happy to test the build part of things (I'm the Qt Mozilla
module owner, so the faster this is fixed, the fewer times I have to pass the
work-around on to users), but if you want me to test actual printing, I will not
be able to help, since I'm doing this work on my own time and equipment, which
does not include a printer (or a budget to acquire one 8^).
BTW, I'm pretty sure Qt/X11 (aka Qt/Free) will compile on a SPARC - I have some
bugs from an UltraSPARC user filed against the Qt build.
The problem appears to be as simple as it is picking up the wrong nsGCCache.h
file.
Index: gfx/src/xprint/Makefile.in
===================================================================
RCS file: /cvsroot/mozilla/gfx/src/xprint/Makefile.in,v
retrieving revision 1.18
diff -u -r1.18 Makefile.in
--- Makefile.in 2001/06/21 04:01:44 1.18
+++ Makefile.in 2001/06/21 19:49:48
@@ -81,8 +81,7 @@
$(NULL)
INCLUDES += \
- -I$(srcdir)/../gtk \
+ -I$(srcdir) \
-I$(srcdir)/../xlib \
-I$(srcdir)/../xlibrgb \
- -I$(srcdir)/../xprint \
$(NULL)
Assignee | ||
Comment 5•24 years ago
|
||
I'll attach a patch in the next hour.
CC'ing cls as StaticBuild&Makefile.in expert because I'm fixing another issue
which breaks Xprint in Xlib-toolkit Mozilla.
Assignee | ||
Comment 6•24 years ago
|
||
Assignee | ||
Comment 7•24 years ago
|
||
Changes:
- Qt-toolkit should work now due fixes in xprint/Makefile.in
- Fixed Xprint crash in Xlib-toolkit due used of shared xlibrgb. Currently
Xlib-toolkit and Xprint needs each their own set of global variables. This will
be fixed by bug 85527 ("Turn xlibrgb into a shared library")...
- Increated GC-cache size in Xprint land from 10 to 16 to improve printing speed
and complex page rendering
- Removed "#define DEBUG 1" in Xlib-toolkit nsGCCache.h - no DEBUG stuff in
non-debug builds, please
- removed cls's workaround for duplicate symbols...
-- snip --
-#ifdef _IMPL_NS_XPRINT
-#define nsGCCache nsGCCacheXlib
-#define GCCacheEntry GCCacheEntryXlib
-#endif
-- snip --
...and replaced it with s/nsGCCache/nsGCCacheXlib/ and
s/GCCacheEntry/GCCacheEntryXlib/
Requesting r=cls (does it work with StaticBuild stuff ?) and feedback from
Qt-toolkit people...
Blocks: 85527
Reporter | ||
Comment 8•24 years ago
|
||
I am still having problems building this under Qt on Debian Linux with GNU make
and gcc. I get the following error after applying the patches, doing make
clean, then configure, then make:
xprintutil.c
gcc -o xprintutil.o -c -DOSTYPE=\"Linux2.2\" -DOSARCH=\"Linux\"
-DMOZ_REFLOW_PERF -DMOZ_REFLOW_PERF_DSP -DOJI -D_IMPL_NS_GFXONXP
-DUSE_MOZILLA_TYPES -DUSE_XPRINT -D_IMPL_NS_XPRINT -D_BSD_SOURCE
-I../../../dist/include -I../../../dist/include
-I/usr/local/src/mozilla/dist/include/nspr -I. -I./../xlib -I./../xlibrgb
-I/usr/X11R6/include -fPIC -I/usr/X11R6/include -Wall -W -Wno-unused
-Wpointer-arith -Wcast-align -pedantic -Wno-long-long -pipe -pthread -DDEBUG
-DDEBUG_johng -DTRACING -g -I/usr/local/qt/include -DQT_GENUINE_STR
-I/usr/X11R6/include -include ../../../config-defs.h -DMOZILLA_CLIENT
-Wp,-MD,.deps/xprintutil.pp xprintutil.c
xprintutil.c: In function `XpuGetPrinter2':
xprintutil.c:99: warning: comparison between pointer and integer
cpp0: .deps/xprintutil.pp: No such file or directory
xprintutil.c: In function `XpuGetPrinter':
xprintutil.c:134: warning: assignment makes integer from pointer without a cast
xprintutil.c: In function `XpuSetContentOrientation':
xprintutil.c:313: warning: control reaches end of non-void function
make[3]: *** [xprintutil.o] Error 1
make[3]: Leaving directory `/usr/local/src/mozilla/gfx/src/xprint'
make[2]: *** [install] Error 2
make[2]: Leaving directory `/usr/local/src/mozilla/gfx/src'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/usr/local/src/mozilla/gfx'
make: *** [install] Error 2
There also does not seem to be a .deps/ directory under gfx/src/xprint. I am
not sure if this all represents a problem in XPrint or in my environment...
Assignee | ||
Comment 9•24 years ago
|
||
I cannot reproduce your problem on my system (Solaris 7 SPARC, GTK+-toolkit
build with Sun Workshop 6U2EA2 and Xlib-toolkit build with gcc2.95.1)... ;-((
Comment 10•24 years ago
|
||
Roland, why are you adding all of those extra changes? The only thing that
needs to be done is to remove gtk from the include path so that the proper
nsGCCache.cpp gets pulled. Those other changes, while related, are not
necessary to fix this bug.
Assignee | ||
Comment 11•24 years ago
|
||
cls:
Sure... but I want to clean-up, too. And the fix for "Xprint crashes
Xlib-toolkit Mozilla" collides with this patch, therefore I integrated it into
this one...
Sorry... I just wanted to get rid of these bugs... ;-(
Assignee | ||
Comment 12•24 years ago
|
||
John C. Griggs:
Does your build work with cls(=Christopher Seawood)'s patch ?
If yes - then we should check-in that solution and file a new patch for the
remaining issues, OK ?
Comment 13•24 years ago
|
||
r=daa@distributed.net looks logical to me and builds
Comment 14•24 years ago
|
||
a=tor for 0.9.2 branch and trunk on cls' 2001-06-21 12:52 patch.
Assignee | ||
Comment 15•24 years ago
|
||
Filed bug 87468 for the remaining issues listed here (see
http://bugzilla.mozilla.org/showattachment.cgi?attach_id=39668) - except
griggs's build dependicy issue - this is bug 87422...
Assignee | ||
Comment 16•24 years ago
|
||
Fix checked in, marking bug as "FIXED"...
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 17•24 years ago
|
||
Can someone verify this bug, please. I do not have Qt-toolkit installed on my
box - and I assume katakai does not have it, too.
QA wanted... :-)
Reporter | ||
Comment 18•24 years ago
|
||
I backed out Roland's patch, updated from CVS (at 8:8:59 EDT this morning),
reconfigured and built and everything seems fine now. There is still no .deps
directory under gfx/src/xprint, but all of the objects appear to have compiled
properly and the program runs. Note that I can only comment on the fact that it
built - I have no printer to test whether the code is actually complete and
functional.
Assignee | ||
Comment 19•24 years ago
|
||
Which patch did you back out (bugid) ?
Assignee | ||
Comment 20•24 years ago
|
||
John C. Griggs:
BTW: Your special case got an own bug, please please post infos to bug 87422...
Thanks !!
Reporter | ||
Comment 21•24 years ago
|
||
Roland -
1) The patch I manually applied and backed out was the one attached to this bug.
I am now assuming I must have messed up in applying the bug, somehow...
2) I don't see anything in Bugzilla #87422 that has anything to do with Qt and I
am not CC'ed (or otherwise affiliated) with this bug at all. Are you sure that
is the correct ID?
Assignee | ||
Comment 22•24 years ago
|
||
> 1) The patch I manually applied and backed out was the one attached to this
> bug. I am now assuming I must have messed up in applying the bug, somehow...
Erm... my patch was _never_ applied to CVS. Instead cls's patch (which is
included in this bug's "description" (search for "Christopher Seawood 2001-06-21
12:52")) was applied to "trunk".
> 2) I don't see anything in Bugzilla #87422 that has anything to do with Qt
No... AFAIK it's a pure build stuff issue. Something in build stuff is going
wrong. Issues for _building_ Qt-toolkit have been (AFAIK) solved (include
issues) - now we're going to hunt this issue(=bug 87422)...
> and
> I am not CC'ed (or otherwise affiliated) with this bug at all. Are you sure
> that is the correct ID?
Please take a look at attachment
http://bugzilla.mozilla.org/showattachment.cgi?attach_id=39805 which is part of
bug 87422:
The attachment ends with
-- snip --
[... ... blah blah... ...]
gcc -o xprintutil.o -c -DOSTYPE=\"Linux2.2\" -DOSARCH=\"Linux\" -DOJI
-D_IMPL_NS_GFXONXP -DUSE_MOZILLA_TYPES -DUSE_XPRINT -D_IMPL_NS_XPRINT
-D_BSD_SOURCE -I../../../dist/include -I../../../dist/include
-I/ext2d/mozilla/mozilla/dist/include/nspr -I./../gtk -I./../xlib
-I./../xlibrgb -I./../xprint -I/usr/X11R6/include -fPIC -I/usr/X11R6/include
-Wall -W -Wno-unused -Wpointer-arith -Wcast-align -pedantic -Wno-long-long -pipe
-pthread -DNDEBUG -DTRIMMED -I/usr/lib/glib/include -I/usr/X11R6/include
-I/usr/X11R6/include -include ../../../config-defs.h -DMOZILLA_CLIENT
-Wp,-MD,.deps/xprintutil.pp xprintutil.c
cpp: .deps/xprintutil.pp: No such file or directory
xprintutil.c: In function `XpuGetPrinter2':
xprintutil.c:99: warning: comparison between pointer and integer
xprintutil.c: In function `XpuGetPrinter':
xprintutil.c:134: warning: assignment makes integer from pointer without a cast
xprintutil.c: In function `XpuSetContentOrientation':
xprintutil.c:313: warning: control reaches end of non-void function
-- snip --
I assume this is your problem, right ?
Reporter | ||
Comment 23•24 years ago
|
||
> Erm... my patch was _never_ applied to CVS. Instead cls's patch (which is
> included in this bug's "description" (search for "Christopher Seawood
> 2001-06-21 12:52")) was applied to "trunk".
Roland, I applied your patch manually (using "patch") last Friday after grabbing
it from this bug report in order to test it. Today I moved the patched files
aside and updated from CVS (apparently picking up cls' patch in the process).
With your patch in place I was getting the errors I posted here (and which you
repeat in your last comment), but now everything seems to be working fine, from
a Qt build perspective anyway...
Bottom line: the Qt build issues that caused me to open this bug originally and
the other problems I had after applying your patch appear to be resolved by the
code currently in CVS.
Assignee | ||
Comment 24•24 years ago
|
||
OK... assuming I understand you correctly: Bug squished&&dead in todays CVS ?
If yes --> please "verify" it... :-)
Reporter | ||
Comment 25•24 years ago
|
||
Qt is now building with XPrint enabled. I have no printer, so I have no idea if
the code works or not - just that it builds. I am marking this bug verified,
since no one else seems to be in a position to test it.
Status: RESOLVED → VERIFIED
Assignee | ||
Comment 26•24 years ago
|
||
John C. Griggs:
1. Thanks!
2. The code compiles now for Qt-toolkit - but I am pretty sure that currently
the Qt-port cannot use the Xprint module - some glue is still missing (that one
which "enables" the module). Wanna file a bug for Qt-toolkit port and CC: me,
please ? I can only give hints due lack of installed Qt-toolkit - but the
missing code is AFAIK very trivial (once upon the time I ported it to
Xlib-toolkit... :-)
3. s/XPrint/Xprint/ :-))
Updated•16 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•