www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - D2 Library Porters

reply "Iain Buclaw" <ibuclaw ubuntu.com> writes:
Hi,

I'm going to be pushing gdc-4.8 package into debian this weekend 
(give about a fortnight for it to land in sid) - is anyone 
interested in porting Druntime / Phobos over to the architectures 
that Debian supports?  I can give anyone a quick crash course 
through building a cross compiler if they need it.

The challenge this summer is to get this list out of the red and 
into the green. :)

https://buildd.debian.org/status/package.php?p=gdc-4.6


Regards
Iain
Jul 03 2012
next sibling parent "nazriel" <nazriel6969 gmail.com> writes:
On Tuesday, 3 July 2012 at 10:12:39 UTC, Iain Buclaw wrote:
 Hi,

 I'm going to be pushing gdc-4.8 package into debian this 
 weekend (give about a fortnight for it to land in sid)
Sorry for interrupting. Just wanted to say: AWESOME!
Jul 03 2012
prev sibling next sibling parent d coder <dlang.coder gmail.com> writes:
 I'm going to be pushing gdc-4.8 package into debian this weekend (give
 about a fortnight for it to land in sid) - is anyone interested in porting
 Druntime / Phobos over to the architectures that Debian supports?  I can
 give anyone a quick crash course through building a cross compiler if they
 need it.
Hello Iain I do not know how much I would be able to achieve, but I can contribute a reasonable amount of time on this. I would need a crash course though. Let me know how to proceed. Regards - Puneet
Jul 03 2012
prev sibling next sibling parent reply "Jakob Bornecrantz" <wallbraker gmail.com> writes:
On Tuesday, 3 July 2012 at 10:12:39 UTC, Iain Buclaw wrote:
 Hi,

 I'm going to be pushing gdc-4.8 package into debian this 
 weekend (give about a fortnight for it to land in sid) - is 
 anyone interested in porting Druntime / Phobos over to the 
 architectures that Debian supports?  I can give anyone a quick 
 crash course through building a cross compiler if they need it.

 The challenge this summer is to get this list out of the red 
 and into the green. :)
Cool. Getting D into the mingw cross compiler is something I would very much like to see? Is that something you are working? Cheers, Jakob.
Jul 03 2012
parent reply Iain Buclaw <ibuclaw ubuntu.com> writes:
On 3 July 2012 11:55, Jakob Bornecrantz <wallbraker gmail.com> wrote:
 On Tuesday, 3 July 2012 at 10:12:39 UTC, Iain Buclaw wrote:
 Hi,

 I'm going to be pushing gdc-4.8 package into debian this weekend (give
 about a fortnight for it to land in sid) - is anyone interested in porting
 Druntime / Phobos over to the architectures that Debian supports?  I can
 give anyone a quick crash course through building a cross compiler if they
 need it.

 The challenge this summer is to get this list out of the red and into the
 green. :)
Cool. Getting D into the mingw cross compiler is something I would very much like to see? Is that something you are working? Cheers, Jakob.
I'm not working on it, no. There are quite a few alterations to binutls / gcc backend if I recall correctly that enable D2 runtime (notably thread-local storage) to function correctly on MinGW. These may block the ability to make a MinGW cross-compiler also. Regards -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0';
Jul 03 2012
parent "Jakob Bornecrantz" <wallbraker gmail.com> writes:
On Tuesday, 3 July 2012 at 11:43:04 UTC, Iain Buclaw wrote:
 On 3 July 2012 11:55, Jakob Bornecrantz <wallbraker gmail.com> 
 wrote:
 On Tuesday, 3 July 2012 at 10:12:39 UTC, Iain Buclaw wrote:
 Hi,

 I'm going to be pushing gdc-4.8 package into debian this 
 weekend (give
 about a fortnight for it to land in sid) - is anyone 
 interested in porting
 Druntime / Phobos over to the architectures that Debian 
 supports?  I can
 give anyone a quick crash course through building a cross 
 compiler if they
 need it.

 The challenge this summer is to get this list out of the red 
 and into the
 green. :)
Cool. Getting D into the mingw cross compiler is something I would very much like to see? Is that something you are working? Cheers, Jakob.
I'm not working on it, no.
Ah, shame :-/
 There are quite a few alterations to binutls / gcc backend if
 I recall correctly that enable D2 runtime (notably thread-local
 storage) to function correctly on MinGW. These
 may block the ability to make a MinGW cross-compiler also.
Okay. Cheers, Jakob.
Jul 03 2012
prev sibling next sibling parent Iain Buclaw <ibuclaw ubuntu.com> writes:
On 3 July 2012 11:26, d coder <dlang.coder gmail.com> wrote:
 I'm going to be pushing gdc-4.8 package into debian this weekend (give
 about a fortnight for it to land in sid) - is anyone interested in porting
 Druntime / Phobos over to the architectures that Debian supports?  I can
 give anyone a quick crash course through building a cross compiler if they
 need it.
Hello Iain I do not know how much I would be able to achieve, but I can contribute a reasonable amount of time on this. I would need a crash course though. Let me know how to proceed. Regards - Puneet
In a brief / rough description, essentially the art of cross-compiling is: 1) Obtain binutils sources for your current distribution (Debian has 2.22) Obtain gcc-core sources for the version you are wanting to build (ie: 4.7) 2) Configure binutils with --target=arm-linux-gnueabi. Build and install somewhere away from your system folders (eg: /usr/local, /opt, or /home may work) 3) Configure gcc-core with --target=arm-linux-gnueabi --enable-multilib --disable-libssp. Build and install in same location as binutils. Notes on configure options: --target is the target you want to compile for. The examples given are if compiling for armel, check the target system name as debian defines for the system you want to cross compile for. --enable-multilib allows multiarch settings (eg, it should enable both ARM and Thumb compilation on armel - but don't quote me on that! :) --disable-libssp disables the stack-smashing protection library. This is because apparently it doesn't build in cross-compiler toolchains. 4) If you manage to successfully compile and install the gcc cross-compiler. Obtain the gdc sources and install into gcc-core (I will tarball a copy up that includes the zlib sources too and post a link). Then rebuild gcc with the same options above above, but with --enable-languages=d included. 5) Report any gdc build errors as bugs. Try to fix any library build errors and send patches! \o/ I suspect there will be issues found where we can also push into upstream Phobos / Druntime which will help make life easier for architecture and platform porters. Any arch-specific implementations that are missing in Druntime, generally you will need to consult the libc sources for that architecture. You can either get glibc or elibc for that (Debian uses elibc). I'll be available on IRC later if you need any real-time assistance - I can forsee it as cross compilers are always ugly to get right :~) Regards -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0';
Jul 03 2012
prev sibling next sibling parent reply "akaz" <nemo utopia.com> writes:
On Tuesday, 3 July 2012 at 10:12:39 UTC, Iain Buclaw wrote:
 Hi,

 I'm going to be pushing gdc-4.8 package into debian this 
 weekend (give about a fortnight for it to land in sid) - is
Hi, I understand there will be no gdc-4.7 package, so this won't be available on Ubuntu 12.10 which (currently) seems to use the gcc 4.7.1 compiler, while proposing the gdc-4.6 package. Is this true? Any ideas about how this could be installed on Ubuntu 12.10? Should I drop Ubuntu in favor of Debian? Thanks
Jul 03 2012
next sibling parent Iain Buclaw <ibuclaw ubuntu.com> writes:
On 3 July 2012 13:00, akaz <nemo utopia.com> wrote:
 On Tuesday, 3 July 2012 at 10:12:39 UTC, Iain Buclaw wrote:
 Hi,

 I'm going to be pushing gdc-4.8 package into debian this weekend (give
 about a fortnight for it to land in sid) - is
Hi, I understand there will be no gdc-4.7 package, so this won't be available on Ubuntu 12.10 which (currently) seems to use the gcc 4.7.1 compiler, while proposing the gdc-4.6 package. Is this true? Any ideas about how this could be installed on Ubuntu 12.10? Should I drop Ubuntu in favor of Debian? Thanks
Whoops, typo. Meant 4.7 :-) 4.8 is currently in gcc-snapshot package, don't think there's any way to add gdc onto it. Sorry for any mix up. -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0';
Jul 03 2012
prev sibling parent reply Iain Buclaw <ibuclaw ubuntu.com> writes:
On 3 July 2012 13:29, Iain Buclaw <ibuclaw ubuntu.com> wrote:
 On 3 July 2012 13:00, akaz <nemo utopia.com> wrote:
 On Tuesday, 3 July 2012 at 10:12:39 UTC, Iain Buclaw wrote:
 Hi,

 I'm going to be pushing gdc-4.8 package into debian this weekend (give
 about a fortnight for it to land in sid) - is
Hi, I understand there will be no gdc-4.7 package, so this won't be available on Ubuntu 12.10 which (currently) seems to use the gcc 4.7.1 compiler, while proposing the gdc-4.6 package. Is this true? Any ideas about how this could be installed on Ubuntu 12.10? Should I drop Ubuntu in favor of Debian? Thanks
Whoops, typo. Meant 4.7 :-) 4.8 is currently in gcc-snapshot package, don't think there's any way to add gdc onto it. Sorry for any mix up.
Also, I say you should drop Ubuntu in favour of Debian. :o) Muahaha! Regards -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0';
Jul 03 2012
parent Wouter Verhelst <wouter grep.be> writes:
Iain Buclaw <ibuclaw ubuntu.com> writes:

 On 3 July 2012 13:29, Iain Buclaw <ibuclaw ubuntu.com> wrote:
 Also, I say you should drop Ubuntu in favour of Debian. :o)
ACK ;-) -- The volume of a pizza of thickness a and radius z can be described by the following formula: pi zz a
Jul 03 2012
prev sibling next sibling parent reply Jonathan M Davis <jmdavisProg gmx.com> writes:
On Tuesday, July 03, 2012 17:05:52 Iain Buclaw wrote:
 Also, I say you should drop Ubuntu in favour of Debian. :o)
No, no, no. Use Arch! ;) - Jonathan M Davis
Jul 03 2012
parent reply "F i L" <witte2008 gmail.com> writes:
On Tuesday, 3 July 2012 at 16:39:21 UTC, Jonathan M Davis wrote:
 On Tuesday, July 03, 2012 17:05:52 Iain Buclaw wrote:
 Also, I say you should drop Ubuntu in favour of Debian. :o)
No, no, no. Use Arch! ;) - Jonathan M Davis
Yes! foreach (linux; linuxDistros) { if (linux == user.favDistro && linux.name != "Arch Linux") { writeln("You obviously haven't tried Arch."); writeln("...or couldn't install it...."); } } ... sorry for the spam 8-O
Jul 03 2012
next sibling parent Jonathan M Davis <jmdavisProg gmx.com> writes:
On Tuesday, July 03, 2012 23:55:24 F i L wrote:
 On Tuesday, 3 July 2012 at 16:39:21 UTC, Jonathan M Davis wrote:
 On Tuesday, July 03, 2012 17:05:52 Iain Buclaw wrote:
 Also, I say you should drop Ubuntu in favour of Debian. :o)
No, no, no. Use Arch! ;) - Jonathan M Davis
Yes! foreach (linux; linuxDistros) { if (linux == user.favDistro && linux.name != "Arch Linux") { writeln("You obviously haven't tried Arch."); writeln("...or couldn't install it...."); } }
Or you could always try and get them to go with LFS. LOL. LFS is a great learning tool, but unless you want to be creating your own distro, it's not something that you're going to want to be using normally. I did finish CLFS and get quite a ways through CBLFS on my way to a usably system (if nothing else so thatt I could say that I'd done it), but I gave up when I could never get gtk to build. It was a good learning experience, but it would never make sense to use that as my main system for any real length of time, even if I had managed to finish it. - Jonathan M Davis
Jul 03 2012
prev sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Tue, Jul 03, 2012 at 11:55:24PM +0200, F i L wrote:
 On Tuesday, 3 July 2012 at 16:39:21 UTC, Jonathan M Davis wrote:
On Tuesday, July 03, 2012 17:05:52 Iain Buclaw wrote:
Also, I say you should drop Ubuntu in favour of Debian. :o)
+1.
No, no, no. Use Arch! ;)
-1. ;-)
 Yes!
[...] -1. ;-) T -- Amateurs built the Ark; professionals built the Titanic.
Jul 03 2012
prev sibling next sibling parent Iain Buclaw <ibuclaw ubuntu.com> writes:
On 3 July 2012 17:39, Jonathan M Davis <jmdavisProg gmx.com> wrote:
 On Tuesday, July 03, 2012 17:05:52 Iain Buclaw wrote:
 Also, I say you should drop Ubuntu in favour of Debian. :o)
No, no, no. Use Arch! ;) - Jonathan M Davis
Just so long as it isn't Gentoo. :o) Afterall, out of all of the linux distros out there, I would say that gentoo takes the least time to mess around... </sarcasm> -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0';
Jul 03 2012
prev sibling next sibling parent reply Jonathan M Davis <jmdavisProg gmx.com> writes:
On Wednesday, July 04, 2012 00:42:22 Iain Buclaw wrote:
 On 3 July 2012 17:39, Jonathan M Davis <jmdavisProg gmx.com> wrote:
 On Tuesday, July 03, 2012 17:05:52 Iain Buclaw wrote:
 Also, I say you should drop Ubuntu in favour of Debian. :o)
No, no, no. Use Arch! ;) - Jonathan M Davis
Just so long as it isn't Gentoo. :o) Afterall, out of all of the linux distros out there, I would say that gentoo takes the least time to mess around... </sarcasm>
LOL. I did use Gentoo for a while, but I got sick of things breaking on updates. Arch provides most of the benefits that Gentoo does but defaults to binary packages while letting you build them from source if you want to rather than making _everything_ be built from source. And surprisingly, Arch seems to do a better job of providing bleeding edge packages quickly than Gentoo does (at least for the packages that I care about). But Linux distros are one of those things that you can argue about endlessly. To each their own I guess. - Jonathan M Davis
Jul 03 2012
next sibling parent "Christian Manning" <cmanning999 gmail.com> writes:
On Wednesday, 4 July 2012 at 00:35:07 UTC, Jonathan M Davis wrote:
 On Wednesday, July 04, 2012 00:42:22 Iain Buclaw wrote:
 On 3 July 2012 17:39, Jonathan M Davis <jmdavisProg gmx.com> 
 wrote:
 On Tuesday, July 03, 2012 17:05:52 Iain Buclaw wrote:
 Also, I say you should drop Ubuntu in favour of Debian. :o)
No, no, no. Use Arch! ;) - Jonathan M Davis
Just so long as it isn't Gentoo. :o) Afterall, out of all of the linux distros out there, I would say that gentoo takes the least time to mess around... </sarcasm>
LOL. I did use Gentoo for a while, but I got sick of things breaking on updates. Arch provides most of the benefits that Gentoo does but defaults to binary packages while letting you build them from source if you want to rather than making _everything_ be built from source. And surprisingly, Arch seems to do a better job of providing bleeding edge packages quickly than Gentoo does (at least for the packages that I care about).
I found this to be a downside to Arch as there were a few occasions (even in the short time I used it) when breakage occurred, whereas the bleeding edge in Gentoo requires explicit "unmasking". Having been running ~amd64 (unstable) Gentoo for ~6 years on several of my systems, I've found it to be rock solid through all its neat little admin tools, if things don't get taken care of by themselves. Gentoo isn't just portage any more. Arch is little more than pacman.
 But Linux distros are one of those things that you can argue 
 about endlessly. To each their own I guess.
Indeed :)
Jul 03 2012
prev sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2012-07-04 02:34, Jonathan M Davis wrote:
 On Wednesday, July 04, 2012 00:42:22 Iain Buclaw wrote:
 Just so long as it isn't Gentoo. :o)

 Afterall, out of all of the linux distros out there, I would say that
 gentoo takes the least time to mess around... </sarcasm>
LOL. I did use Gentoo for a while, but I got sick of things breaking on updates. Arch provides most of the benefits that Gentoo does but defaults to binary packages while letting you build them from source if you want to rather than making _everything_ be built from source. And surprisingly, Arch seems to do a better job of providing bleeding edge packages quickly than Gentoo does (at least for the packages that I care about). But Linux distros are one of those things that you can argue about endlessly. To each their own I guess.
I agree. I tried LFS and then added portage, which basically made it into Gentoo. I general I like the idea about Gentoo but it just takes too much time. These days I'm staying away from Gentoo and using Ubuntu when I'm using Linux. But we all know that the best Unix-like system is Mac OS X :) -- /Jacob Carlborg
Jul 04 2012
parent reply Iain Buclaw <ibuclaw ubuntu.com> writes:
On 4 July 2012 11:52, Jacob Carlborg <doob me.com> wrote:
 On 2012-07-04 02:34, Jonathan M Davis wrote:
 On Wednesday, July 04, 2012 00:42:22 Iain Buclaw wrote:
 Just so long as it isn't Gentoo. :o)

 Afterall, out of all of the linux distros out there, I would say that
 gentoo takes the least time to mess around... </sarcasm>
LOL. I did use Gentoo for a while, but I got sick of things breaking on updates. Arch provides most of the benefits that Gentoo does but defaults to binary packages while letting you build them from source if you want to rather than making _everything_ be built from source. And surprisingly, Arch seems to do a better job of providing bleeding edge packages quickly than Gentoo does (at least for the packages that I care about). But Linux distros are one of those things that you can argue about endlessly. To each their own I guess.
I agree. I tried LFS and then added portage, which basically made it into Gentoo. I general I like the idea about Gentoo but it just takes too much time. These days I'm staying away from Gentoo and using Ubuntu when I'm using Linux. But we all know that the best Unix-like system is Mac OS X :)
Another platform that we need to start testing extensively with GDC. :-) Anyone willing to jump onboard? -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0';
Jul 04 2012
parent reply "Jonathan Andrew" <jonfandrew gmail.com> writes:
On Wednesday, 4 July 2012 at 11:18:36 UTC, Iain Buclaw wrote:
 On 4 July 2012 11:52, Jacob Carlborg <doob me.com> wrote:
 On 2012-07-04 02:34, Jonathan M Davis wrote:
 On Wednesday, July 04, 2012 00:42:22 Iain Buclaw wrote:
 Just so long as it isn't Gentoo. :o)

 Afterall, out of all of the linux distros out there, I would 
 say that
 gentoo takes the least time to mess around... </sarcasm>
LOL. I did use Gentoo for a while, but I got sick of things breaking on updates. Arch provides most of the benefits that Gentoo does but defaults to binary packages while letting you build them from source if you want to rather than making _everything_ be built from source. And surprisingly, Arch seems to do a better job of providing bleeding edge packages quickly than Gentoo does (at least for the packages that I care about). But Linux distros are one of those things that you can argue about endlessly. To each their own I guess.
I agree. I tried LFS and then added portage, which basically made it into Gentoo. I general I like the idea about Gentoo but it just takes too much time. These days I'm staying away from Gentoo and using Ubuntu when I'm using Linux. But we all know that the best Unix-like system is Mac OS X :)
Another platform that we need to start testing extensively with GDC. :-) Anyone willing to jump onboard?
I'll bite - I'm getting my feet wet again after being away from programming for a long absence, but I'd love to help out if I can. I'm more of a Linux guy than an OSX man, but since my wife insists on using FaceTime to chat with me while we are apart, I'm stuck here in Apple-land! What can I do?
Jul 04 2012
parent Iain Buclaw <ibuclaw ubuntu.com> writes:
On 5 July 2012 00:19, Jonathan Andrew <jonfandrew gmail.com> wrote:
 On Wednesday, 4 July 2012 at 11:18:36 UTC, Iain Buclaw wrote:
 On 4 July 2012 11:52, Jacob Carlborg <doob me.com> wrote:
 On 2012-07-04 02:34, Jonathan M Davis wrote:
 On Wednesday, July 04, 2012 00:42:22 Iain Buclaw wrote:
 Just so long as it isn't Gentoo. :o)

 Afterall, out of all of the linux distros out there, I would say that
 gentoo takes the least time to mess around... </sarcasm>
LOL. I did use Gentoo for a while, but I got sick of things breaking on updates. Arch provides most of the benefits that Gentoo does but defaults to binary packages while letting you build them from source if you want to rather than making _everything_ be built from source. And surprisingly, Arch seems to do a better job of providing bleeding edge packages quickly than Gentoo does (at least for the packages that I care about). But Linux distros are one of those things that you can argue about endlessly. To each their own I guess.
I agree. I tried LFS and then added portage, which basically made it into Gentoo. I general I like the idea about Gentoo but it just takes too much time. These days I'm staying away from Gentoo and using Ubuntu when I'm using Linux. But we all know that the best Unix-like system is Mac OS X :)
Another platform that we need to start testing extensively with GDC. :-) Anyone willing to jump onboard?
I'll bite - I'm getting my feet wet again after being away from programming for a long absence, but I'd love to help out if I can. I'm more of a Linux guy than an OSX man, but since my wife insists on using FaceTime to chat with me while we are apart, I'm stuck here in Apple-land! What can I do?
I've made a gdc-4.7 branch to whom's sources will be used for the packaging of gdc-4.7 and porting. https://github.com/D-Programming-GDC/GDC/tree/gdc-4.7 Let us know if anyone hits any issues building and I'll try to help out best I can. -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0';
Jul 06 2012
prev sibling next sibling parent reply d coder <dlang.coder gmail.com> writes:
 Obtain the gdc sources and install into gcc-core (I
 will tarball a copy up that includes the zlib sources too and post a
 link).
Greetings Where would I find the gdc source? Then rebuild gcc with the same options above above, but with
 --enable-languages=d included.
Would this option enable build for D1 or D2? Are we going to port only D2 (I know D2 is officially named D now) or both? Regards - Puneet
Jul 04 2012
parent =?ISO-8859-1?Q?Alex_R=F8nne_Petersen?= <alex lycus.org> writes:
On 04-07-2012 16:48, d coder wrote:
     Obtain the gdc sources and install into gcc-core (I
     will tarball a copy up that includes the zlib sources too and post a
     link).


 Greetings

 Where would I find the gdc source?
https://github.com/D-Programming-GDC/GDC
     Then rebuild gcc with the same options above above, but with
     --enable-languages=d included.


 Would this option enable build for D1 or D2? Are we going to port only
 D2 (I know D2 is officially named D now)  or both?
D1 is officially deprecated in GDC; it won't be included in GCC.
 Regards
 - Puneet
-- Alex Rønne Petersen alex lycus.org http://lycus.org
Jul 04 2012
prev sibling parent Iain Buclaw <ibuclaw ubuntu.com> writes:
On 4 July 2012 15:48, d coder <dlang.coder gmail.com> wrote:
 Obtain the gdc sources and install into gcc-core (I
 will tarball a copy up that includes the zlib sources too and post a
 link).
Greetings Where would I find the gdc source?
Working on that, will post it on my project site this afternoon.
 Then rebuild gcc with the same options above above, but with
 --enable-languages=d included.
Would this option enable build for D1 or D2? Are we going to port only D2 (I know D2 is officially named D now) or both?
D2 only. GDC with D1 had already been ported to all architectures that Debian supported at the time of gcc-4.4. The release of gdc-4.6 marked the switch to D2 and the dropping of all supported architectures except x86 and x86_64. Regards -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0';
Jul 04 2012