Open Bug 762930 Opened 12 years ago Updated 2 years ago

14.0.1 doesn't build on linux due to GROUPING defined to __GROUPING in /usr/include/langinfo.h

Categories

(Firefox Build System :: General, defect)

14 Branch
x86
Linux
defect

Tracking

(Not tracked)

People

(Reporter: sandor.geller, Unassigned)

References

Details

User Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:13.0) Gecko/20100101 Firefox/13.0
Build ID: 20120604073936

Steps to reproduce:

tried to compile firefox 14.0b6 from source on linux


Actual results:

Compiling two files (accessible/src/base/nsAccessibilityService.cpp and accessible/src/xforms/nsXFormsAccessible.cpp) failed with this error: '__GROUPING' is not a member of 'mozilla::a11y::roles
using the preprocessor revealed that /usr/include/langinfo.h was included having this:
#ifdef __USE_GNU
# define GROUPING               __GROUPING
#endif
so during preprocessing the code was changed from roles::GROUPING to roles::__GROUPING
adding #undef GROUPING to the two files fixed the problem for me


Expected results:

firefox should have built out of the box
Component: Untriaged → Build Config
Product: Firefox → Core
QA Contact: untriaged → build-config
I saw this too when attempting to build 14.0.1 on Linux.
Blocks: Instantbird
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: 14.0b6 doesn't build on linux due to GROUPING defined to __GROUPING in /usr/include/langinfo.h → 14.0.1 doesn't build on linux due to GROUPING defined to __GROUPING in /usr/include/langinfo.h
I also saw building 15.0.1 on FC6.

I appended 5 lines below into accessible/src/base/RoleMap.h and dist/include/nsAutoPtr.h ;

#ifdef __USE_GNU
#ifdef GROUPING
#undef GROUPING
#endif
#endif
I'm sorry, it doesn't work.
I corrected wrong sources.

(In reply to Hirokazu Saito from comment #2)

> I also saw building 15.0.1 on FC6.
> 
> I appended 5 lines below into accessible/src/base/RoleMap.h and
> dist/include/nsAutoPtr.h ;
Product: Core → Firefox Build System
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.