import icu4c-3.6

ICU (International Components for Unicode) is a set for C/C++ and Java
librairies providing Unicode and globalization support. icu4c is the
C/C++ version.

ICU services include code page conversion, collation (comparison using
locale-specific ordering), locale-wise formatting, Unicode regexp and
bidirectionnal text handling.

ICU is available under an open source non-copyleft licence.

from MAINTAINER Vincent Gross via jasper@, with hints from ajacoutot@
and tweak by me
ok jasper@
This commit is contained in:
simon 2007-07-19 21:52:09 +00:00
parent 029f3df15e
commit 0ec3e0dfd0
10 changed files with 352 additions and 0 deletions

47
textproc/icu4c/Makefile Normal file
View File

@ -0,0 +1,47 @@
# $OpenBSD: Makefile,v 1.1.1.1 2007/07/19 21:52:09 simon Exp $
SHARED_ONLY= Yes
COMMENT= International Components for Unicode
DISTNAME= icu4c-3_6-src
PKGNAME= icu4c-3.6
SO_VERSION= 0.0
.for _lib in icudata icui18n icuio icule iculx icutu icuuc
SHARED_LIBS+= ${_lib} ${SO_VERSION}
.endfor
CATEGORIES= textproc devel
HOMEPAGE= http://www.icu-project.org
MAINTAINER= Vincent Gross <marin.shadok@gmail.com>
# ICU
# http://source.icu-project.org/repos/icu/icu/trunk/license.html
PERMIT_PACKAGE_CDROM= Yes
PERMIT_PACKAGE_FTP= Yes
PERMIT_DISTFILES_CDROM= Yes
PERMIT_DISTFILES_FTP= Yes
WANTLIB= c m pthread stdc++
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=icu/} \
ftp://ftp.software.ibm.com/software/globalization/icu/3.6/
EXTRACT_SUFX= .tgz
SEPARATE_BUILD= concurrent
USE_GMAKE= Yes
CONFIGURE_STYLE= gnu
CONFIGURE_ARGS+= ${CONFIGURE_SHARED} \
--disable-renaming
WRKDIST= ${WRKDIR}/icu
WRKSRC= ${WRKDIST}/source
REGRESS_TARGET= check
pre-configure:
ln -sf ./icudt36l.dat ${WRKSRC}/data/in/icudt0l.dat
perl -pi -e 's,!!SO_VERSION!!,${SO_VERSION},' ${WRKSRC}/configure
.include <bsd.port.mk>

5
textproc/icu4c/distinfo Normal file
View File

@ -0,0 +1,5 @@
MD5 (icu4c-3_6-src.tgz) = YkP3oZ4D4FQDzoTll1ENTA==
RMD160 (icu4c-3_6-src.tgz) = siesn/YBk2K8TQHBhDOGmw4P8cI=
SHA1 (icu4c-3_6-src.tgz) = tYDCgC5062r35eGbBcfXxdjGI/k=
SHA256 (icu4c-3_6-src.tgz) = UTXo1p1iBtMgUV33ru5wJ3Easa752NvylXGpepdGsEE=
SIZE (icu4c-3_6-src.tgz) = 10183358

View File

@ -0,0 +1,14 @@
$OpenBSD: patch-source_Makefile_in,v 1.1.1.1 2007/07/19 21:52:09 simon Exp $
--- source/Makefile.in.orig Thu Mar 30 02:33:20 2006
+++ source/Makefile.in Thu Jul 19 22:38:13 2007
@@ -174,8 +174,8 @@ $(top_builddir)/config/Makefile.inc: $(srcdir)/config/
$(top_builddir)/config/icu-config: $(top_builddir)/Makefile $(top_srcdir)/config/icu-config-top $(top_srcdir)/config/icu-config-bottom $(top_builddir)/config/Makefile.inc @platform_make_fragment@ $(top_srcdir)/config/make2sh.sed
-$(RMV) $@
- $(INSTALL_SCRIPT) $(top_srcdir)/config/icu-config-top $@
- chmod u+w $@
+ cp $(top_srcdir)/config/icu-config-top $@
+ chmod 755 $@
@echo "# Following from @platform_make_fragment@" >> $@
sed -f $(top_srcdir)/config/make2sh.sed < $(top_builddir)/config/Makefile.inc | grep -v '#M#' | uniq >> $@
sed -f $(top_srcdir)/config/make2sh.sed < @platform_make_fragment@ | grep -v '#M#' | uniq >> $@

View File

@ -0,0 +1,12 @@
$OpenBSD: patch-source_common_Makefile_in,v 1.1.1.1 2007/07/19 21:52:09 simon Exp $
--- source/common/Makefile.in.orig Tue Jun 26 22:06:27 2007
+++ source/common/Makefile.in Tue Jun 26 22:08:42 2007
@@ -60,7 +60,7 @@ CPPFLAGS += -I$(top_builddir)/common
endif
CPPFLAGS += -I$(srcdir) -I$(top_srcdir)/i18n $(LIBCPPFLAGS)
DEFS += -DU_COMMON_IMPLEMENTATION
-LDFLAGS += $(LDFLAGSICUUC)
+LDFLAGS += -fPIC $(LDFLAGSICUUC)
# $(LIBICUDT) is either stub data or the real DLL common data.
LIBS = $(LIBICUDT) $(DEFAULT_LIBS)

View File

@ -0,0 +1,32 @@
Needed to adjust the version numbering scheme. Without it,
librairies ends up with weird names.
--- source/configure.orig Tue Aug 15 10:24:14 2006
+++ source/configure Mon Jun 25 21:22:29 2007
@@ -309,7 +309,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS PACKAGE VERSION LIB_VERSION LIB_VERSION_MAJOR UNICODE_VERSION build build_cpu build_vendor build_os host host_cpu host_vendor host_os CPPFLAGS CC CFLAGS LDFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA U_MAKE DOXYGEN ARFLAGS COMPILE_LINK_ENVVAR LIB_M ENABLE_SHARED ENABLE_STATIC ENABLE_DEBUG ENABLE_RELEASE U_DEFAULT_SHOW_DRAFT RANLIB ac_ct_RANLIB AR U_DISABLE_RENAMING U_ENABLE_TRACING ENABLE_RPATH U_INLINE THREADS_TRUE ICU_USE_THREADS HAVE_MMAP GENCCODE_ASSEMBLY CPP EGREP U_HAVE_INTTYPES_H U_IOSTREAM_SOURCE U_IS_BIG_ENDIAN U_HAVE_NL_LANGINFO U_HAVE_NL_LANGINFO_CODESET U_NL_LANGINFO_CODESET U_HAVE_NAMESPACE U_OVERRIDE_CXX_ALLOCATION U_HAVE_PLACEMENT_NEW U_HAVE_POPEN U_HAVE_TZSET U_TZSET U_HAVE_TZNAME U_TZNAME U_HAVE_TIMEZONE U_TIMEZONE HAVE_INT8_T HAVE_UINT8_T HAVE_INT16_T HAVE_UINT16_T HAVE_INT32_T HAVE_UINT32_T HAVE_INT64_T HAVE_UINT64_T U_HAVE_WCHAR_H U_HAVE_WCSCPY U_SIZEOF_WCHAR_T EXTRAS_TRUE ICUIO_TRUE LAYOUT_TRUE thedatadir pkgicudatadir thepkgicudatadir DATA_PACKAGING_MODE ICULIBSUFFIX U_HAVE_LIB_SUFFIX ICULIBSUFFIXCNAME TESTS_TRUE SAMPLES_TRUE ICUDATA_CHAR platform platform_make_fragment_name platform_make_fragment ld_rpath_suf AIX_SHLIB LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS PACKAGE VERSION ENTRYPOINT_VERSION LIB_VERSION LIB_VERSION_MAJOR UNICODE_VERSION build build_cpu build_vendor build_os host host_cpu host_vendor host_os CPPFLAGS CC CFLAGS LDFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA U_MAKE DOXYGEN ARFLAGS COMPILE_LINK_ENVVAR LIB_M ENABLE_SHARED ENABLE_STATIC ENABLE_DEBUG ENABLE_RELEASE U_DEFAULT_SHOW_DRAFT RANLIB ac_ct_RANLIB AR U_DISABLE_RENAMING U_ENABLE_TRACING ENABLE_RPATH U_INLINE THREADS_TRUE ICU_USE_THREADS HAVE_MMAP GENCCODE_ASSEMBLY CPP EGREP U_HAVE_INTTYPES_H U_IOSTREAM_SOURCE U_IS_BIG_ENDIAN U_HAVE_NL_LANGINFO U_HAVE_NL_LANGINFO_CODESET U_NL_LANGINFO_CODESET U_HAVE_NAMESPACE U_OVERRIDE_CXX_ALLOCATION U_HAVE_PLACEMENT_NEW U_HAVE_POPEN U_HAVE_TZSET U_TZSET U_HAVE_TZNAME U_TZNAME U_HAVE_TIMEZONE U_TIMEZONE HAVE_INT8_T HAVE_UINT8_T HAVE_INT16_T HAVE_UINT16_T HAVE_INT32_T HAVE_UINT32_T HAVE_INT64_T HAVE_UINT64_T U_HAVE_WCHAR_H U_HAVE_WCSCPY U_SIZEOF_WCHAR_T EXTRAS_TRUE ICUIO_TRUE LAYOUT_TRUE thedatadir pkgicudatadir thepkgicudatadir DATA_PACKAGING_MODE ICULIBSUFFIX U_HAVE_LIB_SUFFIX ICULIBSUFFIXCNAME TESTS_TRUE SAMPLES_TRUE ICUDATA_CHAR platform platform_make_fragment_name platform_make_fragment ld_rpath_suf AIX_SHLIB LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -1347,7 +1347,8 @@ echo "$as_me: error: Cannot determine ICU version numb
{ (exit 1); exit 1; }; }
fi
fi
-LIB_VERSION=`echo $VERSION | sed -e 's/\.//' -e 's/^\([^.]*\)$/\1.0/'`
+ENTRYPOINT_VERSION=`echo $VERSION | sed -e 's/\.//'`
+LIB_VERSION=!!SO_VERSION!!
LIB_VERSION_MAJOR=`echo $LIB_VERSION | sed 's/\..*//'`
@@ -8363,6 +8364,7 @@ s,@ECHO_T@,$ECHO_T,;t t
s,@LIBS@,$LIBS,;t t
s,@PACKAGE@,$PACKAGE,;t t
s,@VERSION@,$VERSION,;t t
+s,@ENTRYPOINT_VERSION@,$ENTRYPOINT_VERSION,;t t
s,@LIB_VERSION@,$LIB_VERSION,;t t
s,@LIB_VERSION_MAJOR@,$LIB_VERSION_MAJOR,;t t
s,@UNICODE_VERSION@,$UNICODE_VERSION,;t t

View File

@ -0,0 +1,21 @@
Needed to be able to retrieve all the encoded data.
--- source/data/Makefile.in.orig Sat Aug 12 00:22:24 2006
+++ source/data/Makefile.in Thu Jun 14 14:56:39 2007
@@ -344,7 +344,7 @@ $(OUTTMPDIR)/icudata.lst: $(SRCLISTDEPS) $(ICUDATA_SOU
ifneq ($(ICUDATA_SOURCE_IS_NATIVE_TARGET),YES)
@echo "Unpacking $(ICUDATA_SOURCE_ARCHIVE) and generating $@ (list of data files)"
@-$(RMV) $@
- $(INVOKE) $(BINDIR)/icupkg -d $(BUILDDIR) --list -x \* $(ICUDATA_SOURCE_ARCHIVE) > $@
+ $(INVOKE) $(BINDIR)/icupkg -d $(BUILDDIR) --list -x \* $(subst 0,36,$(ICUDATA_SOURCE_ARCHIVE)) > $@
else
@echo "$@" > $@
endif
@@ -354,6 +354,7 @@ endif
build-dir: $(BUILD_DIRS)
$(BUILD_DIRS):
-$(MKINSTALLDIRS) $(BUILD_DIRS)
+ ln -sf ./icudt0l ./out/build/icudt36l
# Now, sections for building each kind of data.

View File

@ -0,0 +1,12 @@
$OpenBSD: patch-source_icudefs_mk_in,v 1.1.1.1 2007/07/19 21:52:09 simon Exp $
--- source/icudefs.mk.in.orig Mon Jun 25 21:13:39 2007
+++ source/icudefs.mk.in Mon Jun 25 21:23:00 2007
@@ -42,7 +42,7 @@ SO_TARGET_VERSION_MAJOR = @LIB_VERSION_MAJOR@
ICUDATA_DIR = @pkgicudatadir@/$(PACKAGE)$(ICULIBSUFFIX)/$(VERSION)
-ICUDATA_BASENAME_VERSION = $(ICUPREFIX)dt@LIB_VERSION_MAJOR@
+ICUDATA_BASENAME_VERSION = $(ICUPREFIX)dt@ENTRYPOINT_VERSION@
ICUDATA_ENTRY_POINT = $(ICUDATA_BASENAME_VERSION)
ICUDATA_CHAR = @ICUDATA_CHAR@
ICUDATA_PLATFORM_NAME = $(ICUDATA_BASENAME_VERSION)$(ICUDATA_CHAR)

View File

@ -0,0 +1,13 @@
Needed to fix a linker warning message about size mismatch. Credits to
Andreas Vogele <andreas@kurzegrasse.de> for this one.
--- source/stubdata/Makefile.in.orig Wed Jun 13 14:18:58 2007
+++ source/stubdata/Makefile.in Wed Jun 13 13:30:25 2007
@@ -41,6 +41,7 @@ ALL_TARGETS = $(TARGET) $(ALL_SO_TARGETS)
DYNAMICCPPFLAGS = $(SHAREDLIBCPPFLAGS)
DYNAMICCFLAGS = $(SHAREDLIBCFLAGS)
+DYNAMICCFLAGS += -finhibit-size-directive
DYNAMICCXXFLAGS = $(SHAREDLIBCXXFLAGS)
ifneq ($(top_builddir),$(top_srcdir))

9
textproc/icu4c/pkg/DESCR Normal file
View File

@ -0,0 +1,9 @@
ICU (International Components for Unicode) is a set for C/C++ and Java
librairies providing Unicode and globalization support. icu4c is the
C/C++ version.
ICU services include code page conversion, collation (comparison using
locale-specific ordering), locale-wise formatting, Unicode regexp and
bidirectionnal text handling.
ICU is available under an open source non-copyleft licence.

187
textproc/icu4c/pkg/PLIST Normal file
View File

@ -0,0 +1,187 @@
@comment $OpenBSD: PLIST,v 1.1.1.1 2007/07/19 21:52:09 simon Exp $
bin/derb
bin/genbrk
bin/gencnval
bin/genctd
bin/genrb
bin/icu-config
bin/makeconv
bin/pkgdata
bin/uconv
include/layout/
include/layout/LEFontInstance.h
include/layout/LEGlyphFilter.h
include/layout/LEGlyphStorage.h
include/layout/LEInsertionList.h
include/layout/LELanguages.h
include/layout/LEScripts.h
include/layout/LESwaps.h
include/layout/LETypes.h
include/layout/LayoutEngine.h
include/layout/ParagraphLayout.h
include/layout/RunArrays.h
include/unicode/
include/unicode/brkiter.h
include/unicode/calendar.h
include/unicode/caniter.h
include/unicode/chariter.h
include/unicode/choicfmt.h
include/unicode/coleitr.h
include/unicode/coll.h
include/unicode/curramt.h
include/unicode/currunit.h
include/unicode/datefmt.h
include/unicode/dbbi.h
include/unicode/dcfmtsym.h
include/unicode/decimfmt.h
include/unicode/docmain.h
include/unicode/dtfmtsym.h
include/unicode/fieldpos.h
include/unicode/fmtable.h
include/unicode/format.h
include/unicode/gregocal.h
include/unicode/locid.h
include/unicode/measfmt.h
include/unicode/measunit.h
include/unicode/measure.h
include/unicode/msgfmt.h
include/unicode/normlzr.h
include/unicode/numfmt.h
include/unicode/parseerr.h
include/unicode/parsepos.h
include/unicode/platform.h
include/unicode/ppalmos.h
include/unicode/putil.h
include/unicode/pwin32.h
include/unicode/rbbi.h
include/unicode/rbnf.h
include/unicode/regex.h
include/unicode/rep.h
include/unicode/resbund.h
include/unicode/schriter.h
include/unicode/search.h
include/unicode/simpletz.h
include/unicode/smpdtfmt.h
include/unicode/sortkey.h
include/unicode/strenum.h
include/unicode/stsearch.h
include/unicode/symtable.h
include/unicode/tblcoll.h
include/unicode/timezone.h
include/unicode/translit.h
include/unicode/ubidi.h
include/unicode/ubrk.h
include/unicode/ucal.h
include/unicode/ucasemap.h
include/unicode/ucat.h
include/unicode/uchar.h
include/unicode/uchriter.h
include/unicode/uclean.h
include/unicode/ucnv.h
include/unicode/ucnv_cb.h
include/unicode/ucnv_err.h
include/unicode/ucol.h
include/unicode/ucoleitr.h
include/unicode/uconfig.h
include/unicode/ucsdet.h
include/unicode/ucurr.h
include/unicode/udat.h
include/unicode/udata.h
include/unicode/udeprctd.h
include/unicode/udraft.h
include/unicode/uenum.h
include/unicode/uidna.h
include/unicode/uintrnal.h
include/unicode/uiter.h
include/unicode/uloc.h
include/unicode/ulocdata.h
include/unicode/umachine.h
include/unicode/umisc.h
include/unicode/umsg.h
include/unicode/unifilt.h
include/unicode/unifunct.h
include/unicode/unimatch.h
include/unicode/unirepl.h
include/unicode/uniset.h
include/unicode/unistr.h
include/unicode/unorm.h
include/unicode/unum.h
include/unicode/uobject.h
include/unicode/uobslete.h
include/unicode/uregex.h
include/unicode/urename.h
include/unicode/urep.h
include/unicode/ures.h
include/unicode/uscript.h
include/unicode/usearch.h
include/unicode/uset.h
include/unicode/usetiter.h
include/unicode/ushape.h
include/unicode/usprep.h
include/unicode/ustdio.h
include/unicode/ustream.h
include/unicode/ustring.h
include/unicode/usystem.h
include/unicode/utext.h
include/unicode/utf.h
include/unicode/utf16.h
include/unicode/utf32.h
include/unicode/utf8.h
include/unicode/utf_old.h
include/unicode/utmscale.h
include/unicode/utrace.h
include/unicode/utrans.h
include/unicode/utypes.h
include/unicode/uversion.h
lib/icu/
lib/icu/3.6/
lib/icu/3.6/Makefile.inc
lib/icu/Makefile.inc
lib/icu/current
lib/libicudata.so
lib/libicudata.so.0
@lib lib/libicudata.so.${LIBicudata_VERSION}
lib/libicui18n.so
lib/libicui18n.so.0
@lib lib/libicui18n.so.${LIBicui18n_VERSION}
lib/libicuio.so
lib/libicuio.so.0
@lib lib/libicuio.so.${LIBicuio_VERSION}
lib/libicule.so
lib/libicule.so.0
@lib lib/libicule.so.${LIBicule_VERSION}
lib/libiculx.so
lib/libiculx.so.0
@lib lib/libiculx.so.${LIBiculx_VERSION}
lib/libicutu.so
lib/libicutu.so.0
@lib lib/libicutu.so.${LIBicutu_VERSION}
lib/libicuuc.so
lib/libicuuc.so.0
@lib lib/libicuuc.so.${LIBicuuc_VERSION}
@man man/man1/derb.1
@man man/man1/genbrk.1
@man man/man1/gencnval.1
@man man/man1/genctd.1
@man man/man1/genrb.1
@man man/man1/icu-config.1
@man man/man1/makeconv.1
@man man/man1/pkgdata.1
@man man/man1/uconv.1
@man man/man8/genccode.8
@man man/man8/gencmn.8
@man man/man8/gensprep.8
@man man/man8/genuca.8
@man man/man8/icupkg.8
sbin/genccode
sbin/gencmn
sbin/gensprep
sbin/genuca
sbin/icupkg
sbin/icuswap
share/icu/
share/icu/3.6/
share/icu/3.6/config/
share/icu/3.6/config/mh-bsd-gcc
share/icu/3.6/license.html
@comment share/icu/3.6/mkinstalldirs