Update editors/libreoffice-sq to version 5.2.5
[dports.git] / Mk / bsd.sites.mk
1 # bsd.sites.mk - Popular master sites.
2 #
3 # Sites_MAINTAINER=             ports@FreeBSD.org
4 #
5 # This file does not have any designated maintainer, so feel free to
6 # commit to it yourself.  However, it is generally a good idea to
7 # notify the principal maintainer in case you have a change to one of
8 # the software environments (KDE, GNOME, etc.).
9 #
10 # Also, this file is included from bsd.port.mk for all invocations, so
11 # committing a syntax error to this file is a cardinal sin, and will
12 # be punished accordingly.  DO NOT COMMIT SOMETHING YOU HAVEN'T TESTED.
13 # You have been warned. :)
14 #
15 # Note: because it is included for all invocations, please keep the size
16 # of this file manageable.  If a distfile is unfetchable from the first
17 # few dozen locations, it is unlikely to be fetchable from any past that,
18 # and those fetch failures will simply waste time and bandwidth.  Please
19 # pick a globally representative subset.
20 #
21 # Note: all entries should terminate with a slash.
22 #
23 # $FreeBSD$
24 #
25
26 # Where to put distfiles that don't have any other master site
27 .if !defined(IGNORE_MASTER_SITE_LOCAL)
28 MASTER_SITE_LOCAL+= \
29         http://distcache.FreeBSD.org/local-distfiles/%SUBDIR%/ \
30         http://distcache.us-east.FreeBSD.org/local-distfiles/%SUBDIR%/ \
31         http://distcache.eu.FreeBSD.org/local-distfiles/%SUBDIR%/ \
32         http://distcache.us-west.FreeBSD.org/local-distfiles/%SUBDIR%/
33
34 MASTER_SITE_PORTS_JP+= \
35         ftp://ports.jp.FreeBSD.org/pub/FreeBSD-jp/ports-jp/LOCAL_PORTS/%SUBDIR%/ \
36         ftp://ftp4.jp.FreeBSD.org/pub/FreeBSD-jp/ports-jp/LOCAL_PORTS/%SUBDIR%/ \
37         ftp://ftp.ics.es.osaka-u.ac.jp/pub/mirrors/FreeBSD-jp/ports-jp/LOCAL_PORTS/%SUBDIR%/
38 .endif
39
40 ##
41 ##      KEEP THIS LIST SORTED
42 ##
43
44 .if !defined(IGNORE_MASTER_SITE_AFTERSTEP)
45 MASTER_SITE_AFTERSTEP+= \
46         ftp://ftp.afterstep.org/%SUBDIR%/ \
47         ftp://ftp.kddlabs.co.jp/X11/AfterStep/%SUBDIR%/ \
48         ftp://ftp.dti.ad.jp/pub/X/AfterStep/%SUBDIR%/
49 .endif
50
51 .if !defined(IGNORE_MASTER_SITE_APACHE)
52 MASTER_SITE_APACHE+= \
53         http://www.apache.org/dist/%SUBDIR%/ \
54         http://archive.apache.org/dist/%SUBDIR%/ \
55         http://ftp.twaren.net/Unix/Web/apache/%SUBDIR%/ \
56         http://apache.mirror.uber.com.au/%SUBDIR%/ \
57         http://apache.spd.co.il/%SUBDIR%/ \
58         http://ftp.mirrorservice.org/sites/ftp.apache.org/%SUBDIR%/ \
59         http://ftp-stud.fht-esslingen.de/pub/Mirrors/ftp.apache.org/dist/%SUBDIR%/ \
60         ftp://mir1.ovh.net/ftp.apache.org/dist/%SUBDIR%/ \
61         ftp://ftp.forthnet.gr/pub/www/apache/%SUBDIR%/ \
62         ftp://xenia.sote.hu/pub/mirrors/www.apache.org/%SUBDIR%/ \
63         ftp://ftp.heanet.ie/mirrors/www.apache.org/dist/%SUBDIR%/ \
64         ftp://ftp.sunet.se/pub/www/servers/apache/dist/%SUBDIR%/ \
65         http://mirrors.ircam.fr/pub/apache/%SUBDIR%/
66 .endif
67
68 .if !defined(IGNORE_MASTER_SITE_APACHE_COMMONS_BINARIES)
69 MASTER_SITE_APACHE_COMMONS_BINARIES+= \
70         ${MASTER_SITE_APACHE:S,%SUBDIR%,commons/&/binaries,}
71 .endif
72
73 .if !defined(IGNORE_MASTER_SITE_APACHE_COMMONS_SOURCE)
74 MASTER_SITE_APACHE_COMMONS_SOURCE+= \
75         ${MASTER_SITE_APACHE:S,%SUBDIR%,commons/&/source,}
76 .endif
77
78 .if !defined(IGNORE_MASTER_SITE_APACHE_HTTPD)
79 MASTER_SITE_APACHE_HTTPD+= \
80         ${MASTER_SITE_APACHE:S,%SUBDIR%,httpd/&,}
81 .endif
82
83 .if !defined(IGNORE_MASTER_SITE_APACHE_JAKARTA)
84 MASTER_SITE_APACHE_JAKARTA+= \
85         ${MASTER_SITE_APACHE:S,%SUBDIR%,jakarta/&,}
86 .endif
87
88 .if !defined(IGNORE_MASTER_SITE_APACHE_TOMCAT)
89 MASTER_SITE_APACHE_TOMCAT+= \
90         ${MASTER_SITE_APACHE:S,%SUBDIR%,tomcat/&,}
91 .endif
92
93 .if !defined(IGNORE_MASTER_SITE_APACHE_XML)
94 MASTER_SITE_APACHE_XML+= \
95         ${MASTER_SITE_APACHE:S,%SUBDIR%,xml/&,}
96 .endif
97
98 .if !defined(IGNORE_MASTER_SITE_BERLIOS)
99 MASTER_SITE_BERLIOS+= \
100         ${MASTER_SITE_SOURCEFORGE}
101 .endif
102
103 .if !defined(IGNORE_MASTER_SITE_CHEESESHOP)
104 # PEP-449 Compatible MASTER_SITES
105 # Removal of the PyPI Mirror Auto Discovery and Naming Scheme
106 # Reference: https://www.python.org/dev/peps/pep-0449/
107 MASTER_SITE_CHEESESHOP+= \
108         https://pypi.python.org/packages/%SUBDIR%/ \
109         https://files.pythonhosted.org/packages/%SUBDIR%/
110 .endif
111
112 .if !defined(IGNORE_MASTER_SITE_COMP_SOURCES)
113 MASTER_SITE_COMP_SOURCES+= \
114         http://ftp.isc.org/pub/usenet/comp.sources.%SUBDIR%/ \
115         http://ftp.funet.fi/pub/archive/comp.sources.%SUBDIR%/ \
116         http://ftp.sunet.se/pub/usenet/ftp.uu.net/comp.sources.%SUBDIR%/ \
117         http://ftp.fi.netbsd.org/pub/misc/archive/comp.sources.%SUBDIR%/
118 .endif
119
120 .if !defined(IGNORE_MASTER_SITE_CRAN)
121 MASTER_SITE_CRAN+= \
122         https://cloud.r-project.org/%SUBDIR%/ \
123         https://stat.ethz.ch/CRAN/%SUBDIR%/ \
124         http://cran.utstat.utoronto.ca/%SUBDIR%/ \
125         https://cran.cnr.berkeley.edu/%SUBDIR%/ \
126         http://cran.csiro.au/%SUBDIR%/ \
127         https://mirrors.tuna.tsinghua.edu.cn/CRAN/%SUBDIR%/ \
128         http://camoruco.ing.uc.edu.ve/cran/%SUBDIR%/ \
129         https://mirror.las.iastate.edu/CRAN/%SUBDIR%/ \
130         https://cran.ma.imperial.ac.uk/%SUBDIR%/ \
131         https://cran.gis-lab.info/%SUBDIR%/ \
132         https://cran.ism.ac.jp/%SUBDIR%/
133 .endif
134
135 .if !defined(IGNORE_MASTER_SITE_CRAN_ARCHIVE)
136 MASTER_SITE_CRAN_ARCHIVE+= ${MASTER_SITE_CRAN:S,$,Archive/${PORTNAME}/,}
137 .endif
138
139 .if !defined(IGNORE_MASTER_SITE_DEBIAN)
140 MASTER_SITE_DEBIAN+= \
141         http://cdn.debian.net/debian/%SUBDIR%/ \
142         http://www.gtlib.gatech.edu/pub/debian/%SUBDIR%/ \
143         ftp://ftp.us.debian.org/debian/%SUBDIR%/ \
144         ${MASTER_SITE_DEBIAN_NON_US:S,/debian-non-US/,/debian/,}
145 .endif
146
147 .if !defined(IGNORE_MASTER_SITE_DEBIAN_NON_US)
148 MASTER_SITE_DEBIAN_NON_US+= \
149         ftp://ftp.au.debian.org/debian-non-US/%SUBDIR%/ \
150         ftp://ftp.bg.debian.org/debian-non-US/%SUBDIR%/ \
151         ftp://ftp.br.debian.org/debian-non-US/%SUBDIR%/ \
152         ftp://ftp.cl.debian.org/debian-non-US/%SUBDIR%/ \
153         ftp://ftp.cz.debian.org/debian-non-US/%SUBDIR%/ \
154         ftp://ftp.de.debian.org/debian-non-US/%SUBDIR%/ \
155         ftp://ftp.ee.debian.org/debian-non-US/%SUBDIR%/ \
156         ftp://ftp.es.debian.org/debian-non-US/%SUBDIR%/ \
157         ftp://ftp.fi.debian.org/debian-non-US/%SUBDIR%/ \
158         ftp://ftp.fr.debian.org/debian-non-US/%SUBDIR%/ \
159         ftp://ftp.hk.debian.org/debian-non-US/%SUBDIR%/ \
160         ftp://ftp.hr.debian.org/debian-non-US/%SUBDIR%/ \
161         ftp://ftp.hu.debian.org/debian-non-US/%SUBDIR%/ \
162         ftp://ftp.ie.debian.org/debian-non-US/%SUBDIR%/ \
163         ftp://ftp.is.debian.org/debian-non-US/%SUBDIR%/ \
164         ftp://ftp.it.debian.org/debian-non-US/%SUBDIR%/ \
165         ftp://ftp.jp.debian.org/debian-non-US/%SUBDIR%/ \
166         ftp://ftp.nl.debian.org/debian-non-US/%SUBDIR%/ \
167         ftp://ftp.no.debian.org/debian-non-US/%SUBDIR%/ \
168         ftp://ftp.pl.debian.org/debian-non-US/%SUBDIR%/ \
169         ftp://ftp.ru.debian.org/debian-non-US/%SUBDIR%/ \
170         ftp://ftp.se.debian.org/debian-non-US/%SUBDIR%/ \
171         ftp://ftp.si.debian.org/debian-non-US/%SUBDIR%/ \
172         ftp://ftp.sk.debian.org/debian-non-US/%SUBDIR%/ \
173         ftp://ftp.uk.debian.org/debian-non-US/%SUBDIR%/ \
174         ftp://ftp.wa.au.debian.org/debian-non-US/%SUBDIR%/ \
175         ftp://ftp2.de.debian.org/debian-non-US/%SUBDIR%/ \
176         ftp://ftp.snt.utwente.nl/pub/linux/debian-non-US/%SUBDIR%/ \
177         ftp://ftp.df.lth.se/pub/debian-non-US/%SUBDIR%/ \
178         ftp://ftp.acc.umu.se/debian-non-US/%SUBDIR%/ \
179         ftp://mirror.symnds.com/debian-non-US/%SUBDIR%/
180 .endif
181
182 .if !defined(IGNORE_MASTER_SITE_DEBIAN_POOL)
183 MASTER_SITE_DEBIAN_POOL+= \
184         ${MASTER_SITE_DEBIAN:C|(/%SUBDIR%/)|/pool/main/${PORTNAME:C/^(.).*$/\1/}/${PORTNAME}/|}
185 .endif
186
187 .if !defined(IGNORE_MASTER_SITE_EASYSW)
188 MASTER_SITE_EASYSW+= \
189         http://ftp.funet.fi/pub/mirrors/ftp.easysw.com/pub/%SUBDIR%/ \
190         ftp://ftp.funet.fi/pub/mirrors/ftp.easysw.com/pub/%SUBDIR%/
191 .endif
192
193 .if !defined(IGNORE_MASTER_SITE_ECLIPSE)
194 MASTER_SITE_ECLIPSE+= \
195         ftp://sunsite.informatik.rwth-aachen.de/pub/mirror/eclipse.org/%SUBDIR%/ \
196         ftp://sunsite.informatik.rwth-aachen.de/pub/mirror/eclipse/%SUBDIR%/ \
197         http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/%SUBDIR%/ \
198         ftp://sunsite.cnlab-switch.ch/mirror/eclipse/%SUBDIR%/ \
199         ftp://sunsite.cnlab-switch.ch/mirror/eclipse/eclipse/downloads/drops/%SUBDIR%/ \
200         ftp://sunsite.cnlab-switch.ch/mirror/eclipse/eclipse/downloads/drops4/%SUBDIR%/ \
201         http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/%SUBDIR%/ \
202         http://eclipse.stu.edu.tw/%SUBDIR%/
203 .endif
204
205 .if !defined(IGNORE_MASTER_SITE_EXIM)
206 MASTER_SITE_EXIM+= \
207         ftp://ftp.exim.org/pub/exim/%SUBDIR%/ \
208         ftp://mirror.easyname.at/exim-ftp/%SUBDIR%/ \
209         http://dl.ambiweb.de/mirrors/ftp.exim.org/exim/%SUBDIR%/ \
210         ftp://exim.noris.de/exim/%SUBDIR%/ \
211         ftp://ftp.bytemine.net/exim/exim/%SUBDIR%/ \
212         ftp://ftp.heanet.ie/pub/exim/%SUBDIR%/ \
213         http://ftp.heanet.ie/pub/exim/%SUBDIR%/ \
214         http://washitake.com/mail/exim/mirror/exim/%SUBDIR%/ \
215         ftp://ftp.kaist.ac.kr/exim/%SUBDIR%/ \
216         http://ftp.kaist.ac.kr/exim/%SUBDIR%/ \
217         ftp://sunsite.uio.no/pub/mail/exim/exim/%SUBDIR%/ \
218         ftp://sunsite.icm.edu.pl/pub/unix/mail/exim/exim/%SUBDIR%/ \
219         http://sunsite.icm.edu.pl/pub/unix/mail/exim/exim/%SUBDIR%/ \
220         ftp://mirrors.dominios.pt/pub/ftp.exim.org/exim/%SUBDIR%/ \
221         ftp://mirror.switch.ch/mirror/exim/exim/%SUBDIR%/ \
222         http://mirror.switch.ch/ftp/mirror/exim/exim/%SUBDIR%/ \
223         ftp://ftp.mirrorservice.org/sites/ftp.exim.org/pub/%SUBDIR%/ \
224         http://exim.telcom.net.ua/ftp/%SUBDIR/ \
225         ftp://idcnetwork.org/pub/exim/exim/%SUBDIR%/
226 .endif
227
228 .if !defined(IGNORE_MASTER_SITE_CENTOS_LINUX)
229 MASTER_SITE_CENTOS_LINUX+= \
230         http://mirror.centos.org/%SUBDIR%/:DEFAULT,amd64,i386 \
231         http://vault.centos.org/%SUBDIR%/:DEFAULT,amd64,i386,SOURCE
232 .endif
233
234 .if !defined(IGNORE_MASTER_SITE_EPEL)
235 MASTER_SITE_EPEL+= \
236         http://dl.fedoraproject.org/pub/epel/6/x86_64/:DEFAULT,amd64 \
237         http://dl.fedoraproject.org/pub/epel/6/i386/:DEFAULT,i386 \
238         http://dl.fedoraproject.org/pub/epel/6/SRPMS/:SOURCE
239 .endif
240
241 .if !defined(IGNORE_MASTER_SITE_EPEL7)
242 MASTER_SITE_EPEL7+= \
243         http://dl.fedoraproject.org/pub/epel/7/x86_64/%SUBDIR%/:DEFAULT,amd64 \
244         http://dl.fedoraproject.org/pub/epel/7/SRPMS/%SUBDIR%/:SOURCE
245 .endif
246
247 .if !defined(IGNORE_MASTER_SITE_FEDORA_LINUX)
248 MASTER_SITE_FEDORA_LINUX+= \
249         http://archives.fedoraproject.org/pub/archive/fedora/linux/%SUBDIR%/:DEFAULT,SOURCE \
250         ftp://ftp.pbone.net/vol4/archive.fedoraproject.org/fedora/linux/%SUBDIR%/:DEFAULT,SOURCE \
251         ftp://ftp.gmd.de/archives.fedoraproject.org/fedora/linux/%SUBDIR%/:DEFAULT,SOURCE \
252         ftp://mirror.fraunhofer.de/archives.fedoraproject.org/fedora/linux/%SUBDIR%/:DEFAULT,SOURCE \
253         ftp://ftp-mirror.bi.fraunhofer.de/archives.fedoraproject.org/fedora/linux/%SUBDIR%/:DEFAULT,SOURCE
254 .endif
255
256 .if !defined(IGNORE_MASTER_SITE_FARSIGHT)
257 MASTER_SITE_FARSIGHT+= \
258         https://dl.farsightsecurity.com/dist/%SUBDIR%/
259 .endif
260
261 .if !defined(IGNORE_MASTER_SITE_FESTIVAL)
262 MASTER_SITE_FESTIVAL+= \
263         http://www.festvox.org/packed/festival/%SUBDIR%/ \
264         http://www.cstr.ed.ac.uk/downloads/festival/%SUBDIR%/ \
265         http://stuff.mit.edu/afs/sipb/project/speech-tools/src/festival/festvox.org/packed/festival/%SUBDIR%/
266 .endif
267
268 .if !defined(IGNORE_MASTER_SITE_FESTIVAL_OGI)
269 MASTER_SITE_FESTIVAL_OGI+= \
270         ftp://ftp.tuwien.ac.at/opsys/linux/blinux/festival/mirror.ogi-synth_home/ \
271         http://www.cslu.ogi.edu/tts/download/data/
272 .endif
273
274 #
275 # FreeBSD mirror sites
276 #
277 # For the full list, see the Handbook:
278 #
279 #    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/mirrors-ftp.html
280 #
281 .if !defined(IGNORE_MASTER_SITE_FREEBSD_ORG)
282 MASTER_SITE_FREEBSD_ORG+= \
283         ftp://ftp.FreeBSD.org/pub/FreeBSD/%SUBDIR%/ \
284         ftp://ftp.se.FreeBSD.org/pub/FreeBSD/%SUBDIR%/ \
285         ftp://ftp.jp.FreeBSD.org/pub/FreeBSD/%SUBDIR%/ \
286         ftp://ftp.uk.FreeBSD.org/pub/FreeBSD/%SUBDIR%/ \
287         ftp://ftp.ru.FreeBSD.org/pub/FreeBSD/%SUBDIR%/ \
288         ftp://ftp.dti.ad.jp/pub/FreeBSD/%SUBDIR%/
289 .endif
290
291 .if !defined(IGNORE_MASTER_SITE_FRUGALWARE)
292 MASTER_SITE_FRUGALWARE+= \
293         ftp://ftp7.frugalware.org/pub/frugalware/frugalware-stable/source/%SUBDIR%/ \
294         ftp://ftp2.frugalware.org/mirror/ftp.frugalware.org/pub/frugalware/frugalware-stable/source/%SUBDIR%/ \
295         ftp://ftp6.frugalware.org/mirrors/linux/frugalware/frugalware-stable/source/%SUBDIR%/ \
296         ftp://ftp4.frugalware.org/pub/linux/distributions/frugalware/frugalware-stable/source/%SUBDIR%/ \
297         ftp://ftp12.frugalware.org/mirrors/ftp.frugalware.org/pub/frugalware/frugalware-stable/source/%SUBDIR%/ \
298         ftp://ftp10.frugalware.org/pub/linux/frugalware/frugalware-stable/source/%SUBDIR%/
299 #       ftp://ftp5.frugalware.org/packages/frugalware/pub/frugalware/frugalware-stable/source/%SUBDIR%/
300 #       ftp://ftp3.frugalware.org/mirrors/frugalware/pub/frugalware/frugalware-stable/source/%SUBDIR%/
301 #       ftp://ftp9.frugalware.org/pub/frugalware/frugalware-stable/source/%SUBDIR%/
302 .endif
303
304 .if !defined(IGNORE_MASTER_SITE_GCC)
305 MASTER_SITE_GCC+= \
306         http://mirrors.kernel.org/sources.redhat.com/gcc/%SUBDIR%/ \
307         http://gcc.parentingamerica.com/%SUBDIR%/ \
308         http://gcc.skazkaforyou.com/%SUBDIR%/ \
309         http://gcc.cybermirror.org/%SUBDIR%/ \
310         http://gcc-uk.internet.bs/%SUBDIR%/ \
311         http://www.netgull.com/gcc/%SUBDIR%/ \
312         http://robotlab.itk.ppke.hu/gcc/%SUBDIR%/ \
313         http://gcc.fyxm.net/%SUBDIR%/ \
314         http://gcc.igor.onlinedirect.bg/%SUBDIR%/ \
315         ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/%SUBDIR%/ \
316         ftp://gcc.gnu.org/pub/gcc/%SUBDIR%/ \
317         ftp://ftp.lip6.fr/pub/gcc/%SUBDIR%/ \
318         ftp://ftp.irisa.fr/pub/mirrors/gcc.gnu.org/gcc/%SUBDIR%/ \
319         ftp://ftp.uvsq.fr/pub/gcc/%SUBDIR%/ \
320         ftp://ftp.gwdg.de/pub/misc/gcc/%SUBDIR%/ \
321         ftp://ftp.mpi-sb.mpg.de/pub/gnu/mirror/gcc.gnu.org/pub/gcc/%SUBDIR%/ \
322         ftp://ftp.nluug.nl/mirror/languages/gcc/%SUBDIR%/ \
323         ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/%SUBDIR%/ \
324         ftp://ftp.ntua.gr/pub/gnu/gcc/%SUBDIR%/
325 .endif
326
327 .if !defined(IGNORE_MASTER_SITE_GENTOO)
328 MASTER_SITE_GENTOO+= \
329         http://gentoo.mirrors.pair.com/%SUBDIR%/ \
330         http://mirrors.tds.net/pub/gentoo/%SUBDIR%/ \
331         ftp://ftp.mirrorservice.org/sites/www.ibiblio.org/gentoo/%SUBDIR%/ \
332         http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/%SUBDIR%/ \
333         http://ftp.snt.utwente.nl/pub/os/linux/gentoo/%SUBDIR%/ \
334         http://trumpetti.atm.tut.fi/gentoo/%SUBDIR%/ \
335         http://sunsite.cnlab-switch.ch/ftp/mirror/gentoo/%SUBDIR%/ \
336         http://ftp.uni-erlangen.de/pub/mirrors/gentoo/%SUBDIR%/ \
337         http://darkstar.ist.utl.pt/gentoo/%SUBDIR%/ \
338         http://gentoo.inode.at/%SUBDIR%/ \
339         http://ftp.rhnet.is/pub/gentoo/%SUBDIR%/ \
340         http://gentoo.gg3.net/%SUBDIR%/ \
341         http://gentoo.kems.net/%SUBDIR%/ \
342         http://mirrors.163.com/gentoo/%SUBDIR%/ \
343         ftp://ftp.gtlib.gatech.edu/pub/gentoo/%SUBDIR%/ \
344         ftp://mirror.iawnet.sandia.gov/pub/gentoo/%SUBDIR%/ \
345         ftp://ftp.ussg.iu.edu/pub/linux/gentoo/%SUBDIR%/ \
346         ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/%SUBDIR%/ \
347         ftp://gentoo.mirrors.pair.com/%SUBDIR%/ \
348         ftp://mirrors.tds.net/pub/gentoo/%SUBDIR%/ \
349         ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/%SUBDIR%/ \
350         ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo/%SUBDIR%/ \
351         ftp://trumpetti.atm.tut.fi/gentoo/%SUBDIR%/ \
352         ftp://sunsite.cnlab-switch.ch/mirror/gentoo/%SUBDIR%/ \
353         ftp://ftp.tu-clausthal.de/pub/linux/gentoo/%SUBDIR%/ \
354         ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo/%SUBDIR%/ \
355         ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/%SUBDIR%/ \
356         ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo/%SUBDIR%/ \
357         ftp://darkstar.ist.utl.pt/pub/gentoo/%SUBDIR%/ \
358         ftp://gentoo.inode.at/source/%SUBDIR%/ \
359         ftp://ftp.rhnet.is/pub/gentoo/%SUBDIR%/ \
360         ftp://files.gentoo.gr/%SUBDIR%/
361 .endif
362
363 .if !defined(IGNORE_MASTER_SITE_GITHUB)
364 #
365 # In order to use GitHub your port must define USE_GITHUB and the following
366 # variables:
367 #
368 # GH_ACCOUNT    - account name of the GitHub user hosting the project
369 #                 default: ${PORTNAME}
370 #
371 # GH_PROJECT    - name of the project on GitHub
372 #                 default: ${PORTNAME}
373 #
374 # GH_TAGNAME    - name of the tag to download (2.0.1, hash, ...)
375 #                 Using the name of a branch here is incorrect. It is
376 #                 possible to do GH_TAGNAME= GIT_HASH to do a snapshot.
377 #                 default: ${DISTVERSION}
378 #
379 # GH_SUBDIR     - directory relative to WRKSRC where to move this distfile's
380 #                 content after extracting.
381 #
382 # GH_TUPLE      - above shortened to account:project:tagname[:group][/subdir]
383 #
384 .if defined(USE_GITHUB)
385 .  if defined(GH_TAGNAME) && ${GH_TAGNAME} == master
386 IGNORE?=        Using master as GH_TAGNAME is invalid. \
387                 Must use a tag or commit hash so the upstream does \
388                 not "reroll" as soon as the branch is updated
389 .  endif
390 .  if defined(GH_TUPLE)
391 .    for _tuple in ${GH_TUPLE}
392 _t_tmp=${_tuple}
393 .      if ${_t_tmp:C@^([^:]*):([^:]*):([^:]*)((:[^:/]*)?)((/.*)?)@\4@:S/://:C/[a-zA-Z0-9_]//g}
394 check-makevars::
395         @${ECHO_MSG} "The ${_tuple} GH_TUPLE line has"
396         @${ECHO_MSG} "a tag containing something else than [a-zA-Z0-9_]"
397         @${FALSE}
398 .      endif
399 .    endfor
400 GH_ACCOUNT+=    ${GH_TUPLE:C@^([^:]*):([^:]*):([^:]*)((:[^:/]*)?)((/.*)?)@\1\4@}
401 GH_PROJECT+=    ${GH_TUPLE:C@^([^:]*):([^:]*):([^:]*)((:[^:/]*)?)((/.*)?)@\2\4@}
402 GH_TAGNAME+=    ${GH_TUPLE:C@^([^:]*):([^:]*):([^:]*)((:[^:/]*)?)((/.*)?)@\3\4@}
403 GH_SUBDIR+=     ${GH_TUPLE:C@^([^:]*):([^:]*):([^:]*)((:[^:/]*)?)((/.*)?)@\6\4@:M/*:S/^\///}
404 .  endif
405 # We are cheating and using backend URLS for Github here. See ports/194898
406 # comment #15 for explanation as to why and how to deal with it if it breaks.
407 MASTER_SITE_GITHUB+=            https://codeload.github.com/%SUBDIR%
408 MASTER_SITE_GITHUB_CLOUD+=      https://cloud.github.com/downloads/%SUBDIR%
409
410 .  if !defined(MASTER_SITES) || !${MASTER_SITES:MGH} && !${MASTER_SITES:MGHC} && !${USE_GITHUB:Mnodefault}
411 MASTER_SITES+=  GH
412 .  endif
413 GH_ACCOUNT_DEFAULT=     ${PORTNAME}
414 GH_ACCOUNT?=    ${GH_ACCOUNT_DEFAULT}
415 GH_PROJECT_DEFAULT=     ${PORTNAME}
416 GH_PROJECT?=    ${GH_PROJECT_DEFAULT}
417 # Use full PREFIX/SUFFIX and converted DISTVERSION
418 GH_TAGNAME_DEFAULT=     ${DISTVERSIONFULL}
419 GH_TAGNAME?=    ${GH_TAGNAME_DEFAULT}
420 # Iterate over GH_ACCOUNT, GH_PROJECT and GH_TAGNAME to extract groups
421 _GITHUB_GROUPS= DEFAULT
422 .  for _A in ${GH_ACCOUNT}
423 _S_TEMP=        ${_A:S/^${_A:C@:[^/:]+$@@}//:S/^://}
424 .    if !empty(_S_TEMP)
425 .      for _group in ${_S_TEMP:S/,/ /g}
426 _G_TEMP=        ${_group}
427 .        if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default
428 check-makevars::
429                 @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be"
430                 @${ECHO_MSG} "used in group definitions. Please fix your GH_ACCOUNT"
431                 @${FALSE}
432 .        endif
433 .        if !${_GITHUB_GROUPS:M${_group}}
434 _GITHUB_GROUPS+=        ${_group}
435 .         endif
436 GH_ACCOUNT_${_group}=   ${_A:C@^(.*):[^/:]+$@\1@}
437 .      endfor
438 .    else
439 GH_ACCOUNT_DEFAULT=     ${_A:C@^(.*):[^/:]+$@\1@}
440 .    endif
441 .  endfor
442 .  for _P in ${GH_PROJECT}
443 _S_TEMP=        ${_P:S/^${_P:C@:[^/:]+$@@}//:S/^://}
444 .    if !empty(_S_TEMP)
445 .      for _group in ${_S_TEMP:S/,/ /g}
446 _G_TEMP=        ${_group}
447 .        if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default
448 check-makevars::
449                 @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be"
450                 @${ECHO_MSG} "used in group definitions. Please fix your GH_PROJECT"
451                 @${FALSE}
452 .        endif
453 .        if !${_GITHUB_GROUPS:M${_group}}
454 _GITHUB_GROUPS+=        ${_group}
455 .         endif
456 GH_PROJECT_${_group}=   ${_P:C@^(.*):[^/:]+$@\1@}
457 .      endfor
458 .    else
459 GH_PROJECT_DEFAULT=     ${_P:C@^(.*):[^/:]+$@\1@}
460 .    endif
461 .  endfor
462 .  for _T in ${GH_TAGNAME}
463 _S_TEMP=        ${_T:S/^${_T:C@:[^/:]+$@@}//:S/^://}
464 .    if !empty(_S_TEMP)
465 .      for _group in ${_S_TEMP:S/,/ /g}
466 _G_TEMP=        ${_group}
467 .        if ${_G_TEMP} == all || ${_G_TEMP} == ALL || ${_G_TEMP} == default
468 check-makevars::
469                 @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be"
470                 @${ECHO_MSG} "used in group definitions. Please fix your GH_TAGNAME"
471                 @${FALSE}
472 .        endif
473 .        if !${_GITHUB_GROUPS:M${_group}}
474 _GITHUB_GROUPS+=        ${_group}
475 .         endif
476 GH_TAGNAME_${_group}=   ${_T:C@^(.*):[^/:]+$@\1@}
477 .      endfor
478 .    else
479 GH_TAGNAME_DEFAULT=     ${_T:C@^(.*):[^/:]+$@\1@}
480 .    endif
481 .  endfor
482 .  for _S in ${GH_SUBDIR}
483 _S_SEMP=        ${_S:S/^${_S:C@:[^/:]+$@@}//:S/^://}
484 .    if !empty(_S_SEMP)
485 .      for _group in ${_S_SEMP:S/,/ /g}
486 _G_SEMP=        ${_group}
487 .        if ${_G_SEMP} == all || ${_G_SEMP} == ALL || ${_G_SEMP} == default
488 check-makevars::
489                 @${ECHO_MSG} "Makefile error: the words all, ALL and default are reserved and cannot be"
490                 @${ECHO_MSG} "used in group definitions. Please fix your GH_SUBDIR"
491                 @${FALSE}
492 .        endif
493 .        if !${_GITHUB_GROUPS:M${_group}}
494 _GITHUB_GROUPS+=        ${_group}
495 .         endif
496 GH_SUBDIR_${_group}=    ${_S:C@^(.*):[^/:]+$@\1@}
497 .      endfor
498 .    else
499 GH_SUBDIR_DEFAULT=      ${_S:C@^(.*):[^/:]+$@\1@}
500 .    endif
501 .  endfor
502 # Put the default values back into the variables so that the *default* behavior
503 # is not changed.
504 GH_ACCOUNT:=    ${GH_ACCOUNT_DEFAULT}
505 GH_PROJECT:=    ${GH_PROJECT_DEFAULT}
506 GH_TAGNAME:=    ${GH_TAGNAME_DEFAULT}
507 GH_SUBDIR:=     ${GH_SUBDIR_DEFAULT}
508 .  if defined(GH_TAGNAME)
509 GH_TAGNAME_SANITIZED=   ${GH_TAGNAME:S,/,-,}
510 # Github silently converts tags starting with v to not have v in the filename
511 # and extraction directory.  It also replaces + with -.
512 GH_TAGNAME_EXTRACT=     ${GH_TAGNAME_SANITIZED:C/^[vV]([0-9])/\1/:S/+/-/g}
513 .  endif
514 .  if defined(_GITHUB_MUST_SET_DISTNAME)
515 # GH_TAGNAME defaults to DISTVERSIONFULL; Avoid adding DISTVERSIONFULL in twice
516 .    if ${GH_TAGNAME} != ${DISTVERSIONFULL}
517 DISTNAME=       ${GH_ACCOUNT}-${GH_PROJECT}-${DISTVERSIONFULL}-${GH_TAGNAME_SANITIZED}
518 .    else
519 DISTNAME=       ${GH_ACCOUNT}-${GH_PROJECT}-${GH_TAGNAME_SANITIZED}
520 .    endif
521 .  endif
522 # This new scheme rerolls distfiles. Also ensure they are renamed to avoid
523 # conflicts. Use _GITHUB_REV in case github changes their zipping or structure
524 # which has happened before.
525 _GITHUB_REV=    0
526 .  if ${MASTER_SITES:MGH}
527 DISTNAME:=      ${DISTNAME}_GH${_GITHUB_REV}
528 .  endif
529 _GITHUB_EXTRACT_SUFX=   .tar.gz
530 # Put the DEFAULT distfile first
531 .  if !${USE_GITHUB:Mnodefault} && defined(_GITHUB_MUST_SET_DISTNAME)
532 DISTFILES+=     ${DISTNAME}${_GITHUB_EXTRACT_SUFX}
533 .  endif
534 .  if !empty(GH_SUBDIR)
535 _SITES_extract:=        690:post-extract-gh-DEFAULT
536 post-extract-gh-DEFAULT:
537         @${RMDIR} ${WRKSRC}/${GH_SUBDIR_DEFAULT} 2>/dev/null || :
538         @${MKDIR} ${WRKSRC}/${GH_SUBDIR_DEFAULT:H} 2>/dev/null || :
539         @${LN} -s ${GH_SUBDIR_DEFAULT:C/[^\/]//g:C/\//..\//g} ${WRKSRC}/${GH_SUBDIR_DEFAULT}
540 .  endif
541 # If there are non default groups
542 .  if !empty(_GITHUB_GROUPS:NDEFAULT)
543 # Then for each of the remaining groups, add DISTFILES and MASTER_SITES
544 # entries with the correct group and create {WRKSRC,DISTNAME,DISTFILES}_group
545 # helper variables.
546 .    for _group in ${_GITHUB_GROUPS:NDEFAULT}
547 GH_ACCOUNT_${_group}?=  ${GH_ACCOUNT_DEFAULT}
548 GH_PROJECT_${_group}?=  ${GH_PROJECT_DEFAULT}
549 GH_TAGNAME_${_group}?=  ${GH_TAGNAME_DEFAULT}
550 GH_TAGNAME_${_group}_SANITIZED= ${GH_TAGNAME_${_group}:S,/,-,}
551 GH_TAGNAME_${_group}_EXTRACT=   ${GH_TAGNAME_${_group}_SANITIZED:C/^[vV]([0-9])/\1/}
552 _GH_TUPLE_OUT:= ${_GH_TUPLE_OUT} ${GH_ACCOUNT_${_group}}:${GH_PROJECT_${_group}}:${GH_TAGNAME_${_group}}:${_group}/${GH_SUBDIR_${_group}}
553 DISTNAME_${_group}:=    ${GH_ACCOUNT_${_group}}-${GH_PROJECT_${_group}}-${GH_TAGNAME_${_group}_SANITIZED}
554 DISTFILE_${_group}:=    ${DISTNAME_${_group}}_GH${_GITHUB_REV}${_GITHUB_EXTRACT_SUFX}
555 DISTFILES:=     ${DISTFILES} ${DISTFILE_${_group}}:${_group}
556 MASTER_SITES:=  ${MASTER_SITES} ${MASTER_SITE_GITHUB:S@%SUBDIR%@${GH_ACCOUNT_${_group}}/${GH_PROJECT_${_group}}/tar.gz/${GH_TAGNAME_${_group}}?dummy=/:${_group}@}
557 WRKSRC_${_group}:=      ${WRKDIR}/${GH_PROJECT_${_group}}-${GH_TAGNAME_${_group}_EXTRACT}
558 .      if !empty(GH_SUBDIR_${_group})
559 _SITES_extract:=        ${_SITES_extract} 690:post-extract-gh-${_group}
560 post-extract-gh-${_group}:
561         @${RMDIR} ${WRKSRC}/${GH_SUBDIR_${_group}} 2>/dev/null || :
562         @${MKDIR} ${WRKSRC}/${GH_SUBDIR_${_group}:H} 2>/dev/null || :
563         @${MV} ${WRKSRC_${_group}} ${WRKSRC}/${GH_SUBDIR_${_group}}
564         @ln -s ${WRKSRC:T}/${GH_SUBDIR_${_group}} ${WRKSRC_${_group}}
565 .      endif
566 .    endfor
567 .  endif
568 convert-to-gh-tuple:
569         @${ECHO_MSG} ${GH_ACCOUNT}:${GH_PROJECT}:${GH_TAGNAME} ${_GH_TUPLE_OUT:S/\/$//}
570 .endif # defined(USE_GITHUB)
571 .endif # !defined(IGNORE_MASTER_SITE_GITHUB)
572
573 .if !defined(IGNORE_MASTER_SITE_GNOME)
574 MASTER_SITE_GNOME+= \
575         https://download.gnome.org/%SUBDIR%/ \
576         http://download.gnome.org/%SUBDIR%/ \
577         ftp://ftp.belnet.be/mirror/ftp.gnome.org/%SUBDIR%/ \
578         http://ftp.acc.umu.se/pub/GNOME/%SUBDIR%/ \
579         ftp://ftp.cse.buffalo.edu/pub/Gnome/%SUBDIR%/ \
580         http://fr2.rpmfind.net/linux/gnome.org/%SUBDIR%/ \
581         http://www.gtlib.gatech.edu/pub/gnome/%SUBDIR%/ \
582         ftp://ftp.dti.ad.jp/pub/X/gnome/%SUBDIR%/ \
583         http://linorg.usp.br/gnome/%SUBDIR%/ \
584         http://mirror.aarnet.edu.au/pub/gnome/%SUBDIR%/ \
585         ftp://ftp.kddlabs.co.jp/pub/GNOME/%SUBDIR%/ \
586         ftp://ftp.mirrorservice.org/sites/ftp.gnome.org/pub/GNOME/%SUBDIR%/ \
587         ftp://ftp.nara.wide.ad.jp/pub/X11/GNOME/%SUBDIR%/ \
588         http://ftp.gnome.org/pub/GNOME/%SUBDIR%/
589 .endif
590
591 .if !defined(IGNORE_MASTER_SITE_GIMP)
592 MASTER_SITE_GIMP+= \
593         http://gimp.mirrors.hoobly.com/pub/%SUBDIR%/ \
594         http://gimper.net/downloads/pub/%SUBDIR%/ \
595         http://mirror.hessmo.com/gimp/pub/%SUBDIR%/ \
596         http://de-mirror.gimper.net/pub/%SUBDIR%/ \
597         http://gimp.afri.cc/pub/%SUBDIR%/ \
598         http://download.gimp.org/pub/%SUBDIR%/
599 .endif
600
601 .if !defined(IGNORE_MASTER_SITE_GNU)
602 MASTER_SITE_GNU+= \
603         http://ftpmirror.gnu.org/%SUBDIR%/ \
604         http://ftp.gnu.org/gnu/%SUBDIR%/ \
605         ftp://ftp.gnu.org/gnu/%SUBDIR%/ \
606         http://www.gtlib.gatech.edu/pub/gnu/gnu/%SUBDIR%/ \
607         http://mirrors.kernel.org/gnu/%SUBDIR%/ \
608         ftp://ftp.kddlabs.co.jp/GNU/gnu/%SUBDIR%/ \
609         ftp://ftp.dti.ad.jp/pub/GNU/%SUBDIR%/ \
610         ftp://ftp.mirrorservice.org/sites/ftp.gnu.org/gnu/%SUBDIR%/ \
611         ftp://ftp.informatik.hu-berlin.de/pub/gnu/gnu/%SUBDIR%/ \
612         ftp://ftp.informatik.rwth-aachen.de/pub/mirror/ftp.gnu.org/pub/gnu/%SUBDIR%/ \
613         http://ftp.funet.fi/pub/gnu/prep/%SUBDIR%/
614 .endif
615
616 .if !defined(IGNORE_MASTER_SITE_GNUPG)
617 MASTER_SITE_GNUPG+= \
618         https://gnupg.org/ftp/gcrypt/%SUBDIR%/ \
619         http://ftp.heanet.ie/mirrors/ftp.gnupg.org/gcrypt/%SUBDIR%/ \
620         ftp://ftp.sunet.se/pub/security/gnupg/%SUBDIR%/ \
621         ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/%SUBDIR%/ \
622         ftp://mirror.switch.ch/mirror/gnupg/%SUBDIR%/ \
623         http://gd.tuwien.ac.at/privacy/gnupg/%SUBDIR%/ \
624         http://mirrors.dotsrc.org/gcrypt/%SUBDIR%/ \
625         ftp://ftp.freenet.de/pub/ftp.gnupg.org/gcrypt/%SUBDIR%/ \
626         ftp://ftp.crysys.hu/pub/gnupg/%SUBDIR%/ \
627         http://www.mirrorservice.org/sites/ftp.gnupg.org/gcrypt/%SUBDIR%/ \
628         http://artfiles.org/gnupg.org/%SUBDIR%/ \
629         ftp://ftp.gnupg.org/gcrypt/%SUBDIR%/ \
630         http://mirror.tje.me.uk/pub/mirrors/ftp.gnupg.org/%SUBDIR%/
631 .endif
632
633 .if !defined(IGNORE_MASTER_SITE_GNUSTEP)
634 MASTER_SITE_GNUSTEP+= \
635         ftp://ftp.gnustep.org/pub/gnustep/%SUBDIR%/ \
636         http://ftp.gnustep.org/pub/gnustep/%SUBDIR%/
637 .endif
638
639 .if !defined(IGNORE_MASTER_SITE_GNU_ALPHA)
640 MASTER_SITE_GNU_ALPHA+= \
641         http://alpha.gnu.org/gnu/%SUBDIR%/ \
642         ftp://spinellicreations.com/alpha/gnu/%SUBDIR%/ \
643         http://www.nic.funet.fi/pub/gnu/alpha/gnu/%SUBDIR%/ \
644         http://mirror.thecodefactory.org/gnualpha/%SUBDIR%/ \
645         http://www.mirrorservice.org/sites/alpha.gnu.org/gnu/%SUBDIR%/ \
646         http://gnu.c3sl.ufpr.br/alpha/%SUBDIR%/ \
647         http://mirror.cedia.org.ec/gnualpha/%SUBDIR%/ \
648         http://gnu-alpha.mirrors.hostinginnederland.nl/%SUBDIR%/ \
649         http://gnualpha.uib.no/%SUBDIR%/ \
650         http://mirrors.fe.up.pt/pub/gnu-alpha/%SUBDIR%/ \
651         http://mirror.lihnidos.org/GNU/alpha/gnu/%SUBDIR%/ \
652         http://alpha-gnu-org.ip-connect.vn.ua/%SUBDIR%/
653 .endif
654
655 .if !defined(IGNORE_MASTER_SITE_GOOGLE_CODE)
656 PROJECTHOST?=   ${PORTNAME}
657 MASTER_SITE_GOOGLE_CODE+= \
658         http://${PROJECTHOST}.googlecode.com/files/
659 .endif
660
661 .if !defined(IGNORE_MASTER_SITE_HORDE)
662 MASTER_SITE_HORDE+= \
663         http://ftp.horde.org/pub/%SUBDIR%/ \
664         ftp://ftp.horde.org/pub/%SUBDIR%/ \
665         ftp://ftp.at.horde.org/infosys/webapps/horde/%SUBDIR%/ \
666         ftp://ftp.se.horde.org/mirror/horde/pub/%SUBDIR%/ \
667         ftp://ftp.tw.horde.org/pub/%SUBDIR%/ \
668         ftp://ftp.us.horde.org/pub/software/horde//%SUBDIR%/
669 .endif
670
671 .if !defined(IGNORE_MASTER_SITE_IDSOFTWARE)
672 MASTER_SITE_IDSOFTWARE+= \
673         ftp://ftp.gwdg.de/pub/misc2/ftp.idsoftware.com/idstuff/%SUBDIR%/ \
674         http://ftp4.de.freesbie.org/pub/misc/ftp.idsoftware.com/idstuff/%SUBDIR%/ \
675         ftp://ftp.fu-berlin.de/pc/games/idgames/idstuff/%SUBDIR%/ \
676         ftp://ftp.gamers.org/pub/idgames/idstuff/%SUBDIR%/ \
677         http://ftp.iinet.net.au/games/idstuff/%SUBDIR%/ \
678         ftp://ftp.mirror.nl/disk2/idsoftware/idstuff/%SUBDIR%/ \
679         ftp://freebsd.nsu.ru/mirrors/ftp.idsoftware.com/idstuff/%SUBDIR%/ \
680         ftp://ftp.ntua.gr/pub/vendors/idgames/idstuff/%SUBDIR%/ \
681         ftp://ftp.omen.net.au/games/idstuff/%SUBDIR%/ \
682         ftp://ftp.idsoftware.com/idstuff/%SUBDIR%/
683 .endif
684
685 .if !defined(IGNORE_MASTER_SITE_ISC)
686 MASTER_SITE_ISC+= \
687         http://ftp.isc.org/isc/%SUBDIR%/ \
688         ftp://ftp.isc.org/isc/%SUBDIR%/ \
689         ftp://ftp.ciril.fr/pub/isc/%SUBDIR%/ \
690         ftp://ftp.freenet.de/pub/ftp.isc.org/isc/%SUBDIR%/ \
691         ftp://ftp.iij.ad.jp/pub/network/isc/%SUBDIR%/ \
692         ftp://ftp.dti.ad.jp/pub/net/isc/%SUBDIR%/ \
693         ftp://ftp.u-aizu.ac.jp/pub/net/isc/%SUBDIR%/ \
694         ftp://ftp.task.gda.pl/mirror/ftp.isc.org/isc/%SUBDIR%/ \
695         ftp://ftp.sunet.se/pub/network/isc/%SUBDIR%/ \
696         ftp://ftp.mirrorservice.org/sites/ftp.isc.org/isc/%SUBDIR%/ \
697         ftp://ftp.nominum.com/pub/isc/%SUBDIR%/ \
698         ftp://ftp.ripe.net/mirrors/sites/ftp.isc.org/isc/%SUBDIR%/ \
699         ftp://ftp.ntua.gr/pub/net/isc/isc/%SUBDIR%/ \
700         ftp://ftp.funet.fi/pub/mirrors/ftp.isc.org/isc/%SUBDIR%/
701 .endif
702
703 # List:         http://download.kde.org/extra/mirrors.html
704 # Updated:      2012-10-26
705 .if !defined(IGNORE_MASTER_SITE_KDE)
706 MASTER_SITE_KDE+= \
707         http://download.kde.org/%SUBDIR%/ \
708         ftp://ftp.gtlib.gatech.edu/pub/kde/%SUBDIR%/ \
709         ftp://ftp.informatik.hu-berlin.de/pub/Mirrors/ftp.kde.org/%SUBDIR%/ \
710         http://ftp.gtlib.gatech.edu/pub/kde/%SUBDIR%/ \
711         ftp://ftp.solnet.ch/mirror/KDE/%SUBDIR%/ \
712         ftp://gd.tuwien.ac.at/kde/%SUBDIR%/ \
713         http://gd.tuwien.ac.at/kde/%SUBDIR%/ \
714         http://kde.mirrors.tds.net/pub/kde/%SUBDIR%/ \
715         ftp://ftp.rz.uni-wuerzburg.de/pub/unix/kde/%SUBDIR%/ \
716         http://mirrors.dotsrc.org/kde/%SUBDIR%/ \
717         ftp://mirrors.dotsrc.org/kde/%SUBDIR%/ \
718         ftp://ftp.fi.muni.cz/pub/kde/%SUBDIR%/ \
719         http://ftp.fi.muni.cz/pub/kde/%SUBDIR%/ \
720         ftp://sunsite.icm.edu.pl/pub/unix/kde/%SUBDIR%/ \
721         http://sunsite.icm.edu.pl/pub/unix/kde/%SUBDIR%/ \
722         ftp://ftp.sunet.se/pub/X11/kde/%SUBDIR%/ \
723         http://ftp.sunet.se/pub/X11/kde/%SUBDIR%/ \
724         ftp://ftp.kde.org/pub/kde/%SUBDIR%/ \
725         ftp://ftp.belnet.be/packages/kde/%SUBDIR%/ \
726         http://ftp.belnet.be/packages/kde/%SUBDIR%/ \
727         ftp://ftp.lip6.fr/pub/X11/kde/%SUBDIR%/ \
728         http://www-ftp.lip6.fr/pub/X11/kde/%SUBDIR%/ \
729         ftp://ftp.rhnet.is/pub/kde/%SUBDIR%/ \
730         http://ftp.rhnet.is/pub/kde/%SUBDIR%/ \
731         http://ftp-stud.fht-esslingen.de/Mirrors/ftp.kde.org/pub/kde/%SUBDIR%/ \
732         ftp://ftp.cronyx.ru/pub/mirror/kde/%SUBDIR%/ \
733         http://ftp.twaren.net/Unix/X/KDE/%SUBDIR%/ \
734         ftp://ftp.na.kde.org/pub/kde/%SUBDIR%/ \
735         ftp://ftp.fu-berlin.de/pub/unix/X11/gui/kde/%SUBDIR%/ \
736         ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/kde/%SUBDIR%/ \
737         ftp://ftp.ntua.gr/pub/X11/kde/%SUBDIR%/ \
738         http://ftp.ntua.gr/pub/X11/kde/%SUBDIR%/ \
739         ftp://ftp.heanet.ie/mirrors/ftp.kde.org/%SUBDIR%/ \
740         http://ftp.heanet.ie/mirrors/ftp.kde.org/%SUBDIR%/ \
741         ftp://ftp.kddlabs.co.jp/pub/X11/kde/%SUBDIR%/ \
742         http://ftp.kddlabs.co.jp/pub/X11/kde/%SUBDIR%/ \
743         http://kde.mirror.uber.com.au/%SUBDIR%/ \
744         ftp://ftp.ussg.iu.edu/pub/kde/%SUBDIR%/ \
745         http://ftp.ussg.iu.edu/kde/%SUBDIR%/ \
746         ftp://ftp.sayclub.com/pub/X/KDE/%SUBDIR%/ \
747         http://ftp.sayclub.com/pub/X/KDE/%SUBDIR%/ \
748         ftp://carroll.aset.psu.edu/pub/kde/%SUBDIR%/ \
749         http://mirror.cc.columbia.edu/pub/software/kde/%SUBDIR%/ \
750         ftp://ftp.mirrorservice.org/sites/ftp.kde.org/pub/kde/%SUBDIR%/ \
751         http://www.mirrorservice.org/sites/ftp.kde.org/pub/kde/%SUBDIR%/ \
752         http://master.kde.org/%SUBDIR%/ \
753         http://ftp.icm.edu.pl/pub/unix/kde/%SUBDIR%/ \
754         http://kde-mirror.freenux.org/%SUBDIR%/ \
755         http://ftp.fi.muni.cz/pub/kde/%SUBDIR%/ \
756         ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/ftp.kde.org/pub/kde/%SUBDIR%/ \
757         ftp://ftp.funet.fi/pub/mirrors/ftp.kde.org/pub/kde/%SUBDIR%/ \
758         http://ftp.funet.fi/pub/mirrors/ftp.kde.org/pub/kde/%SUBDIR%/
759 .endif
760
761 .if !defined(IGNORE_MASTER_SITE_LIBREOFFICE_DEV)
762 MASTER_SITE_LIBREOFFICE_DEV+= \
763         http://dev-www.libreoffice.org/src/%SUBDIR%/
764 .endif
765
766 .if !defined(IGNORE_MASTER_SITE_MATE)
767 MASTER_SITE_MATE+= \
768         http://pub.mate-desktop.org/releases/%SUBDIR%/
769 .endif
770
771 .if !defined(IGNORE_MASTER_SITE_MOZDEV)
772 MASTER_SITE_MOZDEV+= \
773         http://ftp.scarlet.be/pub/mozdev/%SUBDIR%/ \
774         http://ftp.rz.tu-bs.de/pub/mirror/downloads.mozdev.org/%SUBDIR%/ \
775         http://ftp.ntua.gr/pub/www/mozdev/%SUBDIR%/ \
776         http://ftp.heanet.ie/pub/mozdev/%SUBDIR%/ \
777         http://mozdev.oregonstate.edu/%SUBDIR%/ \
778         http://ftp.ntua.gr/pub/www/mozdev/%SUBDIR%/ \
779         http://www.devlib.org/mozdev/%SUBDIR%/ \
780         ftp://ftp.heanet.ie/pub/mozdev/%SUBDIR%/ \
781         http://mirrors.ibiblio.org/pub/mirrors/mozdev.org/%SUBDIR%/ \
782         http://ftp.osuosl.org/pub/mozdev/%SUBDIR%/
783 .endif
784
785 .if !defined(IGNORE_MASTER_SITE_MOZILLA)
786 MASTER_SITE_MOZILLA+= \
787         http://download.cdn.mozilla.net/pub/%SUBDIR%/ \
788         https://archive.mozilla.org/pub/%SUBDIR%/
789 .endif
790
791 .if !defined(IGNORE_MASTER_SITE_MOZILLA_ADDONS)
792 MASTER_SITE_MOZILLA_ADDONS+= \
793         https://addons.cdn.mozilla.net/user-media/%SUBDIR%/ \
794         http://kyoto-mz-dl.sinet.ad.jp/pub/mozilla.org/%SUBDIR%/
795 .endif
796
797 .if !defined(IGNORE_MASTER_SITE_MPLAYERHQ)
798 MASTER_SITE_MPLAYERHQ+= \
799         http://www.mplayerhq.hu/MPlayer/%SUBDIR%/ \
800         http://www1.mplayerhq.hu/MPlayer/%SUBDIR%/ \
801         http://www2.mplayerhq.hu/MPlayer/%SUBDIR%/ \
802         http://www3.mplayerhq.hu/MPlayer/%SUBDIR%/ \
803         http://www4.mplayerhq.hu/MPlayer/%SUBDIR%/ \
804         http://www5.mplayerhq.hu/MPlayer/%SUBDIR%/ \
805         ftp://ftp.mplayerhq.hu/MPlayer/%SUBDIR%/ \
806         ftp://ftp1.mplayerhq.hu/MPlayer/%SUBDIR%/ \
807         ftp://ftp4.mplayerhq.hu/MPlayer/%SUBDIR%/ \
808         ftp://ftp5.mplayerhq.hu/MPlayer/%SUBDIR%/
809 .endif
810
811 .if !defined(IGNORE_MASTER_SITE_MYSQL)
812 MASTER_SITE_MYSQL+= \
813         ftp://ftp.fi.muni.cz/pub/mysql/Downloads/%SUBDIR%/ \
814         http://mysql.mirrors.cybercity.dk/Downloads/%SUBDIR%/ \
815         ftp://ftp.fh-wolfenbuettel.de/pub/database/mysql/Downloads/%SUBDIR%/ \
816         ftp://ftp.gwdg.de/pub/misc/mysql/Downloads/%SUBDIR%/ \
817         http://netmirror.org/mirror/mysql.com/Downloads/%SUBDIR%/ \
818         ftp://netmirror.org/mysql.com/Downloads/%SUBDIR%/ \
819         http://mirrors.ntua.gr/MySQL/Downloads/%SUBDIR%/ \
820         ftp://ftp.ntua.gr/pub/databases/mysql/Downloads/%SUBDIR%/ \
821         http://mysql.sote.hu/Downloads/%SUBDIR%/ \
822         ftp://ftp.rhnet.is/pub/mysql/Downloads/%SUBDIR%/ \
823         ftp://mirror.widexs.nl/pub/mysql/Downloads/%SUBDIR%/ \
824         ftp://mirror.switch.ch/mirror/mysql/Downloads/%SUBDIR%/ \
825         http://mysql.dp.ua/Downloads/%SUBDIR%/ \
826         http://mysql.mirrored.ca/Downloads/%SUBDIR%/ \
827         ftp://mirror.services.wisc.edu/mirrors/mysql/Downloads/%SUBDIR%/ \
828         http://mysql.mirrors.pair.com/Downloads/%SUBDIR%/ \
829         ftp://ftp.linorg.usp.br/mysql/Downloads/%SUBDIR%/ \
830         ftp://ftp.cbn.net.id/mirror/mysql/Downloads/%SUBDIR%/ \
831         ftp://ftp.easynet.be/mysql/Downloads/%SUBDIR%/ \
832         http://download.softagency.net/MySQL/Downloads/%SUBDIR%/
833 .endif
834
835 .if !defined(IGNORE_MASTER_SITE_NETBSD)
836 MASTER_SITE_NETBSD+= \
837         ftp://ftp.netbsd.org/pub/NetBSD/packages/distfiles/%SUBDIR%/ \
838         ftp://ftp.iastate.edu/pub/netbsd/packages/distfiles/%SUBDIR%/ \
839         ftp://ftp.plig.net/pub/NetBSD/packages/distfiles/%SUBDIR%/ \
840         ftp://ftp.proxad.net/mirrors/ftp.netbsd.org/packages/distfiles/%SUBDIR%/ \
841         ftp://ftp.unina.it/pub/Unix/NetBSD/packages/distfiles/%SUBDIR%/ \
842         ftp://ftp.uninett.no/bsd/unix/NetBSD/packages/distfiles/%SUBDIR%/ \
843         ftp://sunsite.uio.no/bsd/unix/NetBSD/packages/distfiles/%SUBDIR%/ \
844         ftp://ftp.sunet.se/pub/NetBSD/packages/distfiles/%SUBDIR%/ \
845         ftp://ftp.demon.co.uk/pub/mirrors/NetBSD/packages/distfiles/%SUBDIR%/ \
846         ftp://ftp.dti.ad.jp/pub/NetBSD/packages/distfiles/%SUBDIR%/ \
847         ftp://ftp.funet.fi/pub/NetBSD/packages/distfiles/%SUBDIR%/
848 .endif
849
850 .if !defined(IGNORE_MASTER_SITE_NETLIB)
851 MASTER_SITE_NETLIB+= \
852         http://www.netlib.org/%SUBDIR%/ \
853         ftp://ftp.mirrorservice.org/sites/ftp.netlib.org/%SUBDIR%/ \
854         http://www.mirrorservice.org/sites/ftp.netlib.org/%SUBDIR%/ \
855         http://www.netlib.no/netlib/%SUBDIR%/ \
856         ftp://ftp.irisa.fr/pub/netlib/%SUBDIR%/ \
857         http://netlib.sandia.gov/%SUBDIR%/
858 .endif
859
860 .if !defined(IGNORE_MASTER_SITE_NVIDIA)
861 MASTER_SITE_NVIDIA+= \
862         http://jp.download.nvidia.com/%SUBDIR%/ \
863         http://us.download.nvidia.com/%SUBDIR%/ \
864         http://tw.download.nvidia.com/%SUBDIR%/ \
865         http://download.nvidia.com/%SUBDIR%/ \
866         http://download1.nvidia.com/%SUBDIR%/ \
867         ftp://download.nvidia.com/%SUBDIR%/ \
868         ftp://download1.nvidia.com/%SUBDIR%/
869 .endif
870
871 .if !defined(IGNORE_MASTER_SITE_OPENBSD)
872 MASTER_SITE_OPENBSD+= \
873         https://ftp.OpenBSD.org/pub/OpenBSD/%SUBDIR%/ \
874         https://ftp.eu.openbsd.org/pub/OpenBSD/%SUBDIR%/ \
875         https://ftp3.usa.openbsd.org/pub/OpenBSD/%SUBDIR%/ \
876         https://openbsd.hk/pub/OpenBSD/%SUBDIR%/ \
877         https://mirror.aarnet.edu.au/pub/OpenBSD/%SUBDIR%/ \
878         https://mirrors.evowise.com/pub/OpenBSD/%SUBDIR%/
879 .endif
880
881 .if !defined(IGNORE_MASTER_SITE_OSSP)
882 MASTER_SITE_OSSP+= \
883         ftp://ftp.ossp.org/pkg/%SUBDIR%/ \
884         ftp://ftp.ntua.gr/pub/utils/ossp/%SUBDIR%/
885 .endif
886
887 .if !defined(IGNORE_MASTER_SITE_PACKETSTORM)
888 MASTER_SITE_PACKETSTORM+= \
889         http://dl.packetstormsecurity.net/%SUBDIR%/ \
890         http://packetstorm.codar.com.br/%SUBDIR%/ \
891         http://packetstorm.igor.onlinedirect.bg/%SUBDIR%/ \
892         http://packetstorm.interhost.co.il/%SUBDIR%/ \
893         http://packetstorm.foofus.com/%SUBDIR%/ \
894         http://packetstorm.tacticalflex.com/%SUBDIR%/ \
895         http://packetstorm.unixteacher.org/%SUBDIR%/ \
896         http://packetstorm.wowhacker.com/%SUBDIR%/
897 .endif
898
899 .if !defined(IGNORE_MASTER_SITE_PERL_CPAN)
900
901 _PERL_CPAN_SORT?= modules/by-module
902
903 # Please add URI to MASTER_SITE_PERL_CPAN_BY instead of this one.
904 MASTER_SITE_PERL_CPAN?=
905
906 MASTER_SITE_PERL_CPAN_BY+= \
907         http://cpan.metacpan.org/%CPANSORT%/%SUBDIR%/ \
908         http://cpan.metacpan.org/modules/by-module/%SUBDIRPLUS%/ \
909         http://www.cpan.org/%CPANSORT%/%SUBDIR%/ \
910         ftp://ftp.cpan.org/pub/CPAN/%CPANSORT%/%SUBDIR%/ \
911         http://www.cpan.dk/%CPANSORT%/%SUBDIR%/ \
912         ftp://ftp.kddlabs.co.jp/lang/perl/CPAN/%CPANSORT%/%SUBDIR%/ \
913         http://ftp.jaist.ac.jp/pub/CPAN/%CPANSORT%/%SUBDIR%/ \
914         ftp://ftp.sunet.se/pub/lang/perl/CPAN/%CPANSORT%/%SUBDIR%/ \
915         ftp://ftp.mirrorservice.org/sites/cpan.perl.org/CPAN/%CPANSORT%/%SUBDIR%/ \
916         ftp://ftp.auckland.ac.nz/pub/perl/CPAN/%CPANSORT%/%SUBDIR%/ \
917         http://backpan.perl.org/%CPANSORT%/%SUBDIR%/ \
918         ftp://ftp.funet.fi/pub/languages/perl/CPAN/%CPANSORT%/%SUBDIR%/ \
919         http://ftp.twaren.net/Unix/Lang/CPAN/%CPANSORT%/%SUBDIR%/ \
920         ftp://ftp.cpan.org/pub/CPAN/modules/by-module/%SUBDIRPLUS%/
921
922 _PERL_CPAN_FLAG=${MASTER_SITE_SUBDIR:C/(CPAN):.*$/\1/}
923 _PERL_CPAN_ID=  ${MASTER_SITE_SUBDIR:C/^CPAN:(.)(.)(.*)$/\1\/\1\2\/\1\2\3/}
924
925 .if !empty(_PERL_CPAN_ID) && ${_PERL_CPAN_FLAG:tl} == "cpan"
926     _PERL_CPAN_SORT=authors/id/${_PERL_CPAN_ID}
927     MASTER_SITE_PERL_CPAN=${MASTER_SITE_PERL_CPAN_BY:S/%CPANSORT%/${_PERL_CPAN_SORT}/:S/%SUBDIR%\///:S/%SUBDIRPLUS%\//${PORTNAME:C/-.*//}\//}
928 .else
929     MASTER_SITE_PERL_CPAN=${MASTER_SITE_PERL_CPAN_BY:S/%CPANSORT%/${_PERL_CPAN_SORT}/:S/%SUBDIRPLUS%\///}
930 .endif
931
932 .endif
933
934 #
935 # PostgreSQL master site
936 #
937 .if !defined(IGNORE_MASTER_SITE_PGSQL)
938 MASTER_SITE_PGSQL+= \
939         http://ftp.postgresql.org/pub/%SUBDIR%/ \
940         https://ftp.postgresql.org/pub/%SUBDIR%/ \
941         ftp://ftp.postgresql.org/pub/%SUBDIR%/
942 .endif
943
944 .if !defined(IGNORE_MASTER_SITE_PHP)
945 MASTER_SITE_PHP+= \
946         http://de.php.net/%SUBDIR%/ \
947         http://es.php.net/%SUBDIR%/ \
948         http://fr.php.net/%SUBDIR%/ \
949         http://it.php.net/%SUBDIR%/ \
950         http://jp.php.net/%SUBDIR%/ \
951         http://se.php.net/%SUBDIR%/ \
952         http://uk3.php.net/%SUBDIR%/ \
953         http://us2.php.net/%SUBDIR%/ \
954         http://br.php.net/%SUBDIR%/ \
955         http://cn.php.net/%SUBDIR%/
956 .endif
957
958 .if !defined(IGNORE_MASTER_SITE_PYTHON)
959 MASTER_SITE_PYTHON+= \
960         http://www.python.org/%SUBDIR%/
961 .endif
962
963 .if !defined(IGNORE_MASTER_SITE_QMAIL)
964 MASTER_SITE_QMAIL+= \
965         http://qmail.glasswings.com.au/%SUBDIR%/ \
966         http://qmail.psshee.com/%SUBDIR%/ \
967         http://mirrors.sunsite.dk/qmailwww/%SUBDIR%/ \
968         http://www.agria.hu/qmail/%SUBDIR%/ \
969         http://qmail.netvisao.pt/%SUBDIR%/ \
970         http://qmail.ipg.sk/%SUBDIR%/ \
971         http://qmail.omnis.ch/%SUBDIR%/ \
972         http://www.qmail.org/%SUBDIR%/
973 .endif
974
975 .if !defined(IGNORE_MASTER_SITE_QT)
976 MASTER_SITE_QT+= \
977         http://download.qt-project.org/%SUBDIR%/ \
978         http://master.qt-project.org/%SUBDIR%/ \
979         http://www.mirrorservice.org/sites/download.qt-project.org/%SUBDIR%/ \
980         http://www.nic.funet.fi/pub/mirrors/download.qt-project.org/%SUBDIR%/ \
981         http://qtmirror.ics.com/pub/qtproject/%SUBDIR%/ \
982         http://anychimirror101.mirrors.tds.net/pub/Qt/%SUBDIR%/ \
983         http://www.las.ic.unicamp.br/pub/qtproject/%SUBDIR%/ \
984         http://linorg.usp.br/Qt/%SUBDIR%/ \
985         http://ftp.jaist.ac.jp/pub/qtproject/%SUBDIR%/ \
986         http://mirrors.neusoft.edu.cn/qt/%SUBDIR%/
987 .endif
988
989 .if !defined(IGNORE_MASTER_SITE_REDHAT_LINUX)
990 MASTER_SITE_REDHAT_LINUX+= \
991         http://mirrors.usc.edu/pub/linux/distributions/redhat/redhat/linux/%SUBDIR%/ \
992         http://www.gtlib.gatech.edu/pub/redhat/linux/%SUBDIR%/ \
993         ftp://mirror.cs.wisc.edu/pub/mirrors/linux/redhat/%SUBDIR%/ \
994         ftp://ftp.nluug.nl/site/ftp.redhat.com/redhat/linux/%SUBDIR%/ \
995         ftp://ftp.icm.edu.pl/pub/linux/redhat/linux/%SUBDIR%/ \
996         ftp://ftp.riken.go.jp/pub/Linux/redhat/linux/%SUBDIR%/ \
997         ftp://ftp.kddlabs.co.jp/pub/Linux/packages/RedHat/redhat/linux/%SUBDIR%/
998 .endif
999
1000 .if !defined(IGNORE_MASTER_SITE_RUBY)
1001 MASTER_SITE_RUBY+= \
1002         http://cache.ruby-lang.org/pub/ruby/%SUBDIR%/ \
1003         http://ftp.ruby-lang.org/pub/ruby/%SUBDIR%/ \
1004         ftp://ftp.ruby-lang.org/pub/ruby/%SUBDIR%/ \
1005         ftp://ftp.fu-berlin.de/unix/languages/ruby/%SUBDIR%/ \
1006         ftp://ftp.kr.FreeBSD.org/pub/ruby/%SUBDIR%/ \
1007         ftp://ftp.iDaemons.org/pub/mirror/ftp.ruby-lang.org/ruby/%SUBDIR%/
1008 .endif
1009
1010 # See http://rubygems.org/pages/about
1011 .if !defined(IGNORE_MASTER_SITE_RUBYGEMS)
1012 MASTER_SITE_RUBYGEMS+= \
1013         https://rubygems.global.ssl.fastly.net/gems/%SUBDIR%/
1014 .endif
1015
1016 .if !defined(IGNORE_MASTER_SITE_SAMBA)
1017 MASTER_SITE_SAMBA+= \
1018         http://ftp.samba.org/pub/%SUBDIR%/ \
1019         ftp://ca.samba.org/pub/%SUBDIR%/ \
1020         ftp://de.samba.org/pub/%SUBDIR%/
1021 .endif
1022
1023 # List: http://download.savannah.gnu.org/mirmon/
1024 .if !defined(IGNORE_MASTER_SITE_SAVANNAH)
1025 MASTER_SITE_SAVANNAH+= \
1026         http://download.savannah.gnu.org/releases/%SUBDIR%/ \
1027         http://download-mirror.savannah.gnu.org/releases/%SUBDIR%/ \
1028         http://nongnu.askapache.com/%SUBDIR%/ \
1029         http://mirror.lihnidos.org/GNU/savannah/%SUBDIR%/ \
1030         http://ftp.twaren.net/Unix/NonGNU/%SUBDIR%/ \
1031         ftp://ftp.twaren.net/Unix/NonGNU/%SUBDIR%/ \
1032         http://gnu.mirrors.pair.com/savannah/savannah/%SUBDIR%/ \
1033         ftp://gnu.mirrors.pair.com/savannah/%SUBDIR%/
1034 .endif
1035
1036 # List:         http://sourceforge.net/apps/trac/sourceforge/wiki/Mirrors
1037 # Updated:      2013-03-25
1038 .if !defined(IGNORE_MASTER_SITE_SOURCEFORGE)
1039 MASTER_SITE_SOURCEFORGE+= http://downloads.sourceforge.net/project/%SUBDIR%/
1040 .for mirror in heanet iweb freefr jaist master \
1041         nchc ncu internode waix superb-dca3 ufpr tenet \
1042         netcologne ignum kent
1043 MASTER_SITE_SOURCEFORGE+= \
1044         http://${mirror}.dl.sourceforge.net/project/%SUBDIR%/
1045 .endfor
1046 .endif
1047
1048 .if !defined(IGNORE_MASTER_SITE_SOURCEFORGE_JP)
1049 .for mirror in iij jaist keihanna osdn
1050 MASTER_SITE_SOURCEFORGE_JP+= \
1051         http://${mirror}.dl.sourceforge.jp/%SUBDIR%/
1052 .endfor
1053 .endif
1054
1055 .if !defined(IGNORE_MASTER_SITE_SOURCEWARE)
1056 MASTER_SITE_SOURCEWARE+= \
1057         http://mirrors.kernel.org/sources.redhat.com/%SUBDIR%/ \
1058         http://gd.tuwien.ac.at/gnu/sourceware/%SUBDIR%/ \
1059         ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/%SUBDIR%/
1060 .endif
1061
1062 .if !defined(IGNORE_MASTER_SITE_SUDO)
1063 MASTER_SITE_SUDO+= \
1064         http://www.sudo.ws/sudo/dist/ \
1065         http://ftp.arcane-networks.fr/pub/mirrors/sudo/ \
1066         http://sudo.p8ra.de/sudo/dist/ \
1067         http://sudo.cybermirror.org/ \
1068         http://sudo-ftp.basemirror.de/ \
1069         http://core.ring.gr.jp/archives/misc/sudo/ \
1070         http://www.ring.gr.jp/archives/misc/sudo/ \
1071         http://ftp.twaren.net/Unix/Security/Sudo/ \
1072         ftp://ftp.sudo.ws/pub/sudo/ \
1073         ftp://plier.ucar.edu/pub/sudo/ \
1074         ftp://obsd.isc.org/pub/sudo/ \
1075         ftp://ftp.uwsg.indiana.edu/pub/security/sudo/ \
1076         ftp://ftp.tuwien.ac.at/utils/admin-tools/sudo/ \
1077         ftp://sunsite.ualberta.ca/pub/Mirror/sudo/ \
1078         ftp://zoot.tele.dk/pub/sudo/ \
1079         ftp://ftp.in2p3.fr/pub/sudo/ \
1080         ftp://ftp.arcane-networks.fr/pub/mirrors/sudo/ \
1081         ftp://ftp.usbm.de/pub/sudo/ \
1082         ftp://ftp.cs.tu-berlin.de/pub/misc/sudo/ \
1083         ftp://ftp.informatik.uni-hamburg.de/pub/os/unix/utils/sudo/ \
1084         ftp://ftp.st.ryukoku.ac.jp/pub/security/tool/sudo/ \
1085         ftp://ftp.cin.nihon-u.ac.jp/pub/misc/sudo/ \
1086         ftp://core.ring.gr.jp/pub/misc/sudo/ \
1087         ftp://ftp.ring.gr.jp/pub/misc/sudo/ \
1088         ftp://sunsite.icm.edu.pl/packages/sudo/ \
1089         ftp://mirror.cdmon.com/pub/sudo/ \
1090         ftp://ftp.twaren.net/Unix/Security/Sudo/
1091 .endif
1092
1093 .if !defined(IGNORE_MASTER_SITE_SUNSITE)
1094 MASTER_SITE_SUNSITE+= \
1095         http://www.ibiblio.org/pub/Linux/%SUBDIR%/ \
1096         http://www.gtlib.gatech.edu/pub/Linux/%SUBDIR%/ \
1097         ftp://ftp.cs.tu-berlin.de/pub/linux/Mirrors/sunsite.unc.edu/%SUBDIR%/ \
1098         ftp://ftp.etsimo.uniovi.es/pub/linux/%SUBDIR%/ \
1099         ftp://ftp.lip6.fr/pub/linux/sunsite/%SUBDIR%/ \
1100         ftp://ftp.nluug.nl/pub/metalab/%SUBDIR%/ \
1101         ftp://ftp.nvg.ntnu.no/pub/mirrors/metalab.unc.edu/%SUBDIR%/ \
1102         ftp://ftp.icm.edu.pl/pub/Linux/sunsite/%SUBDIR%/ \
1103         ftp://ftp.cse.cuhk.edu.hk/pub4/Linux/%SUBDIR%/ \
1104         ftp://ftp.chg.ru/pub/Linux/sunsite/%SUBDIR%/ \
1105         ftp://ftp.sun.ac.za/pub/mirrors/sunsite.unc.edu/pub/Linux/%SUBDIR%/
1106 .endif
1107
1108 .if !defined(IGNORE_MASTER_SITE_TCLTK)
1109 MASTER_SITE_TCLTK+= \
1110         ftp://ftp.tcl.tk/pub/tcl/%SUBDIR%/ \
1111         ftp://ftp.kddlabs.co.jp/lang/tcl/ftp.scriptics.com/%SUBDIR%/ \
1112         ftp://ftp.mirrorservice.org/sites/ftp.tcl.tk/pub/tcl/%SUBDIR%/ \
1113         ftp://ftp.funet.fi/pub/languages/tcl/tcl/%SUBDIR%/
1114 .endif
1115
1116 .if !defined(IGNORE_MASTER_SITE_TEX_CTAN)
1117 MASTER_SITE_TEX_CTAN+= \
1118         ftp://ctan.unsw.edu.au/tex-archive/%SUBDIR%/ \
1119         ftp://ftp.tex.ac.uk/tex-archive/%SUBDIR%/ \
1120         ftp://ftp.kddlabs.co.jp/CTAN/%SUBDIR%/ \
1121         ftp://ctan.tug.org/tex-archive/%SUBDIR%/ \
1122         ftp://ftp.dante.de/tex-archive/%SUBDIR%/ \
1123         ftp://ftp.chg.ru/pub/TeX/CTAN/%SUBDIR%/ \
1124         ftp://mirror.macomnet.net/pub/CTAN/%SUBDIR%/ \
1125         ftp://ftp.funet.fi/pub/TeX/CTAN/%SUBDIR%/
1126 .endif
1127
1128 # Derived from: https://www.torproject.org/getinvolved/mirrors.html.en
1129 .if !defined(IGNORE_MASTER_SITE_TOR)
1130 MASTER_SITE_TOR+= \
1131                 https://www.torproject.org/dist/%SUBDIR%/ \
1132                 https://archive.torproject.org/tor-package-archive/%SUBDIR%/ \
1133                 ftp://ftp.bit.nl/mirror/tor/%SUBDIR%/ \
1134                 http://cyberside.net.ee/tor/%SUBDIR%/ \
1135                 http://ftp.bit.nl/mirror/tor/%SUBDIR%/ \
1136                 http://mirror.hessmo.com/tor/dist/%SUBDIR%/ \
1137                 http://mirror.host4site.co.il/torproject.org/dist/%SUBDIR%/ \
1138                 http://mirror.open-networx.org/torproject.org/dist/%SUBDIR%/ \
1139                 http://mirror.tor.hu/dist/%SUBDIR%/ \
1140                 https://mirror.torland.me/torproject.org/dist/%SUBDIR%/ \
1141                 http://mirrors.chaos-darmstadt.de/tor-mirror/dist/%SUBDIR%/ \
1142                 http://theonionrouter.com/dist/%SUBDIR%/ \
1143                 http://tor.amorphis.eu/dist/%SUBDIR%/ \
1144                 http://tor.askapache.com/dist/%SUBDIR%/ \
1145                 http://tor.beme-it.de/dist/%SUBDIR%/ \
1146                 http://tor.borgmann.tv/dist/%SUBDIR%/ \
1147                 http://tor.ccc.de/dist/%SUBDIR%/ \
1148                 http://tor.cyberarmy.at/dist/%SUBDIR%/ \
1149                 http://tor.dont-know-me.at/dist/%SUBDIR%/ \
1150                 http://tor.factor.cc/dist/%SUBDIR%/ \
1151                 http://tor.homosu.net/dist/%SUBDIR%/ \
1152                 http://tor.idnr.ws/dist/%SUBDIR%/ \
1153                 http://tor.myrl.net/dist/%SUBDIR%/ \
1154                 http://tor.kamagurka.org/dist/%SUBDIR%/ \
1155                 http://tor.spline.de/dist/%SUBDIR%/ \
1156                 http://tor.vesta.nu/dist/%SUBDIR%/ \
1157                 http://torproj.xpdm.us/dist/%SUBDIR%/ \
1158                 https://torproject.antagonism.org/dist/%SUBDIR%/ \
1159                 https://torproject.crypto.is/dist/%SUBDIR%/ \
1160                 http://torproject.is/dist/%SUBDIR%/ \
1161                 http://torproject.nwlinux.us/dist/%SUBDIR%/ \
1162                 http://torproject.ph3x.at/dist/%SUBDIR%/ \
1163                 https://www.coevoet.nl/tor/dist/%SUBDIR%/ \
1164                 http://www.oignon.net/dist/%SUBDIR%/ \
1165                 http://www.torproject.nl/dist/%SUBDIR%/ \
1166                 http://www.torproject.org.nyud.net/dist/%SUBDIR%/ \
1167                 http://www.torproject.us/dist/%SUBDIR%/ \
1168                 http://www.torservers.net/mirrors/torproject.org/dist/%SUBDIR%/
1169 .endif
1170
1171 .if !defined(IGNORE_MASTER_SITE_TUCOWS)
1172 MASTER_SITE_TUCOWS+= \
1173         http://iinets.linux.tucows.com/files/%SUBDIR%/
1174 .endif
1175
1176 .if !defined(IGNORE_MASTER_SITE_WINDOWMAKER)
1177 MASTER_SITE_WINDOWMAKER+= \
1178         ftp://ftp.windowmaker.info/pub/%SUBDIR%/ \
1179         ftp://ftp.uvsq.fr/pub/X11/window-managers/windowmaker/%SUBDIR%/
1180 .endif
1181
1182 .if !defined(IGNORE_MASTER_SITE_XCONTRIB)
1183 MASTER_SITE_XCONTRIB+= \
1184         ftp://ftp.gwdg.de/pub/x11/x.org/contrib/%SUBDIR%/ \
1185         ftp://ftp.x.org/contrib/%SUBDIR%/ \
1186         ftp://ftp.sunet.se/pub/X11/ftp.x.org/contrib/%SUBDIR%/ \
1187         ftp://ftp.dti.ad.jp/pub/X/XFree86/mirror/X.Org/contrib/%SUBDIR%/ \
1188         ftp://ftp.kddlabs.co.jp/X11/ftp.x.org/contrib/%SUBDIR%/ \
1189         ftp://ftp2.x.org/contrib/%SUBDIR%/
1190 .endif
1191
1192 .if !defined(IGNORE_MASTER_SITE_XFCE)
1193 MASTER_SITE_XFCE+= \
1194         http://mirror.netcologne.de/xfce/%SUBDIR%/ \
1195         http://ftp.udc.es/xfce/%SUBDIR%/ \
1196         http://xfce.mirror.uber.com.au/%SUBDIR%/ \
1197         http://archive.be.xfce.org/%SUBDIR%/ \
1198         http://archive.be2.xfce.org/%SUBDIR%/ \
1199         http://archive.al-us.xfce.org/%SUBDIR%/ \
1200         http://mirrors.tummy.com/pub/archive.xfce.org/%SUBDIR%/ \
1201         http://mirror.perldude.de/archive.xfce.org/%SUBDIR%/
1202 .endif
1203
1204 .if !defined(IGNORE_MASTER_SITE_XORG)
1205 MASTER_SITE_XORG+= \
1206         http://xorg.freedesktop.org/releases/%SUBDIR%/ \
1207         http://xorg.mirrors.pair.com/%SUBDIR%/ \
1208         http://mirror.us.leaseweb.net/xorg/%SUBDIR%/ \
1209         http://mirror.csclub.uwaterloo.ca/x.org/%SUBDIR%/ \
1210         http://artfiles.org/x.org/pub/%SUBDIR%/ \
1211         http://ftp.gwdg.de/pub/x11/x.org/pub/%SUBDIR%/ \
1212         http://gd.tuwien.ac.at/X11/%SUBDIR%/ \
1213         http://mi.mirror.garr.it/mirrors/x.org/%SUBDIR%/ \
1214         http://mirror.switch.ch/ftp/mirror/X11/pub/%SUBDIR%/ \
1215         http://mirrors.ircam.fr/pub/x.org/%SUBDIR%/ \
1216         http://www.mirrorservice.org/sites/ftp.x.org/pub/%SUBDIR%/ \
1217         http://www.portal-to-web.de/pub/mirrors/x.org/%SUBDIR%/ \
1218         http://x.cybermirror.org/%SUBDIR%/ \
1219         http://x.europnews.de/pub/%SUBDIR%/ \
1220         http://xorg.mirror.solnet.ch/pub/%SUBDIR%/ \
1221         http://mirror.nl.leaseweb.net/xorg/%SUBDIR%/ \
1222         http://mirror.de.leaseweb.net/xorg/%SUBDIR%/ \
1223         http://mirrors.go-part.com/xorg/%SUBDIR%/ \
1224         http://ftp.yz.yamagata-u.ac.jp/pub/X11/x.org/%SUBDIR%/ \
1225         http://ftp.kaist.ac.kr/x.org/%SUBDIR%/
1226 .endif
1227
1228 .if !defined(IGNORE_MASTER_SITE_KERNEL_ORG)
1229 MASTER_SITE_KERNEL_ORG+= \
1230         https://www.kernel.org/pub/%SUBDIR%/ \
1231         ftp://ftp.ntu.edu.tw/%SUBDIR%/ \
1232         http://ftp.sunet.se/pub/Linux/kernel.org/%SUBDIR%/ \
1233         http://ftp.yandex.ru/pub/%SUBDIR%/ \
1234         http://ftp.heanet.ie/pub/%SUBDIR%/ \
1235         http://slackware.cs.utah.edu/pub/kernel.org/pub/%SUBDIR%/
1236 .endif
1237
1238 # Macro magic
1239
1240 MASTER_SITES_ABBREVS=   CPAN:PERL_CPAN \
1241                         GH:GITHUB \
1242                         GHC:GITHUB_CLOUD \
1243                         LODEV:LIBREOFFICE_DEV \
1244                         NL:NETLIB \
1245                         RG:RUBYGEMS \
1246                         SF:SOURCEFORGE \
1247                         SFJP:SOURCEFORGE_JP
1248 MASTER_SITES_SUBDIRS=   APACHE_COMMONS_BINARIES:${PORTNAME:S,commons-,,} \
1249                         APACHE_COMMONS_SOURCE:${PORTNAME:S,commons-,,} \
1250                         APACHE_JAKARTA:${PORTNAME:S,-,/,}/source \
1251                         BERLIOS:${PORTNAME:tl}.berlios \
1252                         CHEESESHOP:source/${DISTNAME:C/(.).*/\1/}/${DISTNAME:S/-${DISTVERSIONFULL}$//} \
1253                         DEBIAN:pool/main/${PORTNAME:C/^((lib)?.).*$/\1/}/${PORTNAME} \
1254                         FARSIGHT:${PORTNAME} \
1255                         FESTIVAL:${PORTVERSION} \
1256                         GCC:releases/${DISTNAME} \
1257                         GENTOO:distfiles \
1258                         GIMP:${PORTNAME}/${PORTVERSION:R}/ \
1259                         GITHUB:${GH_ACCOUNT}/${GH_PROJECT}/tar.gz/${GH_TAGNAME}?dummy=/ \
1260                         GITHUB_CLOUD:${GH_ACCOUNT}/${GH_PROJECT}/ \
1261                         GNOME:sources/${PORTNAME}/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} \
1262                         GNU:${PORTNAME} \
1263                         GNUPG:${PORTNAME} \
1264                         GNU_ALPHA:${PORTNAME} \
1265                         HORDE:${PORTNAME} \
1266                         LIBREOFFICE_DEV:${PORTNAME} \
1267                         MATE:${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} \
1268                         MOZDEV:${PORTNAME:tl} \
1269                         NETLIB:${PORTNAME} \
1270                         PERL_CPAN:${PORTNAME:C/-.*//} \
1271                         QT:archive/qt/${PORTVERSION:R} \
1272                         SAMBA:${PORTNAME} \
1273                         SAVANNAH:${PORTNAME:tl} \
1274                         SOURCEFORGE:${PORTNAME:tl}/${PORTNAME:tl}/${PORTVERSION} \
1275                         XFCE:xfce/${XFCE_MASTER_SITE_VER}/src
1276
1277 .if defined(MASTER_SITES) && ${MASTER_SITES:N*\:/*}
1278
1279 .for _site__ in ${MASTER_SITES}
1280 _site_=${_site__}
1281 .       if ${_site_:M*\:/*}
1282 MASTER_SITES_EXP+=      ${_site_}
1283 MASTER_SITES_EXP:=      ${MASTER_SITES_EXP}
1284 .       else
1285 _site_urlpath_= ${_site_:C@^(.*):[^/:]+$@\1@}
1286 .               if ${_site_urlpath_:M*/*}
1287 _site_url_=             ${_site_urlpath_:C@^([^/]+)/.*$@\1@}
1288 _site_subdir_=  ${_site_urlpath_:S/^${_site_urlpath_:C@^([^/]+)/.*$@\1@}//:S!^/!!:S!/$!!}
1289 .               else
1290 _site_url_=             ${_site_urlpath_}
1291 .undef _site_subdir_
1292 .               endif
1293 _site_group_=   ${_site_:S/^${_site_:C@^(.*):[^/:]+$@\1@}//:S/^://}
1294 .               for _abbrev_ in ${MASTER_SITES_ABBREVS}
1295 .                       if ${_site_url_} == ${_abbrev_:C/:.*//}
1296 _site_url_=     ${_abbrev_:C/.*://}
1297 .                       endif
1298 .               endfor
1299 .               if !defined(MASTER_SITE_SUBDIR)
1300 .                       for _subdir_ in ${MASTER_SITES_SUBDIRS}
1301 .                               if ${_site_url_} == ${_subdir_:C/:.*//}
1302 _site_subdir_?= ${_subdir_:C/.*://}
1303 .                               endif
1304 .                       endfor
1305 .               endif
1306 .               ifdef MASTER_SITE_${_site_url_}
1307 .                       ifdef _site_subdir_
1308 MASTER_SITES_EXP+=      ${MASTER_SITE_${_site_url_}:S^%SUBDIR%^${_site_subdir_}^:S/$/:${_site_group_}/:S/:$//}
1309 .                       else
1310 MASTER_SITES_EXP+=      ${MASTER_SITE_${_site_url_}:S/$/:${_site_group_}/:S/:$//}
1311 .                       endif
1312 MASTER_SITES_EXP:=      ${MASTER_SITES_EXP}
1313 .               endif
1314 .       endif
1315 .endfor
1316 MASTER_SITES=   ${MASTER_SITES_EXP}
1317
1318 .endif
1319
1320 .if defined(PATCH_SITES) && ${PATCH_SITES:N*\:/*}
1321
1322 .for _site__ in ${PATCH_SITES}
1323 _site_=${_site__}
1324 .       if ${_site_:M*\:/*}
1325 PATCH_SITES_EXP+=       ${_site_}
1326 PATCH_SITES_EXP:=       ${PATCH_SITES_EXP}
1327 .       else
1328 _site_urlpath_= ${_site_:C@^(.*):[^/:]+$@\1@}
1329 .               if ${_site_urlpath_:M*/*}
1330 _site_url_=             ${_site_urlpath_:C@^([^/]+)/.*$@\1@}
1331 _site_subdir_=  ${_site_urlpath_:S/^${_site_urlpath_:C@^([^/]+)/.*$@\1@}//:S!^/!!:S!/$!!}
1332 .               else
1333 _site_url_=             ${_site_urlpath_}
1334 .undef _site_subdir_
1335 .               endif
1336 _site_group_=   ${_site_:S/^${_site_:C@^(.*):[^/:]+$@\1@}//:S/^://}
1337 .               for _abbrev_ in ${MASTER_SITES_ABBREVS}
1338 .                       if ${_site_url_} == ${_abbrev_:C/:.*//}
1339 _site_url_=     ${_abbrev_:C/.*://}
1340 .                       endif
1341 .               endfor
1342 .               if !defined(MASTER_SITE_SUBDIR)
1343 .                       for _subdir_ in ${MASTER_SITES_SUBDIRS}
1344 .                               if ${_site_url_} == ${_subdir_:C/:.*//}
1345 _site_subdir_?= ${_subdir_:C/.*://}
1346 .                               endif
1347 .                       endfor
1348 .               endif
1349 .               ifdef MASTER_SITE_${_site_url_}
1350 .                       ifdef _site_subdir_
1351 PATCH_SITES_EXP+=       ${MASTER_SITE_${_site_url_}:S^%SUBDIR%^${_site_subdir_}^:S/$/:${_site_group_}/:S/:$//}
1352 .                       else
1353 PATCH_SITES_EXP+=       ${MASTER_SITE_${_site_url_}:S/$/:${_site_group_}/:S/:$//}
1354 .                       endif
1355 PATCH_SITES_EXP:=       ${PATCH_SITES_EXP}
1356 .               endif
1357 .       endif
1358 .endfor
1359 PATCH_SITES=    ${PATCH_SITES_EXP}
1360
1361 .endif