From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10604 invoked by alias); 20 Jun 2013 21:07:44 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 10593 invoked by uid 89); 20 Jun 2013 21:07:44 -0000 X-Spam-SWARE-Status: No, score=-3.8 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KHOP_THREADED,RCVD_IN_DNSWL_NONE,RCVD_IN_HOSTKARMA_NO,RCVD_IN_HOSTKARMA_YE,RP_MATCHES_RCVD,SPF_PASS,TW_YG autolearn=ham version=3.3.1 Received: from mk-filter-1-a-1.mail.tiscali.co.uk (HELO mk-filter-1-a-1.mail.uk.tiscali.com) (212.74.100.52) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Thu, 20 Jun 2013 21:07:42 +0000 X-Trace: 871460989/mk-filter-1.mail.uk.tiscali.com/B2C/$THROTTLED_DYNAMIC/b2c-CUSTOMER-DYNAMIC-IP/85.210.72.78/None/drstacey@tiscali.co.uk X-SBRS: None X-RemoteIP: 85.210.72.78 X-IP-MAIL-FROM: drstacey@tiscali.co.uk X-SMTP-AUTH: X-Originating-Country: GB/UNITED KINGDOM X-MUA: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130514 Thunderbird/17.0.6 X-IP-BHB: Once X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApMBACltw1FV0khO/2dsb2JhbAANTsBEgnWBFYMXAQEBBDhAEQsYCRYPCQMCAQIBRRMIAQGyFJI4j1AWg0sDnVGORg Received: from 85-210-72-78.dynamic.dsl.as9105.com (HELO [192.168.1.4]) ([85.210.72.78]) by smtp.tiscali.co.uk with ESMTP; 20 Jun 2013 22:07:39 +0100 Message-ID: <51C36F1B.8060009@tiscali.co.uk> Date: Thu, 20 Jun 2013 22:31:00 -0000 From: David Stacey User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130514 Thunderbird/17.0.6 MIME-Version: 1.0 To: cygwin@cygwin.com Subject: Re: cygport limitations References: <51C0B08E.8080900@etr-usa.com> <51C0D956.4090905@etr-usa.com> <51C1B299.1000701@cwilson.fastmail.fm> <51C1F0F9.70601@etr-usa.com> <51C1FA8E.3000307@users.sourceforge.net> <51C33F38.4080103@etr-usa.com> In-Reply-To: <51C33F38.4080103@etr-usa.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2013-06/txt/msg00538.txt.bz2 On 20/06/13 18:43, Warren Young wrote: > The last doxygen package I shipped was a good example of this: > > 1. I had to pass "--platform linux-g++" to configure to get it to > build correctly. (It might have been one of those cases where it saw > #if WINDOWS == true and did the wrong thing.) I don't know if > CYGCONF_ARGS didn't exist when I wrote that, but for some reason I > felt compelled to override the src_compile rule to pass this flag. > > 2. Though I now know about CYGCONF_ARGS, if I picked the package back > up for some reason, I don't think I could get rid of my src_compile() > override because of a second build problem: Doxygen's own > documentation has a primitive and completely separate build system. > Not only does "make" at the top level not "cd doc && make", but > doc/Makefile also doesn't understand things like DESTDIR. I ended up > needing to override src_install(), too. In defence of cygport, it does a great job of subscribing to the Alan Kay principle: simple things are simple, and hard things are possible. If you think about just how many software packages there are in the Linux world, there are also a great many different techniques for building them. Cygport is really easy for most modern packages that adhere to (or are fairly close to) a "standard" install, and at least the packages that have, ahem, specialist installation mechanisms can be built with cygport too. The other great thing about cygport is that it has become the standard for building Cygwin packages, so all (or at least most of) the Cygwin maintainers can read and understand cygport files. This means it's much easier when the time comes to hand a package on to a new maintainer. Maybe this is straying into the "[RFC] cygport documentation" thread from the apps ML, but perhaps we could do with a cygport gallery: a selection of cygport files ranging from the deliciously simple three or four line affairs through to the more stubborn and difficult cases. I know that I've picked up some handy techniques by looking at other maintainers' cygport files. Dave. PS: As the current doxygen maintainer, I am sad to report that the cygport file isn't any smaller now that I'm building doxywizard, doing a test for libclang-devel (so that I can enable or disable clang assisted parsing), and forcing it to make a debuginfo package :-) -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple