-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Dave Korn wrote: > Here are a few mods which I found useful when building GCC-4. They're > diff'd against the 1.5-distro version of cygport that I've been working with > but I could port them up to SVN if they're OK; I see that cygconf() has moved > to the autotools class file.
Let me preface with this: Some packages won't be (in cygport terms) "one-liners". gcc is certainly complex enough that some of the burden will need to be carried by the .cygport(5) rather than cygport(1). At the same time, I'll do what I can to help. But without looking at your .cygport and patches to see what you're doing, I'm really a bit in the dark. (You can send these privately if you wish.) > First up: how about adding "-p" to the diff options? It makes the > generated source patches more easily human readable. Fair enough; I'll go ahead and apply this. > Secondly: I need to ship a patched ltmain.sh with GCC-4, so I'd like it to > be added to the section where automake and libtool get a smaller set of > default_excludes. This should be uncontroversial. Not so fast. :-) automake and libtool are exceptions here because they are the original sources of those packages; imagine the case where libtool's ltmain.sh needed a patch, which would then be deployed for use in other packages' builds. All other packages use these only for building, and hence are automatically updated and therefore ignored. But you normally can't update ltmain.sh without an aclocal call to pick up the matching macros; a mixmatch of these breaks libtool. How are you updating ltmain.sh in a way that couldn't be automated? > Thirdly (and fourthly, but I don't have a patch for it yet): GCC-4 is a bit > of a pain. Most of the subdirectories are configured with autoconf-2.59, but > one uses 2.61. The directories that use 2.59 absolutely require 2.59, which > is no longer part of the cygwin distro; I haven't investigated if the one that > uses 2.61 would be ok with 2.59. That's very coordinated of them. It's bad enough that you can't use a current version, but it's going to be a real pain if different directories must use different versions. > The third patch addresses the first part of this, by allowing me to reduce > the set of prefix-related options passed by cygconf() to the top-level > configure, allowing the sub-configures to correctly default whatever they > respectively call the particular options. It's a bit ugly, and I'm not wedded > to the particular way of doing it, but it seems a shame to copy and paste the > whole of cygconf into my cygport script just to override a couple of lines. Don't you think that's a bit much just to save two arguments to configure for one package? > The fourth patch, which I haven't written yet before discussing it here, > would apply to __pkg_diff(), and would allow me to prevent "configure" and > "Makefile.in" from being added to the default_excludes list. This would let > me ship with patched versions of the generated files meaning that users could > build the whole thing without needing autotools or having to worry about > rolling back their autoconf using the Cygwin time machine or similar. Unless > you had a preferred way of doing it, I'd probably just add another variable > definition and test it with ifdef, as in the third patch, but I'll wait to see > what you have to say about all these before doing any more hacking. I see your point, given the hard dep on ac-2.59, but: 1) wouldn't you need to not exclude more than configure and Makefile.in? 2) can you still run just automake, avoiding the Makefile.in? 3) you still need to worry about automating the autoconf run for yourself and other contributors. If I see what you've got so far, I may be able to better figure this out. Hope this helps, Yaakov Cygwin Ports -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (Cygwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEAREIAAYFAklcHMQACgkQpiWmPGlmQSMrOwCg6azJfJdzOqWOqSJ8HCMU2JSq qqcAoLfYvLMBfmHszIYKGhNbG7cGXdYk =A7yU -----END PGP SIGNATURE----- ------------------------------------------------------------------------------ _______________________________________________ Cygwin-ports-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/cygwin-ports-general
