May 12, 2015
> "Timothee Cour via Digitalmars-d" <digitalmars-d@puremagic.com> wrote in message > news:mailman.875.1431359641.4581.digitalmars-d@puremagic.com...
> note, that this seems to be only happening on master:
> if I checkout another tag (git checkout v2.067.1-b1 or any other I've tried) it builds fine.
> So it must be a very recent regression

It's not a regression.  Shortly after 2.067 was released, dmd got the new requirement of a host D compiler to build.  You can explicitly set which compiler to use by setting the HOST_DC environment variable.  If you also want to build ddmd, then 2.067 is recommended as it is known to work on all autotester platforms.  In posix.mak HOST_DC defaults to 'dmd' which will correctly pick up a dmd installation in path, as long as you don't have a sc.ini file in the dmd src dir. 

May 12, 2015
On Tuesday, 12 May 2015 at 03:35:34 UTC, Daniel Murphy wrote:
>
>> "Timothee Cour via Digitalmars-d" <digitalmars-d@puremagic.com> wrote in message > news:mailman.875.1431359641.4581.digitalmars-d@puremagic.com...
>> note, that this seems to be only happening on master:
>> if I checkout another tag (git checkout v2.067.1-b1 or any other I've tried) it builds fine.
>> So it must be a very recent regression
>
> It's not a regression.  Shortly after 2.067 was released, dmd got the new requirement of a host D compiler to build.  You can explicitly set which compiler to use by setting the HOST_DC environment variable.  If you also want to build ddmd, then 2.067 is recommended as it is known to work on all autotester platforms.  In posix.mak HOST_DC defaults to 'dmd' which will correctly pick up a dmd installation in path, as long as you don't have a sc.ini file in the dmd src dir.

I wonder what the long term plan for porting to new platforms will be.

Currently you compile dmd 2.066 (or whatever the tag of breakage was) which is pure C++ so you have an outdated DMD binary, which you can then use to compile the latest dmd and phobos.

But as time passes - and when I tried it seemed we are already there - phobos and DMD may no longer be compileable using earlier versions of Dmd.  So you need to repeatedly bootstrap over breaking changes in the source (eg using dip25) until you have caught up.  Unless you hack up the source by hand.

Is this correct, or am I missing something ?  If accurate, maybe it is worth automating the process...
May 12, 2015
On Mon, May 11, 2015 at 8:35 PM, Daniel Murphy via Digitalmars-d < digitalmars-d@puremagic.com> wrote:

>
>  "Timothee Cour via Digitalmars-d" <digitalmars-d@puremagic.com> wrote in
>> message > news:mailman.875.1431359641.4581.digitalmars-d@puremagic.com...
>> note, that this seems to be only happening on master:
>> if I checkout another tag (git checkout v2.067.1-b1 or any other I've
>> tried) it builds fine.
>> So it must be a very recent regression
>>
>
> It's not a regression.  Shortly after 2.067 was released, dmd got the new requirement of a host D compiler to build.  You can explicitly set which compiler to use by setting the HOST_DC environment variable.  If you also want to build ddmd, then 2.067 is recommended as it is known to work on all autotester platforms.  In posix.mak HOST_DC defaults to 'dmd' which will correctly pick up a dmd installation in path, as long as you don't have a sc.ini file in the dmd src dir.
>


I still think it is a regression.
I did have dmd (2.067) in the path, see the whole thread for my
diagnostic:
http://forum.dlang.org/thread/mailman.861.1431333078.4581.digitalmars-d@puremagic.com#post-mailman.878.1431365007.4581.digitalmars-d:40puremagic.com
(cf message 'I had 'export'...)


May 12, 2015
On 5/11/15 8:31 PM, Daniel Murphy wrote:
> "Jacob Carlborg"  wrote in message news:miqqqu$2g75$2@digitalmars.com...
>
>> On 2015-05-11 18:08, Timothee Cour via Digitalmars-d wrote:
>> > I found the culprit by bisection:
>> > hash: 50b7697...
>> >
>> > HEAD is now at 50b7697... Merge pull request #3970 from
>> yebblies/idgend2
>> >
>> >
>> https://github.com/D-Programming-Language/dmd/commit/aa8a7b3dcf985c8332783961c1dd7bc598ec36c5
>>
>> >
>> > it builds fine right before this, and fails with this
>>
>> I guess that's the first commit that requires a D compiler to build DMD.
>
> Yep.

Can we automate installation of the last C++-based dmd via scripting? -- Andrei
May 12, 2015
On 05/11/2015 10:23 AM, Timothee Cour via Digitalmars-d wrote:

> I notice CC is set to 'g++' in posix.mak which is untypical (instead
> of gcc for example)

That is required because although all implementation files are C++, they have extension .c. If CC were gcc, it would assume C compilation. Therefore, g++ is needed to make it C++ compilation.

Ali

May 12, 2015
On Tuesday, 12 May 2015 at 06:20:12 UTC, Ali Çehreli wrote:
> On 05/11/2015 10:23 AM, Timothee Cour via Digitalmars-d wrote:
>
> > I notice CC is set to 'g++' in posix.mak which is untypical
> (instead
> > of gcc for example)
>
> That is required because although all implementation files are C++, they have extension .c. If CC were gcc, it would assume C compilation. Therefore, g++ is needed to make it C++ compilation.
>
> Ali

Same for clang IIRC.
May 12, 2015
"Timothee Cour via Digitalmars-d" <digitalmars-d@puremagic.com> wrote in message news:mailman.896.1431405519.4581.digitalmars-d@puremagic.com...

> I still think it is a regression.
> I did have dmd (2.067) in the path, see the whole thread for my
> diagnostic:
> http://forum.dlang.org/thread/mailman.861.1431333078.4581.digitalmars-d@puremagic.com#post-mailman.878.1431365007.4581.digitalmars-d:40puremagic.com
> (cf message 'I had 'export'...)

DMD uses 'CC' as the linker, but I'm not sure why settings CC would generate that error.

>> g++ -m64: No such file or directory

This should mean that there is no g++ in path, but it does look like CC is being set correctly by the makefile. 

May 12, 2015
"Andrei Alexandrescu"  wrote in message news:mis2ub$j0s$1@digitalmars.com...

> Can we automate installation of the last C++-based dmd via scripting? -- Andrei

Can't people just use dvm?  I suppose we could add a makefile target that grabs the zip or something... 

May 12, 2015
On 5/12/15 4:47 AM, Daniel Murphy wrote:
> "Andrei Alexandrescu"  wrote in message
> news:mis2ub$j0s$1@digitalmars.com...
>
>> Can we automate installation of the last C++-based dmd via scripting?
>> -- Andrei
>
> Can't people just use dvm?  I suppose we could add a makefile target
> that grabs the zip or something...

dvm is fine as long as its installation itself is automated.

Sadly I just hit this matter head-on after updating dmd last night. It seems to me unacceptable to leave the build process flapping in the wind like that. Guess I'll need to work on that.


Andrei

May 12, 2015
On 5/12/15 8:03 AM, Andrei Alexandrescu wrote:
> On 5/12/15 4:47 AM, Daniel Murphy wrote:
>> "Andrei Alexandrescu"  wrote in message
>> news:mis2ub$j0s$1@digitalmars.com...
>>
>>> Can we automate installation of the last C++-based dmd via scripting?
>>> -- Andrei
>>
>> Can't people just use dvm?  I suppose we could add a makefile target
>> that grabs the zip or something...
>
> dvm is fine as long as its installation itself is automated.
>
> Sadly I just hit this matter head-on after updating dmd last night. It
> seems to me unacceptable to leave the build process flapping in the wind
> like that. Guess I'll need to work on that.

Please destroy: https://github.com/D-Programming-Language/dmd/pull/4645

Andrei