Jonas Smedegaard wrote:
perl-base is sufficient if no modules are loaded, which is the case for the postinst routines. Perl-base is part of "base" so need not be declared as a dependency (except for versioned dependencies).

You are right that defoma should care for its own dependencies.

All in all: Please drop that perl dependency.


Will do in Ubuntu's SpliX and Ghostscript, and only add cups and cups-client to the other driver packages. In all these cases we have only the simple "perl -p -i -e ..." calls in postinst, no applications written in Perl.

The Debian package has evolved, but above changes are pretty simple, so I can easily reimplement using the new packaging structure of 8.64-4.

I hesitate doing it right now, however: this change is a new feature, not a bugfix, and adding new binary packages has a risk of delaying acceptance into Debian.


Who has to accept it? Masayuki Hatta, the Ghostscript maintainer? Or also other people? Is unstable in a release freeze currently?

I would therefore prefer to finalize the other changes currently released in experimental (I just released -4 a moment ago), and _after_ that implement this last change.


OK.


What I want fixed for the package to enter unstable is this:

  a) symbols handling

  b) reduce linking

  c) coordination with dependent packages

All three are related: Library symbols are supposed to be stable, but changes to compile flags change symbols, and recent changes even made some symbols disappear that was declared earlier on (libcairo was enabled for a short time, and at least on arm and i386 it offered some symbols that are now gone). I suspect that some symbols should not even be public, but do not understand library linking that well, so I might be completely off track here...


The libcairo use in Ghostscript (Cairo output device) was dropped as it made the Ghostscript core pulling X and exactly for that the X output devices got modularized into ghostscript-x. The Cairo output device can only get reintroduced in the distro packages if it also gets modularized like the X devices.

I have cleaned up and added symbols since release of Lenny. But for some reason they are not used during install (probably some ordering issue between debhelper, CDBS and d-shlibdeps).

the linking routine warns about excess linking. I do not know if fixing that affects symbols or not.


When symbols are working properly to track changes at each release, we can contact package maintainers that link against ghostscript and coordinate with them to verify that nothing breaks linking against our cleaned up release. This seems to be only cups, foomatic-filters and libspectre, but I have checked only binary dependencies using aptitude, do not know how to look up source dependencies).


foomatic-filters links only against documented symbols of the Ghostscript API. So it cannot break on the disappearing of stray symbols like from Cairo.

Which parts of CUPS link against Ghostscript? AFAIK the CUPS filters call Ghostscript via the command line.


As you might notice from above, I really am fumbling here - I am not a C library expert. So any help would be much appreciated.



Oh, a related thing: I included a static library, as I believe is required by Debian Policy. But I suspect it is not compiled correctly: All code is currently compiled with -cPIC and if I recall correctly static library needs to be compiled _without_ -fPIC. Upstream build routines seem to handle -fPIC correctly - except for the X11 driver, which fails to build using --shared if -fPIC is not explicitly added to CFLAGS (causing it to be added twice in many places).

So if I am right that static lib needs to not use -fPIC then the package needs to either a) patch ghostscript build routines related to X11 driver, or b) compile everything twice - once as now, and another without --shared or -fPIC.


In addition to these, there is also a simpler task: check with various bugreports if the issues are solved with the experimental package, and test if it works properly at all.



Especially the second and the last change are necessarily needed in Debian, to avoid that the CUPS packages have to be different in Debian and Ubuntu.
I do not consider Ubuntu upstream to Debian. It makes much better sense to me to do coordinated work together on the Debian package.

Me not, too. I suggest to overtake these changes into Debian, once to make it possible that the CUPS package can stay synced (be the same in both Debian and Ubuntu), and second, as the CUPS package in Debian is switched to the PDF printing workflow (http://www.linuxfoundation.org/en/OpenPrinting/PDF_as_Standard_Print_Job_Format), to fix bugs in Ghostscript which cause problems in the PDF printing workflow, mainly bugs in PDF <-> PostScript conversion.

Yes, I am looking forward to that switch.


The switch is already there, the problems were that PDF <-> PostScript conversions blew up the print job files to unreasonable sizes. The needed fixes you have already added to your current Ghostscript package. The ghostscript-cups split is for another feature, the automatic update of PPDs of existing print queues.

My comment was more general, however: Instead of developing on the Ubuntu package and then "backport" the changes to Debian, I recommend doing it the other way around: Join our team, apply changes to the Debian package, and pull the result to Ubuntu.

If interested, and if you are not a Debian developer or have an Alioth account for other reasons, I would be quite happy to help you gain write access to our Git repository, so you can work directly on it.


I have an Alioth account already, due to my write access to CUPS. User name is till-guest.

If not interested, then it makes better sense to me that the Debian package cherry-picks patches from upstream ghostscript than do it from (as I see it) downstream Ubuntu.


OK, I understand.

Feel free to continue posting bugs as you do now. I just imagine us working more effectively another way :-)


OK

   Till




--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to