This patch fixes the following compile failures: In file included from platform/text/TextAllInOne.cpp:30: platform/text/TextBreakIteratorICU.cpp: In function ‘bool WebCore::textInChunkOrOutOfRange(UText*, int64_t, int64_t, UBool, UBool&)’: platform/text/TextBreakIteratorICU.cpp:217:28: error: ‘TRUE’ was not declared in this scope 217 | isAccessible = TRUE; | ^~~~ platform/text/TextBreakIteratorICU.cpp:222:28: error: ‘FALSE’ was not declared in this scope 222 | isAccessible = FALSE; | ^~~~~ platform/text/TextBreakIteratorICU.cpp:231:28: error: ‘TRUE’ was not declared in this scope 231 | isAccessible = TRUE; | ^~~~ platform/text/TextBreakIteratorICU.cpp:236:28: error: ‘FALSE’ was not declared in this scope 236 | isAccessible = FALSE; | ^~~~~ platform/text/TextBreakIteratorICU.cpp: In function ‘UBool WebCore::textLatin1Access(UText*, int64_t, UBool)’: platform/text/TextBreakIteratorICU.cpp:246:16: error: ‘FALSE’ was not declared in this scope 246 | return FALSE; | ^~~~~ platform/text/TextBreakIteratorICU.cpp:266:12: error: ‘TRUE’ was not declared in this scope 266 | return TRUE; | ^~~~ platform/text/TextBreakIteratorICU.cpp: In function ‘UBool WebCore::textUTF16Access(UText*, int64_t, UBool)’: platform/text/TextBreakIteratorICU.cpp:367:16: error: ‘FALSE’ was not declared in this scope 367 | return FALSE; | ^~~~~ platform/text/TextBreakIteratorICU.cpp:387:12: error: ‘TRUE’ was not declared in this scope 387 | return TRUE; | ^~~~ ... In file included from platform/text/TextAllInOne.cpp:32: platform/text/TextCodecICU.cpp: In member function ‘void WebCore::TextCodecICU::createICUConverter() const’: platform/text/TextCodecICU.cpp:272:42: error: ‘TRUE’ was not declared in this scope 272 | ucnv_setFallback(m_converterICU, TRUE); | ^~~~ The compile failures are fixed by replacing the use of FALSE/TRUE with false/true as suggested by [1] and/or [2]. A better description is directly from the patch/pull-request ([3]): Traditionally, ICU4C has defined its own `FALSE`=0 / `TRUE`=1 macros for use with `UBool`. Starting with ICU 68 (2020q4), we no longer define these in public header files (unless `U_DEFINE_FALSE_AND_TRUE`=1), in order to avoid name collisions with code outside ICU defining enum constants and similar with these names. and explains why it occurred just recently/since the icu bump to version 68-1 ([4])... [1] https://unicode-org.atlassian.net/browse/ICU-21267 [2] https://unicode-org.atlassian.net/browse/ICU-21148 [3] |
||
---|---|---|
arch | ||
board | ||
boot | ||
configs | ||
docs | ||
fs | ||
linux | ||
package | ||
support | ||
system | ||
toolchain | ||
utils | ||
.defconfig | ||
.flake8 | ||
.gitignore | ||
.gitlab-ci.yml | ||
CHANGES | ||
Config.in | ||
Config.in.legacy | ||
COPYING | ||
DEVELOPERS | ||
Makefile | ||
Makefile.legacy | ||
README |
Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation. The documentation can be found in docs/manual. You can generate a text document with 'make manual-text' and read output/docs/manual/manual.text. Online documentation can be found at http://buildroot.org/docs.html To build and use the buildroot stuff, do the following: 1) run 'make menuconfig' 2) select the target architecture and the packages you wish to compile 3) run 'make' 4) wait while it compiles 5) find the kernel, bootloader, root filesystem, etc. in output/images You do not need to be root to build or run buildroot. Have fun! Buildroot comes with a basic configuration for a number of boards. Run 'make list-defconfigs' to view the list of provided configurations. Please feed suggestions, bug reports, insults, and bribes back to the buildroot mailing list: buildroot@buildroot.org You can also find us on #buildroot on Freenode IRC. If you would like to contribute patches, please read https://buildroot.org/manual.html#submitting-patches