Re: how to build packages with a specific complier ?

2016-06-16 Thread Eric Heintzmann


Le 16/06/2016 à 16:39, Gianfranco Costamagna a écrit :
> Hi,
>
>
>> #   CC=gcc-6 \> #CPP=cpp-6
>> #
>> # RICHARD, IS IT CORRECT ?
>
> nope :)
>
> anyway, I did
> create a chroot with the build dependencies
> check if the library was not installed (the one you didn't like)
> git clone
> dpkg-buildpackage &> ../log
>
> installed gcc-6 stuff
> your workaround in configure
> dpkg-buildpackage &> ../log2
>
> well, gcc-6 was detected, but not used during build
>
> so I did export CC=gcc-6 CPP=cpp-6
> dpkg-buildpackage &> ../log3
>
> here I can see that gcc-6 and gpp-6 are called in configure, build and test.
>
> Attached logs for the last try and the three log log2 and log3
>
> G.
May I ask you another test, please ?

# Clone gnustep-base
git clone https://anonscm.debian.org/git/pkg-gnustep/gnustep-base.git

# Enter in gnsutep-base dir
cd gnustep-base

# Install build-dependencies
# (libffcall1-dev IS REPLACING libffi-dev)
apt-get --no-install-recommends install debhelper gnustep-make gobjc-5
libxml2-dev libxslt1-dev libgnutls28-dev zlib1g-dev m4
libavahi-client-dev libicu-dev dh-autoreconf dh-exec texinfo
texlive-latex-base texlive-fonts-recommended xml-core build-essential
libffcall1-dev

# 1- gcc-5 with libffcall1-dev

# Make sure libffi is NOT installed
apt remove libffi-dev libffi6 libffi6-dbg

# Replace libffi-dev by liffcall1-dev
# in debian/control AND debian/templates/control.m4

# Edit debian debian/rules,
# in the override_dh_auto_configure target:
#
#dh_auto_configure -- \
#   ac_cv_lib_kvm_kvm_getenvv=no \
#--disable-bfd \
# --disable-libffi \
#--enable-ffcall


# build package with default compiler

# Send me the Tests/tests.log file

2 -gcc-6 with libffcall1-dev

#rebuild package with gcc-6

# Send me the Tests/tests.log file

Thanks
Eric



Re: how to build packages with a specific complier ?

2016-06-16 Thread Eric Heintzmann


Le 16/06/2016 à 16:39, Gianfranco Costamagna a écrit :
> Hi,
>
>
>> #   CC=gcc-6 \> #CPP=cpp-6
>> #
>> # RICHARD, IS IT CORRECT ?
>
> nope :)
>
> anyway, I did
> create a chroot with the build dependencies
> check if the library was not installed (the one you didn't like)
> git clone
> dpkg-buildpackage &> ../log
>
> installed gcc-6 stuff
> your workaround in configure
> dpkg-buildpackage &> ../log2
>
> well, gcc-6 was detected, but not used during build
>
> so I did export CC=gcc-6 CPP=cpp-6
> dpkg-buildpackage &> ../log3
>
> here I can see that gcc-6 and gpp-6 are called in configure, build and test.
>
> Attached logs for the last try and the three log log2 and log3
>
> G.
Thanks to you Gianfranco, we now know that the issue is not at gcc level.



Re: how to build packages with a specific complier ?

2016-06-16 Thread Richard Frith-Macdonald


> # Edit debian debian/rules,
> # in the override_dh_auto_configure target,
> # add CC= to dh_auto_configure :
> #
> #dh_auto_configure -- \
> #   ac_cv_lib_kvm_kvm_getenvv=no \
> #--disable-bfd \
> #   CC=gcc-6 \
> #CPP=cpp-6
> #
> # RICHARD, IS IT CORRECT ?

I think so ...  if you configure gnustep-make with specific values in the CCa 
and CPP environment variables, those values should be used for the compiler 
when building gnustep software.



Re: how to build packages with a specific complier ?

2016-06-16 Thread Eric Heintzmann


Le 16/06/2016 à 10:37, Gianfranco Costamagna a écrit :
> Hi,
>
>> As far as I know, the plan is to switch to gcc-6 by default for stretch:
>> https://lists.debian.org/debian-gcc/2016/01/msg00100.html
>> so while identifying and backporting the fix to gcc-5 would be nice, I'd
>> recommend not putting too much effort there.
>
> fully agree, this is why I didn't bother about bisecting the issue.
>
> Eric, if you want a test build on a porterbox I can do it, just
> give me a list of commands to issue and I'll happily execute them for you
> (please note: porterboxes don't allow "everything", so debugging might not
> be trivial to perform)
>
> G.
First test:

# Install git-buildpackage and build-essential if needed
apt-get --no-install-recommends  install git-buildpackage build-essential

# Clone gnustep-base
gbp clone https://anonscm.debian.org/git/pkg-gnustep/gnustep-base.git

# Enter in gnsutep-base dir
cd gnustep-base

# Install build-dependencies
apt-get --no-install-recommends install debhelper gnustep-make gobjc-5
libffi-dev libxml2-dev libxslt1-dev libgnutls28-dev zlib1g-dev m4
libavahi-client-dev libicu-dev dh-autoreconf dh-exec texinfo
texlive-latex-base texlive-fonts-recommended xml-core

# 1- gcc-6 with libffi-dev

# Install gcc-6 and gobjc-6
sudo apt-get --no-install-recommends install gcc-6 gobjc-6

# Make sure libffi-dev is installed
apt-get --no-install-recommends install libffi-dev

# Make sure ffcall is not-installed
apt remove libffcall1-dev libffcall1

# Edit debian debian/rules,
# in the override_dh_auto_configure target,
# add CC= to dh_auto_configure :
#
#dh_auto_configure -- \
#   ac_cv_lib_kvm_kvm_getenvv=no \
#--disable-bfd \
#   CC=gcc-6 \
#CPP=cpp-6
#
# RICHARD, IS IT CORRECT ?

# build package
gbp buildpackage --git-ignore-new

# Send me the Tests/tests.log file
# and ../gnustep-base_1.24.9-1_s390x.build
# (you can rename them)

Thanks
Eric



Re: how to build packages with a specific complier ?

2016-06-16 Thread Gianfranco Costamagna
Hi,

>As far as I know, the plan is to switch to gcc-6 by default for stretch:
>https://lists.debian.org/debian-gcc/2016/01/msg00100.html
>so while identifying and backporting the fix to gcc-5 would be nice, I'd
>recommend not putting too much effort there.


fully agree, this is why I didn't bother about bisecting the issue.

Eric, if you want a test build on a porterbox I can do it, just
give me a list of commands to issue and I'll happily execute them for you
(please note: porterboxes don't allow "everything", so debugging might not
be trivial to perform)

G.



Re: how to build packages with a specific complier ?

2016-06-16 Thread Eric Heintzmann


Le 16/06/2016 à 10:37, Gianfranco Costamagna a écrit :
> Hi,
>
>> As far as I know, the plan is to switch to gcc-6 by default for stretch:
>> https://lists.debian.org/debian-gcc/2016/01/msg00100.html
>> so while identifying and backporting the fix to gcc-5 would be nice, I'd
>> recommend not putting too much effort there.
>
> fully agree, this is why I didn't bother about bisecting the issue.
>
> Eric, if you want a test build on a porterbox I can do it, just
> give me a list of commands to issue and I'll happily execute them for you
> (please note: porterboxes don't allow "everything", so debugging might not
> be trivial to perform)
>
> G.

Thanks Gianfranco,

There just two tests to do:

* build gnustep-make with gcc-6
I think a CC var should be set when calling configure script (Richard ?)
in debian/rules.

* replace libffi-dev build-dependency by libffcall1-dev.
(and trying to build with ggc-5 and gcc-6)

Eric




Re: how to build packages with a specific complier ?

2016-06-15 Thread Adam Borowski
On Wed, Jun 15, 2016 at 12:16:05PM +, Gianfranco Costamagna wrote:
> >It appears that some tests fail for one of my package (gmp-ecm) on one 
> >architecture (s390x):
> >after some investigation, it appears that it is a compiler issue: building 
> >with gcc-6 (instead of gcc-5)
> >causes no issue. So now I want to impose the gcc-6 to d/rules ? What is the 
> >best way to do so ?
> 
> 
> Debug and fix gcc-5 is preferred, otherwise something like
> add gcc-6 to build dependencies (and g++-6 if needed)

As far as I know, the plan is to switch to gcc-6 by default for stretch:
https://lists.debian.org/debian-gcc/2016/01/msg00100.html
so while identifying and backporting the fix to gcc-5 would be nice, I'd
recommend not putting too much effort there.

-- 
An imaginary friend squared is a real enemy.



Re: how to build packages with a specific complier ?

2016-06-15 Thread Jerome BENOIT


On 15/06/16 23:20, Eric Heintzmann wrote:
> 
> 
> Le 15/06/2016 à 23:20, Jerome BENOIT a écrit :
>>
>> On 15/06/16 20:54, Eric Heintzmann wrote:
>>> How can we debug with upstream, without any access to a 390x machine ?
>>
>> You can ask for an access to Debian Porter machine:
>> https://db.debian.org/machines.cgi
>> https://dsa.debian.org/doc/schroot/
> I'm not DD nor DM, but can I have an access to zelenka.debian.org ?
> If yes, where should I ask ?

You want to read https://dsa.debian.org/doc/guest-account/

Cheers,
Jerome

> 
> Thanks
> 



Re: how to build packages with a specific complier ?

2016-06-15 Thread Eric Heintzmann


Le 15/06/2016 à 23:20, Jerome BENOIT a écrit :
>
> On 15/06/16 20:54, Eric Heintzmann wrote:
>> How can we debug with upstream, without any access to a 390x machine ?
>
> You can ask for an access to Debian Porter machine:
> https://db.debian.org/machines.cgi
> https://dsa.debian.org/doc/schroot/
I'm not DD nor DM, but can I have an access to zelenka.debian.org ?
If yes, where should I ask ?

Thanks



Re: how to build packages with a specific complier ?

2016-06-15 Thread Jerome BENOIT


On 15/06/16 20:54, Eric Heintzmann wrote:
> How can we debug with upstream, without any access to a 390x machine ?


You can ask for an access to Debian Porter machine:
https://db.debian.org/machines.cgi
https://dsa.debian.org/doc/schroot/

But I am afraid that the hard part is to isolate the compiler issue:
for me, it was solve somewhere between gcc-5 and gcc-6.


hth, Jerome



Re: how to build packages with a specific complier ?

2016-06-15 Thread Eric Heintzmann


Le 15/06/2016 à 14:16, Gianfranco Costamagna a écrit :
> Hi,
>
>> It appears that some tests fail for one of my package (gmp-ecm) on one 
>> architecture (s390x):
>> after some investigation, it appears that it is a compiler issue: building 
>> with gcc-6 (instead of gcc-5)
>> causes no issue. So now I want to impose the gcc-6 to d/rules ? What is the 
>> best way to do so ?

I have a similar issue with gnustep-base package on s390x arch:
some tests fails.

>
> Debug and fix gcc-5 is preferred, otherwise something like
>
How can we debug with upstream, without any access to a 390x machine ?

Thanks
Eric



Re: how to build packages with a specific complier ?

2016-06-15 Thread Gianfranco Costamagna
Hi,

>It appears that some tests fail for one of my package (gmp-ecm) on one 
>architecture (s390x):
>after some investigation, it appears that it is a compiler issue: building 
>with gcc-6 (instead of gcc-5)
>causes no issue. So now I want to impose the gcc-6 to d/rules ? What is the 
>best way to do so ?


Debug and fix gcc-5 is preferred, otherwise something like


add gcc-6 to build dependencies (and g++-6 if needed)

export CC=gcc-6
export CXX=g++-6

should do the trick on most sane build systems.

G.