Set-up Buildbot for GDC

David J Kordsmeier dkords at gmail.com
Thu Dec 7 21:30:04 UTC 2017


On Friday, 7 July 2017 at 00:05:16 UTC, Iain Buclaw wrote:
> On 7 July 2017 at 01:37, Johannes Pfau via D.gnu 
> <d.gnu at puremagic.com> wrote:
>> Am Fri, 7 Jul 2017 01:12:03 +0200
>> schrieb "Iain Buclaw via D.gnu" <d.gnu at puremagic.com>:
>>
>>> On 7 July 2017 at 00:57, Johannes Pfau via D.gnu 
>>> <d.gnu at puremagic.com> wrote:
>>> >[...]
>>>
>>> Could it be missing --with-float= or --with-fpu configure 
>>> flag perhaps?  I'm just finishing up a few changes to the 
>>> build scripts that turn off building phobos.  Can add another 
>>> check for extra configure flags to be set per-target.
>>>
>>> Iain.
>>
>> Yes, it's likely one of these. I can't test this right now, 
>> but the simplest way is running the ubuntu 
>> arm-linux-gnueabihf-gcc -v and copy the configuration. We 
>> should generally use exactly the same configuration as ubuntu 
>> to get reliable results (Otherwise the binutils/libc we use 
>> from the distribution might be not compatible with the 
>> compiler/libgcc/libstdc++,... libraries we build).
>>
>> I guess explore.dgnu.org uses the same configuration and it 
>> uses:
>>
>> Configured with: ../src/configure -v 
>> --with-pkgversion='Ubuntu/Linaro 6.3.0-16ubuntu6' 
>> --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs 
>> --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ 
>> --prefix=/usr --program-suffix=-6 --enable-shared 
>> --enable-linker-build-id --libexecdir=/usr/lib 
>> --without-included-gettext --enable-threads=posix 
>> --libdir=/usr/lib --enable-nls --with-sysroot=/ 
>> --enable-clocale=gnu --enable-libstdcxx-debug 
>> --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new 
>> --enable-gnu-unique-object --disable-libitm 
>> --disable-libquadmath --enable-plugin --with-system-zlib 
>> --disable-browser-plugin --enable-java-awt=gtk 
>> --enable-gtk-cairo 
>> --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-armhf-cross/jre 
>> --enable-java-home 
>> --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-armhf-cross 
>> --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-armhf-cross --with-arch-directory=arm --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libgcj --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --enable-multilib --disable-sjlj-exceptions --with-arch=armv7-a --with-fpu=vfpv3-d16 --with-float=hard --with-mode=thumb --disable-werror --enable-multilib --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=arm-linux-gnueabihf --program-prefix=arm-linux-gnueabihf- --includedir=/usr/arm-linux-gnueabihf/include
>>
>>
>
> Yeah, however 90% of that is unused by us.  I've added a 
> BUILD_CONFIGURE_FLAGS var to the buildci.sh script.
>
> https://github.com/D-Programming-GDC/buildbot-gdc/commit/47f8c7267682f19b3e1ce2afa49034217413451a#diff-711e8a244e68a7a465f29a18e33a22c3R34
>
> Can add a case for armhf and set --with-fpu= later and see if 
> that gets us further.
>
> Iain.

Folks, I am eagerly following the work on GDC related to 
AARCH64/linux.  I am attempting to duplicate results I see here:
https://buildbot.dgnu.org/#/builders/2/builds/51

build 51 looks as if it succeeds.  In following the configure 
logs for build 51, I see a buildci.sh script gets run.  I would 
love to know what gcc configure command gets run.  Are the build 
artifacts available for download?  In particular, the config.log 
would be helpful. In my own previous attempts to build on 
AARCH64, I hit "not implemented" build error in math.d on the 
ieeeFlags, and would also probably hit "unsupported platform".  
It seems that my platform doesn't resolve that it is "arm".  And 
so I understand how the gdc development process works, will 
platform support fixes get back ported into older branches of 
GDC?  Your build is on master, but my question is, are AARCH64 
support patches backported into the gdc-7 or gdc-6?  It seems 
like yes, but I haven't gone through the branches in detail yet.  
Thank you for the ARM support!


More information about the D.gnu mailing list