Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(24)

Unified Diff: source/tools/gennorm2/gennorm2.cpp

Issue 845603002: Update ICU to 54.1 step 1 (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/icu.git@master
Patch Set: remove unusued directories Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « source/tools/dumpce/dumpce.dsw ('k') | source/tools/gennorm2/n2builder.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: source/tools/gennorm2/gennorm2.cpp
diff --git a/source/tools/gennorm2/gennorm2.cpp b/source/tools/gennorm2/gennorm2.cpp
index 597300da24e1c2e770f729d15da6dbcc84928e0c..c665d82e985178837dfa80dacd591f9004059c88 100644
--- a/source/tools/gennorm2/gennorm2.cpp
+++ b/source/tools/gennorm2/gennorm2.cpp
@@ -1,7 +1,7 @@
/*
*******************************************************************************
*
-* Copyright (C) 2009-2012, International Business Machines
+* Copyright (C) 2009-2014, International Business Machines
* Corporation and others. All Rights Reserved.
*
*******************************************************************************
@@ -38,8 +38,6 @@
#include "unewdata.h"
#endif
-#define LENGTHOF(array) (int32_t)(sizeof(array)/sizeof((array)[0]))
-
U_NAMESPACE_BEGIN
UBool beVerbose=FALSE, haveCopyright=TRUE;
@@ -60,6 +58,7 @@ enum {
SOURCEDIR,
OUTPUT_FILENAME,
UNICODE_VERSION,
+ WRITE_C_SOURCE,
OPT_FAST
};
@@ -71,6 +70,7 @@ static UOption options[]={
UOPTION_SOURCEDIR,
UOPTION_DEF("output", 'o', UOPT_REQUIRES_ARG),
UOPTION_DEF("unicode", 'u', UOPT_REQUIRES_ARG),
+ UOPTION_DEF("csource", '\1', UOPT_NO_ARG),
UOPTION_DEF("fast", '\1', UOPT_NO_ARG)
};
@@ -102,7 +102,7 @@ main(int argc, char* argv[]) {
"Usage: %s [-options] infiles+ -o outputfilename\n"
"\n"
"Reads the infiles with normalization data and\n"
- "creates a binary file (outputfilename) with the data.\n"
+ "creates a binary or C source file (outputfilename) with the data.\n"
"\n",
argv[0]);
fprintf(stderr,
@@ -113,9 +113,10 @@ main(int argc, char* argv[]) {
"\t-u or --unicode Unicode version, followed by the version like 5.2.0\n");
fprintf(stderr,
"\t-s or --sourcedir source directory, followed by the path\n"
- "\t-o or --output output filename\n");
+ "\t-o or --output output filename\n"
+ "\t --csource writes a C source file with initializers\n");
fprintf(stderr,
- "\t --fast optimize the .nrm file for fast normalization,\n"
+ "\t --fast optimize the data for fast normalization,\n"
"\t which might increase its size (Writes fully decomposed\n"
"\t regular mappings instead of delta mappings.\n"
"\t You should measure the runtime speed to make sure that\n"
@@ -176,7 +177,11 @@ main(int argc, char* argv[]) {
filename.truncate(pathLength);
}
- builder->writeBinaryFile(options[OUTPUT_FILENAME].value);
+ if(options[WRITE_C_SOURCE].doesOccur) {
+ builder->writeCSourceFile(options[OUTPUT_FILENAME].value);
+ } else {
+ builder->writeBinaryFile(options[OUTPUT_FILENAME].value);
+ }
return errorCode.get();
@@ -239,7 +244,7 @@ void parseFile(FILE *f, Normalizer2DataBuilder &builder) {
}
if(*delimiter=='=' || *delimiter=='>') {
UChar uchars[Normalizer2Impl::MAPPING_LENGTH_MASK];
- int32_t length=u_parseString(delimiter+1, uchars, LENGTHOF(uchars), NULL, errorCode);
+ int32_t length=u_parseString(delimiter+1, uchars, UPRV_LENGTHOF(uchars), NULL, errorCode);
if(errorCode.isFailure()) {
fprintf(stderr, "gennorm2 error: parsing mapping string from %s\n", line);
exit(errorCode.reset());
« no previous file with comments | « source/tools/dumpce/dumpce.dsw ('k') | source/tools/gennorm2/n2builder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698