[Tarantool-patches] [PATCH] Add missed icu symbols

Timur Safin tsafin at tarantool.org
Tue Sep 22 00:05:25 MSK 2020


: From: Vladislav Shpilevoy <v.shpilevoy at tarantool.org>
: Subject: Re: [PATCH] Add missed icu symbols
: 
...
: > +EXPORT(u_strlen)
: > +EXPORT(u_uastrcpy)
: > +EXPORT(u_austrcpy)
: > +EXPORT(u_errorName)
: > +EXPORT(u_getVersion)
: > +EXPORT(udat_open)
: > +EXPORT(udat_setLenient)
: > +EXPORT(udat_close)
: > +EXPORT(udat_parseCalendar)
: > +#if U_ICU_VERSION_MAJOR_NUM >= 55
: > +    EXPORT(udat_formatCalendar)
: > +#endif
: > +EXPORT(ucal_open)
: > +EXPORT(ucal_close)
: > +EXPORT(ucal_get)
: > +EXPORT(ucal_set)
: > +EXPORT(ucal_add)
: > +EXPORT(ucal_clear)
: > +EXPORT(ucal_clearField)
: > +EXPORT(ucal_getMillis)
: > +EXPORT(ucal_setMillis)
: > +EXPORT(ucal_getAttribute)
: > +EXPORT(ucal_setAttribute)
: > +#if U_ICU_VERSION_MAJOR_NUM >= 51
: > +    EXPORT(ucal_getTimeZoneID)
: > +#endif
: > +EXPORT(ucal_setTimeZone)
: > +EXPORT(ucal_getNow)
: 
: 3. Lets better store everything in exports.h. You can add a new
: section in this file separated by a comment, that these symbols are
: from ICU, to not scatter them among other exports. Also please sort
: the exports in the alphabetical order, as it is asked in exports.h
: comment.

Agreed with Vlad here - keeping all inside of single exports.h would make 
this code much, much easier to maintain. I'd recommend you to return back 
to the original idea with using special EXPORT_ICU(name) macros which would 
expand to EXPORT(U_ICU_ENTRY_POINT_RENAME(name)) _iff_ not U_DISABLE_RENAMING
and to EXPORT(name) otherwise.

And for +#if U_ICU_VERSION_MAJOR_NUM >= 51 I'd suggest (but not insist) to 
create yet another wrapper EXPORT_ICU_51UP(name). This would make it looks 
very consistent with others. Though with 1 usage case it might be overkill.

Regards,
Timur



More information about the Tarantool-patches mailing list