source: trunk/dports/print/ghostscript-fonts-hiragino/Portfile

Last change on this file was 147875, checked in by khindenburg@…, 15 months ago

ghostscript-fonts-hiragino: update to 9.19; adjust folder paths per OS version; verified by patch provider #49279

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 16.8 KB
Line 
1# $Id: Portfile 147875 2016-04-20 00:29:58Z ryandesign@macports.org $
2
3PortSystem      1.0
4
5name            ghostscript-fonts-hiragino
6version         9.19
7categories      print japanese chinese
8maintainers     nomaintainer
9description     Hiragino font for ghostscript ${version}
10long_description \
11                ${description}
12license         Permissive
13platforms       macosx
14supported_archs noarch
15homepage
16master_sites
17distfiles
18
19depends_lib     port:ghostscript
20
21pre-fetch {
22    if {[variant_isset yu]} {
23        if {${os.platform} eq "darwin" && ${os.major} >= 13} {
24            # nop
25        } else {
26            return -code error "variant +yu is supported on Mavericks or later only"
27        }
28    }
29}
30
31use_configure   no
32
33build {}
34
35destroot {
36    if {${os.platform} eq "darwin"} {
37        if {${os.major} <= 8} {
38            # for Tiger or older
39            set FontList {"/System/Library/Fonts/ヒラギノ角ゴ Pro W3.otf"  HiraKakuPro-W3     Adobe-Japan1 {GothicBBB-Medium A-OTF-GothicBBBPro-Medium}
40                          "/System/Library/Fonts/ヒラギノ角ゴ Pro W6.otf"  HiraKakuPro-W6     Adobe-Japan1 {FutoGoB101-Bold  A-OTF-FutoGoB101Pro-Bold}
41                          "/System/Library/Fonts/ヒラギノ角ゴ Std W8.otf"  HiraKakuStd-W8     Adobe-Japan1 {}
42                          "/System/Library/Fonts/ヒラギノ丸ゴ Pro W4.otf"  HiraMaruPro-W4     Adobe-Japan1 {Jun101-Light     A-OTF-Jun101Pro-Light}
43                          "/System/Library/Fonts/ヒラギノ明朝 Pro W3.otf"  HiraMinPro-W3      Adobe-Japan1 {Ryumin-Light     A-OTF-RyuminPro-Light}
44                          "/System/Library/Fonts/ヒラギノ明朝 Pro W6.otf"  HiraMinPro-W6      Adobe-Japan1 {FutoMinA101-Bold A-OTF-FutoMinA101Pro-Bold}}
45        } elseif {${os.major} <= 14} {
46            # for Loaprd to Yosemite
47            set FontList {"/Library/Fonts/ヒラギノ角ゴ Pro W3.otf"         HiraKakuPro-W3     Adobe-Japan1 {GothicBBB-Medium A-OTF-GothicBBBPro-Medium}
48                          "/Library/Fonts/ヒラギノ角ゴ Pro W6.otf"         HiraKakuPro-W6     Adobe-Japan1 {FutoGoB101-Bold  A-OTF-FutoGoB101Pro-Bold}
49                          "/Library/Fonts/ヒラギノ角ゴ Std W8.otf"         HiraKakuStd-W8     Adobe-Japan1 {}
50                          "/Library/Fonts/ヒラギノ丸ゴ Pro W4.otf"         HiraMaruPro-W4     Adobe-Japan1 {Jun101-Light     A-OTF-Jun101Pro-Light}
51                          "/Library/Fonts/ヒラギノ明朝 Pro W3.otf"         HiraMinPro-W3      Adobe-Japan1 {Ryumin-Light     A-OTF-RyuminPro-Light}
52                          "/Library/Fonts/ヒラギノ明朝 Pro W6.otf"         HiraMinPro-W6      Adobe-Japan1 {FutoMinA101-Bold A-OTF-FutoMinA101Pro-Bold}
53                          "/System/Library/Fonts/ヒラギノ角ゴ ProN W3.otf" HiraKakuProN-W3    Adobe-Japan1 {}
54                          "/System/Library/Fonts/ヒラギノ角ゴ ProN W6.otf" HiraKakuProN-W6    Adobe-Japan1 {}
55                          "/Library/Fonts/ヒラギノ角ゴ StdN W8.otf"        HiraKakuStdN-W8    Adobe-Japan1 {}
56                          "/Library/Fonts/ヒラギノ丸ゴ ProN W4.otf"        HiraMaruProN-W4    Adobe-Japan1 {}
57                          "/System/Library/Fonts/ヒラギノ明朝 ProN W3.otf" HiraMinProN-W3     Adobe-Japan1 {}
58                          "/System/Library/Fonts/ヒラギノ明朝 ProN W6.otf" HiraMinProN-W6     Adobe-Japan1 {}}
59        } else {
60            set FontList {"${prefix}/share/fonts/otf/Hiragino/ヒラギノ角ゴ Pro W3.otf"    HiraKakuPro-W3     Adobe-Japan1 {GothicBBB-Medium A-OTF-GothicBBBPro-Medium}
61                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ角ゴ Pro W6.otf"    HiraKakuPro-W6     Adobe-Japan1 {FutoGoB101-Bold  A-OTF-FutoGoB101Pro-Bold}
62                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ角ゴ Std W8.otf"    HiraKakuStd-W8     Adobe-Japan1 {}
63                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ丸ゴ Pro W4.otf"    HiraMaruPro-W4     Adobe-Japan1 {Jun101-Light     A-OTF-Jun101Pro-Light}
64                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ明朝 Pro W3.otf"    HiraMinPro-W3      Adobe-Japan1 {Ryumin-Light     A-OTF-RyuminPro-Light}
65                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ明朝 Pro W6.otf"    HiraMinPro-W6      Adobe-Japan1 {FutoMinA101-Bold A-OTF-FutoMinA101Pro-Bold}
66                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ角ゴ ProN W3.otf"   HiraKakuProN-W3    Adobe-Japan1 {}
67                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ角ゴ ProN W6.otf"   HiraKakuProN-W6    Adobe-Japan1 {}
68                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ角ゴ StdN W8.otf"   HiraKakuStdN-W8    Adobe-Japan1 {}
69                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ丸ゴ ProN W4.otf"   HiraMaruProN-W4    Adobe-Japan1 {}
70                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ明朝 ProN W3.otf"   HiraMinProN-W3     Adobe-Japan1 {}
71                          "${prefix}/share/fonts/otf/Hiragino/ヒラギノ明朝 ProN W6.otf"   HiraMinProN-W6     Adobe-Japan1 {}}
72        }
73    }
74
75    if {${os.platform} eq "darwin"} {
76        if {${os.major} >= 10 && ${os.major} <= 14} {
77            # for SnowLeopard to Yosemite
78            lappend FontList \
79                      "/Library/Fonts/Hiragino Sans GB W3.otf"         HiraginoSansGB-W3  Adobe-GB1    {} \
80                      "/Library/Fonts/Hiragino Sans GB W6.otf"         HiraginoSansGB-W6  Adobe-GB1    {}
81        } else {
82            lappend FontList \
83                      "${prefix}/share/fonts/otf/Hiragino/Hiragino Sans GB W3.otf"    HiraginoSansGB-W3  Adobe-GB1    {} \
84                      "${prefix}/share/fonts/otf/Hiragino/Hiragino Sans GB W6.otf"    HiraginoSansGB-W6  Adobe-GB1    {}
85        }
86        if {${os.major} >= 13 && [variant_isset yu]} {
87            # for Mavericks or newer; may be unstable
88            lappend FontList \
89                      "/Library/Fonts/Yu Gothic Bold.otf"              YuGo-Bold          Adobe-Japan1 {} \
90                      "/Library/Fonts/Yu Gothic Medium.otf"            YuGo-Medium        Adobe-Japan1 {} \
91                      "/Library/Fonts/Yu Mincho Demibold.otf"          YuMin-Demibold     Adobe-Japan1 {} \
92                      "/Library/Fonts/Yu Mincho Medium.otf"            YuMin-Medium       Adobe-Japan1 {}
93        }
94    }
95
96    set GSFontDir ${destroot}${prefix}/share/ghostscript/${version}/Resource/Font
97    set GSCIDFontDir ${destroot}${prefix}/share/ghostscript/${version}/Resource/CIDFont
98    set EncodeList(Adobe-Japan1) {78-EUC-H
99                                  78-EUC-V
100                                  78-H
101                                  78-RKSJ-H
102                                  78-RKSJ-V
103                                  78-V
104                                  78ms-RKSJ-H
105                                  78ms-RKSJ-V
106                                  83pv-RKSJ-H
107                                  90ms-RKSJ-H
108                                  90ms-RKSJ-V
109                                  90msp-RKSJ-H
110                                  90msp-RKSJ-V
111                                  90pv-RKSJ-H
112                                  90pv-RKSJ-V
113                                  Add-H
114                                  Add-RKSJ-H
115                                  Add-RKSJ-V
116                                  Add-V
117                                  Adobe-Japan1-0
118                                  Adobe-Japan1-1
119                                  Adobe-Japan1-2
120                                  Adobe-Japan1-3
121                                  Adobe-Japan1-4
122                                  Adobe-Japan1-5
123                                  Adobe-Japan1-6
124                                  EUC-H
125                                  EUC-V
126                                  Ext-H
127                                  Ext-RKSJ-H
128                                  Ext-RKSJ-V
129                                  Ext-V
130                                  H
131                                  Hankaku
132                                  Hiragana
133                                  Identity-H
134                                  Identity-V
135                                  Katakana
136                                  NWP-H
137                                  NWP-V
138                                  RKSJ-H
139                                  RKSJ-V
140                                  Roman
141                                  UniJIS-UCS2-H
142                                  UniJIS-UCS2-HW-H
143                                  UniJIS-UCS2-HW-V
144                                  UniJIS-UCS2-V
145                                  UniJIS-UTF16-H
146                                  UniJIS-UTF16-V
147                                  UniJIS-UTF32-H
148                                  UniJIS-UTF32-V
149                                  UniJIS-UTF8-H
150                                  UniJIS-UTF8-V
151                                  UniJIS2004-UTF16-H
152                                  UniJIS2004-UTF16-V
153                                  UniJIS2004-UTF32-H
154                                  UniJIS2004-UTF32-V
155                                  UniJIS2004-UTF8-H
156                                  UniJIS2004-UTF8-V
157                                  UniJISPro-UCS2-HW-V
158                                  UniJISPro-UCS2-V
159                                  UniJISPro-UTF8-V
160                                  UniJISX0213-UTF32-H
161                                  UniJISX0213-UTF32-V
162                                  UniJISX02132004-UTF32-H
163                                  UniJISX02132004-UTF32-V
164                                  V
165                                  WP-Symbol}
166    set EncodeList(Adobe-GB1)    {Adobe-GB1-0
167                                  Adobe-GB1-1
168                                  Adobe-GB1-2
169                                  Adobe-GB1-3
170                                  Adobe-GB1-4
171                                  Adobe-GB1-5
172                                  GB-EUC-H
173                                  GB-EUC-V
174                                  GB-H
175                                  GB-RKSJ-H
176                                  GB-V
177                                  GBK-EUC-H
178                                  GBK-EUC-V
179                                  GBK2K-H
180                                  GBK2K-V
181                                  GBKp-EUC-H
182                                  GBKp-EUC-V
183                                  GBT-EUC-H
184                                  GBT-EUC-V
185                                  GBT-H
186                                  GBT-RKSJ-H
187                                  GBT-V
188                                  GBTpc-EUC-H
189                                  GBTpc-EUC-V
190                                  GBpc-EUC-H
191                                  GBpc-EUC-V
192                                  Identity-H
193                                  Identity-V
194                                  UniGB-UCS2-H
195                                  UniGB-UCS2-V
196                                  UniGB-UTF16-H
197                                  UniGB-UTF16-V
198                                  UniGB-UTF32-H
199                                  UniGB-UTF32-V
200                                  UniGB-UTF8-H
201                                  UniGB-UTF8-V}
202    set EncodeList(Adobe-CNS1)   {Adobe-CNS1-0
203                                  Adobe-CNS1-1
204                                  Adobe-CNS1-2
205                                  Adobe-CNS1-3
206                                  Adobe-CNS1-4
207                                  Adobe-CNS1-5
208                                  Adobe-CNS1-6
209                                  B5-H
210                                  B5-V
211                                  B5pc-H
212                                  B5pc-V
213                                  CNS-EUC-H
214                                  CNS-EUC-V
215                                  CNS1-H
216                                  CNS1-V
217                                  CNS2-H
218                                  CNS2-V
219                                  ETHK-B5-H
220                                  ETHK-B5-V
221                                  ETen-B5-H
222                                  ETen-B5-V
223                                  ETenms-B5-H
224                                  ETenms-B5-V
225                                  HKdla-B5-H
226                                  HKdla-B5-V
227                                  HKdlb-B5-H
228                                  HKdlb-B5-V
229                                  HKgccs-B5-H
230                                  HKgccs-B5-V
231                                  HKm314-B5-H
232                                  HKm314-B5-V
233                                  HKm471-B5-H
234                                  HKm471-B5-V
235                                  HKscs-B5-H
236                                  HKscs-B5-V
237                                  Identity-H
238                                  Identity-V
239                                  UniCNS-UCS2-H
240                                  UniCNS-UCS2-V
241                                  UniCNS-UTF16-H
242                                  UniCNS-UTF16-V
243                                  UniCNS-UTF32-H
244                                  UniCNS-UTF32-V
245                                  UniCNS-UTF8-H
246                                  UniCNS-UTF8-V}
247    set EncodeList(Adobe-Korea1) {Adobe-Korea1-0
248                                  Adobe-Korea1-1
249                                  Adobe-Korea1-2
250                                  Identity-H
251                                  Identity-V
252                                  KSC-EUC-H
253                                  KSC-EUC-V
254                                  KSC-H
255                                  KSC-Johab-H
256                                  KSC-Johab-V
257                                  KSC-RKSJ-H
258                                  KSC-V
259                                  KSCms-UHC-H
260                                  KSCms-UHC-HW-H
261                                  KSCms-UHC-HW-V
262                                  KSCms-UHC-V
263                                  KSCpc-EUC-H
264                                  KSCpc-EUC-V
265                                  UniKS-UCS2-H
266                                  UniKS-UCS2-V
267                                  UniKS-UTF16-H
268                                  UniKS-UTF16-V
269                                  UniKS-UTF32-H
270                                  UniKS-UTF32-V
271                                  UniKS-UTF8-H
272                                  UniKS-UTF8-V}
273
274    xinstall -m 755 -d ${GSFontDir}
275    xinstall -m 755 -d ${GSCIDFontDir}
276
277    foreach {fontfile fontname fontset aliases} ${FontList} {
278        # expand ${prefix}
279        set fontfile [subst -nocommands ${fontfile}]
280        if {![file exists ${fontfile}]} {
281            return -code error "Font file \"${fontfile}\" is not found. \nIf you have former versions of OS X such as Yosemite, copy the font file from it."
282        }
283
284        ln -s ${fontfile} ${GSCIDFontDir}/${fontname}
285
286        foreach encode "$EncodeList($fontset)" {
287            set fd [open [file join ${GSFontDir} ${fontname}-${encode}] w 0644]
288            puts ${fd} "%!PS-Adobe-3.0 Resource-Font"
289            puts ${fd} "%%DocumentNeededResources: ${encode} (CMap)"
290            puts ${fd} "%%IncludeResource: ${encode} (CMap)"
291            puts ${fd} "%%BeginResource: Font (${fontname}-${encode})"
292            puts ${fd} "(${fontname}-${encode})"
293            puts ${fd} "(${encode}) /CMap findresource"
294            puts ${fd} "\[(${fontname}) /CIDFont findresource\]"
295            puts ${fd} "composefont"
296            puts ${fd} "pop"
297            puts ${fd} "%%EndResource"
298            puts ${fd} "%%EOF"
299            close ${fd}
300        }
301
302        if {![variant_isset no_alias]} {
303            foreach alias ${aliases} {
304                foreach encode "$EncodeList($fontset)" {
305                    set fd [open [file join ${GSFontDir} ${alias}-${encode}] w 0644]
306                    puts ${fd} "%!PS-Adobe-3.0 Resource-Font"
307                    puts ${fd} "%%DocumentNeededResources: ${encode} (CMap)"
308                    puts ${fd} "%%IncludeResource: ${encode} (CMap)"
309                    puts ${fd} "%%BeginResource: Font (${alias}-${encode})"
310                    puts ${fd} "(${alias}-${encode})"
311                    puts ${fd} "(${encode}) /CMap findresource"
312                    puts ${fd} "\[(${fontname}) /CIDFont findresource\]"
313                    puts ${fd} "composefont"
314                    puts ${fd} "pop"
315                    puts ${fd} "%%EndResource"
316                    puts ${fd} "%%EOF"
317                    close ${fd}
318                }
319            }
320        }
321    }
322}
323
324if {[variant_isset no_alias]} {
325    default_variants    -alias
326} else {
327    default_variants    +alias
328}
329
330variant yu description {Add support for Yu fonts (experimental; unstable)} {
331    notes "WARNING: Handling Yu fonts on ghostscript may cause unstable behavior"
332}
333
334variant no_alias conflicts alias description {Legacy compatibility variant} {}
335
336variant alias description "Use Hiragino as an alternative to Morisawa's standard 5 fonts" {}
337
338livecheck.type  none
Note: See TracBrowser for help on using the repository browser.