source: trunk/dports/graphics/fontconfig/Portfile

Last change on this file was 152719, checked in by ryandesign@…, 13 months ago

fontconfig: fix cache validation bug

This caused the cache to always be considered invalid and regenerated,
leading to performance problems.

Should resolve #52029 #52088 #52099

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 3.3 KB
Line 
1# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
2# $Id: Portfile 152719 2016-09-15 11:06:06Z ryandesign@macports.org $
3
4PortSystem                  1.0
5PortGroup                   muniversal 1.0
6
7name                        fontconfig
8version                     2.12.1
9revision                    1
10categories                  graphics
11maintainers                 ryandesign
12license                     fontconfig
13platforms                   darwin
14use_parallel_build          yes
15
16description                 An XML-based font configuration API for X Windows
17
18long_description            Fontconfig is a library for configuring and \
19                            customizing font access.
20
21homepage                    https://www.freedesktop.org/wiki/Software/fontconfig/
22master_sites                https://www.freedesktop.org/software/fontconfig/release/
23use_bzip2                   yes
24
25checksums                   rmd160  66907dbb317309bcb5013ea45c53dbf5050e6376 \
26                            sha256  b449a3e10c47e1d1c7a6ec6e2016cca73d3bd68fbbd4f0ae5cc6b573f7d6c7f3
27
28depends_build               port:pkgconfig
29
30depends_lib                 port:libiconv \
31                            port:expat \
32                            port:freetype
33
34if {${os.platform} eq "darwin" && ${os.major} < 9} {
35    set add_fonts           /usr/X11R6/lib/X11/fonts
36} else {
37    set add_fonts           /usr/X11/lib/X11/fonts
38}
39lappend add_fonts           ${prefix}/share/fonts
40set docdir                  ${prefix}/share/doc/${name}
41
42patchfiles                  patch-docbook-4.2.diff
43patchfiles-append           patch-src-fcweight.c.diff
44patchfiles-append           patch-src-fccache.c.diff
45
46configure.args              --disable-silent-rules HASDOCBOOK=no
47
48# We put this into a pre-configure block so it can be evaluated _after_ platform selection.
49pre-configure {
50    configure.args-append   --with-add-fonts=[join ${add_fonts} ,]
51}
52
53post-destroot {
54    xinstall -d ${destroot}${docdir}
55    xinstall -m 0644 -W ${worksrcpath} \
56        AUTHORS \
57        COPYING \
58        ChangeLog \
59        NEWS \
60        README \
61        ${destroot}${docdir}
62}
63
64post-activate {
65    # fc-cache can fail due to /Network/Library/Fonts being unavailable, so force success.
66    system "${prefix}/bin/fc-cache -sv || true"
67    system "${prefix}/bin/fc-cache -v || true"
68}
69
70platform macosx {
71    lappend add_fonts       /Library/Fonts \
72                            /Network/Library/Fonts \
73                            /System/Library/Fonts
74}
75
76merger_arch_flag            no
77merger_arch_compiler        yes
78if {${os.arch} eq "i386"} {
79    if { ${os.major} >= 10 } {
80        set merger_configure_args(ppc) --with-arch=ppc
81        set merger_configure_env(ppc)  CC_FOR_BUILD=${configure.cc}
82    }
83    set merger_configure_args(ppc64)   --with-arch=ppc64
84    set merger_configure_env(ppc64)    CC_FOR_BUILD=${configure.cc}
85} else {
86    set merger_configure_args(i386)    --with-arch=i386
87    set merger_configure_args(x86_64)  --with-arch=x86_64
88    set merger_configure_env(i386)     CC_FOR_BUILD=${configure.cc}
89    set merger_configure_env(x86_64)   CC_FOR_BUILD=${configure.cc}
90}
91
92livecheck.type              regex
93livecheck.url               [lindex ${master_sites} 0]
94livecheck.regex             ${name}-(\\d+(?:\\.\\d+)*\\.(?:\\d|\[0-8\]\\d))\\.tar
Note: See TracBrowser for help on using the repository browser.