Jump to page: 1 2 3
Thread overview
GDC with later DMD's
Apr 28, 2006
Gregor Richards
Apr 28, 2006
Mathieu Chouinard
Apr 29, 2006
Gregor Richards
Apr 29, 2006
Gregor Richards
Apr 29, 2006
Gregor Richards
Apr 29, 2006
Gregor Richards
Apr 29, 2006
Gabe McArthur
Apr 29, 2006
Gregor Richards
Apr 30, 2006
Gregor Richards
Apr 30, 2006
Gregor Richards
May 02, 2006
Gregor Richards
May 02, 2006
Gregor Richards
May 03, 2006
Gregor Richards
April 28, 2006
GDC 0.17 is unfortunately out of date with respect to DMD.  I've been hacking at it and got a working GDC based on DMD 0.154, simply by incrementally going version-by-version, repatching it, and making sure it still compiles.  It seems to be working.  Most importantly, it compiles much of the stuff that GDC 0.17 doesn't due to language changes.

I don't want to fork or anything ... if the changes are relatively working, it'd be nice to get them into GDC proper.

Also, I fixed a strange bug that was annoying me.  It seems that GDC 0.17 doesn't compile std.c.linux.linux in, even on a GNU/Linux system. The function is replicated by std.c.unix.unix, but unfortunately if a program does:

version (linux) { std.c.linux.linux... }

it would fail.  I dummied down std.c.linux.linux to not conflict with the other built-in things (and to import them of course), and it seems to work - at least I can finally build 'build' ^^


Another issue - libgphobos.a.  I don't quite understand why GDC 0.17 only makes a .a.  It makes binaries quite big.  I modified phobos' auto* stuff to use libtool and make libgphobos.so.0.  That too seems to work.

If anybody wants a copy, I can get it to you.  David: What's your status?  Are you still maintaining GDC?  Do you have an accessible public repository?  It'd be nice if I could make changes without feeling like I was working against you :(

 - Gregor Richards
April 28, 2006
Gregor Richards wrote:

> GDC 0.17 is unfortunately out of date with respect to DMD.  I've been
> hacking at it and got a working GDC based on DMD 0.154, simply by
> incrementally going version-by-version, repatching it, and making
> sure it still compiles.  It seems to be working.  Most importantly,
> it compiles much of the stuff that GDC 0.17 doesn't due to language
> changes.

I think Brad did something similar, so you might want to check with him.

And I've put all the DMD diffs up at http://www.algonet.se/~afb/d/diffs/

> Another issue - libgphobos.a.  I don't quite understand why GDC 0.17 only makes a .a.  It makes binaries quite big.  I modified phobos' auto* stuff to use libtool and make libgphobos.so.0.  That too seems to work.

DMD does it this way too (libphobos.a), for the moment it's a good way to make sure the programs run since Phobos is in a constant state of flux... Eventually I'm sure something like "libstdc++" will emerge ?
(hopefully something less of a DLL Hell then what that one is, but)

> If anybody wants a copy, I can get it to you.

I'm interested, email me where it can be found.

--anders
April 28, 2006
Gregor Richards wrote:

> GDC 0.17 is unfortunately out of date with respect to DMD.  I've been hacking at it and got a working GDC based on DMD 0.154, simply by incrementally going version-by-version, repatching it, and making sure it still compiles.  It seems to be working.  Most importantly, it compiles much of the stuff that GDC 0.17 doesn't due to language changes.
> 
> I don't want to fork or anything ... if the changes are relatively working, it'd be nice to get them into GDC proper.
> 
> Also, I fixed a strange bug that was annoying me.  It seems that GDC 0.17 doesn't compile std.c.linux.linux in, even on a GNU/Linux system. The function is replicated by std.c.unix.unix, but unfortunately if a program does:
> 
> version (linux) { std.c.linux.linux... }
> 
> it would fail.  I dummied down std.c.linux.linux to not conflict with the other built-in things (and to import them of course), and it seems to work - at least I can finally build 'build' ^^
> 
> 
> Another issue - libgphobos.a.  I don't quite understand why GDC 0.17 only makes a .a.  It makes binaries quite big.  I modified phobos' auto* stuff to use libtool and make libgphobos.so.0.  That too seems to work.
> 
> If anybody wants a copy, I can get it to you.  David: What's your status?  Are you still maintaining GDC?  Do you have an accessible public repository?  It'd be nice if I could make changes without feeling like I was working against you :(
> 
>   - Gregor Richards
I'm also interested ... I'm currently trying to get it
working with gcc 4.1.0 ...
Mathieu
April 29, 2006
I'm trying to upload my patch to the D Journal, the owner gave me access but hasn't quite hacked it up so I can upload it properly.  If anybody wants a direct mail of it, email me at Richards@codu.org

Also, I'm working on 0.156, should have that soon.

 - Gregor Richards
April 29, 2006
Gregor Richards wrote:
> I'm trying to upload my patch to the D Journal, the owner gave me access but hasn't quite hacked it up so I can upload it properly.  If anybody wants a direct mail of it, email me at Richards@codu.org
> 
> Also, I'm working on 0.156, should have that soon.
> 
>  - Gregor Richards

void[] on IRC gave me some space to upload it:

http://www.dprogramming.com/~gregorr/gdc.php

 - Gregor Richards
April 29, 2006
Gregor Richards wrote:

> void[] on IRC gave me some space to upload it:
> http://www.dprogramming.com/~gregorr/gdc.php

Thanks, got it... Will look at it later.

--anders
April 29, 2006
Gregor Richards wrote:

> GDC 0.17 is unfortunately out of date with respect to DMD.  I've been hacking at it and got a working GDC based on DMD 0.154, simply by incrementally going version-by-version, repatching it, and making sure it still compiles.  It seems to be working.  Most importantly, it compiles much of the stuff that GDC 0.17 doesn't due to language changes.

Okay, I got your updated version ("gdc-Ego") and unpacked it.

You didn't say if you had been merging with what Brad did for
"gdc-0.18-alpha1", so I will initially assume that you didn't.

So now we're looking at integrating:
gdc-0.17        (DMD 0.140)
gdc-0.18-alpha1 (DMD 0.148)
gdc-Ego         (DMD 0.156)

Plus whatever changes that David has done for the gdc 0.18
release already, such as for Linux PowerPC or 64-bit support.

Will run some diffs and then try to compile this for the Mac.

--anders

PS.
The only differences between DMD 0.155 and 0.156 are prints.
(some debugging printfs were not commented out, expression.c)
April 29, 2006
Anders F Björklund wrote:
> Gregor Richards wrote:
> 
>> GDC 0.17 is unfortunately out of date with respect to DMD.  I've been hacking at it and got a working GDC based on DMD 0.154, simply by incrementally going version-by-version, repatching it, and making sure it still compiles.  It seems to be working.  Most importantly, it compiles much of the stuff that GDC 0.17 doesn't due to language changes.
> 
> 
> Okay, I got your updated version ("gdc-Ego") and unpacked it.
> 
> You didn't say if you had been merging with what Brad did for
> "gdc-0.18-alpha1", so I will initially assume that you didn't.

That would be the wrong assumption, actually I did :)

> 
> So now we're looking at integrating:
> gdc-0.17        (DMD 0.140)
> gdc-0.18-alpha1 (DMD 0.148)
> gdc-Ego         (DMD 0.156)

gdc-Ego is the combination of 0.17, 0.18-alpha1 and DMD-0.156

> 
> Plus whatever changes that David has done for the gdc 0.18
> release already, such as for Linux PowerPC or 64-bit support.

Assuming he comes out of hibernation :(

> 
> Will run some diffs and then try to compile this for the Mac.

That'd be awesome.

> 
> --anders
> 
> PS.
> The only differences between DMD 0.155 and 0.156 are prints.
> (some debugging printfs were not commented out, expression.c)

Yeah, I know, but from 0.154->0.155 was huge.

 - Gregor Richards
April 29, 2006
Gregor Richards wrote:

>> You didn't say if you had been merging with what Brad did for
>> "gdc-0.18-alpha1", so I will initially assume that you didn't.
> 
> That would be the wrong assumption, actually I did :)

Excellent, I had reorganized it to match gdc-0.17, so I hadn't
run the diffs yet. All good then, we should be all synched :-)

> gdc-Ego is the combination of 0.17, 0.18-alpha1 and DMD-0.156

Great, would it be possible to reorganize it to match gdc-0.17,
and perhaps rename it to "0.18-alpha2" or something similar ?

>> Plus whatever changes that David has done for the gdc 0.18
>> release already, such as for Linux PowerPC or 64-bit support.
> 
> Assuming he comes out of hibernation :(

If he doesn't, we just have to ignore those two fringe targets...
I don't see anything wrong with us releasing a gdc 0.18 anyway ?

>> The only differences between DMD 0.155 and 0.156 are prints.
>> (some debugging printfs were not commented out, expression.c)
> 
> Yeah, I know, but from 0.154->0.155 was huge.

Yup, http://www.algonet.se/~afb/d/diffs/dmd-154-to-155-src.diff.gz
Just thought I'd mention the 156, since there was no "D Change Log"

--anders
April 29, 2006
Anders F Björklund wrote:
> Gregor Richards wrote:
> 
>> gdc-Ego is the combination of 0.17, 0.18-alpha1 and DMD-0.156
> 
> Great, would it be possible to reorganize it to match gdc-0.17,
> and perhaps rename it to "0.18-alpha2" or something similar ?

Probably a good idea.

Though I don't like that the version numbering scheme of GDC has no connection to the DMD frontend it uses ... guess that's just me :)

The reason I was organizing it like this is it keeps the middle IR-code stuff separate from the frontend stuff, but since that's not how it's compiled I guess that's not really a good choice X-P

>> Assuming he comes out of hibernation :(
> 
> 
> If he doesn't, we just have to ignore those two fringe targets...
> I don't see anything wrong with us releasing a gdc 0.18 anyway ?

Well, I've e-mailed him, hope to get a response one way or the other.

 - Gregor Richards
« First   ‹ Prev
1 2 3