1 Index: source/data/Makefile.in 2 =================================================================== 3 --- source/data/Makefile.in (revision 259715) 4 +++ source/data/Makefile.in (working copy) 5 @@ -240,7 +240,14 @@ 6 # 2010-dec Removed pnames.icu. 7 # These are now hardcoded in ICU4C and only loaded in ICU4J. 8 # 9 -DAT_FILES_SHORT=unames.icu cnvalias.icu coll/ucadata.icu coll/invuca.icu nfc.nrm nfkc.nrm nfkc_cf.nrm uts46.nrm 10 +# CHROME: unames.icu is excluded from the data file. 11 +# coll/invuca.icu is also excluded. When building a ICU data file to check in, 12 +# we need to copy data/in/coll/invuca.icu to the build location (expected 13 +# by genrb : out/build/icudt46l/coll) by hand because genrb requires its 14 +# presence when compiling coll/root.txt. We have to put it back if Webkit 15 +# begins to use it. 16 +# See https://bugs.webkit.org/show_bug.cgi?id=30437#c32 about invuca.icu. 17 +DAT_FILES_SHORT=cnvalias.icu coll/ucadata.icu nfc.nrm nfkc.nrm nfkc_cf.nrm uts46.nrm 18 DAT_FILES=$(DAT_FILES_SHORT:%=$(BUILDDIR)/%) 19 20 ## BRK files 21 @@ -271,7 +278,8 @@ 22 -include $(UCMSRCDIR)/ucmfiles.mk 23 -include $(UCMSRCDIR)/ucmebcdic.mk 24 -include $(UCMSRCDIR)/ucmlocal.mk 25 -ALL_UCM_SOURCE=ibm-37_P100-1995.ucm ibm-1047_P100-1995.ucm $(UCM_SOURCE_CORE) $(UCM_SOURCE_FILES) $(UCM_SOURCE_EBCDIC) $(UCM_SOURCE_LOCAL) 26 +# CHROME: we don't need any EBCDIC converters. 27 +ALL_UCM_SOURCE=$(UCM_SOURCE_CORE) $(UCM_SOURCE_FILES) $(UCM_SOURCE_EBCDIC) $(UCM_SOURCE_LOCAL) 28 UCM_FILES = $(ALL_UCM_SOURCE:%=$(SRCDATADIR)/%) 29 CNV_FILES = $(ALL_UCM_SOURCE:%.ucm=$(BUILDDIR)/%.cnv) 30 CNV_FILES_SHORT = $(ALL_UCM_SOURCE:%.ucm=%.cnv) 31 @@ -338,7 +346,8 @@ 32 TRANSLIT_SRC_FILES = $(TRANSLIT_SRC:%=$(TRANSLITSRCDIR)/%) 33 INSTALLED_TRANSLIT_FILES = $(TRANSLIT_SOURCE:%.txt=%) $(TRANSLIT_SOURCE_LOCAL:%.txt=%) 34 endif 35 -GENRBOPTS=-k 36 +# CHROME : To save space, use '-R' option. 37 +GENRBOPTS=-k -R 38 39 ## MISC files 40 -include $(MISCSRCDIR)/miscfiles.mk 41 Index: source/tools/toolutil/pkg_genc.c 42 =================================================================== 43 --- source/tools/toolutil/pkg_genc.c (revision 259715) 44 +++ source/tools/toolutil/pkg_genc.c (working copy) 45 @@ -119,7 +119,11 @@ 46 ".globl %s\n" 47 "\t.section .note.GNU-stack,\"\",%%progbits\n" 48 "\t.section .rodata\n" 49 - "\t.balign 16\n" 50 + "\t.balign 16\n" 51 + /* The 3 lines below are added for Chrome. */ 52 + "#ifdef U_HIDE_DATA_SYMBOL\n" 53 + "\t.hidden %s\n" 54 + "#endif\n" 55 "\t.type %s,%%object\n" 56 "%s:\n\n", 57 58 @@ -129,6 +133,10 @@ 59 /*"\t.section __TEXT,__text,regular,pure_instructions\n" 60 "\t.section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32\n"*/ 61 ".globl _%s\n" 62 + /* The 3 lines below are added for Chrome. */ 63 + "#ifdef U_HIDE_DATA_SYMBOL\n" 64 + "\t.private_extern _%s\n" 65 + "#endif\n" 66 "\t.data\n" 67 "\t.const\n" 68 "\t.balign 16\n" 69 @@ -264,7 +272,7 @@ 70 exit(U_FILE_ACCESS_ERROR); 71 } 72 73 - getOutFilename(filename, destdir, bufferStr, entry, ".s", optFilename); 74 + getOutFilename(filename, destdir, bufferStr, entry, ".S", optFilename); 75 out=T_FileStream_open(bufferStr, "w"); 76 if(out==NULL) { 77 fprintf(stderr, "genccode: unable to open output file %s\n", bufferStr); 78