ports/textproc/icu4c/Makefile

106 lines
2.9 KiB
Makefile
Raw Normal View History

2023-08-16 22:26:55 +00:00
NOT_FOR_ARCHS= ${GCC3_ARCHS}
COMMENT-main= International Components for Unicode
COMMENT-wwwdata= ICU data file for use with /var/www chroot jails
VERSION= 74.2
2023-08-16 22:26:55 +00:00
DISTNAME= icu4c-${VERSION:S/./_/g}-src
PKGNAME-main= icu4c-${VERSION}
PKGNAME-wwwdata= icu4c-wwwdata-${VERSION}
EPOCH-main= 0
EPOCH-wwwdata= 0
REVISION-main= 0
REVISION-medatada= 0
# XXX see also post-extract;
# install: /usr/ports/pobj/icu4c-74_2-src/icu/source/../LICENSE: No such file or directory
# https://github.com/unicode-org/icu/commit/312bae866003461bcd4022855ac7ec60546b81f7
SITES.licence= https://raw.githubusercontent.com/unicode-org/icu/main/
DISTFILES.licence= LICENSE
EXTRACT_ONLY= ${DISTFILES}
DIST_SUBDIR= icu4c
2023-08-16 22:26:55 +00:00
# XXX libicudata is not recognized as a SHARED_LIBS by the ports tools because
# it's missing the '.note.openbsd.ident' section ("-nodefaultlibs -nostdlib" in
# LDFLAGS); @lib and LIBicudata_VERSION must be added manually;
# (see ports/infrastructure/lib/OpenBSD/FS2.pm)
MAJ_V= ${VERSION:R}
SO_VERSION= 22.2
2023-08-16 22:26:55 +00:00
.for _lib in icudata icui18n icuio icutest icutu icuuc
SHARED_LIBS+= ${_lib} ${SO_VERSION}
.endfor
SUBST_VARS+= MAJ_V VERSION
CATEGORIES= textproc devel
DPB_PROPERTIES= parallel
HOMEPAGE= https://icu.unicode.org
MAINTAINER= Antoine Jacoutot <ajacoutot@openbsd.org>
# ICUv3: http://source.icu-project.org/repos/icu/icu/trunk/license.html
2023-08-16 22:26:55 +00:00
PERMIT_PACKAGE= Yes
WANTLIB-main= c m pthread ${COMPILER_LIBCXX}
COMPILER = base-clang ports-gcc base-gcc
2023-09-28 02:05:49 +00:00
SITES= https://github.com/unicode-org/icu/releases/download/release-${VERSION:S/./-/g}/
2023-08-16 22:26:55 +00:00
FIX_EXTRACT_PERMISSIONS= Yes
2023-08-16 22:26:55 +00:00
EXTRACT_SUFX= .tgz
USE_GMAKE= Yes
CONFIGURE_STYLE= gnu
CONFIGURE_ARGS= --enable-static \
--disable-renaming \
--disable-samples \
--with-data-packaging=archive
# needs icu-le-hb
CONFIGURE_ARGS += --disable-layoutex
SEPARATE_BUILD= Yes
WRKDIST= ${WRKDIR}/icu
WRKSRC= ${WRKDIST}/source
MULTI_PACKAGES= -main -wwwdata
DEBUG_PACKAGES= -main
# see readme.html
CXXFLAGS += -DICU_NO_USER_DATA_OVERRIDE
MAKE_FLAGS= VERBOSE=1 \
SO_TARGET_VERSION=${SO_VERSION} \
SO_TARGET_VERSION_MAJOR=${SO_VERSION:R} \
PKGDATA_INVOKE_OPTS="SO_TARGET_VERSION=${SO_VERSION} SO_TARGET_VERSION_MAJOR=${SO_VERSION:R}"
.include <bsd.port.arch.mk>
.if ${PROPERTIES:Mbe}
ENDIAN_DATA = icudt${MAJ_V}b
# https://bugzilla.redhat.com/show_bug.cgi?id=889781
CONFIGURE_ENV += CPPFLAGS="-DU_IS_BIG_ENDIAN=1"
.else
ENDIAN_DATA = icudt${MAJ_V}l
.endif
PREFIX-wwwdata = /var/www${TRUEPREFIX}
SUBST_VARS += ENDIAN_DATA
TEST_ENV += ICU_DATA="${WRKBUILD}/data/out/build/${ENDIAN_DATA}"
TEST_DEPENDS= ${BASE_PKGPATH}=${VERSION}
post-extract:
cp ${FULLDISTDIR}/LICENSE ${WRKDIR}/
2023-08-16 22:26:55 +00:00
post-install:
find ${PREFIX}/lib -type l -name 'libicu*.so*' -delete
${INSTALL_DATA_DIR} ${WRKINST}/var/www${TRUEPREFIX}/share/icu/${VERSION}
${INSTALL_DATA} ${PREFIX}/share/icu/${VERSION}/${ENDIAN_DATA}.dat \
${WRKINST}/var/www${TRUEPREFIX}/share/icu/${VERSION}/
.include <bsd.port.mk>