Re: CROSS_TOOLCHAIN=amd64-gcc fails to build after clang 3.6.0 import

2015-03-31 Thread Craig Rodrigues
On Tue, Mar 31, 2015 at 11:20 AM, Dimitry Andric d...@freebsd.org wrote:

 On 31 Mar 2015, at 20:13, Dimitry Andric d...@freebsd.org wrote:
 ...
  but then:
 
  + patch
  Hmm...  Looks like a unified diff to me...
  The text leading up to this was:
  --
  |Index: contrib/libc++/include/type_traits
  |===
  |--- contrib/libc++/include/type_traits (revision 280762)
  |+++ contrib/libc++/include/type_traits (working copy)
  --
  Patching file contrib/libc++/include/type_traits using Plan A...
  Reversed (or previously applied) patch detected!  Assume -R? [y]
  Hunk #1 succeeded at 842.
  Hunk #2 succeeded at 877.
  Hmm...  Ignoring the trailing garbage.
  done
 
  E.g., it undoes the change to type_traits that was merged in the
 subversion update.


OK, I undid the patch.  Now the clang and libc++ parts build, but I'm
still getting problems building rescue:

https://jenkins.freebsd.org/job/FreeBSD_HEAD_external_toolchain_gcc/29/console

--
Craig
___
freebsd-toolchain@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to freebsd-toolchain-unsubscr...@freebsd.org


Re: CROSS_TOOLCHAIN=amd64-gcc fails to build after clang 3.6.0 import

2015-03-31 Thread Dimitry Andric
On 31 Mar 2015, at 19:17, Craig Rodrigues rodr...@freebsd.org wrote:
 
 On Mon, Mar 23, 2015 at 12:12 AM, Dimitry Andric d...@freebsd.org wrote:
...
  Yes, this is a bug in libc++, when compiling it with newer versions of
  gcc.  I reported this upstream some time ago: https://llvm.org/PR22771
 
  Still haven't had enough time to test Eric Fiselier's patch for it.  I
  hope I see the bottom of my TODO list anytime soon...
 
  -Dimitry
 
 
 Hi,
 
 I just updated my tree to include your latest fixes such as r28064.
 
 I'm still getting this:
 
  from 
 /builds/FreeBSD_HEAD_external_toolchain_gcc/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/DeclBase.cpp:14:
 /builds/FreeBSD_HEAD_external_toolchain_gcc/obj/builds/FreeBSD_HEAD_external_toolchain_gcc/tmp/usr/include/c++/v1/type_traits:845:28:
  error:   initializing argument 1 of 'char 
 std::__1::__is_convertible_imp::__test(_Tp) [with _Tp = 
 clang::StoredDeclsList]'
  template class _Tp char  __test(_Tp);
 ^
 *** [DeclBase.o] Error code 1
 
 make[6]: stopped in 
 /builds/FreeBSD_HEAD_external_toolchain_gcc/lib/clang/libclangast
 
 Any ideas?

Yes, see your log:

Started by user rodrigc
Building remotely on jenkins10a.freebsd.org (FreeBSD-10) in workspace 
/builds/FreeBSD_HEAD_external_toolchain_gcc
Updating svn://svn.freebsd.org/base/head at revision '2015-03-31T00:49:32.815 
+'
[...]
G contrib/libc++/include/type_traits
U contrib/libarchive/libarchive/archive_read_disk_posix.c
At revision 280872
[...]

but then:

+ patch
Hmm...  Looks like a unified diff to me...
The text leading up to this was:
--
|Index: contrib/libc++/include/type_traits
|===
|--- contrib/libc++/include/type_traits (revision 280762)
|+++ contrib/libc++/include/type_traits (working copy)
--
Patching file contrib/libc++/include/type_traits using Plan A...
Reversed (or previously applied) patch detected!  Assume -R? [y]
Hunk #1 succeeded at 842.
Hunk #2 succeeded at 877.
Hmm...  Ignoring the trailing garbage.
done

E.g., it undoes the change to type_traits that was merged in the subversion 
update.

-Dimitry



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: CROSS_TOOLCHAIN=amd64-gcc fails to build after clang 3.6.0 import

2015-03-31 Thread Dimitry Andric
On 31 Mar 2015, at 22:06, Craig Rodrigues rodr...@freebsd.org wrote:
 
 On Tue, Mar 31, 2015 at 12:48 PM, Dimitry Andric d...@freebsd.org wrote:
 On 31 Mar 2015, at 21:38, Craig Rodrigues rodr...@freebsd.org wrote:
 
  On Tue, Mar 31, 2015 at 11:20 AM, Dimitry Andric d...@freebsd.org wrote:
 
  On 31 Mar 2015, at 20:13, Dimitry Andric d...@freebsd.org wrote:
  ...
  but then:
 
  + patch
  Hmm...  Looks like a unified diff to me...
  The text leading up to this was:
  --
  |Index: contrib/libc++/include/type_traits
  |===
  |--- contrib/libc++/include/type_traits (revision 280762)
  |+++ contrib/libc++/include/type_traits (working copy)
  --
  Patching file contrib/libc++/include/type_traits using Plan A...
  Reversed (or previously applied) patch detected!  Assume -R? [y]
  Hunk #1 succeeded at 842.
  Hunk #2 succeeded at 877.
  Hmm...  Ignoring the trailing garbage.
  done
 
  E.g., it undoes the change to type_traits that was merged in the
  subversion update.
 
 
  OK, I undid the patch.  Now the clang and libc++ parts build, but I'm
  still getting problems building rescue:
 
  https://jenkins.freebsd.org/job/FreeBSD_HEAD_external_toolchain_gcc/29/console
 
 Hm, that is strange.  I have just completed a build with
 amd64-xtoolchain-gcc, and apart from boot2, everything worked...
 
 What does readelf say when you run it on the cat.lo file which is
 complained about in the log?  And what happens if you delete it, and
 restart the build?
 
 See:
 https://lists.freebsd.org/pipermail/freebsd-toolchain/2015-March/001545.html

I'm suspecting this might have something to do with crunchide, or least,
the copy of crunchide that is run for this:

--- cat.lo ---
/usr/local/x86_64-freebsd/bin/ld -dc -r -o cat.lo cat_stub.o 
/builds/FreeBSD_HEAD_external_toolchain_gcc/obj/builds/FreeBSD_HEAD_external_toolchain_gcc/rescue/rescue//builds/FreeBSD_HEAD_external_toolchain_gcc/bin/cat/cat.o
crunchide -k _crunched_cat_stub cat.lo

If I look at my own build logs, it seems to pick the crunchide
executable in /usr/bin, and Makefile.inc1 does *not* build it during the
cross-tools stage if ${TARGET_ARCH} is the same as ${MACHINE_ARCH}:

.if ${TARGET_ARCH} != ${MACHINE_ARCH}
.if ${MK_RESCUE} != no || defined(RELEASEDIR)
_crunchide= usr.sbin/crunch/crunchide
.endif

However, this does not explain why my /usr/bin/crunchide seems to not
screw up cat.lo, while yours does.  As far as I can see, we're both
building this on a stable/10 amd64 box...

Maybe, as a hack, you can force cross-tools to build crunchide, by
patching Makefile.inc1 to ignore the arch check, and see what that
results in?

-Dimitry



signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: CROSS_TOOLCHAIN=amd64-gcc fails to build after clang 3.6.0 import

2015-03-27 Thread Craig Rodrigues
On Mon, Mar 23, 2015 at 12:12 AM, Dimitry Andric d...@freebsd.org wrote:

 On 23 Mar 2015, at 01:49, Craig Rodrigues rodr...@freebsd.org wrote:
 
  Hi,
 
  I tried to build HEAD with gcc 4.9.1 after the latest clang 3.6.0 import,
  and am getting
  new build failures related to C++ such as:
 
 
 /builds/FreeBSD_HEAD_external_toolchain_gcc/obj/builds/FreeBSD_HEAD_external_toolchain_gcc/tmp/usr/include/c++/v1/type_traits:881:87:
  error: use of deleted function
  'clang::Sema::TypoExprState::TypoExprState(const
  clang::Sema::TypoExprState)'
 
 
 sizeof(__is_convertible_imp::__test_T2(__is_convertible_imp::__source_T1()))
  == 1
 
  See full build logs here:
 
 https://jenkins.freebsd.org/job/FreeBSD_HEAD_external_toolchain_gcc/21/console
 
  Any ideas what the problem might be?

 Yes, this is a bug in libc++, when compiling it with newer versions of
 gcc.  I reported this upstream some time ago: https://llvm.org/PR22771

 Still haven't had enough time to test Eric Fiselier's patch for it.  I
 hope I see the bottom of my TODO list anytime soon...

 -Dimitry



Eric Fiselier's patch in http://reviews.llvm.org/D8461 works for me.
I could compile libc++ with gcc 4.9 with this patch.

There are other gcc 4.9 compilation problems, but I will report those
separately.
--
Craig
___
freebsd-toolchain@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to freebsd-toolchain-unsubscr...@freebsd.org


CROSS_TOOLCHAIN=amd64-gcc fails to build after clang 3.6.0 import

2015-03-22 Thread Craig Rodrigues
Hi,

I tried to build HEAD with gcc 4.9.1 after the latest clang 3.6.0 import,
and am getting
new build failures related to C++ such as:

/builds/FreeBSD_HEAD_external_toolchain_gcc/obj/builds/FreeBSD_HEAD_external_toolchain_gcc/tmp/usr/include/c++/v1/type_traits:881:87:
error: use of deleted function
'clang::Sema::TypoExprState::TypoExprState(const
clang::Sema::TypoExprState)'

 
sizeof(__is_convertible_imp::__test_T2(__is_convertible_imp::__source_T1()))
 == 1

See full build logs here:
https://jenkins.freebsd.org/job/FreeBSD_HEAD_external_toolchain_gcc/21/console

Any ideas what the problem might be?

Thanks.

--
Craig
___
freebsd-toolchain@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to freebsd-toolchain-unsubscr...@freebsd.org


CROSS_TOOLCHAIN=amd64-gcc fails to build after clang 3.6.0 import

2015-03-22 Thread Mark Millard
I'd sent out a note Saturday for this for powerpc64-xtoolchain-gcc and its 
powerpc64-gcc port: use of CROSS_TOOLCHAIN=powerpc64-gcc used on a powerpc64. 
No solution, just notes about what was going on after looking at the source 
code related to the messages. If you care, see:

 CROSS_TOOLCHAIN=powerpc64-gcc mishandles Substitution Failure Is Not An 
 Error when compiling clang and stops the build

( https://lists.freebsd.org/pipermail/freebsd-toolchain/2015-March/001506.html )



 sizeof(__is_convertible_imp::__test_T2(__is_convertible_imp::__source_T1()))
  == 1


is the core place involved in your example and mine but the order of 
compilation for my context means a different starting place that ended up using 
the above.

lang/gcc5 did the same when I later tried it.

I doubt that host-type or TARGET or TARGET_ARCH matter. I doubt xtoolchain vs. 
normal port matters. I expect that the issue spans a range of g++ versions.

Unfortunately that probably also means that the effectively Substitution 
Failure of this kind Is An Error rule now in use will probably be around for a 
while: it is likely not some local accident that has a quick fix. The best case 
is if it is simple but each version/variant needs to release with the change.


===
Mark Millard
markmi at dsl-only.net

___
freebsd-toolchain@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to freebsd-toolchain-unsubscr...@freebsd.org