On 13.01.2012 09:52, Ariel Constenla-Haile wrote:
Hi *,

this is a "funny" build breaker:

cat version.map | awk -f Y:/apache/trunk/main/solenv/bin/getcsym.awk>  
../../wntmsci12.pro/misc/version_sofficeapp.dxp
awk: Y:/apache/trunk/main/solenv/bin/getcsym.awk:23: (FILENAME=->  FNR=7) 
fatal: Unmatched ( or \(: /#  to you under the Apache License, Version 2.0 (the/
dmake:  Error code 2, while making 
'../../wntmsci12.pro/misc/version_sofficeapp.dxp'
dmake:  '../../wntmsci12.pro/misc/version_sofficeapp.dxp' removed.
ERROR: error 65280 occurred while making 
/cygdrive/y/apache/trunk/main/desktop/source/app


It happens while building
desktop/source/app/version.map
desktop/source/pkgchk/unopkg/version.map

The issue is with solenv/bin/getcsym.awk that can't handle an opening
'(' with the closing ')' in the next line, as in the License header:

#  to you under the Apache License, Version 2.0 (the
#  "License"); you may not use this file except in compliance


If someone knows awk, please fix solenv/bin/getcsym.awk


getcsysm.awk contains the line

    /[ \t]*#/ { sub( substr( $0, index($0, "#")),"" ) }

that matches a #-comment and replaces it with the empty string.
The error is caused by sub() that interprets its first argument as regexp. Parentheses are special characters in regular expressions which must only occur in pairs. This is not the case with the
input line

    #  to you under the Apache License, Version 2.0 (the

Fixed by using the line

    /[ \t]*#/ { sub("#.*", "") }

to cut away the comments (SVN revision 1230971)

-Andre


Regards

Reply via email to