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 -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 - #endif - --#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 -+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ - #include - #include - #include -@@ -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 - #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 - #endif - --#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 -+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ - #include - #include - #include -@@ -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 - #include - --#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 -+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ - #include - #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 - #include 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 - #endif - --#if M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 -+#if M_UNIX || M_XENIX || linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ - #include - #include - #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 - #include - --#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 - #endif - --#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 -+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ - #include - #include - #include 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 - #endif - --#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 -+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ - #include - #include - #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 - #endif --#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 -+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ - #include - #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 - #endif - --#if __FreeBSD__ || __sun&&__SVR4 -+#if __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ - // for PATH_MAX - #include - #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 - #endif - --#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 -+#if linux || __APPLE__ || __FreeBSD__ || __sun&&__SVR4 || __NetBSD__ - #include - #include - #include -@@ -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 - #include 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 - #if linux - #include - #include - #endif --#if __FreeBSD__ && __i386__ -+#if (__FreeBSD__ || __NetBSD__) && (__i386__ || __amd64__) - #include - #endif - #include -@@ -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 - #include - --#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 - #include 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 - - #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)); + + }); + });