From 3808ffa3c2d215cb201e089db1075fcf8c8c6921 Mon Sep 17 00:00:00 2001 From: Jungshik Shin Date: Tue, 3 Mar 2015 17:47:29 +0000 Subject: [PATCH] ICU-10572 Make ICU data symbol private on Mac and Linux X-SVN-Rev: 37109 --- icu4c/source/tools/toolutil/pkg_genc.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/icu4c/source/tools/toolutil/pkg_genc.c b/icu4c/source/tools/toolutil/pkg_genc.c index e21140332ad..3096db87f87 100644 --- a/icu4c/source/tools/toolutil/pkg_genc.c +++ b/icu4c/source/tools/toolutil/pkg_genc.c @@ -1,5 +1,5 @@ /****************************************************************************** - * Copyright (C) 2009-2014, International Business Machines + * Copyright (C) 2009-2015, International Business Machines * Corporation and others. All Rights Reserved. ******************************************************************************* */ @@ -119,7 +119,10 @@ static const struct AssemblyType { ".globl %s\n" "\t.section .note.GNU-stack,\"\",%%progbits\n" "\t.section .rodata\n" - "\t.balign 16\n" + "\t.balign 16\n" + "#ifdef U_HIDE_DATA_SYMBOL\n" + "\t.hidden %s\n" + "#endif\n" "\t.type %s,%%object\n" "%s:\n\n", @@ -129,6 +132,9 @@ static const struct AssemblyType { /*"\t.section __TEXT,__text,regular,pure_instructions\n" "\t.section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32\n"*/ ".globl _%s\n" + "#ifdef U_HIDE_DATA_SYMBOL\n" + "\t.private_extern _%s\n" + "#endif\n" "\t.data\n" "\t.const\n" "\t.balign 16\n" @@ -264,7 +270,7 @@ writeAssemblyCode(const char *filename, const char *destdir, const char *optEntr exit(U_FILE_ACCESS_ERROR); } - getOutFilename(filename, destdir, bufferStr, entry, ".s", optFilename); + getOutFilename(filename, destdir, bufferStr, entry, ".S", optFilename); out=T_FileStream_open(bufferStr, "w"); if(out==NULL) { fprintf(stderr, "genccode: unable to open output file %s\n", bufferStr); -- 2.40.0