This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] cygport: PKG_OBSOLETES


On Jul 23 00:02, Yaakov (Cygwin/X) wrote:
> I wanted to get feedback from those using cygport regarding a
> possible new feature: PKG_OBSOLETES.  This is best explained with an
> example, so let's say I had the following:
> 
> NAME="libfoo"
> ...
> PKG_NAMES="libfoo1 libfoo-bin libfoo-devel"
> libfoo1_CONTENTS="usr/bin/cygfoo-1.dll"
> libfoo_bin_CONTENTS="etc/ usr/bin/*.exe usr/share/doc/
> usr/share/man/man[15]"
> libfoo_devel_CONTENTS="usr/include/ usr/lib/ usr/share/man/man3/"
> 
> It then becomes apparent that libfoo-bin is a really bad name for a
> package, because people looking for the executables aren't finding
> an obvious match in the package list.  Also, libfoo1 really needs
> those configuration files, so I decide to add a libfoo-common
> package, and rename libfoo-bin to foobar.  Right now, I could do the
> following:
> 
> PKG_NAMES="libfoo1 libfoo-bin libfoo-common libfoo-devel foobar"
> libfoo1_REQUIRES="libfoo-common"
> libfoo1_CONTENTS="usr/bin/cygfoo-1.dll"
> libfoo_common_CONTENTS="etc/ usr/share/doc/ usr/share/man/man5/"
> libfoo_bin_CATEGORY="_obsolete"
> libfoo_bin_REQUIRES="foobar"
> libfoo_bin_SUMMARY="Obsolete package"
> libfoo_bin_CONTENTS= # empty
> libfoo_devel_CONTENTS="usr/include/ usr/lib/ usr/share/man/man3/"
> foobar_CONTENTS="usr/bin/*.exe usr/share/man/man1/"
> 
> While that works, that's a lot of lines to handle an empty package.
> What PKG_OBSOLETES could do is make that much simpler:
> 
> PKG_NAMES="libfoo1 libfoo-common libfoo-devel foobar"
> libfoo1_REQUIRES="libfoo-common"
> libfoo1_CONTENTS="usr/bin/cygfoo-1.dll"
> libfoo_common_CONTENTS="etc/ usr/share/doc/ usr/share/man/man5/"
> libfoo_devel_CONTENTS="usr/include/ usr/lib/ usr/share/man/man3/"
> foobar_OBSOLETES="libfoo-bin"
> foobar_CONTENTS="usr/bin/*.exe usr/share/man/man1/"
> 
> The attached patch is what I'm working with at the moment.  Thoughts?

Looks good to me.

Btw., did you create the 64 bit expat packages or did Warren?  The
history isn't visible, unfortunately.  I'd like to see a solution for
the libexpat-devel vs/ libexpat1-devel problem.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]