ICU-5452 Use icupkg instead of gencmn for better cross compiling.

X-SVN-Rev: 20685
This commit is contained in:
George Rhoten 2006-11-28 00:42:10 +00:00
parent f559c01e8b
commit 7edb8302ac
11 changed files with 21 additions and 19 deletions

View file

@ -1,6 +1,6 @@
## -*-makefile-*-
#******************************************************************************
# Copyright (C) 1999-2005, International Business Machines
# Copyright (C) 1999-2006, International Business Machines
# Corporation and others. All Rights Reserved.
#******************************************************************************
# This Makefile.inc is designed to be included into projects which make use
@ -136,7 +136,7 @@ MIDDLE_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION_MAJOR)
# Use as follows: $(INVOKE) $(GENRB) arguments ..
INVOKE = $(LDLIBRARYPATH_ENVVAR)=$(libdir):$$$(LDLIBRARYPATH_ENVVAR) $(LEAK_CHECKER)
GENCCODE = $(sbindir)/genccode
GENCMN = $(sbindir)/gencmn
ICUPKG = $(sbindir)/icupkg
GENRB = $(bindir)/genrb
PKGDATA = $(bindir)/pkgdata

View file

@ -1,6 +1,6 @@
#******************************************************************************
#
# Copyright (C) 2000-2004, International Business Machines
# Copyright (C) 2000-2006, International Business Machines
# Corporation and others. All Rights Reserved.
#
#******************************************************************************
@ -52,6 +52,6 @@ ld_rpath_suf=@ld_rpath_suf@
##### Add the following to source/config/Makefile.in
GENCCODE=$(BINDIR)/genccode
GENCMN=$(BINDIR)/gencmn
ICUPKG=$(BINDIR)/icupkg

View file

@ -1,6 +1,6 @@
#******************************************************************************
#
# Copyright (C) 2000-2004, International Business Machines
# Copyright (C) 2000-2006, International Business Machines
# Corporation and others. All Rights Reserved.
#
#******************************************************************************
@ -59,6 +59,6 @@ ld_rpath_suf=@ld_rpath_suf@
##### Add the following to source/config/Makefile.in
GENCCODE=$(BINDIR)/genccode
GENCMN=$(BINDIR)/gencmn
ICUPKG=$(BINDIR)/icupkg

View file

@ -1,6 +1,6 @@
#******************************************************************************
#
# Copyright (C) 2000-2004, International Business Machines
# Copyright (C) 2000-2006, International Business Machines
# Corporation and others. All Rights Reserved.
#
#******************************************************************************
@ -16,5 +16,5 @@ include $(top_builddir)/icudefs.mk
##### Add the following to source/config/Makefile.in
GENCCODE=$(BINDIR)/genccode
GENCMN=$(BINDIR)/gencmn
ICUPKG=$(BINDIR)/icupkg

View file

@ -148,6 +148,8 @@ main(int argc, char* argv[]) {
U_MAIN_INIT_ARGS(argc, argv);
fprintf(stderr, "Warning: gencmn is an obsolete tool and it will be removed in the next ICU release.\nPlease use the icupkg tool instead.\n");
/* preset then read command line options */
options[4].value=u_getDataDirectory();
options[6].value=COMMON_DATA_NAME;

View file

@ -506,7 +506,6 @@ main(int argc, char *argv[]) {
listPkg=readList(sourcePath, options[OPT_ADD_LIST].value, TRUE);
if(listPkg!=NULL) {
pkg->addItems(*listPkg);
delete listPkg;
isModified=TRUE;
} else {
printUsage(pname, FALSE);

View file

@ -77,7 +77,7 @@ void pkg_mode_common(UPKGOptions *o, FileStream *makefile, UErrorCode *status)
T_FileStream_writeLine(makefile, tmp);
T_FileStream_writeLine(makefile, "$(TARGET): $(CMNLIST) $(DATAFILEPATHS)\n"
"\t$(INVOKE) $(GENCMN) -n $(CNAME) -c -s $(SRCDIR) -d $(TARGETDIR) 0 $(CMNLIST)\n\n");
"\t$(INVOKE) $(ICUPKG) -t$(ICUDATA_CHAR) -c -s $(SRCDIR) -a $(CMNLIST) new $(TARGETDIR)/$(CNAME).dat\n\n");
if(o->hadStdin == FALSE) { /* shortcut */
T_FileStream_writeLine(makefile, "$(CMNLIST): $(LISTFILES)\n"

View file

@ -166,7 +166,7 @@ void pkg_mode_dll(UPKGOptions *o, FileStream *makefile, UErrorCode *status)
T_FileStream_writeLine(makefile, "# 'TOCOBJ' contains C Table of Contents objects [if any]\n");
sprintf(tmp, "$(TEMP_DIR)/$(NAME)_dat.c: $(CMNLIST)\n"
"\t$(INVOKE) $(GENCMN) -e $(ENTRYPOINT) -n $(NAME) -S -s $(SRCDIR) -d $(TEMP_DIR) 0 $(CMNLIST)\n\n");
"\t$(INVOKE) $(ICUPKG) -t$(ICUDATA_CHAR) -c -s $(SRCDIR) -a $(CMNLIST) new $(TARGETDIR)/$(CNAME).dat\n\n");
T_FileStream_writeLine(makefile, tmp);
sprintf(tmp, "TOCOBJ= $(NAME)_dat%s \n\n", OBJ_SUFFIX);

View file

@ -396,7 +396,7 @@ pkg_mak_writeAssemblyHeader(FileStream *f, const UPKGOptions *o)
T_FileStream_writeLine(f, "BASE_OBJECTS=$(NAME)_dat.o\n");
T_FileStream_writeLine(f, "\n");
T_FileStream_writeLine(f, "$(TEMP_DIR)/$(NAME).dat: $(CMNLIST) $(DATAFILEPATHS)\n");
T_FileStream_writeLine(f, "\t$(INVOKE) $(GENCMN) -c -e $(ENTRYPOINT) -n $(NAME) -s $(SRCDIR) -t dat -d $(TEMP_DIR) 0 $(CMNLIST)\n");
T_FileStream_writeLine(f, "\t$(INVOKE) $(ICUPKG) -t$(ICUDATA_CHAR) -c -s $(SRCDIR) -a $(CMNLIST) new $(TARGETDIR)/$(CNAME).dat\n");
T_FileStream_writeLine(f, "\n");
T_FileStream_writeLine(f, "$(TEMP_DIR)/$(NAME)_dat.o : $(TEMP_DIR)/$(NAME).dat\n");
T_FileStream_writeLine(f, "\t$(INVOKE) $(GENCCODE) $(GENCCODE_ASSEMBLY) -n $(NAME) -e $(ENTRYPOINT) -d $(TEMP_DIR) $<\n");

View file

@ -207,7 +207,7 @@ void pkg_mode_static(UPKGOptions *o, FileStream *makefile, UErrorCode *status)
T_FileStream_writeLine(makefile, "# 'TOCOBJ' contains C Table of Contents objects [if any]\n");
sprintf(tmp, "$(TEMP_PATH)$(NAME)_dat.c: $(CMNLIST)\n"
"\t$(INVOKE) $(GENCMN) -e $(ENTRYPOINT) -n $(NAME) -S -s $(SRCDIR) -d $(TEMP_DIR) 0 $(CMNLIST)\n\n");
"\t$(INVOKE) $(ICUPKG) -t$(ICUDATA_CHAR) -c -s $(SRCDIR) -a $(CMNLIST) new $(TARGETDIR)/$(CNAME).dat\n\n");
T_FileStream_writeLine(makefile, tmp);
sprintf(tmp, "TOCOBJ= $(NAME)_dat.$(STATIC_O)\n\n");

View file

@ -42,14 +42,15 @@ void writeCmnRules(UPKGOptions *o, FileStream *makefile)
infiles = o->files;
sprintf(tmp, "\"$(TARGETDIR)\\$(CMNTARGET)\" : $(DATAFILEPATHS)\n"
"\t%s\"$(GENCMN)\" %s%s%s-d \"$(TARGETDIR)\" -s \"$(SRCDIR)\" -n \"$(NAME)\" 0 <<\n",
"\t%s\"$(ICUPKG)\" -t%c %s%s%s -s \"$(SRCDIR)\" -a $(LISTFILES) new \"$(TARGETDIR)\\$(CMNTARGET)\"\n",
(o->verbose ? "" : "@"),
(U_IS_BIG_ENDIAN ? 'b' : 'l'),
(o->comment ? "-C \"" : ""),
(o->comment ? o->comment : ""),
(o->comment ? "\" " : ""));
T_FileStream_writeLine(makefile, tmp);
pkg_writeCharList(makefile, infiles, "\n", -1);
/* pkg_writeCharList(makefile, infiles, "\n", -1);*/
/*
for(;infiles;infiles = infiles->next) {
if(infiles->str[0] != '"' && infiles->str[uprv_strlen(infiles->str)-1] != '"') {
@ -60,8 +61,8 @@ void writeCmnRules(UPKGOptions *o, FileStream *makefile)
T_FileStream_writeLine(makefile, tmp);
}
*/
sprintf(tmp, "\n<<\n");
T_FileStream_writeLine(makefile, tmp);
/* sprintf(tmp, "\n<<\n");
T_FileStream_writeLine(makefile, tmp);*/
}
@ -82,11 +83,11 @@ void pkg_mode_windows(UPKGOptions *o, FileStream *makefile, UErrorCode *status)
if (CONTAINS_REAL_PATH(o)) {
sprintf(tmp2,
"GENCMN = $(ICUROOT)%sgencmn.exe\n", separator);
"ICUPKG = $(ICUROOT)%sicupkg.exe\n", separator);
}
else {
sprintf(tmp2,
"GENCMN = $(ICUROOT)%sbin\\gencmn.exe\n", separator);
"ICUPKG = $(ICUROOT)%sbin\\icupkg.exe\n", separator);
}
T_FileStream_writeLine(makefile, tmp2);