Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-12 Thread Jonathan M Davis via Digitalmars-d
On Friday, May 12, 2017 08:49:10 Atila Neves via Digitalmars-d wrote:
> On Thursday, 11 May 2017 at 22:16:22 UTC, Joseph Rushton Wakeling
>
> wrote:
> > On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
> >> So I went "I know, I'll just use a container". I tried Ubuntu
> >> Zesty in docker. That doesn't build dmd off the bat either, it
> >> fails with PIC errors.
> >
> > Have you tried adding `PIC=-fPIC` when you invoke `make`?
>
> No, I was just went "ain't nobody got time for that" and moved on.

Maybe PIC is good overall thanks to the security benefits it supposedly
provides (I don't know), but man has the swtich to PIC on debian-based
systems been annoying. I've wasted far too much of my time dealing with it
instead of just getting work done.

- Jonathan M Davis



Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-12 Thread Atila Neves via Digitalmars-d
On Thursday, 11 May 2017 at 22:16:22 UTC, Joseph Rushton Wakeling 
wrote:

On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
So I went "I know, I'll just use a container". I tried Ubuntu 
Zesty in docker. That doesn't build dmd off the bat either, it 
fails with PIC errors.


Have you tried adding `PIC=-fPIC` when you invoke `make`?


No, I was just went "ain't nobody got time for that" and moved on.


Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-11 Thread Jonathan M Davis via Digitalmars-d
On Thursday, May 11, 2017 22:16:22 Joseph Rushton Wakeling via Digitalmars-d 
wrote:
> On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
> > So I went "I know, I'll just use a container". I tried Ubuntu
> > Zesty in docker. That doesn't build dmd off the bat either, it
> > fails with PIC errors.
>
> Have you tried adding `PIC=-fPIC` when you invoke `make`?

As I understand it, it's PIC=1 that you need.

- Jonathan M Davis



Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-11 Thread Joseph Rushton Wakeling via Digitalmars-d

On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
So I went "I know, I'll just use a container". I tried Ubuntu 
Zesty in docker. That doesn't build dmd off the bat either, it 
fails with PIC errors.


Have you tried adding `PIC=-fPIC` when you invoke `make`?


Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread Seb via Digitalmars-d

On Wednesday, 10 May 2017 at 21:29:24 UTC, Laeeth Isharc wrote:

On Wednesday, 10 May 2017 at 16:20:24 UTC, Seb wrote:

On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
I'm using Trusty, and that works. But... it's a matter of 
time before most people are on newer versions of everything 
and dmd won't be buildable on Linux.


Maybe add newer distros on the autotester?


Hehe, that's nearly not possible. Since a couple of months 
there's an ongoing effort to change the directory layout to 
src/ddmd, which is been blocked by necessary changes the 
autotester.
Travis doesn't support newer distros easily as well, but e.g. 
CircleCi 2 does as they have native integration with Docker:


https://docs.travis-ci.com/user/docker/

Atila can give you our Arch builder builder script if it's 
helpful.


Thanks a lot for the info, but unfortunately the DMD repo already 
overuses Travis's free contingent of five parallel jobs per 
organization - that's why during DConf the slides sometimes 
weren't deployed immediately (dconf.org belongs to the dlang 
organization and thus is affected by this limit).
Moreover, there are already several tricks in place to reduce the 
time of the test suite to avoid running for more than 60 minutes 
and thus into termination. Sadly, this still happens from time to 
time for macOS.
Lastly, the Dlang-Bot has to actively cancel previous builds on 
new pushes to keep the build queue slim.
Hence, such experiments, which are very welcome, are probably 
better done on a different CI provider ;-)


Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread Laeeth Isharc via Digitalmars-d

On Wednesday, 10 May 2017 at 16:20:24 UTC, Seb wrote:

On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
I'm using Trusty, and that works. But... it's a matter of time 
before most people are on newer versions of everything and dmd 
won't be buildable on Linux.


Maybe add newer distros on the autotester?


Hehe, that's nearly not possible. Since a couple of months 
there's an ongoing effort to change the directory layout to 
src/ddmd, which is been blocked by necessary changes the 
autotester.
Travis doesn't support newer distros easily as well, but e.g. 
CircleCi 2 does as they have native integration with Docker:


https://docs.travis-ci.com/user/docker/

Atila can give you our Arch builder builder script if it's 
helpful.


Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread Laeeth Isharc via Digitalmars-d

On Wednesday, 10 May 2017 at 16:20:24 UTC, Seb wrote:

On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
I can't build dmd on Arch Linux anymore. I'm told it's because 
of a binutils update. Annoying.


Yep, at least running the tests on Phobos fails due to changes 
in binutils 2.28, see this bug report for more details:


https://issues.dlang.org/show_bug.cgi?id=17375

So I went "I know, I'll just use a container". I tried Ubuntu 
Zesty in docker. That doesn't build dmd off the bat either, it 
fails with PIC errors.


AFAIK this bug should have been fixed. However, IIRC 2.073.2 or 
2.074 as host compiler is required.


I'm using Trusty, and that works. But... it's a matter of time 
before most people are on newer versions of everything and dmd 
won't be buildable on Linux.


Maybe add newer distros on the autotester?


Hehe, that's nearly not possible. Since a couple of months 
there's an ongoing effort to change the directory layout to 
src/ddmd, which is been blocked by necessary changes the 
autotester.
Travis doesn't support newer distros easily as well, but e.g. 
CircleCi 2 does as they have native integration with Docker:


https://circleci.com/blog/say-hello-to-circleci-2-0/
https://circleci.com/docs/2.0/

PRs are welcome ;-)


Atila


Hi Seb.

Travis CI commercial does work with Docker - I think we used it 
before and Atila would know about that.  We build the builder 
binary image using Arch pacstrap and then run that binary 
container using Docker.  I don't know if Travis open source 
allows Docker, but if not it's probably a matter of time.


Laeeth.


Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread ketmar via Digitalmars-d

Marco Leise wrote:


Am Wed, 10 May 2017 20:59:33 +0300
schrieb ketmar :

On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:  
I can't build dmd on Arch Linux anymore. I'm told it's because of a 
binutils update. Annoying.  


yeah, the great thing. i was hit by that bus too, and had to mutilate 
druntime to make unittests work again. lucky me, i'm using static 
phobos. don't even want to think about the scale of the disaster for 
people with libphobos2.so...


O.O

Like what will happen to us on Gentoo with libphobos2.so when
binutils-2.8 moves to stable here? And can it all be solved by
compiling with -fPIC, like is required for hardened
installations anyways or are there dmd versions that flat out
wont work any longer?


sorry, i don't know about PIC (not using it). otherwise, you won't be able 
to run anything with shared phobos: druntime conflict scanner will always 
find a conflict and abort (that is what happening with test_runner). at 
least 2.074 is affected. i "solved" it by commenting out druntime checker, 
but this cannot be used as a general solution, of course: the checker 
should be fixed. yet i don't know enough about elf and .so (and, tbh, i 
don't even *want* to dive there).


bugreport says that PIC is a working solution (i.e. binaries and libraries 
built with -fPIC should work). i didn't checked it, tho (not a big fan of 
PIC).


Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread Stanislav Blinov via Digitalmars-d

On Wednesday, 10 May 2017 at 21:03:30 UTC, Marco Leise wrote:

Am Wed, 10 May 2017 20:59:33 +0300
schrieb ketmar :


> On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
>> I can't build dmd on Arch Linux anymore. I'm told it's 
>> because of a binutils update. Annoying.

>
yeah, the great thing. i was hit by that bus too, and had to 
mutilate druntime to make unittests work again. lucky me, i'm 
using static phobos. don't even want to think about the scale 
of the disaster for people with libphobos2.so...


O.O

Like what will happen to us on Gentoo with libphobos2.so when 
binutils-2.8 moves to stable here? And can it all be solved by 
compiling with -fPIC, like is required for hardened 
installations anyways or are there dmd versions that flat out 
wont work any longer?


What, in half a year or more? :) I'd say we're safe.


Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread Marco Leise via Digitalmars-d
Am Wed, 10 May 2017 20:59:33 +0300
schrieb ketmar :

> > On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:  
> >> I can't build dmd on Arch Linux anymore. I'm told it's because of a 
> >> binutils update. Annoying.  
> >
> yeah, the great thing. i was hit by that bus too, and had to mutilate 
> druntime to make unittests work again. lucky me, i'm using static phobos. 
> don't even want to think about the scale of the disaster for people with 
> libphobos2.so...

O.O

Like what will happen to us on Gentoo with libphobos2.so when
binutils-2.8 moves to stable here? And can it all be solved by
compiling with -fPIC, like is required for hardened
installations anyways or are there dmd versions that flat out
wont work any longer?

-- 
Marco



Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread Brad Roberts via Digitalmars-d

On 5/10/2017 9:20 AM, Seb via Digitalmars-d wrote:

On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:


Maybe add newer distros on the autotester?


Hehe, that's nearly not possible. Since a couple of months there's an 
ongoing effort to change the directory layout to src/ddmd, which is 
been blocked by necessary changes the autotester.


Yup, but not on my side for a change. :)

The first pull request was broken in that it unilaterally broke old 
branches (ie, stable would have been broken since it still had the old 
layout).  Then it turned out that the windows new layout doesn't match 
the posix new layout, so still broken at the packages to be tested 
layer.  I'm confident that one day the directory layout changes will 
actually be completed and consistent.


Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread ketmar via Digitalmars-d

Seb wrote:


On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
I can't build dmd on Arch Linux anymore. I'm told it's because of a 
binutils update. Annoying.


Yep, at least running the tests on Phobos fails due to changes in 
binutils 2.28, see this bug report for more details:


https://issues.dlang.org/show_bug.cgi?id=17375


yeah, the great thing. i was hit by that bus too, and had to mutilate 
druntime to make unittests work again. lucky me, i'm using static phobos. 
don't even want to think about the scale of the disaster for people with 
libphobos2.so...


Re: dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread Seb via Digitalmars-d

On Wednesday, 10 May 2017 at 11:51:03 UTC, Atila Neves wrote:
I can't build dmd on Arch Linux anymore. I'm told it's because 
of a binutils update. Annoying.


Yep, at least running the tests on Phobos fails due to changes in 
binutils 2.28, see this bug report for more details:


https://issues.dlang.org/show_bug.cgi?id=17375

So I went "I know, I'll just use a container". I tried Ubuntu 
Zesty in docker. That doesn't build dmd off the bat either, it 
fails with PIC errors.


AFAIK this bug should have been fixed. However, IIRC 2.073.2 or 
2.074 as host compiler is required.


I'm using Trusty, and that works. But... it's a matter of time 
before most people are on newer versions of everything and dmd 
won't be buildable on Linux.


Maybe add newer distros on the autotester?


Hehe, that's nearly not possible. Since a couple of months 
there's an ongoing effort to change the directory layout to 
src/ddmd, which is been blocked by necessary changes the 
autotester.
Travis doesn't support newer distros easily as well, but e.g. 
CircleCi 2 does as they have native integration with Docker:


https://circleci.com/blog/say-hello-to-circleci-2-0/
https://circleci.com/docs/2.0/

PRs are welcome ;-)


Atila


dmd: can't build on Arch Linux or latest Ubuntu

2017-05-10 Thread Atila Neves via Digitalmars-d
I can't build dmd on Arch Linux anymore. I'm told it's because of 
a binutils update. Annoying.


So I went "I know, I'll just use a container". I tried Ubuntu 
Zesty in docker. That doesn't build dmd off the bat either, it 
fails with PIC errors.


I'm using Trusty, and that works. But... it's a matter of time 
before most people are on newer versions of everything and dmd 
won't be buildable on Linux.


Maybe add newer distros on the autotester?

Atila