Mailing-List: contact cygwin-apps-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-apps-owner AT sourceware DOT cygnus DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Delivered-To: mailing list cygwin-apps AT sources DOT redhat DOT com Message-ID: <396E07DE.65080A05@ece.gatech.edu> Date: Thu, 13 Jul 2000 14:18:06 -0400 From: Charles Wilson X-Mailer: Mozilla 4.73 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: Chris Faylor CC: cygwin , cygwin-apps AT sources DOT redhat DOT com Subject: Rules for building apps [was Re: runtime failure in 20000710 and 20000711 snapshots] References: <396D364D DOT 6A019EC1 AT ece DOT gatech DOT edu> <396DC0C4 DOT CA694EB7 AT cygnus DOT com> <396DE43E DOT FCC6B59F AT ece DOT gatech DOT edu> <396DE96B DOT FB70F492 AT ece DOT gatech DOT edu> <20000713121303 DOT A9309 AT cygnus DOT com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit [cross-posted to cygwin-apps] Chris Faylor wrote: > > > >Is it expected that programs/dlls compiled with the new (20000711 and > >later) libcygwin.a will fail with older installations? > > If by "older installations" you mean "snapshots after 1.1.2", then yes. Yes, that is what I meant. Thank you for the detailed explanation. I read the cygwin-developer archives, but sometimes for us "outsiders" the forest gets hidden by the trees. > Throughout all of this, however, I expect that executables built in the > last two years will still work correctly with any snapshot. That's my > goal for 1.1.3, at least. I also expect that when 1.1.3 is released, > executables linked with libcygwin.a will work correctly with 1.1.2. > They just will not be able to take advantage of some new functionality > in 1.1.3. So, if I'm compiling a library or application that will be included in 'latest' or 'contrib' on sourceware, I should follow these rules: 1) If the library/app does not need the new functionality introduced in the snapshots post-1.1.2, then it should be compiled on a stock 1.1.2 system. No cygwin1.dll snapshots or updated libcygwin.a. Then, my package will work on 1.1.2 and 1.1.3 when it is released, but =might= fail on 1.1.2post/1.1.3pre snapshots (certainly the goal is that any app compiled with 1.1.2 will work with the snapshots, but in any case these failures if they occur will not be an issue because who'd use an old snapshot once the final 1.1.3 is released?). (Aside: Michael's vim-5.7 package was compiled using binmode.o/textmode.o, correct? Then it falls into case #2 below:) 2) If the library/app *does* depend on the new functionality introduced in the post-1.1.2 snapshots, then I can build/test with current snapshots, but I should not release it for general consumption until 1.1.3 is released. Otherwise, many FAQs will be generated since my package may (or may not) fail on any given user's system, depending on which version of cygwin they have installed (1.1.2, 1.1.2post/1.1.3pre snaps). Right? --Chuck