digitalmars.D.announce - Build v3.03 released
- Derek Parnell <derek nomail.afraid.org> Sep 21 2006
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Sep 21 2006
- Derek Parnell <derek psyc.ward> Sep 21 2006
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Sep 21 2006
- Sean Kelly <sean f4.ca> Sep 21 2006
- Lutger <lutger.blijdestijn gmail.com> Sep 21 2006
- "John Reimer" <terminal.node gmail.com> Sep 21 2006
- dickl <dick221z yahoo.com> Sep 21 2006
- Derek Parnell <derek psyc.ward> Sep 21 2006
- dickl <dick221z yahoo.com> Sep 21 2006
- Derek Parnell <derek nomail.afraid.org> Sep 21 2006
- dickl <dick221z yahoo.com> Sep 22 2006
- ns <demo demo.com> Oct 10 2006
- Derek Parnell <derek psyc.ward> Oct 10 2006
- Gregor Richards <Richards codu.org> Sep 21 2006
- Derek Parnell <derek psyc.ward> Sep 21 2006
- Gregor Richards <Richards codu.org> Sep 21 2006
- Hasan Aljudy <hasan.aljudy gmail.com> Sep 21 2006
- Gregor Richards <Richards codu.org> Sep 21 2006
- Hasan Aljudy <hasan.aljudy gmail.com> Sep 21 2006
- Gregor Richards <Richards codu.org> Sep 21 2006
- "jicman" <jic spam.me> Sep 27 2006
- Derek Parnell <derek nomail.afraid.org> Sep 27 2006
Release 3.03 (build #2371) is now available 20 Sep 2006 URL: http://www.dsource.org/projects/build Change Log Summary ------------------ ** FIX: Ticket #33 For unix editions, 'pthread' is now a default library, '-g' is used instead of '/co' to generate debug data, '-o ' is used instead of '-of', and spaces are placed in between consecutive '-L' switches. Note that if you want to place library files on the command line, you still have to include the '.a' file suffix. ** FIX: Ticket #34 For GNU, 'gdc' is the default linker, the library switch is now '-L-l', 'gphobos' is used instead of 'phobos', and the makefile includes the '-version=BuildVerbose' switch. ** FIX: Ticket #35 It is now possible to use relative paths on the command line files. ** FIX If you use the '-od' switch then the '-op' switch is not used. ** CHG: Ticket #36 The default name for the executable is now 'bud', but you can change it to anything you like. ** CHG: Ticket #37 Changed defaults to support GDC out-of-the-box. ** ENH The utility now also checks for a '[darwin]' section in the Configuration File. ** ENH The utility now supports the import syntax that was introduced with DMD v0.163. ** ENH The distribution now includes example configuration files for a number of environments. ** ENH The Configuration File now supports a new FINAL command that allows you to run jobs after a successful build. There are a number of example configuration files now distributed with the source. Please select the one closest to your own environment and tweak as needed if you are having problems with the 'default' settings. If you can't get it to run using the compiler/linker/librarian of your choice after trying the configuration files, please let me know. Note that the distributed Windows executable files have been compressed with UPX. This shouldn't be an issue but I thought you might like to know. _________________ -- Derek (skype: derek.j.parnell) Melbourne, Australia "Down with mediocrity!" 21/09/2006 6:12:20 PM
Sep 21 2006
Derek Parnell wrote:Release 3.03 (build #2371) is now available 20 Sep 2006 URL: http://www.dsource.org/projects/build
** ENH The utility now supports the import syntax that was introduced with DMD v0.163.
Seems that it needs GDC 0.20 (DMD 0.163+) to compile ? :-( # make -f Makefile.gdc util/fdt.d:69: ';' expected util/fdt.d:69: no identifier for declarator std.c.windows.windows util/fdt.d:70: ';' expected util/fdt.d:70: no identifier for declarator std.c.linux.linux util/fdt.d:71: ';' expected util/fdt.d:71: no identifier for declarator std.c.darwin.darwin util/fdt.d:72: ';' expected Old compiler doesn't like those "static import" statements. --anders PS. Maybe it should be mentioned that std.c.darwin.darwin is deprecated in favor of std.c.unix.unix for all Unix
Sep 21 2006
On Thu, 21 Sep 2006 10:46:27 +0200, Anders F Björklund wrote:Derek Parnell wrote:Release 3.03 (build #2371) is now available 20 Sep 2006 URL: http://www.dsource.org/projects/build
** ENH The utility now supports the import syntax that was introduced with DMD v0.163.
Seems that it needs GDC 0.20 (DMD 0.163+) to compile ? :-( # make -f Makefile.gdc util/fdt.d:69: ';' expected util/fdt.d:69: no identifier for declarator std.c.windows.windows util/fdt.d:70: ';' expected util/fdt.d:70: no identifier for declarator std.c.linux.linux util/fdt.d:71: ';' expected util/fdt.d:71: no identifier for declarator std.c.darwin.darwin util/fdt.d:72: ';' expected Old compiler doesn't like those "static import" statements.
Sorry. I didn't know that. I haven't used GDC. I guess it will catch up soon. Is there a special version that GDC sets?PS. Maybe it should be mentioned that std.c.darwin.darwin is deprecated in favor of std.c.unix.unix for all Unix
Didn't know that either. -- Derek Parnell Melbourne, Australia "Down with mediocrity!"
Sep 21 2006
Derek Parnell wrote:Old compiler doesn't like those "static import" statements.
Sorry. I didn't know that. I haven't used GDC. I guess it will catch up soon.
According to the changelog it was introduced in DMD 0.163, while GDC 0.19 is currently DMD 0.162 - so it was close :-)Is there a special version that GDC sets?
Yes, GDC sets "version(GNU)" and DMD sets "version(DigitalMars)" This information is available from the "unofficial" page at: http://www.prowiki.org/wiki4d/wiki.cgi?DocComments/VersionPS. Maybe it should be mentioned that std.c.darwin.darwin is deprecated in favor of std.c.unix.unix for all Unix
Didn't know that either.
Both are available, and they include the same thing: (autoconf) module std.c.darwin.darwin; import gcc.configunix; The theory is that all the common stuff goes in std.c.unix.unix and that the platform specific stuff goes in std.c.${OS}.${OS} module std.c.unix.unix; /* This module imports the unix module for the currect target system. Currently, all targets can be handled with the autoconf'd version. */ import gcc.configunix; An exception is std.c.linux.linux which also imports some extra modules to stay backwards compatible with the module from DMD... --anders
Sep 21 2006
Anders F Björklund wrote:Derek Parnell wrote:Old compiler doesn't like those "static import" statements.
Sorry. I didn't know that. I haven't used GDC. I guess it will catch up soon.
According to the changelog it was introduced in DMD 0.163, while GDC 0.19 is currently DMD 0.162 - so it was close :-)
FWIW, the GDC source available via SVN is more up to date. I believe it's in synch with DMD 166. Sean
Sep 21 2006
Sean Kelly wrote:According to the changelog it was introduced in DMD 0.163, while GDC 0.19 is currently DMD 0.162 - so it was close :-)
FWIW, the GDC source available via SVN is more up to date. I believe it's in synch with DMD 166.
Cool, haven't really payed attention while trying to wxD out... Maybe we need nightly builds of GDC ? :-) I might do an interim release for Mac and Win, since I had planned to upgrade GCC anyway. --anders
Sep 21 2006
Derek Parnell wrote:Release 3.03 (build #2371) is now available 20 Sep 2006 URL: http://www.dsource.org/projects/build Change Log Summary (...)
Thank you, this is great, now I can use the new import syntax with build! The changes to the -od switch will make generating documentation with build quite effortless.
Sep 21 2006
Thanks, Derek! I've been waiting for this update. :D -JJR On Thu, 21 Sep 2006 01:17:35 -0700, Derek Parnell = <derek nomail.afraid.org> wrote:Release 3.03 (build #2371) is now available 20 Sep 2006 URL: http://www.dsource.org/projects/build Change Log Summary ------------------ ** FIX: Ticket #33 For unix editions, 'pthread' is now a default libra=
'-g' is used instead of '/co' to generate debug data, '-o ' is used =
instead of '-of', and spaces are placed in between consecutive '-L' switches. =
Note that if you want to place library files on the command line, you still=
have to include the '.a' file suffix. ** FIX: Ticket #34 For GNU, 'gdc' is the default linker, the library =
switch is now '-L-l', 'gphobos' is used instead of 'phobos', and the makefile=
includes the '-version=3DBuildVerbose' switch. ** FIX: Ticket #35 It is now possible to use relative paths on the =
command line files. ** FIX If you use the '-od' switch then the '-op' switch is not used. ** CHG: Ticket #36 The default name for the executable is now 'bud', b=
you can change it to anything you like. ** CHG: Ticket #37 Changed defaults to support GDC out-of-the-box. ** ENH The utility now also checks for a '[darwin]' section in the Configuration File. ** ENH The utility now supports the import syntax that was introduced =
with DMD v0.163. ** ENH The distribution now includes example configuration files for a=
number of environments. ** ENH The Configuration File now supports a new FINAL command that =
allows you to run jobs after a successful build. There are a number of example configuration files now distributed with=
the source. Please select the one closest to your own environment and twea=
as needed if you are having problems with the 'default' settings. If you =
can't get it to run using the compiler/linker/librarian of your choice after=
trying the configuration files, please let me know. Note that the distributed Windows executable files have been compresse=
with UPX. This shouldn't be an issue but I thought you might like to =
know. _________________
-- = Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
Sep 21 2006
Derek Parnell wrote:Release 3.03 (build #2371) is now available 20 Sep 2006 URL: http://www.dsource.org/projects/build Change Log Summary ------------------ ** FIX: Ticket #33 For unix editions, 'pthread' is now a default library, '-g' is used instead of '/co' to generate debug data, '-o ' is used instead of '-of', and spaces are placed in between consecutive '-L' switches. Note that if you want to place library files on the command line, you still have to include the '.a' file suffix. ** FIX: Ticket #34 For GNU, 'gdc' is the default linker, the library switch is now '-L-l', 'gphobos' is used instead of 'phobos', and the makefile includes the '-version=BuildVerbose' switch. ** FIX: Ticket #35 It is now possible to use relative paths on the command line files. ** FIX If you use the '-od' switch then the '-op' switch is not used. ** CHG: Ticket #36 The default name for the executable is now 'bud', but you can change it to anything you like. ** CHG: Ticket #37 Changed defaults to support GDC out-of-the-box. ** ENH The utility now also checks for a '[darwin]' section in the Configuration File. ** ENH The utility now supports the import syntax that was introduced with DMD v0.163. ** ENH The distribution now includes example configuration files for a number of environments. ** ENH The Configuration File now supports a new FINAL command that allows you to run jobs after a successful build. There are a number of example configuration files now distributed with the source. Please select the one closest to your own environment and tweak as needed if you are having problems with the 'default' settings. If you can't get it to run using the compiler/linker/librarian of your choice after trying the configuration files, please let me know. Note that the distributed Windows executable files have been compressed with UPX. This shouldn't be an issue but I thought you might like to know. _________________
Sorry to say, 3.03 is messed up for Windows builds. In the linker .rsp file, the libraries are placed on separate lines. Optlink wants all the libraries on 1 line with '+' between the lib names.
Sep 21 2006
On Thu, 21 Sep 2006 13:24:33 -0400, dickl wrote:Sorry to say, 3.03 is messed up for Windows builds.
Damn! So am I! I forgot to retest this.In the linker .rsp file, the libraries are placed on separate lines. Optlink wants all the libraries on 1 line with '+' between the lib names.
A quick fix would be to replace lines 1079-1082 in build.d with ... lCommandLine ~= vLinkLibSwitch ~ util.str.enquote(lLib) ~ vArgFileDelim; } } lCommandLine ~= "\n"; I think this will work but I haven't tested it yet. I'll do that later today. -- Derek Parnell Melbourne, Australia "Down with mediocrity!"
Sep 21 2006
That won't quite work, it leaves a trailing '+' which the linker doesn't
like. The change needs to be something like this
if (lLibraryFiles.length > 0)
{
foreach( char[] lLib; lLibraryFiles)
{
lLib = std.path.addExt(lLib, vLibExtention);
lCommandLine ~= vLinkLibSwitch ~ util.str.enquote(lLib) ~
vArgFileDelim;
}
lCommandLine.length = lCommandLine.length -1;
}
lCommandLine ~= "\n";
Derek Parnell wrote:
On Thu, 21 Sep 2006 13:24:33 -0400, dickl wrote:
Sorry to say, 3.03 is messed up for Windows builds.
Damn! So am I! I forgot to retest this.
In the linker .rsp file, the libraries are placed on separate lines.
Optlink wants all the libraries on 1 line with '+' between the lib names.
A quick fix would be to replace lines 1079-1082 in build.d with ...
lCommandLine ~= vLinkLibSwitch ~
util.str.enquote(lLib) ~ vArgFileDelim;
}
}
lCommandLine ~= "\n";
I think this will work but I haven't tested it yet. I'll do that later
today.
Sep 21 2006
On Thu, 21 Sep 2006 22:17:57 -0400, dickl wrote:That won't quite work, it leaves a trailing '+' which the linker doesn't like.
LOL. Yeah, I found that out in my testing. Here is the code I ended up using.... lLibraryFiles = vDefaultLibs ~ lLibraryFiles; if (lLibraryFiles.length > 0) { foreach( int i, char[] lLib; lLibraryFiles) { lLib = std.path.addExt(lLib, vLibExtention); if (i > 0) lCommandLine ~= vArgFileDelim; lCommandLine ~= vLinkLibSwitch ~ util.str.enquote(lLib); } } lCommandLine ~= "\n"; This caters for situations where the 'vArgFileDelim' is longer than one character. -- Derek (skype: derek.j.parnell) Melbourne, Australia "Down with mediocrity!" 22/09/2006 2:18:58 PM
Sep 21 2006
I forgot to mention & since you are fixing things... the same problem occurs with the .RES file, a '+' is on there after the file and before the linker flags. The linker doesn't seem to care but it really shouldn't be there. Derek Parnell wrote:On Thu, 21 Sep 2006 22:17:57 -0400, dickl wrote:That won't quite work, it leaves a trailing '+' which the linker doesn't like.
LOL. Yeah, I found that out in my testing. Here is the code I ended up using.... lLibraryFiles = vDefaultLibs ~ lLibraryFiles; if (lLibraryFiles.length > 0) { foreach( int i, char[] lLib; lLibraryFiles) { lLib = std.path.addExt(lLib, vLibExtention); if (i > 0) lCommandLine ~= vArgFileDelim; lCommandLine ~= vLinkLibSwitch ~ util.str.enquote(lLib); } } lCommandLine ~= "\n"; This caters for situations where the 'vArgFileDelim' is longer than one character.
Sep 22 2006
Can someone please send me the windows binary of fixed version of build ? I cannot compile my projects :-( Thanks ns Derek Parnell wrote:On Thu, 21 Sep 2006 22:17:57 -0400, dickl wrote:That won't quite work, it leaves a trailing '+' which the linker doesn't like.
LOL. Yeah, I found that out in my testing. Here is the code I ended up using.... lLibraryFiles = vDefaultLibs ~ lLibraryFiles; if (lLibraryFiles.length > 0) { foreach( int i, char[] lLib; lLibraryFiles) { lLib = std.path.addExt(lLib, vLibExtention); if (i > 0) lCommandLine ~= vArgFileDelim; lCommandLine ~= vLinkLibSwitch ~ util.str.enquote(lLib); } } lCommandLine ~= "\n"; This caters for situations where the 'vArgFileDelim' is longer than one character.
Oct 10 2006
On Tue, 10 Oct 2006 14:33:11 -0400, ns wrote:Can someone please send me the windows binary of fixed version of build ? I cannot compile my projects :-(
I was going to release 3.04 yesterday but dsource was down for me. I just checked and its up again so I'll make a release in the next few hours. -- Derek Parnell Melbourne, Australia "Down with mediocrity!"
Oct 10 2006
In util/fdt.d, the section:
version(Windows) static import opsys = std.c.windows.windows;
version(linux) static import opsys = std.c.linux.linux;
version(darwin) static import opsys = std.c.darwin.darwin;
version(Unix) static import opsys = std.c.unix;
version(Posix) static import std.string;
needs to become:
version(Windows) static import opsys = std.c.windows.windows;
else version(linux) static import opsys = std.c.linux.linux;
else version(darwin) static import opsys = std.c.darwin.darwin;
else version(Unix) static import opsys = std.c.unix;
else version(Posix) static import std.string;
This is because the different platforms aren't mutually exclusive, so
it'll end up importing two modules as opsys, oops :(
- Gregor Richards
PS: With that change, works fine with GDC-svn
Sep 21 2006
On Thu, 21 Sep 2006 11:44:08 -0700, Gregor Richards wrote:In util/fdt.d, the section: version(Windows) static import opsys = std.c.windows.windows; version(linux) static import opsys = std.c.linux.linux; version(darwin) static import opsys = std.c.darwin.darwin; version(Unix) static import opsys = std.c.unix; version(Posix) static import std.string; needs to become: version(Windows) static import opsys = std.c.windows.windows; else version(linux) static import opsys = std.c.linux.linux; else version(darwin) static import opsys = std.c.darwin.darwin; else version(Unix) static import opsys = std.c.unix; else version(Posix) static import std.string; This is because the different platforms aren't mutually exclusive, so it'll end up importing two modules as opsys, oops :(
Hmmm...I'll have to check this out a bit more. They ought to be mutually exclusive, IMHO. -- Derek Parnell Melbourne, Australia "Down with mediocrity!"
Sep 21 2006
Derek Parnell wrote:On Thu, 21 Sep 2006 11:44:08 -0700, Gregor Richards wrote:In util/fdt.d, the section: version(Windows) static import opsys = std.c.windows.windows; version(linux) static import opsys = std.c.linux.linux; version(darwin) static import opsys = std.c.darwin.darwin; version(Unix) static import opsys = std.c.unix; version(Posix) static import std.string; needs to become: version(Windows) static import opsys = std.c.windows.windows; else version(linux) static import opsys = std.c.linux.linux; else version(darwin) static import opsys = std.c.darwin.darwin; else version(Unix) static import opsys = std.c.unix; else version(Posix) static import std.string; This is because the different platforms aren't mutually exclusive, so it'll end up importing two modules as opsys, oops :(
Hmmm...I'll have to check this out a bit more. They ought to be mutually exclusive, IMHO.
GNU/Linux on gdc is version(linux), version(Unix) and version(Posix). Mac OS X is version(darwin), version(Unix) and version(Posix). - Gregor Richards
Sep 21 2006
Gregor Richards wrote:GNU/Linux on gdc is version(linux), version(Unix) and version(Posix). Mac OS X is version(darwin), version(Unix) and version(Posix). - Gregor Richards
Hmm, what does Mac OS X have to do with darwin and Unix?
Sep 21 2006
Hasan Aljudy wrote:Gregor Richards wrote:GNU/Linux on gdc is version(linux), version(Unix) and version(Posix). Mac OS X is version(darwin), version(Unix) and version(Posix). - Gregor Richards
Hmm, what does Mac OS X have to do with darwin and Unix?
... Mac OS X is Darwin. Darwin is Unix. - Gregor Richards PS: Actually, it would be reasonable to remove version(Unix) from GNU/Linux, as GNU's Not Unix, but Mac OS X most certainly is.
Sep 21 2006
Gregor Richards wrote:Hasan Aljudy wrote:Gregor Richards wrote:GNU/Linux on gdc is version(linux), version(Unix) and version(Posix). Mac OS X is version(darwin), version(Unix) and version(Posix). - Gregor Richards
Hmm, what does Mac OS X have to do with darwin and Unix?
... Mac OS X is Darwin. Darwin is Unix.
Ah! Really? I thought darwin was just another linux distribution! hahaha!- Gregor Richards PS: Actually, it would be reasonable to remove version(Unix) from GNU/Linux, as GNU's Not Unix, but Mac OS X most certainly is.
OK, is it "Darwin is Unix" or is it "Darwin is *a* Unix"? Sorry, I don't understand the Unix/Linux/GNU world. <g>
Sep 21 2006
Hasan Aljudy wrote:Gregor Richards wrote:Hasan Aljudy wrote:Gregor Richards wrote:GNU/Linux on gdc is version(linux), version(Unix) and version(Posix). Mac OS X is version(darwin), version(Unix) and version(Posix). - Gregor Richards
Hmm, what does Mac OS X have to do with darwin and Unix?
... Mac OS X is Darwin. Darwin is Unix.
Ah! Really? I thought darwin was just another linux distribution! hahaha!- Gregor Richards PS: Actually, it would be reasonable to remove version(Unix) from GNU/Linux, as GNU's Not Unix, but Mac OS X most certainly is.
OK, is it "Darwin is Unix" or is it "Darwin is *a* Unix"? Sorry, I don't understand the Unix/Linux/GNU world. <g>
Unix is an entire tree of operating systems, so it would be reasonable to say "Darwin is *a* Unix". Darwin is a Unix because, if you trace back its lineage, it has its roots in the original Unixes (SysVR4, BSD, etc). And the reason that linux is marked as a Unix is being linux works very much like a Unix, even though it's not actually based in code on Unix at all. So while it's technically not a Unix, it acts like one. More so than Mac OS X, actually ;) - Gregor Richards
Sep 21 2006
Gregor Richards wrote:And the reason that linux is marked as a Unix is being linux works very much like a Unix, even though it's not actually based in code on Unix at all. So while it's technically not a Unix, it acts like one. More so than Mac OS X, actually ;)
And if a Linux-user even considered mentioning Linux and Unix (I mean *nix :) in the same sentence, SCO would immediately sue them all for infringing their copyrights/trademarks/patents/etc. BTW, the patent trolls are again trying to ram through software patents here in EU. It seems they'll never stop until they get that stupid law. -- Jari-Matti
Sep 22 2006
Derek, this build does not have the _bn fix? Does it? I tried it and it still does not increase the build count. "Derek Parnell" wrote in message news:1chqqg0sml1xa.lnznj8tffy3u$.dlg 40tude.net...Release 3.03 (build #2371) is now available 20 Sep 2006 URL: http://www.dsource.org/projects/build Change Log Summary ------------------ ** FIX: Ticket #33 For unix editions, 'pthread' is now a default library, '-g' is used instead of '/co' to generate debug data, '-o ' is used instead of '-of', and spaces are placed in between consecutive '-L' switches. Note that if you want to place library files on the command line, you still have to include the '.a' file suffix. ** FIX: Ticket #34 For GNU, 'gdc' is the default linker, the library switch is now '-L-l', 'gphobos' is used instead of 'phobos', and the makefile includes the '-version=BuildVerbose' switch. ** FIX: Ticket #35 It is now possible to use relative paths on the command line files. ** FIX If you use the '-od' switch then the '-op' switch is not used. ** CHG: Ticket #36 The default name for the executable is now 'bud', but you can change it to anything you like. ** CHG: Ticket #37 Changed defaults to support GDC out-of-the-box. ** ENH The utility now also checks for a '[darwin]' section in the Configuration File. ** ENH The utility now supports the import syntax that was introduced with DMD v0.163. ** ENH The distribution now includes example configuration files for a number of environments. ** ENH The Configuration File now supports a new FINAL command that allows you to run jobs after a successful build. There are a number of example configuration files now distributed with the source. Please select the one closest to your own environment and tweak as needed if you are having problems with the 'default' settings. If you can't get it to run using the compiler/linker/librarian of your choice after trying the configuration files, please let me know. Note that the distributed Windows executable files have been compressed with UPX. This shouldn't be an issue but I thought you might like to know. _________________ -- Derek (skype: derek.j.parnell) Melbourne, Australia "Down with mediocrity!" 21/09/2006 6:12:20 PM
Sep 27 2006
On Wed, 27 Sep 2006 23:52:43 -0400, jicman wrote:Derek, this build does not have the _bn fix? Does it? I tried it and it still does not increase the build count.
Damn!? It doesn't? I'll go and check 'cos it was supposed to. -- Derek (skype: derek.j.parnell) Melbourne, Australia "Down with mediocrity!" 28/09/2006 3:49:52 PM
Sep 27 2006









=?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> 