Jump to page: 1 2 3
Thread overview
Build v3.03 released
Sep 21, 2006
Derek Parnell
Sep 21, 2006
Derek Parnell
Sep 21, 2006
Sean Kelly
Sep 21, 2006
Lutger
Sep 21, 2006
John Reimer
Sep 21, 2006
dickl
Sep 21, 2006
Derek Parnell
Sep 22, 2006
dickl
Sep 22, 2006
Derek Parnell
Sep 22, 2006
dickl
Re: Build v3.03 released - win binary of fixed version please
Oct 10, 2006
ns
Oct 10, 2006
Derek Parnell
Sep 21, 2006
Gregor Richards
Sep 21, 2006
Derek Parnell
Sep 21, 2006
Gregor Richards
Sep 21, 2006
Hasan Aljudy
Sep 22, 2006
Gregor Richards
Sep 22, 2006
Hasan Aljudy
Sep 22, 2006
Gregor Richards
Sep 28, 2006
jicman
Sep 28, 2006
Derek Parnell
September 21, 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
September 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
September 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!"
September 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.
September 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/Version

>>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. 

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
September 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
September 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
September 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 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.
>
> _________________



-- 
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
September 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.
September 21, 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
« First   ‹ Prev
1 2 3