QT

Differences between revisions 1 and 2
Revision 1 as of 2008-09-28 18:20:16
Size: 3806
Editor: APuteaux-153-1-41-44
Comment:
Revision 2 as of 2008-09-28 18:33:33
Size: 3955
Editor: APuteaux-153-1-41-44
Comment:
Deletions are marked like this. Additions are marked like this.
Line 85: Line 85:
Build the package twice with an OBJDIR and two different configure preferences.
Introduce xulrunner-1.9.1-gtk and xulrunner-1.9.1-qt with
 * Build the package twice with an OBJDIR and two different configure preferences.
 * Introduce xulrunner-1.9.1-gtk and xulrunner-1.9.1-qt with
Line 90: Line 90:
Depends: xulrunner-1.9.1-gtk (>= ${source:Upstream-Version}) | xulrunner-1.9.1-qt (>= ${source:Upstream-Version}), Depends: xulrunner-1.9.1-gtk (= ${binary:Version}) | xulrunner-1.9.1-qt (= ${binary:Version}),
Line 94: Line 94:
Conflicts: xulrunner-1.9.1-qt
Line 96: Line 97:
Conflicts: xulrunner-1.9.1-gtk
Line 118: Line 120:
or, we could assume that gtk users are also gnome users and reuse xulrunner-1.9.1-gnome-support.

Ideas for the gtk vs qt Mozilla builds

Introduction

In the Shiretoko/3.1/1.9.1 branch, Qt is now an alternative to Gtk2. In Ubuntu, this is interesting for KDE users. To avoid the proliferation of unsupported packages, the Ubuntu Mozillateam should support this.

From upstream's point of view, this is as simple as using --enable-default-toolkit=cairo-qt (we have cairo-gtk2 by default).

  • --enable-default-toolkit=cairo-qt

xulunner-1.9.1

  • debian/control
    Build-Depends: ..., libqt4-dev
  • cairo:

system cairo (at least up to 1.8.0) could not be used as mozilla needs cairo-qpainter which is for now only in the mozilla branch. This is unfortunate because of the lcd-filter debacle so if we do this, we should consider porting the lcd filter patch to xul.

  • --disable-system-cairo
  • gnome:

we should at least drop gnomevfs and gnomeui from the configure switches, and drop gnomevfs from the extensions list (configure is already doing that at build time).

  • --disable-gnomevfs --disable-gnomeui --enable-extensions=default,...,-gnomevfs
  • build:

a build with the switches mentioned above goes smoothly up to the install step. From debian/xulrunner-1.9.1.install, those files are no longer built:

  • debian/tmp/usr/lib/xulrunner-1.9.1*/components/libimgicon.so
    debian/tmp/usr/lib/xulrunner-1.9.1*/components/libdbusservice.so

Note: dbus is available on kde but the configure test wants dbus + glib, and glib is ignored for non gtk2 builds.

of course, the files in the gnome-support package are missing:

  • debian/tmp/usr/lib/xulrunner-1.9.1*/components/libmozgnome.so
    debian/tmp/usr/lib/xulrunner-1.9.1*/components/libnkgnomevfs.so

The following files are also missing but do not require debian/xulrunner-1.9.1.install to be updated:

  • debian/tmp/usr/lib/xulrunner-1.9.1*/icons/*
    debian/tmp/usr/lib/xulrunner-1.9.1*/chrome/icons/*
    debian/tmp/usr/lib/xulrunner-1.9.1*/components/filepicker.xpt
    debian/tmp/usr/lib/xulrunner-1.9.1*/components/nsFilePicker.js

The following files are new:

  • debian/tmp/usr/lib/xulrunner-1.9.1*/components/gtkqticonsconverter.js
    debian/tmp/usr/lib/xulrunner-1.9.1*/components/gtkqticonsconverter.xpt
  • linker

From all the files in the new tree, only those two are linked against qt libs

  • debian/tmp/usr/lib/xulrunner-1.9.1*/libxul.so
    debian/tmp/usr/lib/xulrunner-1.9.1*/xulrunner-bin

Packaging changes - proposal

  • Build the package twice with an OBJDIR and two different configure preferences.
  • Introduce xulrunner-1.9.1-gtk and xulrunner-1.9.1-qt with
    Package: xulrunner-1.9.1
    Depends: xulrunner-1.9.1-gtk (= ${binary:Version}) | xulrunner-1.9.1-qt (= ${binary:Version}),
             ${shlibs:Depends}, ${misc:Depends}
    
    Package: xulrunner-1.9.1-gtk
    Conflicts: xulrunner-1.9.1-qt
    
    Package: xulrunner-1.9.1-qt
    Conflicts: xulrunner-1.9.1-gtk

and in xulrunner-1.9.1-gtk (from the 1st build):

  • usr/lib/xulrunner-1.9.1*/libxul.so
    usr/lib/xulrunner-1.9.1*/xulrunner-bin
    usr/lib/xulrunner-1.9.1*/components/libimgicon.so
    usr/lib/xulrunner-1.9.1*/components/libdbusservice.so
    usr/lib/xulrunner-1.9.1*/icons/*
    usr/lib/xulrunner-1.9.1*/chrome/icons/*
    usr/lib/xulrunner-1.9.1*/components/filepicker.xpt
    usr/lib/xulrunner-1.9.1*/components/nsFilePicker.js

and in xulrunner-1.9.1-qt (from the 2nd build):

  • usr/lib/xulrunner-1.9.1*/libxul.so
    usr/lib/xulrunner-1.9.1*/xulrunner-bin
    usr/lib/xulrunner-1.9.1*/components/gtkqticonsconverter.js
    usr/lib/xulrunner-1.9.1*/components/gtkqticonsconverter.xpt

or, we could assume that gtk users are also gnome users and reuse xulrunner-1.9.1-gnome-support.

firefox-3.1

it seems we need 2 source packages as we want different build-deps. This is unfortunate. Ideas??

MozillaTeam/QT (last edited 2008-09-29 01:14:56 by APuteaux-153-1-41-44)