Closed Bug 842131 Opened 7 years ago Closed 7 years ago

Bug 840512 assumes gnu grep extension - breaks clang/bsd builds

Categories

(Firefox Build System :: General, defect)

21 Branch
Other
OpenBSD
defect
Not set

Tracking

(Not tracked)

RESOLVED FIXED
mozilla21

People

(Reporter: gaston, Assigned: gaston)

References

Details

Attachments

(1 file)

clang builds on bsd now fail at configure with :

configure: error: Only GCC 4.4 or newer supported

Bug 840512 adds a check on clang version assuming GNU grep is used :

$clang -v
clang version 3.2 (tags/RELEASE_32/final)
Target: amd64-unknown-openbsd5.3
Thread model: posix

$clang -v 2>&1 | grep -c 'clang version\|Apple.*clang'
0

two alternatives that work :

$clang -v 2>&1 | ggrep -c 'clang version\|Apple.*clang'
1

$clang -v 2>&1 | egrep -c '(clang version|Apple.*clang)'
1
The latter might be the best fix, since gnu grep called as gegrep produces the same result as bsd egrep :

$clang -v 2>&1 | gegrep -c '(clang version|Apple.*clang)'
1

I'll provide a patch when it's confirmed being the best fix by a build-system hacker :)
Blocks: 840512
https://tbpl.mozilla.org/?tree=Try&rev=7b0b0b9012ba tries the egrep -c '(a|b)' variant
All green on try, and after a quick look with mxr it looks like egrep is already commonly used in configure.in - so let's go for this version.
Assignee: nobody → landry
Attachment #714965 - Flags: review?(mh+mozilla)
Attachment #714965 - Flags: review?(mh+mozilla) → review+
https://hg.mozilla.org/mozilla-central/rev/b4a233c10cc9
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla21
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.