blob: aaa4138015cf2111c7a003b09e202b41c2913230 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
|
# Created by: jseger@FreeBSD.org
PORTNAME= freetype2
DISTVERSION= 2.10.4
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}
MAINTAINER= desktop@FreeBSD.org
COMMENT= Free and portable TrueType font rendering engine
LICENSE= FTL GPLv2+
LICENSE_COMB= dual
LICENSE_NAME_FTL= The FreeType Project license
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=""
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --without-harfbuzz
CONFIGURE_WRKSRC= ${WRKSRC}/builds/unix
SUB_FILES= pkg-message
PORTDOCS= reference CHANGES formats.txt LICENSE.TXT raster.txt
CPE_PRODUCT= freetype
CPE_VENDOR= freetype
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
TABLE_VALIDATION_DESC= TrueType GX/AAT and OpenType table validation
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
LONG_PCF_NAMES_DESC= Enable long PCF family names
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
.include <bsd.port.pre.mk>
SELECTED_MODE= \
r=0; \
for m in ${SUBPIXEL_HINTING_MODE}; \
do r=$$(($$r | $$m)); \
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' \
-e 's|^\(#define TT_CONFIG_OPTION_SUBPIXEL_HINTING\).*|\1 \
${SELECTED_MODE:sh}|' \
${WRKSRC}/include/freetype/config/ftoption.h
.else
@${REINPLACE_CMD} -i '.hinting.bak' \
-e 's|^\(#define TT_CONFIG_OPTION_SUBPIXEL_HINTING.*\)|/* \1 */|' \
${WRKSRC}/include/freetype/config/ftoption.h
.endif
post-patch-DEBUG-on:
@${REINPLACE_CMD} -i '.debug.bak' \
-e 's|.*\(#define FT_DEBUG_LEVEL_TRACE\).*|\1|' \
-e 's|.*\(#define FT_DEBUG_MEMORY\).*|\1|' \
${WRKSRC}/include/freetype/config/ftoption.h
post-patch-LONG_PCF_NAMES-on:
@${REINPLACE_CMD} -i '.names.bak' \
-e 's|.*\(#define PCF_CONFIG_OPTION_LONG_FAMILY_NAMES\).*|\1|' \
${WRKSRC}/include/freetype/config/ftoption.h
post-patch-TABLE_VALIDATION-on:
@${REINPLACE_CMD} -e '/valid$$/s|#.*\(AUX_MODULES\)|\1|' \
${WRKSRC}/modules.cfg
post-patch-TT_SIZE_METRICS-on:
@${REINPLACE_CMD} -i '.metrics.bak' \
-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})
.include <bsd.port.post.mk>
|