Changelog: Common Changes CLDR 29: For details of the many changes in CLDR, see CLDR 29. Grapheme/word/line breaking for emoji sequences, based on Unicode 9 proposed rules. See the Unicode emoji break proposal and the Unicode Emoji Technical Report Proposed Update describing the new emoji sequences. (#12081). Four new Unicode emoji properties (#11802). DateFormat day period formatting of "noon", "at night", etc. via new pattern characters b & B, and DateTimePatternGenerator support of C for selecting the customary form (#11872). Except: Formatting of "0:00 midnight" has been disabled because it is confusing except for at the end of an interval. RelativeDateTimeFormatter: Simpler formatting API (#12072). More robust CLDR data loading for MeasureFormat (#11986, #12030), RelativeDateTimeFormatter (#12018), and DateIntervalFormat/DateIntervalInfo (#12013). New simple & fast SimpleFormatter class for a trivial subset of MessageFormat as used in CLDR data, e.g., "{0} {1}" (#10896). ICU4C Specific Changes C API support for RelativeDateTimeFormatter (#12072). Clang annotations for intended switch case fallthroughs, can now compile with -Wimplicit-fallthrough (#12166). Internal header files can be compiled by themselves, for simpler alternative build scripts (#12141).
135 lines
3.9 KiB
Makefile
135 lines
3.9 KiB
Makefile
# $NetBSD: Makefile,v 1.104 2016/04/11 16:15:22 ryoon Exp $
|
|
|
|
DISTNAME= icu4c-57_1-src
|
|
PKGNAME= ${DISTNAME:S/4c//:S/-src//:S/_/./g}
|
|
CATEGORIES= textproc
|
|
MASTER_SITES= http://download.icu-project.org/files/icu4c/${PKGVERSION_NOREV}/
|
|
EXTRACT_SUFX= .tgz
|
|
|
|
MAINTAINER= pkgsrc-users@NetBSD.org
|
|
HOMEPAGE= http://www.icu-project.org/
|
|
COMMENT= Robust and full-featured Unicode services
|
|
LICENSE= mit
|
|
|
|
WRKSRC= ${WRKDIR}/icu/source
|
|
USE_LANGUAGES= c c++
|
|
USE_TOOLS+= gmake
|
|
TEST_TARGET= check
|
|
UNLIMIT_RESOURCES+= datasize
|
|
GNU_CONFIGURE= yes
|
|
CONFIGURE_ARGS+= --enable-static
|
|
CONFIGURE_ENV+= U_MAKE=${TOOLS_GMAKE}
|
|
|
|
.include "../../mk/pthread.buildlink3.mk"
|
|
|
|
.if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} != "native"
|
|
CONFIGURE_ARGS+= --disable-threads
|
|
.endif
|
|
|
|
.include "../../mk/compiler.mk"
|
|
|
|
# from ICU_CHECK_MH_FRAG in source/acinclude.m4
|
|
.if ${OPSYS} == "SunOS"
|
|
. if ${PKGSRC_COMPILER} == "clang" || ${PKGSRC_COMPILER} == "gcc"
|
|
PLIST_SUBST+= MH_NAME=mh-solaris-gcc
|
|
. else
|
|
PLIST_SUBST+= MH_NAME=mh-solaris
|
|
. endif
|
|
. if !empty(CC_VERSION:Mgcc-4.[6-9].*)
|
|
BUILDLINK_TRANSFORM+= rm:-D__STDC__=0
|
|
. endif
|
|
BUILDLINK_TRANSFORM+= rm:-ansi
|
|
.elif !empty(MACHINE_PLATFORM:MLinux-*-alpha)
|
|
. if !empty(CC_VERSION:Mgcc*)
|
|
PLIST_SUBST+= MH_NAME=mh-alpha-linux-gcc
|
|
. else
|
|
PLIST_SUBST+= MH_NAME=mh-alpha-linux-cc
|
|
. endif
|
|
.elif !empty(MACHINE_PLATFORM:MLinux-*-powerpc*)
|
|
. if !empty(CC_VERSION:Mgcc*)
|
|
PLIST_SUBST+= MH_NAME=mh-linux
|
|
. else
|
|
PLIST_SUBST+= MH_NAME=mh-linux-va
|
|
. endif
|
|
.elif ${OPSYS} == "Linux" || ${OPSYS} == "GNUkFreeBSD"
|
|
PLIST_SUBST+= MH_NAME=mh-linux
|
|
.elif ${OPSYS} == "Cygwin"
|
|
PLIST_SUBST+= MH_NAME=mh-cygwin
|
|
.elif !empty(OPSYS:M*BSD*) || ${OPSYS} == "DragonFly" || ${OPSYS} == "Bitrig"
|
|
PLIST_SUBST+= MH_NAME=mh-bsd-gcc
|
|
.elif ${OPSYS} == "AIX"
|
|
. if !empty(CC_VERSION:Mgcc*)
|
|
PLIST_SUBST+= MH_NAME=mh-aix-gcc
|
|
. else
|
|
PLIST_SUBST+= MH_NAME=mh-aix-va
|
|
. endif
|
|
.elif ${OPSYS} == "HPUX"
|
|
. if !empty(CC_VERSION:Mgcc*)
|
|
PLIST_SUBST+= MH_NAME=mh-hpux-gcc
|
|
. else
|
|
PLIST_SUBST+= MH_NAME=mh-hpux-acc
|
|
. endif
|
|
.elif ${OPSYS} == "Darwin"
|
|
PLIST_SUBST+= MH_NAME=mh-darwin
|
|
.elif ${OPSYS} == "Haiku"
|
|
PLIST_SUBST+= MH_NAME=mh-haiku
|
|
.elif ${OPSYS} == "IRIX"
|
|
PLIST_SUBST+= MH_NAME=mh-irix
|
|
.elif ${OPSYS} == "Cygwin"
|
|
PLIST_SUBST+= MH_NAME=mh-cygwin
|
|
.elif ${OS_VARIANT} == "SCOOSR5"
|
|
PLIST_SUBST+= MH_NAME=mh-scoosr5
|
|
.elif ${OPSYS} == "OSF1"
|
|
PLIST_SUBST+= MH_NAME=mh-alpha-osf
|
|
.elif ${OPSYS} == "QNX"
|
|
PLIST_SUBST+= MH_NAME=mh-qnx
|
|
.else
|
|
# For unknown systems, set the filename to mh-unknown so that the user
|
|
# gets a warning about missing files.
|
|
PLIST_SUBST+= MH_NAME=mh-unknown
|
|
.endif
|
|
|
|
.if ${OPSYS} == "Cygwin"
|
|
INSTALL_UNSTRIPPED= yes
|
|
.endif
|
|
|
|
PKGCONFIG_OVERRIDE+= config/icu-i18n.pc
|
|
PKGCONFIG_OVERRIDE+= config/icu-io.pc
|
|
PKGCONFIG_OVERRIDE+= config/icu-le.pc
|
|
PKGCONFIG_OVERRIDE+= config/icu-lx.pc
|
|
PKGCONFIG_OVERRIDE+= config/icu-uc.pc
|
|
PKGCONFIG_OVERRIDE+= config/icu.pc
|
|
PKGCONFIG_OVERRIDE_STAGE= post-build
|
|
|
|
# expect builtin gcc atomic functions for gcc>=4.1
|
|
# (source/common/putilimp.h)
|
|
.if !empty(CC_VERSION:Mgcc-*) && \
|
|
(empty(CC_VERSION:Mgcc-4.0*) && empty(CC_VERSION:Mgcc-[0-3].*))
|
|
. if ${MACHINE_ARCH} == "i386"
|
|
CFLAGS+= -march=i486
|
|
. endif
|
|
.endif
|
|
|
|
.if ${OPSYS} == "Cygwin"
|
|
SO_MAJOR= ${PKGVERSION_NOREV:R}
|
|
. for l in data i18n io le lx test tu uc
|
|
GENERATE_PLIST+= ${ECHO} bin/cygicu${l}${SO_MAJOR}.dll;
|
|
GENERATE_PLIST+= ${ECHO} lib/libicu${l}${SO_MAJOR}.dll.a;
|
|
. endfor
|
|
|
|
post-install:
|
|
mv ${DESTDIR}${PREFIX}/lib/cygicu*.dll ${DESTDIR}${PREFIX}/bin/
|
|
. for l in data i18n io le lx test tu uc
|
|
${LN} -s libicu${l}${SO_MAJOR}.dll.a ${DESTDIR}${PREFIX}/lib/libicu${l}.dll.a
|
|
. endfor
|
|
|
|
SUBST_CLASSES+= icu-config
|
|
SUBST_STAGE.icu-config= post-install
|
|
SUBST_FILES.icu-config= ${DESTDIR}${PREFIX}/bin/icu-config
|
|
SUBST_SED.icu-config+= -e '/^ICUUC_FILE=/ s/libdir/bindir/'
|
|
SUBST_SED.icu-config+= -e 's/l$${LIBICU}/l$${ICUPREFIX}/g'
|
|
SUBST_SED.icu-config+= -e '/l$${ICUPREFIX}/ s/$${ICULIBSUFFIX_VERSION}//g'
|
|
|
|
.endif
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|