www.digitalmars.com         C & C++   DMDScript  

D.gnu - Could we have support for D in upcomming Fedora's gcc RPM?

reply Dejan Lekic <dejan.lekic gmail.com> writes:
Is it possible to have D support built-in in the uppcomming Fedora 7? If so
how? Can I help somehow? I would be very happy to see D in the new Fedora
distribution... However I fear it is too late because it is in the
feature-freeze state now, so I hope it would be possible to add it later on, or
so.
I guess Anders built some gcc (with D) RPMs in the past so he would be the
right person to ask. 
Anders please reply. :)
May 08 2007
parent reply =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> writes:
Dejan Lekic wrote:

 Is it possible to have D support built-in in the uppcomming Fedora 7?

You mean like included in the main Fedora repository ? It could probably go in "Extras", and since that is being merged with "Core" now it should be as good as having it "built-in" to the distro, i.e. yum install gdc When I post the next version at gdcgnu, I'll submit it to Fedora too.
 If so how? Can I help somehow? I would be very happy to see D in the
 new Fedora distribution... However I fear it is too late because it
 is in the feature-freeze state now, so I hope it would be possible to
 add it later on, or so.

The packages have been split lately, to allow for replacing Phobos with Tango. So that put something of a stick in the wheel, but I haven't been able to build a D compiler using the system GCC compiler sources. For Mac I use Apple's GCC and for Win I use MinGW's GCC, but so far it hasn't been worthwhile to build an Ubuntu-specific or Fedora-specific version of GDC for GNU/Linux. Much easier to use a vanilla GCC build ?
 I guess Anders built some gcc (with D) RPMs in the past so he would
 be the right person to ask. Anders please reply. :)

I have two separate RPMs for Fedora: one .src.rpm and one .nosrc.rpm. The first uses the source code, to compile a new GCC with D support. The second just repackages David's binaries from the dgcc downloads. I don't think the second variant matches Fedora policies (no source), but the first one *might* be adopted to their packaging guidelines. For now, my GDC packaging efforts have been cut back to providing installers for the official inaries that David already provides.... And that RPM is hosted at the http://gdcgnu.sourceforge.net/ project. Currently it's a bit old since my build machine wasn't up to it, but I hope to get it running with "mock" so I can build for all Fedoras. --anders
May 09 2007
parent reply Dejan Lekic <dejan.lekic gmail.com> writes:
Anders, what I would like to have is a replacement of the Fedora's GCC RPM with
D language enabled. It would probably be in the gcc-d RPM package...
I dared not to build GCC manually, and replace system's GCC with new one - have
you tried it? - If the system is still stable I will most likely do that, and
when I have enough time I'll go into hacking the original, Fedora's SPEC file
and include support for making a GCC-D package... I have already tried it, but
did not put lot of effort in it - there are ~50 patches in that RPM and some D
patches collide with those in Fedora's GCC package...
Sure, if I succeed I'll send a post here. :D
Cheers!
May 10 2007
parent reply =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> writes:
Dejan Lekic wrote:

 Anders, what I would like to have is a replacement of the Fedora's
 GCC RPM with D language enabled. It would probably be in the gcc-d
 RPM package...

I had my packages build two: one gdc that was self-contained, and one gcc-d package that matched the gcc-c++ in that it added to the gcc RPM. (same software, just different packaging, between the two subpackages) I usually keep my system "gcc" package installed either way, then maybe mix it with a "gcc-d" built for the same version of GCC and hope for the best. (This is what we used to do for Mac OS X, before it was supported) Or I install the offical "gdc" version, usually helps when bugreporting.
 I dared not to build GCC manually, and replace system's GCC with new
 one - have you tried it? - If the system is still stable I will most
 likely do that, and when I have enough time I'll go into hacking the
 original, Fedora's SPEC file and include support for making a GCC-D
 package... I have already tried it, but did not put lot of effort in
 it - there are ~50 patches in that RPM and some D patches collide
 with those in Fedora's GCC package...

Yes, that's why I didn't use the Fedora-patched system compiler either. The Ubuntu system compiler is even more fun, think I counted 10k lines of scripts and patches in the package manager additions for GCC there.
 Sure, if I succeed I'll send a post here. :D Cheers!

My old complex and evolutionized RPM spec: http://www.algonet.se/~afb/d/gdc.spec (builds a complete GCC) The new (less complex) RPM spec lives at: http://gdcgnu.sourceforge.net/SPECS/gdc.spec (only does GDC) --anders
May 10 2007
parent Neal Becker <ndbecker2 gmail.com> writes:
Anders F Björklund wrote:

 Dejan Lekic wrote:
 
 Anders, what I would like to have is a replacement of the Fedora's
 GCC RPM with D language enabled. It would probably be in the gcc-d
 RPM package...

I had my packages build two: one gdc that was self-contained, and one gcc-d package that matched the gcc-c++ in that it added to the gcc RPM. (same software, just different packaging, between the two subpackages) I usually keep my system "gcc" package installed either way, then maybe mix it with a "gcc-d" built for the same version of GCC and hope for the best. (This is what we used to do for Mac OS X, before it was supported) Or I install the offical "gdc" version, usually helps when bugreporting.
 I dared not to build GCC manually, and replace system's GCC with new
 one - have you tried it? - If the system is still stable I will most
 likely do that, and when I have enough time I'll go into hacking the
 original, Fedora's SPEC file and include support for making a GCC-D
 package... I have already tried it, but did not put lot of effort in
 it - there are ~50 patches in that RPM and some D patches collide
 with those in Fedora's GCC package...

Yes, that's why I didn't use the Fedora-patched system compiler either. The Ubuntu system compiler is even more fun, think I counted 10k lines of scripts and patches in the package manager additions for GCC there.
 Sure, if I succeed I'll send a post here. :D Cheers!

My old complex and evolutionized RPM spec: http://www.algonet.se/~afb/d/gdc.spec (builds a complete GCC) The new (less complex) RPM spec lives at: http://gdcgnu.sourceforge.net/SPECS/gdc.spec (only does GDC) --anders

I'm really looking forward to loosing this: --disable-shared. I want to build python extensions with PyD, but that can't happen without the ability to build shared objs, which need to be linked with shared D core libs (at least, on x86_64).
May 11 2007