[64bit] Some packaging problems
Charles Wilson
cygwin@cwilson.fastmail.fm
Wed Jul 17 13:26:00 GMT 2013
On 7/17/2013 4:30 AM, Corinna Vinschen wrote:
> On Jul 16 17:25, Ken Brown wrote:
>> 1. The x86_64 distro has both libexpat1-devel and libexpat-devel,
>> with the files of the latter being a subset of those of the former.
>> In addition, libexpat1-devel is missing a setup.hint, so it is put
>> into the Misc category and installed by default. BTW, there are
>> packages depending on both of these in the distro, so there will be
>> other changes needed after one of them is removed.
>
> For all I can tell, libexpat-devel seems to be the old version,
> libexpat1-devel the new one. We should probably manually fix the deps
> in the various hint files to require libexpat1-devel and remove the
> libexpat-devel package. Yaakov?
Unless two different versions of a library's -devel package can coexist
-- e.g. all include files and static/import libraries are in versioned
subdirs:
/usr/include/libpng15/*.h /usr/lib/libpng15/*.a
/usr/include/libpng16/*.h /usr/lib/libpng16/*.a
we don't typically put the DLL number in the -devel package name. In
this case, the libexpat1-devel package contains:
/usr/include/expat.h
/usr/include/expat_external.h
/usr/lib/libexpat.a
/usr/lib/libexpat.dll.a
/usr/lib/pkgconfig/expat.pc
so it's not like it could coexist with a future libexpat2-devel. I
think the "libexpat1-devel" name in 2.1.0-2 is a mistake, and it expat
should be repackaged to use "traditional" names, as it did in 2.1.0-1:
expat
expat-debuginfo
libexpat1
libexpat-devel (no "1")
Then the existing requires: in other package's setup.hints do not need
to be changed.
>> 2. gdb has the wrong setup.hint; it's the same as the setup.hint for
>> rebase. In particular, this puts it into the Base category.
>
> Thanks, I fixed the setup.hint manually and I'm just building a new gdb
> package with the fixed cygport file.
>
>> 3. The dependencies man ==> groff ==> perl bring perl into a default
>> install.
>
> Hmm, is that bad?
Very. perl is just as bad python, when it comes to creating a trimmed
down installation, and we just went thru a significant amount of pain to
split cygutils specifically to avoid pulling python in as a dependency
of a Base install.
> OTOH, the 32 bit groff only requires some default
> libs, not bash, sed, and perl. Why's that?
groff ships with some scripts
==== /usr/bin/afmtodit ====
#! /usr/bin/perl -w
==== /usr/bin/chem ====
#! /usr/bin/env perl
==== /usr/bin/eqn2graph ====
#! /bin/sh
==== /usr/bin/gdiffmk ====
#! /bin/sh
==== /usr/bin/grap2graph ====
#! /bin/sh
==== /usr/bin/groffer ====
#! /usr/bin/env perl
==== /usr/bin/grog ====
#! /usr/bin/env perl
==== /usr/bin/mmroff ====
#! /usr/bin/perl
==== /usr/bin/neqn ====
#! /bin/sh
==== /usr/bin/nroff ====
#! /bin/sh
==== /usr/bin/pdfroff ====
#! /bin/sh
==== /usr/bin/pic2graph ====
#! /bin/sh
==== /usr/bin/roff2dvi ====
#! /usr/bin/env perl
==== /usr/bin/roff2html ====
#! /usr/bin/env perl
==== /usr/bin/roff2pdf ====
#! /usr/bin/env perl
==== /usr/bin/roff2ps ====
#! /usr/bin/env perl
==== /usr/bin/roff2text ====
#! /usr/bin/env perl
==== /usr/bin/roff2x ====
#! /usr/bin/env perl
and cygport is smart. We should probably split the groff package up as
well...fedora has
groff-base
groff-perl
groff-x11 (*)
groff-doc
groff
groff-base: "contains only necessary parts of groff formatting system
which are required to display manual pages, and the groff's default
dispaly device (PostScript)"
requires: sed sh
groff-perl: "contains the parts of the groff text processor package that
require Perl. These include the afmtodit (font processor for creating
PostScript font files), groffer (tool for displaying groff files), grog
(utility that can be used to automatically determine groff command-line
options), chem (groff preprocessor for producing chemical structure
diagrams), mmroff (reference preprocessor) and roff2dvi roff2html
roff2pdf roff2ps roff2text roff2x (roff code converters)."
requires: coreutils(env) perl sh groff-base (+various perl modules)
groff-x11: "contains the parts of the groff text processor package that
require X Windows System. These include gxditview (display groff
intermediate output files on X Window System display) and xtotroff
(converts X font metrics into groff font metrics)."
requires: groff-base
groff-doc: "includes additional documentation for groff text processor
package. It contains examples, documentation for PIC language and
documentation for creating PDF files."
requires: groff
Presumably, "groff" contains everything else.
(*) I don't think our groff distribution contains the x11 stuff anyway.
--
Chuck
More information about the Cygwin-apps
mailing list