# HG changeset patch # User Tomas Lindquist Olsen # Date 1223225743 -7200 # Node ID 5709381df7e8aea89784ddccc3969a1e1ab7588a # Parent aa6a0b7968f75cacb92b7c72c213f438c827cf94 Added -nodefaultlib switch do disable implicitly linked standard lib modules diff -r aa6a0b7968f7 -r 5709381df7e8 dmd/mars.c --- a/dmd/mars.c Sun Oct 05 17:28:15 2008 +0200 +++ b/dmd/mars.c Sun Oct 05 18:55:43 2008 +0200 @@ -224,6 +224,7 @@ -J where to look for string imports\n\ -defaultlib=name set default library for non-debug build\n\ -debuglib=name set default library for debug build\n\ + -nodefaultlib don't add a default library for linking implicitly\n\ \n\ Misc options:\n\ -v verbose\n\ @@ -428,6 +429,8 @@ } else if (strcmp(p + 1, "noasm") == 0) global.params.useInlineAsm = 0; + else if (strcmp(p + 1, "nodefaultlib") == 0) + global.params.noDefaultLib = 1; else if (p[1] == 'o') { switch (p[2]) @@ -709,7 +712,7 @@ global.params.linkswitches->push(arg); } } - else + else if (!global.params.noDefaultLib) { char *arg; arg = (char *)mem.malloc(64); diff -r aa6a0b7968f7 -r 5709381df7e8 dmd/mars.h --- a/dmd/mars.h Sun Oct 05 17:28:15 2008 +0200 +++ b/dmd/mars.h Sun Oct 05 18:55:43 2008 +0200 @@ -150,6 +150,7 @@ char llvmAnnotate; char useInlineAsm; char fqnNames; // use fully qualified object names + char noDefaultLib; }; struct Global