Closed Bug 1298614 Opened 8 years ago Closed 8 years ago

Change minimum ICU version to ICU55 in icu.m4

Categories

(Firefox Build System :: General, defect)

defect
Not set
normal

Tracking

(firefox51 affected)

RESOLVED DUPLICATE of bug 1316540
Tracking Status
firefox51 --- affected

People

(Reporter: anba, Unassigned)

References

Details

SpiderMonkey no longer compiles with the current minimum ICU version (ICU50), because we're now using features from ICU55.


Steps to reproduce:
- Install ICU 50.1.2
- Verify `pkg-config --modversion icu-i18n` prints "50.1.2"
- Compile SM with `../configure --enable-debug --disable-optimize --disable-tests --with-system-icu && make -j8`


Compiler errors:
---
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp: In function ‘js::ImmutablePropertyNamePtr JSAtomState::* GetFieldTypeForFormatField(UDateFormatField)’:
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2158:12: error: ‘UDAT_TIMEZONE_LOCALIZED_GMT_OFFSET_FIELD’ was not declared in this scope
       case UDAT_TIMEZONE_LOCALIZED_GMT_OFFSET_FIELD:
            ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2159:12: error: ‘UDAT_TIMEZONE_ISO_FIELD’ was not declared in this scope
       case UDAT_TIMEZONE_ISO_FIELD:
            ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2160:12: error: ‘UDAT_TIMEZONE_ISO_LOCAL_FIELD’ was not declared in this scope
       case UDAT_TIMEZONE_ISO_LOCAL_FIELD:
            ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2162:12: error: ‘UDAT_RELATED_YEAR_FIELD’ was not declared in this scope
       case UDAT_RELATED_YEAR_FIELD:
            ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2165:12: error: ‘UDAT_TIME_SEPARATOR_FIELD’ was not declared in this scope
       case UDAT_TIME_SEPARATOR_FIELD:
            ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp: In function ‘bool intl_FormatToPartsDateTime(JSContext*, void**, double, JS::MutableHandleValue)’:
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2193:5: error: ‘UFieldPositionIterator’ was not declared in this scope
     UFieldPositionIterator* fpositer = ufieldpositer_open(&status);
     ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2193:29: error: ‘fpositer’ was not declared in this scope
     UFieldPositionIterator* fpositer = ufieldpositer_open(&status);
                             ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2193:66: error: ‘ufieldpositer_open’ was not declared in this scope
     UFieldPositionIterator* fpositer = ufieldpositer_open(&status);
                                                                  ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp: In lambda function:
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2198:80: error: ‘ufieldpositer_close’ was not declared in this scope
     auto closeFieldPosIter = MakeScopeExit([&]() { ufieldpositer_close(fpositer); });
                                                                                ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp: In function ‘bool intl_FormatToPartsDateTime(JSContext*, void**, double, JS::MutableHandleValue)’:
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2202:47: error: ‘udat_formatForFields’ was not declared in this scope
                              fpositer, &status);
                                               ^
/home/andre/git/mozilla-central/js/src/builtin/Intl.cpp:2262:81: error: ‘ufieldpositer_next’ was not declared in this scope
     while ((fieldInt = ufieldpositer_next(fpositer, &beginIndexInt, &endIndexInt)) >= 0) {
                                                                                 ^
---
Blocks: 966559
Fixed in bug 1316540.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → DUPLICATE
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.