delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2013/06/20/17:08:00

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:message-id:date:from:mime-version:to:subject
:references:in-reply-to:content-type:content-transfer-encoding;
q=dns; s=default; b=c4yDgt7BljFYzUn8pXGQ1XsMqOo8sY6YMUd3syNNVrC
r27ke1/yHAvfdMoc+XIC+VKU6GtD6boucLnxp0NX91+AWNwEnR/j14k3KbPp4EQG
hNGx9eTaoCKK4lGcuRUDAyz/bcSaZwbmwA6W0i+iAQGTZ989SUtj9XQwaAHU9oVU
=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:message-id:date:from:mime-version:to:subject
:references:in-reply-to:content-type:content-transfer-encoding;
s=default; bh=2B0mWB2dCcPx9dmPxroT3khKyVE=; b=JvAQ+5PftId2rL50B
+T8BwTpnmr4GVkEnc1Pix1F6EOOesZF6C6Yx065iH6J57Cvdm+9ITJef49DwhIpX
nW7Jqjsti89rQ8DLuECAymjLy1B5YOQBFWX9lAkLzCq5HYlz4ZRfcfswX0WZ+0EK
aRFWjJ1YXM3MJ9KACg1kZOThJc=
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
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
X-Trace: 871460989/mk-filter-1.mail.uk.tiscali.com/B2C/$THROTTLED_DYNAMIC/b2c-CUSTOMER-DYNAMIC-IP/85.210.72.78/None/drstacey AT tiscali DOT co DOT uk
X-SBRS: None
X-RemoteIP: 85.210.72.78
X-IP-MAIL-FROM: drstacey AT tiscali DOT co DOT 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
Message-ID: <51C36F1B.8060009@tiscali.co.uk>
Date: Thu, 20 Jun 2013 22:07:39 +0100
From: David Stacey <drstacey AT tiscali DOT co DOT uk>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130514 Thunderbird/17.0.6
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: cygport limitations
References: <CABEPuQJDLjtbcLig1isTUJgb6RBCD8LNShbm9mTPcb9WM5S5fw AT mail DOT gmail DOT com> <51C0B08E DOT 8080900 AT etr-usa DOT com> <CABEPuQJJpRfPKSwZ7M0eTOdp1HxDcmvuy1=qXFHBw-8kLkZ1ZQ AT mail DOT gmail DOT com> <51C0D956 DOT 4090905 AT etr-usa DOT com> <51C1B299 DOT 1000701 AT cwilson DOT fastmail DOT fm> <51C1F0F9 DOT 70601 AT etr-usa DOT com> <51C1FA8E DOT 3000307 AT users DOT sourceforge DOT net> <51C33F38 DOT 4080103 AT etr-usa DOT com>
In-Reply-To: <51C33F38.4080103@etr-usa.com>

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019