This is the mail archive of the cygwin 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: Cygwin build scripts in perl

On Thu, Feb 25, 2010 at 10:55:36AM -0800, Ilguiz Latypov wrote:
>cgf wrote:
>> It isn't clear from your email what you are attempting to accomplish but
>> it sounds like you are trying to build cygwin using a non-cygwin-aware
>> version of perl.  If that is the case, then this is not of interest to
>> the project or this mailing list.
>The build breaks were exposed by using the Windows native build of perl, but 
>the root causes were not specific to the build kind of perl.

I don't think so.  At least some of your problems are due to the fact
that you are using an old version of perl.  And, I suspect that some are
due to the fact that you are using a non-cygwin version of perl.

>In particular, mkimport ran objcopy against "ftruncate.o" in a
>temporary directory, but I believe the expected filename argument was
>supposed to be "t-ftruncate.o".  This is only my conjecture as I do not
>know the purpose and the intention of the implementation with these

While it is very possible that my code could have bugs, the objcopy
commands in the code exit on error so, if there were problems with the
commands no one would be able to build cygwin.  I don't see any objcopy
errors when I build Cygwin on either linux or Windows.

>In another case of a build break, perl complained that the "list form of 
>pipe" which I believe is the "dash followed by pipe" construct, was not
>implemented.  Perhaps, the implementation is an option configured during
>the perl interpreter's build, but I found the use of a rare construct 
>alarming and replaced it with a common construct.

Again, you are using an old version of perl.  The script was not
designed for that.  I use that particular construct for a very good
reason.  I won't be changing it because you found it alarming.

>>In the patch below many of the changes are either inexplicable or just
>>whitespace so I haven't spent much time trying to figure out if there
>>is a bug fix in there.  I suspect that, since many people are building
>>the Cygwin DLL, there can't be much of a problem.
>> >+  die "E: $0: $cmd_nm:\n$!\n";
>>          ^^
>>inexplicable prepending of "E:" to an error message.
>I apologize I forgot to explain the "E: " prefix as I thought its
>addition was not as important as fixing the build breaks.  I figured
>that the "E:", for "error", and "W:", for "warning", prefixes may add
>some structure to the build output from the build system analysis

This is still a gratuitous change.  There is no reason to adopt your
style preferences in this code.

>> >-	   'ar=s'=>\$ar, 'as=s'=>\$as,'nm=s'=>\$nm, 'objcopy=s'=>\$objcopy);
>> >+           'ar=s'=>\$ar, 'as=s'=>\$as,'nm=s'=>\$nm, 'objcopy=s'=>\$objcopy);
>>   ^^^^^^^^^^^^
>> gratuitous whitespace change
>The whitespace changes were to stop relying on the editor's settings by
>replacing all Tab characters with the appropriate amount of space characters. 
>This was only a bundled change that I removed from the -nowhitespace.txt diffs.
>I provided the non-whitespace diffs beside the precise ones under the file 
>names ending with "-nowhitespace.txt".

It should not be a big surprise that I'm really not interested in your
whitespace changes so including them just confuses things.

Anyway, thanks for the patch but I don't see anything here that should
be incorporated into the script.


Problem reports:
Unsubscribe info:

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