Re: GDC with D frontend 2.081.2
On Wed, Aug 29, 2018 at 8:35 AM Johannes Pfau via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote: > But this only works as you build gdc and gcc separately. I.e. for gdc, > you build gcc+gdc, then throw away everything but gdc related > executables. Then you compile gcc with different --with-pkgversion for > the gcc package. > > However, this has the problem that your gcc executable now does not > properly forward .d files to gdc as that build did not have --enable- > languages=d. The supported way to do this is build all gcc based > compilers at once. But then you can't use --with-pkgversion as it will > apply to all compilers. > > -- > Johannes > Yes, but I never use gcc to compile .d files (I did not know it will work anyway :) ), so I do not see this as a big issue. But I understand it could be an issue for somebody else and it will be an issue when gdc will be officialy part of gcc.
Re: GDC with D frontend 2.081.2
Am Tue, 28 Aug 2018 10:19:46 +0200 schrieb Daniel Kozak: > On Tue, Aug 28, 2018 at 8:40 AM Eugene Wissner via > Digitalmars-d-announce < > digitalmars-d-announce@puremagic.com> wrote: > >> On Tuesday, 28 August 2018 at 06:18:28 UTC, Daniel Kozak wrote: >> > On Mon, Aug 27, 2018 at 7:55 PM Eugene Wissner via >> > Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> >> > wrote: >> > >> >> On Monday, 27 August 2018 at 17:23:04 UTC, Arun Chandrasekaran >> >> wrote: >> >> > 1. It would be good to print the DMD frontend version with `gdc >> >> > --version`. It is helpful in reporting bugs. LDC does this. >> >> > >> >> Unfortunately it doesn't seem to be possible. GCC doesn't allow to >> >> change --version output: >> >> https://bugzilla.gdcproject.org/show_bug.cgi?id=89 >> >> >> >> >> > This is not true, right now on archlinux if you type gdc --version it >> > will display d frontend version >> > https://bugzilla.gdcproject.org/show_bug.cgi?id=89#c1 >> >> Is it set with --with-pkgversion? The same information will be >> displayed for gcc and g++ then. It is not always desirable if you ship >> the compiler as a whole (with libtool etc). >> >> > Yes and no. It is set with --with-pkgversion but it is only for gdc. But this only works as you build gdc and gcc separately. I.e. for gdc, you build gcc+gdc, then throw away everything but gdc related executables. Then you compile gcc with different --with-pkgversion for the gcc package. However, this has the problem that your gcc executable now does not properly forward .d files to gdc as that build did not have --enable- languages=d. The supported way to do this is build all gcc based compilers at once. But then you can't use --with-pkgversion as it will apply to all compilers. -- Johannes
Re: GDC with D frontend 2.081.2
On Tue, Aug 28, 2018 at 8:40 AM Eugene Wissner via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote: > On Tuesday, 28 August 2018 at 06:18:28 UTC, Daniel Kozak wrote: > > On Mon, Aug 27, 2018 at 7:55 PM Eugene Wissner via > > Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> > > wrote: > > > >> On Monday, 27 August 2018 at 17:23:04 UTC, Arun Chandrasekaran > >> wrote: > >> > 1. It would be good to print the DMD frontend version with > >> > `gdc --version`. It is helpful in reporting bugs. LDC does > >> > this. > >> > > >> Unfortunately it doesn't seem to be possible. GCC doesn't > >> allow to change --version output: > >> https://bugzilla.gdcproject.org/show_bug.cgi?id=89 > >> > >> > > This is not true, right now on archlinux if you type gdc > > --version it will display d frontend version > > https://bugzilla.gdcproject.org/show_bug.cgi?id=89#c1 > > Is it set with --with-pkgversion? The same information will be > displayed for gcc and g++ then. It is not always desirable if you > ship the compiler as a whole (with libtool etc). > Yes and no. It is set with --with-pkgversion but it is only for gdc.
Re: GDC with D frontend 2.081.2
On Tuesday, 28 August 2018 at 06:18:28 UTC, Daniel Kozak wrote: On Mon, Aug 27, 2018 at 7:55 PM Eugene Wissner via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote: On Monday, 27 August 2018 at 17:23:04 UTC, Arun Chandrasekaran wrote: > 1. It would be good to print the DMD frontend version with > `gdc --version`. It is helpful in reporting bugs. LDC does > this. > Unfortunately it doesn't seem to be possible. GCC doesn't allow to change --version output: https://bugzilla.gdcproject.org/show_bug.cgi?id=89 This is not true, right now on archlinux if you type gdc --version it will display d frontend version https://bugzilla.gdcproject.org/show_bug.cgi?id=89#c1 Is it set with --with-pkgversion? The same information will be displayed for gcc and g++ then. It is not always desirable if you ship the compiler as a whole (with libtool etc).
Re: GDC with D frontend 2.081.2
On Mon, Aug 27, 2018 at 7:55 PM Eugene Wissner via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote: > On Monday, 27 August 2018 at 17:23:04 UTC, Arun Chandrasekaran > wrote: > > 1. It would be good to print the DMD frontend version with `gdc > > --version`. It is helpful in reporting bugs. LDC does this. > > > Unfortunately it doesn't seem to be possible. GCC doesn't allow > to change --version output: > https://bugzilla.gdcproject.org/show_bug.cgi?id=89 > > This is not true, right now on archlinux if you type gdc --version it will display d frontend version https://bugzilla.gdcproject.org/show_bug.cgi?id=89#c1
Re: GDC with D frontend 2.081.2
On Monday, 27 August 2018 at 20:03:28 UTC, Iain Buclaw wrote: On 27 August 2018 at 20:59, Arun Chandrasekaran via Digitalmars-d-announce wrote: On Monday, 27 August 2018 at 17:44:01 UTC, Iain Buclaw wrote: On 27 August 2018 at 19:23, Arun Chandrasekaran via Digitalmars-d-announce wrote: [...] Version print information is managed outside of gdc. You can get this from __VERSION__ or output of -v [...] Ask dub maintainers why. [...] Raise a bug then? Iain. Should I raise it at https://bugzilla.gdcproject.org ? ``` User account creation has been restricted. Yes, due to high number of spam account on google mail, account creation is limited for people coming from that domain. https://bugzilla.gdcproject.org/show_bug.cgi?id=305
Re: GDC with D frontend 2.081.2
On 27 August 2018 at 20:59, Anonymouse via Digitalmars-d-announce wrote: > On Monday, 27 August 2018 at 17:44:01 UTC, Iain Buclaw wrote: >> >> Raise a bug then? >> >> Iain. > > > How are we supposed to file GDC bugs when bugzilla account creation is > restricted? I even emailed you about it back in May, but I imagine I was > filtered as spam. I checked, and can see that there's an account created, maybe I didn't get back to you on confirmation? I'll try again...
Re: GDC with D frontend 2.081.2
On 27 August 2018 at 20:59, Arun Chandrasekaran via Digitalmars-d-announce wrote: > On Monday, 27 August 2018 at 17:44:01 UTC, Iain Buclaw wrote: >> >> On 27 August 2018 at 19:23, Arun Chandrasekaran via Digitalmars-d-announce >> wrote: >>> >>> [...] >> >> >> Version print information is managed outside of gdc. You can get this >> from __VERSION__ or output of -v >> >>> [...] >> >> >> Ask dub maintainers why. >> >>> [...] >> >> >> Raise a bug then? >> >> Iain. > > > Should I raise it at https://bugzilla.gdcproject.org ? > > ``` > User account creation has been restricted. Yes, due to high number of spam account on google mail, account creation is limited for people coming from that domain.
Re: GDC with D frontend 2.081.2
On Monday, 27 August 2018 at 17:44:01 UTC, Iain Buclaw wrote: On 27 August 2018 at 19:23, Arun Chandrasekaran via Digitalmars-d-announce wrote: [...] Version print information is managed outside of gdc. You can get this from __VERSION__ or output of -v [...] Ask dub maintainers why. [...] Raise a bug then? Iain. Should I raise it at https://bugzilla.gdcproject.org ? ``` User account creation has been restricted. Contact your administrator or the maintainer (ibuc...@gdcproject.org) for information about creating an account. ```
Re: GDC with D frontend 2.081.2
On Monday, 27 August 2018 at 17:44:01 UTC, Iain Buclaw wrote: Raise a bug then? Iain. How are we supposed to file GDC bugs when bugzilla account creation is restricted? I even emailed you about it back in May, but I imagine I was filtered as spam.
Re: GDC with D frontend 2.081.2
On Monday, 27 August 2018 at 17:23:04 UTC, Arun Chandrasekaran wrote: 1. It would be good to print the DMD frontend version with `gdc --version`. It is helpful in reporting bugs. LDC does this. Unfortunately it doesn't seem to be possible. GCC doesn't allow to change --version output: https://bugzilla.gdcproject.org/show_bug.cgi?id=89 Other compilers like gccgo print the same. It can be probably useful to introduce an additional frontend command line option. 2. I see a file dub_platform_probe-UUID.s getting created in the root dir when building with GDC and not with DMD/LDC. Partially looks like a dub bug: https://github.com/dlang/dub/issues/576 But anyway it is wrong that they are created in the project directory; I suppose I miss some build options. 3. Multiple definition error. Logs: https://bpaste.net/show/7b12dfccceb1 This doesn't seem to be a problem when building with DMD (v2.081.1) / LDC (1.9.0) "dependencies" : { "darg": "~>0.0.4", "painlessjson": "~>1.3.5", "requests": "~>0.8.3" } Have to test it first. Thanks.
Re: GDC with D frontend 2.081.2
On 27 August 2018 at 19:23, Arun Chandrasekaran via Digitalmars-d-announce wrote: > On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: >> >> As some of you may know D frontend was merged into GDC some time ago and >> is up to date. D version currently supported by GDC is 2.081.2 and it can be >> found in "gdc-7" and "gdc-8" branches. I will say a bit more about GDC >> development and development plans later. >> >> I prepared GDC/GCC 7.3.0 binaries for x86-64 Linux built on Ubuntu 18.04: >> >> https://download.dlackware.com/gdc/gdc-7.3.0_2.081.2-linux-x86_64.tar.xz >> >> I’m not a regular Ubuntu user, and built GDC in a VM, so don't blame me >> (too much) if something doesn’t work, but let me know anyway. For testing >> I've used a minimal Ubuntu installation and had to install only "libc-dev" >> package. The package includes gcc, g++, gdc and standard GNU tools, but no D >> tools like dub. I still need some time to automate the building, then I can >> build for more platforms and provide some core tools. >> >> We support several GCC versions and we still support C++-frontend (D >> version: 2.076). The reason for this is that C++-frontend should be merged >> into the next GCC version (GCC 9), then it can be built without another D >> compiler. D frontend goes into GCC 10 and can be built with GCC 9, so GCC >> can be bootstrapped without external compilers and can be used to bootstrap >> other D compilers. >> >> Current branch model. There are 2 "master" branches: master and stable. >> master contains D frontend and follows DMD master (we'll see if we can >> update every week or every two weeks). stable contains C++ frontend which >> doesn't get new D features anymore but of course we merge bug fixes from >> master. Both follow GCC master (master is updated weekly to GCC snapshots, >> stable from time to time). >> stable has 4 derivates: gdc-8-stable, gdc-7-stable, gdc-6-stable and >> gdc-5-stable. It seems to be a lot, but the last merge from stable was >> really trivial, so the most work is done on the master derivates: "gdc-8" >> and "gdc-7" branches. These two follow DMD stable and contain stable D >> releases. > > > 1. It would be good to print the DMD frontend version with `gdc --version`. > It is helpful in reporting bugs. LDC does this. > > ``` > $ ldc2 --version > LDC - the LLVM D compiler (1.9.0): > based on DMD v2.079.1 and LLVM 6.0.0 > built with LDC - the LLVM D compiler (1.9.0) > Default target: x86_64-unknown-linux-gnu > Host CPU: ivybridge > http://dlang.org - http://wiki.dlang.org/LDC > > Registered Targets: > aarch64- AArch64 (little endian) > aarch64_be - AArch64 (big endian) > arm- ARM > arm64 - ARM64 (little endian) > armeb - ARM (big endian) > nvptx - NVIDIA PTX 32-bit > nvptx64- NVIDIA PTX 64-bit > ppc32 - PowerPC 32 > ppc64 - PowerPC 64 > ppc64le- PowerPC 64 LE > thumb - Thumb > thumbeb- Thumb (big endian) > x86- 32-bit X86: Pentium-Pro and above > x86-64 - 64-bit X86: EM64T and AMD64 > ``` > Version print information is managed outside of gdc. You can get this from __VERSION__ or output of -v > 2. I see a file dub_platform_probe-UUID.s getting created in the root dir > when building with GDC and not with DMD/LDC. > Ask dub maintainers why. > 3. Multiple definition error. Logs: https://bpaste.net/show/7b12dfccceb1 > This doesn't seem to be a problem when building with DMD (v2.081.1) / LDC > (1.9.0) > > "dependencies" : { > "darg": "~>0.0.4", > "painlessjson": "~>1.3.5", > "requests": "~>0.8.3" > } > Raise a bug then? Iain.
Re: GDC with D frontend 2.081.2
On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: As some of you may know D frontend was merged into GDC some time ago and is up to date. D version currently supported by GDC is 2.081.2 and it can be found in "gdc-7" and "gdc-8" branches. I will say a bit more about GDC development and development plans later. I prepared GDC/GCC 7.3.0 binaries for x86-64 Linux built on Ubuntu 18.04: https://download.dlackware.com/gdc/gdc-7.3.0_2.081.2-linux-x86_64.tar.xz I’m not a regular Ubuntu user, and built GDC in a VM, so don't blame me (too much) if something doesn’t work, but let me know anyway. For testing I've used a minimal Ubuntu installation and had to install only "libc-dev" package. The package includes gcc, g++, gdc and standard GNU tools, but no D tools like dub. I still need some time to automate the building, then I can build for more platforms and provide some core tools. We support several GCC versions and we still support C++-frontend (D version: 2.076). The reason for this is that C++-frontend should be merged into the next GCC version (GCC 9), then it can be built without another D compiler. D frontend goes into GCC 10 and can be built with GCC 9, so GCC can be bootstrapped without external compilers and can be used to bootstrap other D compilers. Current branch model. There are 2 "master" branches: master and stable. master contains D frontend and follows DMD master (we'll see if we can update every week or every two weeks). stable contains C++ frontend which doesn't get new D features anymore but of course we merge bug fixes from master. Both follow GCC master (master is updated weekly to GCC snapshots, stable from time to time). stable has 4 derivates: gdc-8-stable, gdc-7-stable, gdc-6-stable and gdc-5-stable. It seems to be a lot, but the last merge from stable was really trivial, so the most work is done on the master derivates: "gdc-8" and "gdc-7" branches. These two follow DMD stable and contain stable D releases. 1. It would be good to print the DMD frontend version with `gdc --version`. It is helpful in reporting bugs. LDC does this. ``` $ ldc2 --version LDC - the LLVM D compiler (1.9.0): based on DMD v2.079.1 and LLVM 6.0.0 built with LDC - the LLVM D compiler (1.9.0) Default target: x86_64-unknown-linux-gnu Host CPU: ivybridge http://dlang.org - http://wiki.dlang.org/LDC Registered Targets: aarch64- AArch64 (little endian) aarch64_be - AArch64 (big endian) arm- ARM arm64 - ARM64 (little endian) armeb - ARM (big endian) nvptx - NVIDIA PTX 32-bit nvptx64- NVIDIA PTX 64-bit ppc32 - PowerPC 32 ppc64 - PowerPC 64 ppc64le- PowerPC 64 LE thumb - Thumb thumbeb- Thumb (big endian) x86- 32-bit X86: Pentium-Pro and above x86-64 - 64-bit X86: EM64T and AMD64 ``` 2. I see a file dub_platform_probe-UUID.s getting created in the root dir when building with GDC and not with DMD/LDC. 3. Multiple definition error. Logs: https://bpaste.net/show/7b12dfccceb1 This doesn't seem to be a problem when building with DMD (v2.081.1) / LDC (1.9.0) "dependencies" : { "darg": "~>0.0.4", "painlessjson": "~>1.3.5", "requests": "~>0.8.3" }
Re: GDC with D frontend 2.081.2
On Sat, Aug 25, 2018 at 11:20 PM Anonymouse via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote: > On Saturday, 25 August 2018 at 20:59:56 UTC, Daniel Kozak wrote: > > August 10th. I'll wait for -2 then. > > > Installed Size : 243.72 MiB > > Packager: Unknown Packager > > Build Date : fre 10 aug 2018 01:24:01 > > Install Date: fre 10 aug 2018 15:10:09 > Fixed. There should be gdc 8.2.0-3
Re: GDC with D frontend 2.081.2
On Saturday, 25 August 2018 at 20:59:56 UTC, Daniel Kozak wrote: Hmm I am not sure, but how long did you have this gdc package installed? It seems I forgot to update .SRCINFO. There should be gdc-8.2.0-2 which has 2.081.1 d frontend. I will fix this on monday, until than you can uninstall gdc and try to build it again. August 10th. I'll wait for -2 then. Installed Size : 243.72 MiB Packager: Unknown Packager Build Date : fre 10 aug 2018 01:24:01 Install Date: fre 10 aug 2018 15:10:09
Re: GDC with D frontend 2.081.2
On Saturday, 25 August 2018 at 20:59:56 [...] Thanks for supporting us on Arch, Daniel!
Re: GDC with D frontend 2.081.2
On Sat, Aug 25, 2018 at 10:10 PM Anonymouse via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote: > On Friday, 24 August 2018 at 08:30:35 UTC, Daniel Kozak wrote: > > On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: > >> As some of you may know D frontend was merged into GDC some > >> time ago and is up to date. D version currently supported by > >> GDC is 2.081.2 and it can be found in "gdc-7" and "gdc-8" > >> branches. I will say a bit more about GDC development and > >> development plans later. > >> > >> [...] > > > > Btw. there are packages for archlinux on AUR > > gdc-8 with d frontend: https://aur.archlinux.org/packages/gdc/ > > gdc-8-stable with c++ frontend: > > https://aur.archlinux.org/packages/gdc-stable/ > > Is it supposed to be up to date in this sense? __VERSION__ is > 2068L with Manjaro/Arch gdc 8.2.0-1. > Hmm I am not sure, but how long did you have this gdc package installed? It seems I forgot to update .SRCINFO. There should be gdc-8.2.0-2 which has 2.081.1 d frontend. I will fix this on monday, until than you can uninstall gdc and try to build it again.
Re: GDC with D frontend 2.081.2
On Friday, 24 August 2018 at 08:30:35 UTC, Daniel Kozak wrote: On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: As some of you may know D frontend was merged into GDC some time ago and is up to date. D version currently supported by GDC is 2.081.2 and it can be found in "gdc-7" and "gdc-8" branches. I will say a bit more about GDC development and development plans later. [...] Btw. there are packages for archlinux on AUR gdc-8 with d frontend: https://aur.archlinux.org/packages/gdc/ gdc-8-stable with c++ frontend: https://aur.archlinux.org/packages/gdc-stable/ Is it supposed to be up to date in this sense? __VERSION__ is 2068L with Manjaro/Arch gdc 8.2.0-1.
Re: GDC with D frontend 2.081.2
On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: I prepared GDC/GCC 7.3.0 binaries for x86-64 Linux built on Ubuntu 18.04: Thank you, this is very important work! I'll add a gdc package to GNU Guix (the packager for GNU) sometime soon.
Re: GDC with D frontend 2.081.2
On Friday, 24 August 2018 at 08:50:22 UTC, Daniel Kozak wrote: On Fri, Aug 24, 2018 at 10:40 AM Basile B. via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote: [...] Great news. Best of luck for a wide adoption in the official package managers of the linux distributions. I do not think this will be an issue. I believe as soon as gdc will be part of gcc it will be part of many linux distribution Indeed. Having GDC merged into GCC is *huge* for the D language. It means that pretty much every Linux distribution out there will have a supported D compiler available, and this includes enterprise distributions like RHEL. Even if enterprise distros might not give full support for GDC, it will still be available. I know from experience that this is something people look at when deciding whether using a programming language is viable and can be long-time supported in their company, so for D and the public image of D, being in GCC is absolutely awesome. FWIW, Debian already has an up-to-date GDC 8, so does Ubuntu. "Unfortunately"[1] for GDC though, the default compiler for D stuff in Debian is LDC on most architectures, because it still works quite a bit better (as in: more D code can be compiled with it). [1]: Not really, LDC is really good too!
Re: GDC with D frontend 2.081.2
On Fri, Aug 24, 2018 at 10:40 AM Basile B. via Digitalmars-d-announce < digitalmars-d-announce@puremagic.com> wrote: > On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: > > As some of you may know D frontend was merged into GDC some > > time ago and is up to date. D version currently supported by > > GDC is 2.081.2 > > Great news. Best of luck for a wide adoption in the official > package managers of the linux distributions. > > I do not think this will be an issue. I believe as soon as gdc will be part of gcc it will be part of many linux distribution
Re: GDC with D frontend 2.081.2
On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: As some of you may know D frontend was merged into GDC some time ago and is up to date. D version currently supported by GDC is 2.081.2 Great news. Best of luck for a wide adoption in the official package managers of the linux distributions.
Re: GDC with D frontend 2.081.2
On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: As some of you may know D frontend was merged into GDC some time ago and is up to date. D version currently supported by GDC is 2.081.2 and it can be found in "gdc-7" and "gdc-8" branches. I will say a bit more about GDC development and development plans later. [...] Btw. there are packages for archlinux on AUR gdc-8 with d frontend: https://aur.archlinux.org/packages/gdc/ gdc-8-stable with c++ frontend: https://aur.archlinux.org/packages/gdc-stable/
Re: GDC with D frontend 2.081.2
On Friday, 24 August 2018 at 05:35:13 UTC, Eugene Wissner wrote: As some of you may know D frontend was merged into GDC some time ago and is up to date. Really cool, and very much appreciated. I will say a bit more about GDC development and development plans later. Really looking forward to it.