aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Engberg <diizzy@FreeBSD.org>2021-09-21 19:40:44 +0000
committerDaniel Engberg <diizzy@FreeBSD.org>2021-09-23 19:15:44 +0000
commit9218bfa5da7bf47930a6790199dc60a133bb11be (patch)
tree23a9387ad6bde00c004d745e1361fa5ce26922e1
parent97e63d1b5466f8bb900bbccae71455db4e9ea115 (diff)
downloadports-9218bfa5da7bf47930a6790199dc60a133bb11be.tar.gz
ports-9218bfa5da7bf47930a6790199dc60a133bb11be.zip
print/freetype2: Update to 2.11.0
Additional changes: * Convert to CMake * Rearrange Makefile * Clean up MASTER_SITES and use SAVANNAH alias Changelog: https://gitlab.freedesktop.org/freetype/freetype/-/blob/VER-2-11-0/docs/CHANGES I'd also like to thank tcberner and antoine for their time and effort getting this ready to be committed. PR: 251512 Exp-run by: antoine Approved by: tcberner (mentor) Differential Revision: https://reviews.freebsd.org/D31909
-rw-r--r--print/freetype2/Makefile92
-rw-r--r--print/freetype2/distinfo6
-rw-r--r--print/freetype2/files/patch-builds_unix_detect.mk26
-rw-r--r--print/freetype2/files/pkg-message.in2
-rw-r--r--print/freetype2/pkg-plist12
5 files changed, 51 insertions, 87 deletions
diff --git a/print/freetype2/Makefile b/print/freetype2/Makefile
index aaa4138015cf..75e6d892122f 100644
--- a/print/freetype2/Makefile
+++ b/print/freetype2/Makefile
@@ -1,15 +1,11 @@
# Created by: jseger@FreeBSD.org
PORTNAME= freetype2
-DISTVERSION= 2.10.4
+DISTVERSION= 2.11.0
CATEGORIES= print
-MASTER_SITES= http://savannah.nongnu.org/download/freetype/ \
- SF/freetype/${PORTNAME}/${PORTVERSION:C/^([0-9]+\.[0-9]+\.[0-9]+).*/\1/}/ \
- http://sunsite.cnlab-switch.ch/ftp/mirror/freetype/freetype2/ \
- http://www.funet.fi/pub/mirrors/ftp.freetype.org/freetype2/ \
- http://ftp.sunet.se/pub/text-processing/freetype/freetype2/ \
- ftp://ftp.freetype.org/freetype/freetype2/
-DISTNAME= ${PORTNAME:S/2//}-${PORTVERSION}
+MASTER_SITES= SAVANNAH/${PORTNAME:S/2//} \
+ SF/freetype/${PORTNAME}/${DISTVERSION:C/^([0-9]+\.[0-9]+\.[0-9]+).*/\1/}/
+DISTNAME= ${PORTNAME:S/2//}-${DISTVERSION}
MAINTAINER= desktop@FreeBSD.org
COMMENT= Free and portable TrueType font rendering engine
@@ -21,60 +17,63 @@ LICENSE_FILE_FTL= ${WRKSRC}/docs/FTL.TXT
LICENSE_FILE_GPLv2+ = ${WRKSRC}/docs/GPLv2.TXT
LICENSE_PERMS_FTL= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
-USES= cpe gmake libtool tar:xz
-MAKE_ENV= TOP=""
+USES= cmake cpe localbase pathfix pkgconfig tar:xz
+
+CPE_PRODUCT= freetype
+CPE_VENDOR= freetype
USE_LDCONFIG= yes
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --without-harfbuzz
-CONFIGURE_WRKSRC= ${WRKSRC}/builds/unix
+
+CMAKE_ON= BUILD_SHARED_LIBS \
+ FT_WITH_BZIP2 \
+ CMAKE_DISABLE_FIND_PACKAGE_HarfBuzz \
+ FT_WITH_ZLIB
+
+CMAKE_OFF= FT_WITH_HARFBUZZ
SUB_FILES= pkg-message
-PORTDOCS= reference CHANGES formats.txt LICENSE.TXT raster.txt
+PORTDOCS= CHANGES FTL.TXT formats.txt raster.txt reference
-CPE_PRODUCT= freetype
-CPE_VENDOR= freetype
+OPTIONS_DEFINE= BROTLI DEBUG DOCS LONG_PCF_NAMES PNG TABLE_VALIDATION
+OPTIONS_DEFAULT= LCD_RENDERING LONG_PCF_NAMES PNG V40
+OPTIONS_SUB= yes
+
+OPTIONS_SINGLE= RENDERING
+OPTIONS_SINGLE_RENDERING= LCD_FILTERING LCD_RENDERING
-OPTIONS_DEFINE= BROTLI CONFIG DEBUG DOCS LONG_PCF_NAMES PNG \
- TABLE_VALIDATION
OPTIONS_GROUP= SUBPIXEL_HINTING
OPTIONS_GROUP_SUBPIXEL_HINTING= V38 V40
-OPTIONS_SINGLE= RENDERING
-OPTIONS_SINGLE_RENDERING= LCD_FILTERING LCD_RENDERING
+
OPTIONS_RADIO= SIZE_METRICS_CHOICE
OPTIONS_RADIO_SIZE_METRICS_CHOICE= FIX_SIZE_METRICS TT_SIZE_METRICS
-OPTIONS_DEFAULT= CONFIG LCD_RENDERING LONG_PCF_NAMES PNG V40
-OPTIONS_SUB= yes
-
-BROTLI_CONFIGURE_WITH= brotli
-BROTLI_LIB_DEPENDS= libbrotlidec.so:archivers/brotli
-BROTLI_USES= pkgconfig
-CONFIG_DESC= Install freetype-config
-CONFIG_CONFIGURE_ENABLE=freetype-config
-PNG_DESC= Png compressed OpenType embedded bitmaps support
-PNG_LIB_DEPENDS= libpng.so:graphics/png
-PNG_CONFIGURE_WITH= png
+LONG_PCF_NAMES_DESC= Enable long PCF family names
TABLE_VALIDATION_DESC= TrueType GX/AAT and OpenType table validation
-
+RENDERING_DESC= Rendering technology
+LCD_FILTERING_DESC= Subpixel rendering (patented)
+LCD_RENDERING_DESC= Harmony LCD rendering
+SUBPIXEL_HINTING_DESC= Subpixel hinting support
+V38_DESC= v38 mode (Infinality code)
+V40_DESC= v40 mode (minimal code, a.k.a. ClearType hinting, faster)
SIZE_METRICS_CHOICE_DESC= Size metrics for TrueType fonts
FIX_SIZE_METRICS_DESC= Fix metrics on size request for scalable fonts (alternative method)
-FIX_SIZE_METRICS_EXTRA_PATCHES= ${FILESDIR}/extra-patch-fix_size_metrics.diff
TT_SIZE_METRICS_DESC= TrueType-like size metrics for 'light' auto-hinting
-RENDERING_DESC= Rendering technology
-LCD_FILTERING_DESC?= Subpixel rendering (patented)
-LCD_FILTERING_CFLAGS= -DFT_CONFIG_OPTION_SUBPIXEL_RENDERING
-LCD_RENDERING_DESC= Harmony LCD rendering
+BROTLI_LIB_DEPENDS= libbrotlidec.so:archivers/brotli
+BROTLI_CMAKE_BOOL= FT_WITH_BROTLI
+BROTLI_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_BrotliDec
-LONG_PCF_NAMES_DESC= Enable long PCF family names
+PNG_LIB_DEPENDS= libpng.so:graphics/png
+PNG_CMAKE_BOOL= FT_WITH_PNG
+PNG_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_PNG
+
+LCD_FILTERING_CFLAGS= -DFT_CONFIG_OPTION_SUBPIXEL_RENDERING
-SUBPIXEL_HINTING_DESC= Subpixel hinting support
-V38_DESC= v38 mode (Infinality code)
V38_VARS= SUBPIXEL_HINTING_MODE+=1
-V40_DESC= v40 mode (minimal code, a.k.a. ClearType hinting, faster)
V40_VARS= SUBPIXEL_HINTING_MODE+=2
+FIX_SIZE_METRICS_EXTRA_PATCHES= ${FILESDIR}/extra-patch-fix_size_metrics.diff
+
.include <bsd.port.pre.mk>
SELECTED_MODE= \
@@ -84,10 +83,6 @@ SELECTED_MODE= \
done; \
${ECHO_CMD} $$r
-pre-patch:
- @${REINPLACE_CMD} -e 's|[(]libdir[)]/pkgconfig|(prefix)/libdata/pkgconfig|g' \
- ${WRKSRC}/builds/unix/install.mk
-
post-patch:
.if defined(SUBPIXEL_HINTING_MODE)
@${REINPLACE_CMD} -i '.hinting.bak' \
@@ -120,13 +115,6 @@ post-patch-TT_SIZE_METRICS-on:
-e 's|.*\(#define AF_CONFIG_OPTION_TT_SIZE_METRICS\).*|\1|' \
${WRKSRC}/include/freetype/config/ftoption.h
-post-configure:
- @(cd ${BUILD_WRKSRC}; ${SETENV} ${MAKE_ENV} \
- ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} setup)
-
-post-install:
- @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libfreetype.so.*
-
post-install-DOCS-on:
(cd ${WRKSRC}/docs && ${COPYTREE_SHARE} "${PORTDOCS}" ${STAGEDIR}${DOCSDIR})
diff --git a/print/freetype2/distinfo b/print/freetype2/distinfo
index 24063a2dfe74..176b6623c026 100644
--- a/print/freetype2/distinfo
+++ b/print/freetype2/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1603355758
-SHA256 (freetype-2.10.4.tar.xz) = 86a854d8905b19698bbc8f23b860bc104246ce4854dcea8e3b0fb21284f75784
-SIZE (freetype-2.10.4.tar.xz) = 2416620
+TIMESTAMP = 1627838448
+SHA256 (freetype-2.11.0.tar.xz) = 8bee39bd3968c4804b70614a0a3ad597299ad0e824bc8aad5ce8aaf48067bde7
+SIZE (freetype-2.11.0.tar.xz) = 2256640
diff --git a/print/freetype2/files/patch-builds_unix_detect.mk b/print/freetype2/files/patch-builds_unix_detect.mk
deleted file mode 100644
index 57f9bd0fb712..000000000000
--- a/print/freetype2/files/patch-builds_unix_detect.mk
+++ /dev/null
@@ -1,26 +0,0 @@
---- builds/unix/detect.mk.orig 2019-02-23 09:06:06 UTC
-+++ builds/unix/detect.mk
-@@ -22,6 +22,9 @@ ifeq ($(PLATFORM),ansi)
- $(wildcard /usr/sbin/init) \
- $(wildcard /dev/null) \
- $(wildcard /hurd/auth))
-+ # FreeBSD is "unix" so just mandate this to fix the build in
-+ # jails that do not have init (see PR#113470).
-+ is_unix := true
- ifneq ($(is_unix),)
-
- PLATFORM := unix
-@@ -86,10 +89,10 @@ ifeq ($(PLATFORM),unix)
- ifdef must_configure
- ifneq ($(have_Makefile),)
- # we are building FT2 not in the src tree
-- $(TOP_DIR)/builds/unix/configure $(value CFG)
-+# $(TOP_DIR)/builds/unix/configure $(value CFG)
- else
-- cd builds/unix; \
-- ./configure $(value CFG)
-+# cd builds/unix; \
-+# ./configure $(value CFG)
- endif
- endif
-
diff --git a/print/freetype2/files/pkg-message.in b/print/freetype2/files/pkg-message.in
index fb3d65f9d16a..a2d70f56611c 100644
--- a/print/freetype2/files/pkg-message.in
+++ b/print/freetype2/files/pkg-message.in
@@ -30,7 +30,7 @@ if needed:
The controllable properties are listed in the section "Controlling FreeType
Modules" in the reference's table of contents
-(%%DOCSDIR%%/reference/site/index.html, if documentation was installed).
+(%%DOCSDIR%%/reference/index.html, if documentation was installed).
EOM
}
]
diff --git a/print/freetype2/pkg-plist b/print/freetype2/pkg-plist
index 88fbc75d09d2..449bc1db8e9c 100644
--- a/print/freetype2/pkg-plist
+++ b/print/freetype2/pkg-plist
@@ -1,4 +1,5 @@
-%%CONFIG%%bin/freetype-config
+include/freetype2/dlg/dlg.h
+include/freetype2/dlg/output.h
include/freetype2/freetype/config/ftconfig.h
include/freetype2/freetype/config/ftheader.h
include/freetype2/freetype/config/ftmodule.h
@@ -29,6 +30,7 @@ include/freetype2/freetype/ftimage.h
include/freetype2/freetype/ftincrem.h
include/freetype2/freetype/ftlcdfil.h
include/freetype2/freetype/ftlist.h
+include/freetype2/freetype/ftlogging.h
include/freetype2/freetype/ftlzw.h
include/freetype2/freetype/ftmac.h
include/freetype2/freetype/ftmm.h
@@ -52,10 +54,10 @@ include/freetype2/freetype/ttnameid.h
include/freetype2/freetype/tttables.h
include/freetype2/freetype/tttags.h
include/freetype2/ft2build.h
-lib/libfreetype.a
+lib/cmake/freetype/freetype-config-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/freetype/freetype-config-version.cmake
+lib/cmake/freetype/freetype-config.cmake
lib/libfreetype.so
lib/libfreetype.so.6
-lib/libfreetype.so.6.17.4
+lib/libfreetype.so.6.18.0
libdata/pkgconfig/freetype2.pc
-%%CONFIG%%man/man1/freetype-config.1.gz
-share/aclocal/freetype2.m4