pkgsrc-WIP-changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
dmd: Update wip/dmd to 2.093.1
Module Name: pkgsrc-wip
Committed By: Dan Cîrnaț <dan%alt.md@localhost>
Pushed By: cirnatdan
Date: Thu Sep 3 16:02:49 2020 +0200
Changeset: ad25c2c367c1a018a264b5d1afd19d5be1bca460
Modified Files:
dmd/Makefile
dmd/PLIST
dmd/TODO
dmd/distinfo
Added Files:
dmd/patches/patch-posix.mak
dmd/patches/patch-src_build.d
Removed Files:
dmd/patches/patch-aa
dmd/patches/patch-ab
dmd/patches/patch-ac
dmd/patches/patch-ad
dmd/patches/patch-ae
dmd/patches/patch-af
dmd/patches/patch-ag
dmd/patches/patch-ah
dmd/patches/patch-ai
dmd/patches/patch-aj
dmd/patches/patch-ak
dmd/patches/patch-al
dmd/patches/patch-am
dmd/patches/patch-an
dmd/patches/patch-ao
dmd/patches/patch-ap
dmd/patches/patch-aq
dmd/patches/patch-ar
dmd/patches/patch-as
dmd/patches/patch-at
dmd/patches/patch-au
dmd/patches/patch-av
dmd/patches/patch-aw
dmd/patches/patch-ax
dmd/patches/patch-ay
dmd/patches/patch-az
dmd/patches/patch-ba
dmd/patches/patch-bb
dmd/patches/patch-bc
dmd/patches/patch-bd
dmd/patches/patch-be
dmd/patches/patch-bf
dmd/patches/patch-bg
dmd/patches/patch-bh
Log Message:
dmd: Update wip/dmd to 2.093.1
Tested to build and run(?) on macos.
The newer versions are self-hosted and no longer rely on C++ code
List of all bug fixes and enhancements in D 2.093.1:
DMD Compiler regressions
Bugzilla 21063: getLinkage is wrong for forward reference extern(C++) class
Bugzilla 21074: const lost in mixin
Bugzilla 21095: [ICE] AssertError@dmd/expressionsem.d(5015): Assertion failure
DMD Compiler bugs
Bugzilla 16400: naked variadic C function emits broken prologue
Bugzilla 17351: Static const array can't be evaluated at compile time when passed as ref argument
Bugzilla 21085: [glue] Only 9999 "hidden identifiers" can be generated
Bugzilla 21092: [ICE] Segmentation fault in ExpressionPrettyPrintVisitor::visit(CommaExp*) at dmd/hdrgen.d:2293
Bugzilla 21096: [ICE] Segmentation fault in dmd.hdrgen.sizeToBuffer at dmd/hdrgen.d:3153
Bugzilla 21122: __traits(getAttributes) wrong scope on enums
dlang.org bugs
Bugzilla 21059: install.sh: posix_terminal returns false on Linux Mint 20
To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=ad25c2c367c1a018a264b5d1afd19d5be1bca460
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
diffstat:
dmd/Makefile | 26 ++++-----
dmd/PLIST | 7 ++-
dmd/TODO | 2 -
dmd/distinfo | 44 +++-------------
dmd/patches/patch-aa | 13 -----
dmd/patches/patch-ab | 22 --------
dmd/patches/patch-ac | 22 --------
dmd/patches/patch-ad | 49 -----------------
dmd/patches/patch-ae | 13 -----
dmd/patches/patch-af | 92 --------------------------------
dmd/patches/patch-ag | 13 -----
dmd/patches/patch-ah | 67 -----------------------
dmd/patches/patch-ai | 13 -----
dmd/patches/patch-aj | 13 -----
dmd/patches/patch-ak | 112 ---------------------------------------
dmd/patches/patch-al | 13 -----
dmd/patches/patch-am | 13 -----
dmd/patches/patch-an | 22 --------
dmd/patches/patch-ao | 22 --------
dmd/patches/patch-ap | 13 -----
dmd/patches/patch-aq | 12 -----
dmd/patches/patch-ar | 13 -----
dmd/patches/patch-as | 29 ----------
dmd/patches/patch-at | 40 --------------
dmd/patches/patch-au | 58 --------------------
dmd/patches/patch-av | 40 --------------
dmd/patches/patch-aw | 13 -----
dmd/patches/patch-ax | 74 --------------------------
dmd/patches/patch-ay | 13 -----
dmd/patches/patch-az | 22 --------
dmd/patches/patch-ba | 13 -----
dmd/patches/patch-bb | 13 -----
dmd/patches/patch-bc | 13 -----
dmd/patches/patch-bd | 35 ------------
dmd/patches/patch-be | 13 -----
dmd/patches/patch-bf | 13 -----
dmd/patches/patch-bg | 120 ------------------------------------------
dmd/patches/patch-bh | 20 -------
dmd/patches/patch-posix.mak | 17 ++++++
dmd/patches/patch-src_build.d | 24 +++++++++
40 files changed, 66 insertions(+), 1120 deletions(-)
diffs:
diff --git a/dmd/Makefile b/dmd/Makefile
index 038d8d9f16..0385f09c49 100644
--- a/dmd/Makefile
+++ b/dmd/Makefile
@@ -1,28 +1,28 @@
# $NetBSD: Makefile,v 1.2 2012/09/28 21:24:37 asau Exp $
-#
-DISTNAME= dmd.2.051
-PKGNAME= ${DISTNAME:S/dmd./dmd-/}
+DMD_VERSION= 2.093.1
+PKGNAME= dmd-${DMD_VERSION}
+DISTNAME= v${DMD_VERSION}
CATEGORIES= lang
-MASTER_SITES= http://ftp.digitalmars.com/
-EXTRACT_SUFX= .zip
+MASTER_SITES= ${MASTER_SITE_GITHUB:=dlang/}
+GITHUB_PROJECT= dmd
+GITHUB_TAG= v${DMD_VERSION}
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE= https://www.digitalmars.com/d/
+HOMEPAGE= https://www.dlang.org/
COMMENT= Digital Mars D compiler
-#LICENSE= # TODO: (see mk/license.mk)
+LICENSE= boost-license
-WRKSRC= ${WRKDIR}/dmd2
+WRKSRC= ${WRKDIR}/dmd-${DMD_VERSION}
-BUILD_DIRS= src/dmd src/druntime src/phobos
MAKE_FILE= posix.mak
# -j 16 passed to g++
MAKE_JOBS_SAFE= no
USE_LANGUAGES= c c++
USE_TOOLS= gmake
-
-# so we can use the same MAKE_FILE name for both BUILD_DIRS
-post-extract:
- cd ${WRKSRC}/src/dmd && ln -f linux.mak posix.mak
+MAKE_FLAGS+= AUTO_BOOTSTRAP=1
+MAKE_FLAGS+= BUILD=release
+MAKE_FLAGS+= ENABLE_RELEASE=1
+MAKE_FLAGS+= INSTALL_DIR=${DESTDIR}${PREFIX}
.include "../../mk/bsd.pkg.mk"
diff --git a/dmd/PLIST b/dmd/PLIST
index 529b177c30..cddfbfb8bd 100644
--- a/dmd/PLIST
+++ b/dmd/PLIST
@@ -1 +1,6 @@
-@comment $NetBSD: PLIST,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
+@comment $NetBSD$
+bin/dmd
+etc/dmd.conf
+man/man1/dumpobj.1
+man/man1/obj2asm.1
+man/man5/dmd.conf.5
diff --git a/dmd/TODO b/dmd/TODO
index 917347e522..809061b593 100644
--- a/dmd/TODO
+++ b/dmd/TODO
@@ -1,7 +1,5 @@
The compiler itself compiles, but the standard library isn't ported.
-Installation hasn't been done yet, so the PLIST is empty.
-
- Since DMD requires itself to bootstrap, it has to fetch a DMD compiler.
This has to be done during the fetch stage and checked against a checksum,
not during build.
diff --git a/dmd/distinfo b/dmd/distinfo
index dd97c2a7e0..8a639eefff 100644
--- a/dmd/distinfo
+++ b/dmd/distinfo
@@ -1,40 +1,8 @@
$NetBSD: distinfo,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-SHA1 (dmd.2.051.zip) = edd470e8f756ab64e7692ebc4cd8a2a0bdbc73d8
-RMD160 (dmd.2.051.zip) = 203b3d32cd45be29fcfd60c6d8fc2af4c53e2029
-SHA512 (dmd.2.051.zip) = 0ec09f5bdb22bb58efdb2d34cc33a3f98b85d9647c9093b5686efabad072d2371d9ec469e353ef00d923967fdcf4b622a8a68db71c617c6f1befd2ebf8810e36
-Size (dmd.2.051.zip) = 10747172 bytes
-SHA1 (patch-aa) = 20a4998ef2ae60442db3e47163969a8c88e9efac
-SHA1 (patch-ab) = 333b164a2753b8b5e2415afe9018ced6c046006c
-SHA1 (patch-ac) = 1889ddf99161602b19bb10bcd59e0349f4a07a07
-SHA1 (patch-ad) = 9fbb0053c99690a4a2bf295889f0d0ecab8670d6
-SHA1 (patch-ae) = 49edf2430452fce7d67582219bc189589149d284
-SHA1 (patch-af) = 332903a0c6c6749b5877725e752c901217eb8977
-SHA1 (patch-ag) = 99a3f25dda767c7f34be881fef762f33efca27a8
-SHA1 (patch-ah) = f7a45e57bfee686e062d0e68fcb6d25864619dd2
-SHA1 (patch-ai) = 13bbf77bc5322740d5fd9f2c6d73d7e72f79e80c
-SHA1 (patch-aj) = b80e3fa2ff2f6d67a35d1eb7bee896bf396b6947
-SHA1 (patch-ak) = e2d8f690a35976c5d86e656d101754e753435b51
-SHA1 (patch-al) = 984f432a7cd63e9848842515e38108517e7576bf
-SHA1 (patch-am) = 327b5ea2aacfcd3817b590f422d2d2f62ca09ca4
-SHA1 (patch-an) = c5804e306c8e696af2b3d9c01ec9798f7f2d6c52
-SHA1 (patch-ao) = b0c10fe37e5172a2a862ce5f1ea89501b7d17656
-SHA1 (patch-ap) = 5cce1244120584299f70c09a1b3b562c99556499
-SHA1 (patch-aq) = 60bfe62a8f1d119b4620e0823539b3f138b5b16f
-SHA1 (patch-ar) = 02af50d731cd38ac758e610cb099b0cd887dfba1
-SHA1 (patch-as) = f71c6ac10430363703a8ef651f994bd326fc261d
-SHA1 (patch-at) = 3d7924becdd1c1d3f3c77802db748b34055b9407
-SHA1 (patch-au) = d9803a39328aa180e500e362804497a750414d56
-SHA1 (patch-av) = 0ed5621a66d7226da40f900fa385f7c0c6f4b4b7
-SHA1 (patch-aw) = b2926f4d6f77fc04f0066758b68d08df9c6fe4ad
-SHA1 (patch-ax) = 289cf8a9b901f9853c15c60af3f9645b15e33ec4
-SHA1 (patch-ay) = da3705425a7606d4faefee75482a08c4822daeca
-SHA1 (patch-az) = fdc17d3bafd4b378e8de09652808ad52d08d55c3
-SHA1 (patch-ba) = e503b4dd9e2bbc6d3cdeb4414cc49feb8c232ae8
-SHA1 (patch-bb) = 2c7cf57b36ffd84a92f7c7a34bfadb604d043e6f
-SHA1 (patch-bc) = 709c6859e015393cfc3f760e78726af3393f734a
-SHA1 (patch-bd) = 016621d0edceb4d3550b59fa1f50a7891b765568
-SHA1 (patch-be) = 6c8e375bfd4937b3244c4d16a700e2482a8951b0
-SHA1 (patch-bf) = c4cf8f05620dc1827657ac5a8689d298b1597738
-SHA1 (patch-bg) = c55d2a1e8363e8c6305fa1108bdaa3eeb9bfb5f7
-SHA1 (patch-bh) = 0dac82a919e0a8836c327f1cce91e8969caa9425
+SHA1 (v2.093.1.tar.gz) = d737328ff0556816952949876399c73dfed15cc6
+RMD160 (v2.093.1.tar.gz) = 7c2733fb5151fae7f1fb48c3e98e39e9e22f88f1
+SHA512 (v2.093.1.tar.gz) = 913cd2fff05868f69c2c5168d4658ee324295de27b4116544302678c669f7bb145aae3a538b3fb2d595fd6717d96d9653f9d61505e261c1fa6c63fc5a5d7d33b
+Size (v2.093.1.tar.gz) = 3444486 bytes
+SHA1 (patch-posix.mak) = 280f7cabb166af396a2d68b79a363b1b072d2055
+SHA1 (patch-src_build.d) = b2f71ee454465628c1c69393bb656f689a5bfcb9
diff --git a/dmd/patches/patch-aa b/dmd/patches/patch-aa
deleted file mode 100644
index ff3102ad5f..0000000000
--- a/dmd/patches/patch-aa
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-aa,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/backend/cg87.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/backend/cg87.c
-@@ -623,7 +623,7 @@ __body
- static double dval[7] =
- {0.0,1.0,PI,LOG2T,LOG2E,LOG2,LN2};
- static long double ldval[7] =
--#if __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #define M_PIl 0x1.921fb54442d1846ap+1L // 3.14159 fldpi
- #define M_LOG2T_L 0x1.a934f0979a3715fcp+1L // 3.32193 fldl2t
- #define M_LOG2El 0x1.71547652b82fe178p+0L // 1.4427 fldl2e
diff --git a/dmd/patches/patch-ab b/dmd/patches/patch-ab
deleted file mode 100644
index b1fc8ec138..0000000000
--- a/dmd/patches/patch-ab
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD: patch-ab,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/backend/dwarf.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/backend/dwarf.c
-@@ -22,7 +22,7 @@
- #include <malloc.h>
- #endif
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #include <signal.h>
- #include <unistd.h>
- #include <errno.h>
-@@ -402,7 +402,7 @@ void dwarf_initfile(const char *filename
- linebuf->writeString((char *)list_ptr(pl));
- linebuf->writeByte(0);
- }
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- for (pl = pathsyslist; pl; pl = list_next(pl))
- {
- linebuf->writeString((char *)list_ptr(pl));
diff --git a/dmd/patches/patch-ac b/dmd/patches/patch-ac
deleted file mode 100644
index 51792e6665..0000000000
--- a/dmd/patches/patch-ac
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD: patch-ac,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/backend/evalu8.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/backend/evalu8.c
-@@ -24,7 +24,7 @@
- #include <fp.h>
- #endif
-
--#if __FreeBSD__
-+#if __FreeBSD__ || __NetBSD__
- #define fmodl fmod
- #endif
-
-@@ -42,7 +42,7 @@ static char __file__[] = __FILE__;
-
- extern void error(const char *filename, unsigned linnum, const char *format, ...);
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- int _status87()
- {
- return fetestexcept(FE_ALL_EXCEPT);
diff --git a/dmd/patches/patch-ad b/dmd/patches/patch-ad
deleted file mode 100644
index c5eaad989e..0000000000
--- a/dmd/patches/patch-ad
+++ /dev/null
@@ -1,49 +0,0 @@
-$NetBSD: patch-ad,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/backend/os.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/backend/os.c
-@@ -26,7 +26,7 @@
- #include <sys\stat.h>
- #endif
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <fcntl.h>
-@@ -658,7 +658,7 @@ int os_file_exists(const char *name)
- if (!find)
- return 0;
- return (find->attribute & FA_DIREC) ? 2 : 1;
--#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- struct stat buf;
-
- return stat(name,&buf) == 0; /* file exists if stat succeeded */
-@@ -735,7 +735,7 @@ char *file_8dot3name(const char *filenam
-
- int file_write(char *name, void *buffer, unsigned len)
- {
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- int fd;
- ssize_t numwritten;
-
-@@ -811,7 +811,7 @@ err:
-
- int file_createdirs(char *name)
- {
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- return 1;
- #endif
- #if _WIN32
-@@ -861,7 +861,7 @@ int os_critsecsize()
- }
- #endif
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- int os_critsecsize()
- {
- return sizeof(pthread_mutex_t);
diff --git a/dmd/patches/patch-ae b/dmd/patches/patch-ae
deleted file mode 100644
index e27c4b0a89..0000000000
--- a/dmd/patches/patch-ae
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ae,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/constfold.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/constfold.c
-@@ -26,7 +26,7 @@
- #include "aggregate.h"
- #include "declaration.h"
-
--#if __FreeBSD__
-+#if __FreeBSD__ || __NetBSD__
- #define fmodl fmod // hack for now, fix later
- #endif
-
diff --git a/dmd/patches/patch-af b/dmd/patches/patch-af
deleted file mode 100644
index 06d523cb90..0000000000
--- a/dmd/patches/patch-af
+++ /dev/null
@@ -1,92 +0,0 @@
-$NetBSD: patch-af,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/mars.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/mars.c
-@@ -15,7 +15,7 @@
- #include <assert.h>
- #include <limits.h>
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #include <errno.h>
- #endif
-
-@@ -60,7 +60,7 @@ Global::Global()
-
- #if TARGET_WINDOS
- obj_ext = "obj";
--#elif TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS
-+#elif TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- obj_ext = "o";
- #elif TARGET_NET
- #else
-@@ -69,7 +69,7 @@ Global::Global()
-
- #if TARGET_WINDOS
- lib_ext = "lib";
--#elif TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS
-+#elif TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- lib_ext = "a";
- #elif TARGET_NET
- #else
-@@ -78,7 +78,7 @@ Global::Global()
-
- #if TARGET_WINDOS
- dll_ext = "dll";
--#elif TARGET_LINUX || TARGET_FREEBSD || TARGET_SOLARIS
-+#elif TARGET_LINUX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- dll_ext = "so";
- #elif TARGET_OSX
- dll_ext = "dylib";
-@@ -361,7 +361,7 @@ int main(int argc, char *argv[])
-
- #if TARGET_WINDOS
- global.params.defaultlibname = "phobos";
--#elif TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS
-+#elif TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- global.params.defaultlibname = "phobos2";
- #elif TARGET_NET
- #else
-@@ -393,6 +393,10 @@ int main(int argc, char *argv[])
- VersionCondition::addPredefinedGlobalIdent("Posix");
- VersionCondition::addPredefinedGlobalIdent("FreeBSD");
- global.params.isFreeBSD = 1;
-+#elif TARGET_NETBSD
-+ VersionCondition::addPredefinedGlobalIdent("Posix");
-+ VersionCondition::addPredefinedGlobalIdent("NetBSD");
-+ global.params.isNetBSD = 1;
- #elif TARGET_SOLARIS
- VersionCondition::addPredefinedGlobalIdent("Posix");
- VersionCondition::addPredefinedGlobalIdent("Solaris");
-@@ -410,7 +414,7 @@ int main(int argc, char *argv[])
-
- #if _WIN32
- inifilename = inifile(argv[0], "sc.ini");
--#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- inifilename = inifile(argv[0], "dmd.conf");
- #else
- #error "fix this"
-@@ -435,7 +439,7 @@ int main(int argc, char *argv[])
- global.params.link = 0;
- else if (strcmp(p + 1, "cov") == 0)
- global.params.cov = 1;
--#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS
-+#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- else if (strcmp(p + 1, "fPIC") == 0)
- global.params.pic = 1;
- #endif
-@@ -727,6 +731,13 @@ int main(int argc, char *argv[])
- browse("http://www.digitalmars.com/d/2.0/dmd-freebsd.html");
- #endif
- #endif
-+#if __NetBSD__
-+#if DMDV1
-+ browse("http://www.digitalmars.com/d/1.0/dmd-netbsd.html");
-+#else
-+ browse("http://www.digitalmars.com/d/2.0/dmd-netbsd.html");
-+#endif
-+#endif
- exit(EXIT_SUCCESS);
- }
- else if (strcmp(p + 1, "run") == 0)
diff --git a/dmd/patches/patch-ag b/dmd/patches/patch-ag
deleted file mode 100644
index 792e55f88f..0000000000
--- a/dmd/patches/patch-ag
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ag,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/root/root.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/root/root.c
-@@ -7,7 +7,7 @@
- // in artistic.txt, or the GNU General Public License in gnu.txt.
- // See the included readme.txt for details.
-
--#define POSIX (linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4)
-+#define POSIX (linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__)
-
- #include <stdio.h>
- #include <stdlib.h>
diff --git a/dmd/patches/patch-ah b/dmd/patches/patch-ah
deleted file mode 100644
index 8466d36928..0000000000
--- a/dmd/patches/patch-ah
+++ /dev/null
@@ -1,67 +0,0 @@
-$NetBSD: patch-ah,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/tk/filespec.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/tk/filespec.c
-@@ -25,7 +25,7 @@
- #include <ctype.h>
- #endif
-
--#if M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #include <stdlib.h>
- #include <unistd.h>
- #endif
-@@ -87,7 +87,7 @@ char * filespecaddpath(const char *path,
- /**********************/
- char * filespecrootpath(char *filespec)
- {
--#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #define DIRCHAR '/'
- #endif
- #if MSDOS || __OS2__ || __NT__ || _WIN32
-@@ -112,7 +112,7 @@ char * filespecrootpath(char *filespec)
- #endif
-
- /* get current working directory path */
--#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- cwd_t = (char *)getcwd(NULL, 256);
- #endif
- #if MSDOS || __OS2__ || __NT__ || _WIN32
-@@ -133,7 +133,7 @@ char * filespecrootpath(char *filespec)
- if (cwd[strlen(cwd) - 1] == DIRCHAR)
- cwd[strlen(cwd) - 1] = '\0';
- #endif
--#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- free(cwd_t);
- #endif
- p = filespec;
-@@ -150,7 +150,7 @@ char * filespecrootpath(char *filespec)
- {
- cwd_t = cwd;
- cwd = (char *)mem_calloc(strlen(cwd_t) + 1 + strlen(p) + 1);
--#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- sprintf(cwd, "%s/%s", cwd_t, p); /* add relative directory */
- #endif
- #if MSDOS || __OS2__ || __NT__ || _WIN32
-@@ -171,7 +171,7 @@ char * filespecrootpath(char *filespec)
- { /* ... save remaining string */
- cwd_t = cwd;
- cwd = (char *)mem_calloc(strlen(cwd_t) + 1 + strlen(p) + 1);
--#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if SUN || M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- sprintf(cwd, "%s/%s", cwd_t, p); /* add relative directory */
- #endif
- #if MSDOS || __OS2__ || __NT__ || _WIN32
-@@ -402,7 +402,7 @@ char * filespecbackup(const char *filesp
- #if MSDOS || __OS2__ || __NT__ || _WIN32
- return filespecforceext(filespec,"BAK");
- #endif
--#if BSDUNIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if BSDUNIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- char *p,*f;
-
- /* Prepend .B to file name, if it isn't already there */
diff --git a/dmd/patches/patch-ai b/dmd/patches/patch-ai
deleted file mode 100644
index 853c54f678..0000000000
--- a/dmd/patches/patch-ai
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ai,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/builtin.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/builtin.c
-@@ -12,7 +12,7 @@
- #include <assert.h>
- #include <math.h>
-
--#if __FreeBSD__
-+#if __FreeBSD__ || __NetBSD__
- extern "C"
- {
- long double sinl(long double);
diff --git a/dmd/patches/patch-aj b/dmd/patches/patch-aj
deleted file mode 100644
index cfd70b518c..0000000000
--- a/dmd/patches/patch-aj
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-aj,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/root/response.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/root/response.c
-@@ -19,7 +19,7 @@
- #include <io.h>
- #endif
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <fcntl.h>
diff --git a/dmd/patches/patch-ak b/dmd/patches/patch-ak
deleted file mode 100644
index b120b25654..0000000000
--- a/dmd/patches/patch-ak
+++ /dev/null
@@ -1,112 +0,0 @@
-$NetBSD: patch-ak,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/backend/cdef.h.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/backend/cdef.h
-@@ -25,6 +25,7 @@
- linux Linux
- __APPLE__ Mac OSX
- __FreeBSD__ FreeBSD
-+ __NetBSD__ NetBSD
- __sun&&__SVR4 Solaris, OpenSolaris (yes, both macros are necessary)
- __OS2__ IBM OS/2
- DOS386 32 bit DOS extended executable
-@@ -119,6 +120,11 @@ One and only one of these macros must be
- * with these goals, and should be fixed.
- */
-
-+/* NetBSD Version
-+ * --------------
-+ * Strongly oriented on the FreeBSD Version, read there for now.
-+ */
-+
- /* Solaris Version
- * -------------
- * There are two main issues: hosting the compiler on Solaris,
-@@ -167,13 +173,18 @@ One and only one of these macros must be
- #endif
-
- // Set to 1 using the makefile
-+#ifndef TARGET_NETBSD
-+#define TARGET_NETBSD 0 // target is a NetBSD executable
-+#endif
-+
-+// Set to 1 using the makefile
- #ifndef TARGET_SOLARIS
- #define TARGET_SOLARIS 0 // target is a Solaris executable
- #endif
-
- // This is the default
- #ifndef TARGET_WINDOS
--#define TARGET_WINDOS (!(TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS))
-+#define TARGET_WINDOS (!(TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS))
- #endif
-
- #if __GNUC__
-@@ -242,7 +253,7 @@ One and only one of these macros must be
-
- // Precompiled header variations
- #define MEMORYHX (_WINDLL && _WIN32) // HX and SYM files are cached in memory
--#define MMFIO (_WIN32 || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4) // if memory mapped files
-+#define MMFIO (_WIN32 || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__) // if memory mapped files
- #define LINEARALLOC _WIN32 // if we can reserve address ranges
-
- // H_STYLE takes on one of these precompiled header methods
-@@ -458,7 +469,7 @@ typedef unsigned targ_uns;
- #define DOUBLESIZE 8
- #if TARGET_OSX
- #define LNGDBLSIZE 16 // 80 bit reals
--#elif TARGET_LINUX || TARGET_FREEBSD || TARGET_SOLARIS
-+#elif TARGET_LINUX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- #define LNGDBLSIZE 12 // 80 bit reals
- #else
- #define LNGDBLSIZE 10 // 80 bit reals
-@@ -509,7 +520,7 @@ typedef targ_uns targ_size_t;
- #define OMFOBJ TARGET_WINDOS
- #endif
- #ifndef ELFOBJ
--#define ELFOBJ (TARGET_LINUX || TARGET_FREEBSD || TARGET_SOLARIS)
-+#define ELFOBJ (TARGET_LINUX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS)
- #endif
- #ifndef MACHOBJ
- #define MACHOBJ TARGET_OSX
-@@ -704,10 +715,12 @@ struct Config
- #define EX_FREEBSD64 0x80000
- #define EX_SOLARIS 0x100000
- #define EX_SOLARIS64 0x200000
-+#define EX_NETBSD 0x400000
-+#define EX_NETBSD64 0x800000
-
- #define EX_flat (EX_OS2 | EX_NT | EX_LINUX | EX_WIN64 | EX_LINUX64 | \
- EX_OSX | EX_OSX64 | EX_FREEBSD | EX_FREEBSD64 | \
-- EX_SOLARIS | EX_SOLARIS64)
-+ EX_SOLARIS | EX_SOLARIS64 | EX_NETBSD | EX_NETBSD64)
- #define EX_dos (EX_DOSX | EX_ZPM | EX_RATIONAL | EX_PHARLAP | \
- EX_COM | EX_MZ /*| EX_WIN16*/)
-
-@@ -760,7 +773,7 @@ struct Config
- #define CFG3relax 0x200 // relaxed type checking (C only)
- #define CFG3cpp 0x400 // C++ compile
- #define CFG3igninc 0x800 // ignore standard include directory
--#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS
-+#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- #define CFG3mars 0x1000 // use mars libs and headers
- #define NO_FAR (TRUE) // always ignore __far and __huge keywords
- #else
-@@ -772,7 +785,7 @@ struct Config
- #define CFG3cppcomment 0x8000 // allow C++ style comments
- #define CFG3wkfloat 0x10000 // make floating point references weak externs
- #define CFG3digraphs 0x20000 // support ANSI C++ digraphs
--#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS
-+#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- #define CFG3semirelax 0x40000 // moderate relaxed type checking
- #endif
- #define CFG3pic 0x80000 // position independent code
-@@ -975,7 +988,7 @@ union eve
- #define SYMBOLZERO
- #endif
-
--#if TARGET_LINUX || TARGET_FREEBSD || TARGET_SOLARIS
-+#if TARGET_LINUX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- #define UNIXFIELDS (unsigned)-1,(unsigned)-1,0,0,
- #elif TARGET_OSX
- #define UNIXFIELDS (unsigned)-1,(unsigned)-1,0,0,0,
diff --git a/dmd/patches/patch-al b/dmd/patches/patch-al
deleted file mode 100644
index cc1c663abd..0000000000
--- a/dmd/patches/patch-al
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-al,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/backend/debug.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/backend/debug.c
-@@ -101,7 +101,7 @@ void WRTYxx(tym_t t)
- if (t & mTYpasobj)
- dbg_printf("mTYpasobj|");
- #endif
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- if (t & mTYtransu)
- dbg_printf("mTYtransu|");
- #endif
diff --git a/dmd/patches/patch-am b/dmd/patches/patch-am
deleted file mode 100644
index c7b224aee5..0000000000
--- a/dmd/patches/patch-am
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-am,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/backend/machobj.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/backend/machobj.c
-@@ -21,7 +21,7 @@
- #include <malloc.h>
- #endif
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #include <signal.h>
- #include <unistd.h>
- #endif
diff --git a/dmd/patches/patch-an b/dmd/patches/patch-an
deleted file mode 100644
index 5e80f59581..0000000000
--- a/dmd/patches/patch-an
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD: patch-an,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/backend/parser.h.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/backend/parser.h
-@@ -156,7 +156,7 @@ struct MACRO
- #define FQtop 8 // top level file, already open
- #define FQqual 0x10 // filename is already qualified
- #endif
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #define FQnext 0x20 // search starts after directory
- #endif // of last included file
-
-@@ -698,7 +698,7 @@ char *el_tostring(Outbuffer *, elem *e);
-
- extern list_t pathlist; // include paths
- extern list_t headers; // pre-include files
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- extern list_t pathsyslist; // include path for .h file overrides
- #endif
-
diff --git a/dmd/patches/patch-ao b/dmd/patches/patch-ao
deleted file mode 100644
index 3a4eeb20aa..0000000000
--- a/dmd/patches/patch-ao
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD: patch-ao,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/backend/strtold.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/backend/strtold.c
-@@ -20,7 +20,7 @@
- #if _WIN32
- #include <fltpnt.h>
- #endif
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #include <errno.h>
- #endif
-
-@@ -30,7 +30,7 @@ extern char * __cdecl __locale_decpoint;
- void __pascal __set_errno (int an_errno);
- #endif
-
--#if _WIN32 || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if _WIN32 || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
-
- #if 0
- /* This is for compilers that don't support hex float literals,
diff --git a/dmd/patches/patch-ap b/dmd/patches/patch-ap
deleted file mode 100644
index 7930e50c36..0000000000
--- a/dmd/patches/patch-ap
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ap,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/cond.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/cond.c
-@@ -138,7 +138,7 @@ void VersionCondition::checkPredefined(L
- "D_NET",
- #endif
- "OSX", "FreeBSD",
-- "Solaris",
-+ "Solaris", "NetBSD"
- "LittleEndian", "BigEndian",
- "all",
- "none",
diff --git a/dmd/patches/patch-aq b/dmd/patches/patch-aq
deleted file mode 100644
index 2d3677b35d..0000000000
--- a/dmd/patches/patch-aq
+++ /dev/null
@@ -1,12 +0,0 @@
-$NetBSD: patch-aq,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/e2ir.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/e2ir.c
-@@ -178,6 +178,7 @@ elem *callfunc(Loc loc,
- if ((global.params.isLinux ||
- global.params.isOSX ||
- global.params.isFreeBSD ||
-+ global.params.isNetBSD ||
- global.params.isSolaris) && tf->linkage != LINKd)
- ; // ehidden goes last on Linux/OSX C++
- else
diff --git a/dmd/patches/patch-ar b/dmd/patches/patch-ar
deleted file mode 100644
index c381f692c1..0000000000
--- a/dmd/patches/patch-ar
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ar,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/glue.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/glue.c
-@@ -770,7 +770,7 @@ void FuncDeclaration::toObjFile(int mult
- pi++;
- }
-
-- if ((global.params.isLinux || global.params.isOSX || global.params.isFreeBSD || global.params.isSolaris) &&
-+ if ((global.params.isLinux || global.params.isOSX || global.params.isFreeBSD || global.params.isNetBSD || global.params.isSolaris) &&
- linkage != LINKd && shidden && sthis)
- {
- /* swap shidden and sthis
diff --git a/dmd/patches/patch-as b/dmd/patches/patch-as
deleted file mode 100644
index c61608696d..0000000000
--- a/dmd/patches/patch-as
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD: patch-as,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/inifile.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/inifile.c
-@@ -23,7 +23,7 @@
- #include <sys/syslimits.h>
- #endif
-
--#if __FreeBSD__ || __sun&&__SVR4
-+#if __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- // for PATH_MAX
- #include <limits.h>
- #endif
-@@ -111,12 +111,12 @@ const char *inifile(const char *argv0x,
- filename = (char *)FileName::replaceName(argv0, inifile);
- if (!FileName::exists(filename))
- {
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
--#if __GLIBC__ || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 // This fix by Thomas Kuehne
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
-+#if __GLIBC__ || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ // This fix by Thomas Kuehne
- /* argv0 might be a symbolic link,
- * so try again looking past it to the real path
- */
--#if __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- char resolved_name[PATH_MAX + 1];
- char* real_argv0 = realpath(argv0, resolved_name);
- #else
diff --git a/dmd/patches/patch-at b/dmd/patches/patch-at
deleted file mode 100644
index 7d6bafc120..0000000000
--- a/dmd/patches/patch-at
+++ /dev/null
@@ -1,40 +0,0 @@
-$NetBSD: patch-at,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/link.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/link.c
-@@ -19,7 +19,7 @@
- #include <process.h>
- #endif
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #include <sys/types.h>
- #include <sys/wait.h>
- #include <unistd.h>
-@@ -198,7 +198,7 @@ int runLINK()
- delete lnkfilename;
- }
- return status;
--#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- pid_t childpid;
- int i;
- int status;
-@@ -486,7 +486,7 @@ int executearg0(char *cmd, char *args)
- //printf("spawning '%s'\n",file);
- #if _WIN32
- return spawnl(0,file,file,args,NULL);
--#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- char *full;
- int cmdl = strlen(cmd);
-
-@@ -549,7 +549,7 @@ int runProgram()
- else
- ex = global.params.exefile;
- return spawnv(0,ex,(char **)argv.data);
--#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#elif linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- pid_t childpid;
- int status;
-
diff --git a/dmd/patches/patch-au b/dmd/patches/patch-au
deleted file mode 100644
index ccae945314..0000000000
--- a/dmd/patches/patch-au
+++ /dev/null
@@ -1,58 +0,0 @@
-$NetBSD: patch-au,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/mars.h.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/mars.h
-@@ -37,6 +37,7 @@ Macros defined by the compiler, not the
- linux Linux
- __APPLE__ Mac OSX
- __FreeBSD__ FreeBSD
-+ __NetBSD__ NetBSD
- __sun&&__SVR4 Solaris, OpenSolaris (yes, both macros are necessary)
-
- For the target systems, there are the target operating system and
-@@ -47,6 +48,7 @@ the target object file format:
- TARGET_LINUX Covers 32 and 64 bit linux
- TARGET_OSX Covers 32 and 64 bit Mac OSX
- TARGET_FREEBSD Covers 32 and 64 bit FreeBSD
-+ TARGET_NETBSD Covers 32 and 64 bit NetBSD
- TARGET_SOLARIS Covers 32 and 64 bit Solaris
- TARGET_NET Covers .Net
-
-@@ -55,7 +57,7 @@ the target object file format:
-
- Target object module format:
- OMFOBJ Intel Object Module Format, used on Windows
-- ELFOBJ Elf Object Module Format, used on linux, FreeBSD and Solaris
-+ ELFOBJ Elf Object Module Format, used on linux, FreeBSD, NetBSD and Solaris
- MACHOBJ Mach-O Object Module Format, used on Mac OSX
-
- There are currently no macros for byte endianness order.
-@@ -91,9 +93,9 @@ void unittests();
- #define MODULEINFO_IS_STRUCT DMDV2 // if ModuleInfo is a struct rather than a class
-
- // Set if C++ mangling is done by the front end
--#define CPP_MANGLE (DMDV2 && (TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS))
-+#define CPP_MANGLE (DMDV2 && (TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS))
-
--/* Other targets are TARGET_LINUX, TARGET_OSX, TARGET_FREEBSD and
-+/* Other targets are TARGET_LINUX, TARGET_OSX, TARGET_FREEBSD, TARGET_NETBSD and
- * TARGET_SOLARIS, which are
- * set on the command line via the compiler makefile.
- */
-@@ -103,7 +105,7 @@ void unittests();
- #define OMFOBJ 1
- #endif
-
--#if TARGET_LINUX || TARGET_FREEBSD || TARGET_SOLARIS
-+#if TARGET_LINUX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- #ifndef ELFOBJ
- #define ELFOBJ 1
- #endif
-@@ -141,6 +143,7 @@ struct Param
- char isOSX; // generate code for Mac OSX
- char isWindows; // generate code for Windows
- char isFreeBSD; // generate code for FreeBSD
-+ char isNetBSD; // generate code for NetBSD
- char isSolaris; // generate code for Solaris
- char scheduler; // which scheduler to use
- char useDeprecated; // allow use of deprecated features
diff --git a/dmd/patches/patch-av b/dmd/patches/patch-av
deleted file mode 100644
index cfe3847c42..0000000000
--- a/dmd/patches/patch-av
+++ /dev/null
@@ -1,40 +0,0 @@
-$NetBSD: patch-av,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/mtype.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/mtype.c
-@@ -72,7 +72,7 @@ int PTRSIZE = 4;
- int REALSIZE = 16;
- int REALPAD = 6;
- int REALALIGNSIZE = 16;
--#elif TARGET_LINUX || TARGET_FREEBSD || TARGET_SOLARIS
-+#elif TARGET_LINUX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- int REALSIZE = 12;
- int REALPAD = 2;
- int REALALIGNSIZE = 4;
-@@ -270,7 +270,7 @@ void Type::init()
- if (global.params.isX86_64)
- {
- PTRSIZE = 8;
-- if (global.params.isLinux || global.params.isFreeBSD || global.params.isSolaris)
-+ if (global.params.isLinux || global.params.isFreeBSD || global.params.isNetBSD || global.params.isSolaris)
- {
- REALSIZE = 16;
- REALPAD = 6;
-@@ -285,7 +285,7 @@ void Type::init()
- #if TARGET_OSX
- REALSIZE = 16;
- REALPAD = 6;
--#elif TARGET_LINUX || TARGET_FREEBSD || TARGET_SOLARIS
-+#elif TARGET_LINUX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- REALSIZE = 12;
- REALPAD = 2;
- #else
-@@ -2491,7 +2491,7 @@ unsigned TypeBasic::alignsize()
- sz = REALALIGNSIZE;
- break;
-
--#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_SOLARIS
-+#if TARGET_LINUX || TARGET_OSX || TARGET_FREEBSD || TARGET_NETBSD || TARGET_SOLARIS
- case Tint64:
- case Tuns64:
- case Tfloat64:
diff --git a/dmd/patches/patch-aw b/dmd/patches/patch-aw
deleted file mode 100644
index 59dd12ae4f..0000000000
--- a/dmd/patches/patch-aw
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-aw,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/root/man.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/root/man.c
-@@ -26,7 +26,7 @@ void browse(const char *url)
-
- #endif
-
--#if linux || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
-
- #include <sys/types.h>
- #include <sys/wait.h>
diff --git a/dmd/patches/patch-ax b/dmd/patches/patch-ax
deleted file mode 100644
index e3a73c7035..0000000000
--- a/dmd/patches/patch-ax
+++ /dev/null
@@ -1,74 +0,0 @@
-$NetBSD: patch-ax,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/root/port.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/root/port.c
-@@ -315,14 +315,14 @@ char *Port::strupr(char *s)
-
- #endif
-
--#if linux || __APPLE__ || __FreeBSD__
-+#if linux || __APPLE__ || __FreeBSD__ || __NetBSD__
-
- #include <math.h>
- #if linux
- #include <bits/nan.h>
- #include <bits/mathdef.h>
- #endif
--#if __FreeBSD__ && __i386__
-+#if (__FreeBSD__ || __NetBSD__) && (__i386__ || __amd64__)
- #include <ieeefp.h>
- #endif
- #include <time.h>
-@@ -358,23 +358,25 @@ PortInitializer::PortInitializer()
- foo = -foo; // turn off sign bit
- Port::nan = foo;
-
--#if __FreeBSD__ && __i386__
-+#if (__FreeBSD__ || __NetBSD__) && (__i386__ || __amd64__)
- // LDBL_MAX comes out as infinity. Fix.
- static unsigned char x[sizeof(long double)] =
- { 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0x7F };
- Port::ldbl_max = *(long double *)&x[0];
- // FreeBSD defaults to double precision. Switch to extended precision.
-+/* XXX: does not exist on NetBSD */
-+#if (__FreeBSD__) && __i386__
- fpsetprec(FP_PE);
- #endif
-+#endif
- }
-
--#undef isnan
- int Port::isNan(double r)
- {
- #if __APPLE__
- return __inline_isnan(r);
- #else
-- return ::isnan(r);
-+ return isnan(r);
- #endif
- }
-
-@@ -383,7 +385,7 @@ int Port::isNan(long double r)
- #if __APPLE__
- return __inline_isnan(r);
- #else
-- return ::isnan(r);
-+ return isnan(r);
- #endif
- }
-
-@@ -409,13 +411,12 @@ int Port::isFinite(double r)
- return ::finite(r);
- }
-
--#undef isinf
- int Port::isInfinity(double r)
- {
- #if __APPLE__
- return fpclassify(r) == FP_INFINITE;
- #else
-- return ::isinf(r);
-+ return isinf(r);
- #endif
- }
-
diff --git a/dmd/patches/patch-ay b/dmd/patches/patch-ay
deleted file mode 100644
index c5ad1300c1..0000000000
--- a/dmd/patches/patch-ay
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ay,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/root/rmem.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/root/rmem.c
-@@ -6,7 +6,7 @@
- #include <stdlib.h>
- #include <string.h>
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- #include "../root/rmem.h"
- #else
- #include "rmem.h"
diff --git a/dmd/patches/patch-az b/dmd/patches/patch-az
deleted file mode 100644
index 230c9a4a66..0000000000
--- a/dmd/patches/patch-az
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD: patch-az,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/tk/mem.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/tk/mem.c
-@@ -296,7 +296,7 @@ static struct mem_debug
- 11111,
- 0,
- BEFOREVAL,
--#if !(linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4)
-+#if !(linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__)
- AFTERVAL
- #endif
- };
-@@ -804,7 +804,7 @@ void mem_init()
- mem_numalloc = 0;
- mem_maxalloc = 0;
- mem_alloclist.Mnext = NULL;
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- *(long *) &(mem_alloclist.data[0]) = AFTERVAL;
- #endif
- #endif
diff --git a/dmd/patches/patch-ba b/dmd/patches/patch-ba
deleted file mode 100644
index a8f9589a3d..0000000000
--- a/dmd/patches/patch-ba
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ba,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/toir.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/toir.c
-@@ -799,7 +799,7 @@ enum RET TypeFunction::retStyle()
- }
- return RETstack;
- }
-- else if ((global.params.isLinux || global.params.isOSX || global.params.isFreeBSD || global.params.isSolaris) &&
-+ else if ((global.params.isLinux || global.params.isOSX || global.params.isFreeBSD || global.params.isNetBSD || global.params.isSolaris) &&
- linkage == LINKc &&
- tn->iscomplex())
- {
diff --git a/dmd/patches/patch-bb b/dmd/patches/patch-bb
deleted file mode 100644
index 444bbe19e0..0000000000
--- a/dmd/patches/patch-bb
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-bb,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/dmd/util.c.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/dmd/util.c
-@@ -131,7 +131,7 @@ void util_progress(int linnum)
-
- #endif
-
--#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4
-+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__
- void util_progress()
- {
- }
diff --git a/dmd/patches/patch-bc b/dmd/patches/patch-bc
deleted file mode 100644
index 4b7df7df34..0000000000
--- a/dmd/patches/patch-bc
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-bc,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/druntime/posix.mak.orig 2010-12-15 07:30:54.000000000 +0000
-+++ src/druntime/posix.mak
-@@ -1,5 +1,7 @@
-
--DMD=dmd
-+all: target
-+
-+DMD=../dmd/dmd
-
- DOCDIR=doc
- IMPDIR=import
diff --git a/dmd/patches/patch-bd b/dmd/patches/patch-bd
deleted file mode 100644
index 6793ba9eae..0000000000
--- a/dmd/patches/patch-bd
+++ /dev/null
@@ -1,35 +0,0 @@
-$NetBSD: patch-bd,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/phobos/posix.mak.orig 2010-12-20 20:02:36.000000000 +0000
-+++ src/phobos/posix.mak
-@@ -33,7 +33,11 @@ ifeq (,$(OS))
- ifeq (FreeBSD,$(OS))
- OS:=freebsd
- else
-- $(error Unrecognized or unsupported OS for uname: $(OS))
-+ ifeq (NetBSD,$(OS))
-+ OS:=freebsd
-+ else
-+ $(error Unrecognized or unsupported OS for uname: $(OS))
-+ endif
- endif
- endif
- endif
-@@ -85,7 +89,7 @@ else
- DMD = ssh 206.125.170.138 "cd code/dmd/phobos && dmd"
- CC = ssh 206.125.170.138 "cd code/dmd/phobos && dmc"
- else
-- DMD = dmd
-+ DMD = ../dmd/dmd
- ifeq ($(OS),win32)
- CC = dmc
- else
-@@ -204,6 +208,8 @@ OBJS = $(addsuffix $(DOTOBJ),$(addprefix
- # Rules begin here
- ################################################################################
-
-+all: release
-+
- ifeq ($(BUILD),)
- # No build was defined, so here we define release and debug
- # targets. BUILD is not defined in user runs, only by recursive
diff --git a/dmd/patches/patch-be b/dmd/patches/patch-be
deleted file mode 100644
index e60d60011a..0000000000
--- a/dmd/patches/patch-be
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-be,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/druntime/src/rt/critical.c.orig 2010-12-15 07:30:48.000000000 +0000
-+++ src/druntime/src/rt/critical.c
-@@ -83,7 +83,7 @@ void _STD_critical_term()
-
- /* ================================= linux ============================ */
-
--#if linux || __APPLE__ || __FreeBSD__
-+#if linux || __APPLE__ || __FreeBSD__ || __NetBSD__
-
- #include <stdio.h>
- #include <stdlib.h>
diff --git a/dmd/patches/patch-bf b/dmd/patches/patch-bf
deleted file mode 100644
index 77f8dd2ad7..0000000000
--- a/dmd/patches/patch-bf
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-bf,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/druntime/src/rt/monitor.c.orig 2010-12-15 07:30:48.000000000 +0000
-+++ src/druntime/src/rt/monitor.c
-@@ -16,7 +16,7 @@
- #include <assert.h>
-
- #if _WIN32
--#elif linux || __APPLE__ || __FreeBSD__
-+#elif linux || __APPLE__ || __FreeBSD__ || __NetBSD__
- #define USE_PTHREADS 1
- #else
- #endif
diff --git a/dmd/patches/patch-bg b/dmd/patches/patch-bg
deleted file mode 100644
index 2b4af75d52..0000000000
--- a/dmd/patches/patch-bg
+++ /dev/null
@@ -1,120 +0,0 @@
-$NetBSD: patch-bg,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/druntime/import/core/stdc/errno.di.orig 2010-12-20 07:27:04.000000000 +0000
-+++ src/druntime/import/core/stdc/errno.di
-@@ -366,6 +366,115 @@ else
- enum EPROTO = 92;
- enum ELAST = 92;
- }
-+else
-+{
-+ version (NetBSD)
-+{
-+ enum EPERM = 1;
-+ enum ENOENT = 2;
-+ enum ESRCH = 3;
-+ enum EINTR = 4;
-+ enum EIO = 5;
-+ enum ENXIO = 6;
-+ enum E2BIG = 7;
-+ enum ENOEXEC = 8;
-+ enum EBADF = 9;
-+ enum ECHILD = 10;
-+ enum EDEADLK = 11;
-+ enum ENOMEM = 12;
-+ enum EACCES = 13;
-+ enum EFAULT = 14;
-+ enum ENOTBLK = 15;
-+ enum EBUSY = 16;
-+ enum EEXIST = 17;
-+ enum EXDEV = 18;
-+ enum ENODEV = 19;
-+ enum ENOTDIR = 20;
-+ enum EISDIR = 21;
-+ enum EINVAL = 22;
-+ enum ENFILE = 23;
-+ enum EMFILE = 24;
-+ enum ENOTTY = 25;
-+ enum ETXTBSY = 26;
-+ enum EFBIG = 27;
-+ enum ENOSPC = 28;
-+ enum ESPIPE = 29;
-+ enum EROFS = 30;
-+ enum EMLINK = 31;
-+ enum EPIPE = 32;
-+ enum EDOM = 33;
-+ enum ERANGE = 34;
-+ enum EAGAIN = 35;
-+ enum EWOULDBLOCK = EAGAIN;
-+ enum EINPROGRESS = 36;
-+ enum EALREADY = 37;
-+ enum ENOTSOCK = 38;
-+ enum EDESTADDRREQ = 39;
-+ enum EMSGSIZE = 40;
-+ enum EPROTOTYPE = 41;
-+ enum ENOPROTOOPT = 42;
-+ enum EPROTONOSUPPORT = 43;
-+ enum ESOCKTNOSUPPORT = 44;
-+ enum EOPNOTSUPP = 45;
-+ enum EPFNOSUPPORT = 46;
-+ enum EAFNOSUPPORT = 47;
-+ enum EADDRINUSE = 48;
-+ enum EADDRNOTAVAIL = 49;
-+ enum ENETDOWN = 50;
-+ enum ENETUNREACH = 51;
-+ enum ENETRESET = 52;
-+ enum ECONNABORTED = 53;
-+ enum ECONNRESET = 54;
-+ enum ENOBUFS = 55;
-+ enum EISCONN = 56;
-+ enum ENOTCONN = 57;
-+ enum ESHUTDOWN = 58;
-+ enum ETOOMANYREFS = 59;
-+ enum ETIMEDOUT = 60;
-+ enum ECONNREFUSED = 61;
-+ enum ELOOP = 62;
-+ enum ENAMETOOLONG = 63;
-+ enum EHOSTDOWN = 64;
-+ enum EHOSTUNREACH = 65;
-+ enum ENOTEMPTY = 66;
-+ enum EPROCLIM = 67;
-+ enum EUSERS = 68;
-+ enum EDQUOT = 69;
-+ enum ESTALE = 70;
-+ enum EREMOTE = 71;
-+ enum EBADRPC = 72;
-+ enum ERPCMISMATCH = 73;
-+ enum EPROGUNAVAIL = 74;
-+ enum EPROGMISMATCH = 75;
-+ enum EPROCUNAVAIL = 76;
-+ enum ENOLCK = 77;
-+ enum ENOSYS = 78;
-+ enum EFTYPE = 79;
-+ enum EAUTH = 80;
-+ enum ENEEDAUTH = 81;
-+ enum EIDRM = 82;
-+ enum ENOMSG = 83;
-+ enum EOVERFLOW = 84;
-+ enum EILSEQ = 85;
-+ enum ENOTSUP = 86;
-+ enum ECANCELED = 87;
-+ enum EBADMSG = 88;
-+ enum ENODATA = 89;
-+ enum ENOSR = 90;
-+ enum ENOSTR = 91;
-+ enum ETIME = 92;
-+ enum ENOATTR = 93;
-+ enum EMULTIHOP = 94;
-+ enum ENOLINK = 95;
-+ enum EPROTO = 96;
-+ enum ELAST = 96;
-+ enum EJUSTRETURN = -2;
-+ enum ERESTART = -3;
-+ enum EPASSTHROUGH = -4;
-+ enum EDUPFD = -5;
-+ enum EMOVEFD = -6;
-+}
-+}
- }
- }
- }
diff --git a/dmd/patches/patch-bh b/dmd/patches/patch-bh
deleted file mode 100644
index cba3ba356d..0000000000
--- a/dmd/patches/patch-bh
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-bh,v 1.1.1.1 2011/02/16 17:10:41 thomasklausner Exp $
-
---- src/druntime/src/core/sys/posix/sys/mman.d.orig 2010-12-15 07:30:52.000000000 +0000
-+++ src/druntime/src/core/sys/posix/sys/mman.d
-@@ -108,15 +108,7 @@ version( linux )
- //void* mmap(void*, size_t, int, int, int, off_t);
- int munmap(void*, size_t);
-
-- static if( __USE_LARGEFILE64 )
-- {
-- void* mmap64(void*, size_t, int, int, int, off_t);
-- alias mmap64 mmap;
-- }
-- else
-- {
- void* mmap(void*, size_t, int, int, int, off_t);
-- }
- }
- else version( OSX )
- {
diff --git a/dmd/patches/patch-posix.mak b/dmd/patches/patch-posix.mak
new file mode 100644
index 0000000000..a78dbae7d3
--- /dev/null
+++ b/dmd/patches/patch-posix.mak
@@ -0,0 +1,17 @@
+$NetBSD$
+
+--- posix.mak.orig 2020-08-15 09:49:13.000000000 +0000
++++ posix.mak
+@@ -57,9 +57,9 @@ install:
+ else
+ install: all
+ $(MAKE) INSTALL_DIR=$(INSTALL_DIR) -C src -f posix.mak install
+- cp -r samples $(INSTALL_DIR)
+- mkdir -p $(INSTALL_DIR)/man
+- cp -r docs/man/* $(INSTALL_DIR)/man/
++ #cp -r samples $(INSTALL_DIR)
++ mkdir -p $(INSTALL_DIR)/share/man
++ cp -r docs/man/* $(INSTALL_DIR)/share/man/
+ endif
+
+ # Checks that all files have been committed and no temporary, untracked files exist.
diff --git a/dmd/patches/patch-src_build.d b/dmd/patches/patch-src_build.d
new file mode 100644
index 0000000000..9c27b13d2d
--- /dev/null
+++ b/dmd/patches/patch-src_build.d
@@ -0,0 +1,24 @@
+$NetBSD$
+
+--- src/build.d.orig 2020-08-15 09:49:13.000000000 +0000
++++ src/build.d
+@@ -753,16 +753,14 @@ alias install = makeRule!((builder, rule
+ const bin = "bin" ~ env["MODEL"];
+ }
+
+- installRelativeFiles(env["INSTALL"].buildPath(env["OS"], bin), dmdExeFile.dirName, dmdExeFile.only, octal!755);
++ installRelativeFiles(env["INSTALL"].buildPath(bin), dmdExeFile.dirName, dmdExeFile.only, octal!755);
+
+ version (Windows)
+ installRelativeFiles(env["INSTALL"], dmdRepo, sourceFiles);
+
+ const scPath = buildPath(env["OS"], bin, conf);
+- copyAndTouch(buildPath(dmdRepo, "ini", scPath), buildPath(env["INSTALL"], scPath));
+-
+- version (Posix)
+- copyAndTouch(sourceFiles[$-1], env["INSTALL"].buildPath("dmd-boostlicense.txt"));
++ mkdirRecurse(buildPath(env["INSTALL"], "etc"));
++ copyAndTouch(buildPath(dmdRepo, "ini", scPath), buildPath(env["INSTALL"], "etc", conf));
+
+ });
+ });
Home |
Main Index |
Thread Index |
Old Index