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: [BUG] cygport-0.2.7 fails to build multiple binary packages


Stefan Björnelund wrote:
While tying to rebuild the gettext-0.15-1 package, (with the intent
with the po-mode emacs mode), I noticed that it did not build
correctly any more.

The gettext .cygport requires additional features not implemented by the stock çygport-0.2.7 framework. In particular, the relocatable package patch here:


http://sourceware.org/ml/cygwin/2006-11/msg00719.html
It's #3 on the list, but see also
http://cygwin.com/ml/cygwin/2007-01/msg00115.html
where I have withdrawn that patch (as it is now out of date and I'll update it when I release the next version of gettext/libiconv).


FWIW, the gettext .cygport ALSO requires the following patch:
http://cygwin.com/ml/cygwin/2007-01/msg00115.html

And it *might* also require this patch:
http://cygwin.com/ml/cygwin/2007-01/msg00114.html

In any case, you won't have much luck until those patches are approved by the cygport maintainer, and a new version of cygport is released. However, that might be a while:
http://cygwin.com/ml/cygwin-talk/2006-q4/msg00159.html


Most of what your patch implemented already exists in
http://cygwin.com/ml/cygwin/2007-01/msg00115.html -- and THAT patch has the advantage of NOT breaking other .cygports:


  Unfortunately this change will probably break the
  postinstall/preremove scripts in the existing multiple binary
  packages. Coincidentally this also removes the need for the
  handcrafted postinstall/preremove scripts in the gettext package,
  so this change seems to be in line with the intent of the cygport
  goals.

I think the added complexity -- and brittleness -- of "check which binary package a given info file belongs to, and add the install-info command to a matching .postinstall/.preremove script" is too high a price for the minimal improvement in usability for a few oddball packages like the gettext family.


The solution pursued in msg00115.html above is "When necessary, allow the maintainer to turn off install-info automation, and provide explicit postinstall/preremove files specific to each subpackage." This provides the maintainer with the most flexibility, without over-complicating the cygport package's internal logic.

--
Chuck
cygwin gettext maintainer


P.S. I just noticed something: since Í withdrew the relocatable patch, even if Yaakov integrates all 7 of the patches I posted on January 6 (so far: 2 down, 5 to go), the gettext .cygport STILL will not work, even if you do not attempt to enable the relocation part (that is, you leave the following commented-out):


### Uncomment the following line to enable relocation support
#inherit relocatable.cygclass

This is because gettext.cygport's src_compile(), gettext_check*(), src_test(), and src_install() functions all call the non-existant

__maybe_relocate()

function. Quick fix (assuming my other 5 patches are integrated into the cygport framework) is to add the following to gettext's .cygport file somewhere near the top:

__maybe_relocate() {
	:
}




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