From owner-freebsd-toolchain@freebsd.org Sun Oct 11 20:03:00 2015 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 05FB3A11169 for ; Sun, 11 Oct 2015 20:03:00 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-210-1.reflexion.net [208.70.210.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BD9F41C78 for ; Sun, 11 Oct 2015 20:02:59 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 10263 invoked from network); 11 Oct 2015 20:02:52 -0000 Received: from unknown (HELO rtc-sm-01.app.dca.reflexion.local) (10.81.150.1) by 0 (rfx-qmail) with SMTP; 11 Oct 2015 20:02:52 -0000 Received: by rtc-sm-01.app.dca.reflexion.local (Reflexion email security v7.70.2) with SMTP; Sun, 11 Oct 2015 16:02:52 -0400 (EDT) Received: (qmail 13363 invoked from network); 11 Oct 2015 20:02:51 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (AES256-SHA encrypted) SMTP; 11 Oct 2015 20:02:51 -0000 X-No-Relay: not in my network X-No-Relay: not in my network Received: from [192.168.1.109] (c-67-170-167-181.hsd1.or.comcast.net [67.170.167.181]) by iron2.pdx.net (Postfix) with ESMTPSA id 16C1D1C43E3; Sun, 11 Oct 2015 13:02:47 -0700 (PDT) From: Mark Millard Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Subject: powerpc64-xtoolchain-gcc gets ". . . include/c++/v1/utility:284:28: error: use of deleted function . . ." (llvm-cov 3.6.1's CodeCoverage.cpp) Message-Id: <367B6C91-B466-4996-A01A-61DD6CD26F2A@dsl-only.net> Date: Sun, 11 Oct 2015 13:02:50 -0700 To: FreeBSD PowerPC ML , FreeBSD Toolchain Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) X-Mailer: Apple Mail (2.2104) X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 11 Oct 2015 20:03:00 -0000 For a amd64 11.0 context doing make -j 6 CROSS_TOOLCHAIN=3Dpowerpc64-gcc \ -DWITH_GCC -DWITH_GCC_BOOTSTRAP -DWITH_GNUCXX \ -DWITHCLANG -DWITHOUT_CLANG_BOOTSTRAP -DWITH_CLANG_FULL = -DWITHOUT_CLANG_IS_CC \ -DWITH_CLANG_EXTRAS -DWITH_LLDB \ -DWITHOUT_BOOT -DWITHOUT_LIB32 \ buildworld buildkernel KERNCONF=3DGENERIC64-NODBG \ TARGET=3Dpowerpc TARGET_ARCH=3Dpowerpc64 the results are the following: [The clang/lldb being built is still V3.6.1 based for this context. = Overall environment context details are given later. But I will note here that = powerpc64-xtoolchain-gcc/powerpc64-gcc is based on gcc5.2 these days.] In file included from = /usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/algorithm:627:0,= from = /usr/src/usr.bin/clang/llvm-cov/../../../contrib/llvm/include/llvm/ADT/Str= ingRef.h:13, from = /usr/src/usr.bin/clang/llvm-cov/../../../contrib/llvm/include/llvm/Support= /raw_ostream.h:17, from = /usr/src/usr.bin/clang/llvm-cov/../../../contrib/llvm/tools/llvm-cov/Rende= ringSupport.h:13, from = /usr/src/usr.bin/clang/llvm-cov/../../../contrib/llvm/tools/llvm-cov/CodeC= overage.cpp:16: /usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/utility: In = instantiation of 'std::__1::pair<_T1, _T2>::pair(const = std::__1::pair<_T1, _T2>&) [with _T1 =3D std::__1::basic_string, std::__1::allocator >; _T2 =3D = std::__1::unique_ptr]': . . . (omited "required from" messages) . . . = /usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/utility:284:28: = error: use of deleted function 'constexpr = std::__1::unique_ptr::unique_ptr(const = std::__1::unique_ptr&)' second(__p.second) ^ In file included from = /usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/algorithm:628:0,= from = /usr/src/usr.bin/clang/llvm-cov/../../../contrib/llvm/include/llvm/ADT/Str= ingRef.h:13, from = /usr/src/usr.bin/clang/llvm-cov/../../../contrib/llvm/include/llvm/Support= /raw_ostream.h:17, from = /usr/src/usr.bin/clang/llvm-cov/../../../contrib/llvm/tools/llvm-cov/Rende= ringSupport.h:13, from = /usr/src/usr.bin/clang/llvm-cov/../../../contrib/llvm/tools/llvm-cov/CodeC= overage.cpp:16: = /usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/c++/v1/memory:2459:29: = note: 'constexpr = std::__1::unique_ptr::unique_ptr(const = std::__1::unique_ptr&)' is implicitly declared as = deleted because 'std::__1::unique_ptr' declares a = move constructor or move assignment operator class _LIBCPP_TYPE_VIS_ONLY unique_ptr The context details follow. Mac OS X 10.10.5 using a VirtualBox V5.0.4 VM with. . . root@FreeBSDx64:/usr/src # freebsd-version -ku; uname -aKU 11.0-CURRENT 11.0-CURRENT FreeBSD FreeBSDx64 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r288459: Sat Oct = 3 03:42:08 PDT 2015 = root@FreeBSDx64:/usr/obj/usr/src/sys/GENERIC-NODEBUG amd64 1100079 = 1100079 root@FreeBSDx64:/usr/src # svnlite info /usr/src Path: . Working Copy Root Path: /usr/src URL: https://svn.freebsd.org/base/head Relative URL: ^/head Repository Root: https://svn.freebsd.org/base Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f Revision: 288459 Node Kind: directory Schedule: normal Last Changed Author: gjb Last Changed Rev: 288459 Last Changed Date: 2015-10-01 12:48:10 -0700 (Thu, 01 Oct 2015) root@FreeBSDx64:/usr/src # more /etc/src.conf # World: NO_WERROR=3D # Kernel: WERROR=3D root@FreeBSDx64:/usr/src # more /etc/make.conf /etc/make.conf: No such file or directory root@FreeBSDx64:/usr/src # svnlite info /usr/ports Path: /usr/ports Working Copy Root Path: /usr/ports URL: https://svn.freebsd.org/ports/head Relative URL: ^/head Repository Root: https://svn.freebsd.org/ports Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5 Revision: 398559 Node Kind: directory Schedule: normal Last Changed Author: jbeich Last Changed Rev: 398559 Last Changed Date: 2015-10-03 17:42:55 -0700 (Sat, 03 Oct 2015) root@FreeBSDx64:/usr/src # portmaster --list-origins net/avahi devel/boost-all lang/clang37 ports-mgmt/dialog4ports lang/gcc5 devel/git-lite x11/lumina sysutils/lxterminal www/midori net/netatalk3 ports-mgmt/pkg ports-mgmt/portmaster devel/powerpc64-xtoolchain-gcc devel/qtcreator security/sudo mail/thunderbird emulators/virtualbox-ose-additions Very little is non-default source code. . . root@FreeBSDx64:/usr/src # svnlite status M lib/csu/powerpc64/Makefile ? sys/arm/conf/RPI2-NODBG M sys/boot/powerpc/Makefile.inc ? sys/powerpc/conf/GENERIC64-NODBG root@FreeBSDx64:/usr/src # svnlite status /usr/ports ? /usr/ports/ion root@FreeBSDx64:/usr/src # more = /usr/src/sys/powerpc/conf/GENERIC64-NODBG=20 . . . (comments omitted) . . . include GENERIC64 ident GENERIC-NODBG nooptions INVARIANTS nooptions INVARIANT_SUPPORT nooptions WITNESS nooptions WITNESS_SKIPSPIN nooptions DEADLKRES (The copy->paste sequence for the below diffs likely turned tabs into = spaces.) root@FreeBSDx64:/usr/src # svnlite diff sys/boot/powerpc/Makefile.inc=20 Index: sys/boot/powerpc/Makefile.inc =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- sys/boot/powerpc/Makefile.inc (revision 288459) +++ sys/boot/powerpc/Makefile.inc (working copy) @@ -2,7 +2,7 @@ .if ${MACHINE_ARCH} =3D=3D "powerpc64" CFLAGS+=3D -m32 -mcpu=3Dpowerpc -LDFLAGS+=3D -m elf32ppc_fbsd +LDFLAGS+=3D -Wl,-m -Wl,elf32ppc_fbsd -Wl,-M,--verbose .endif .include "../Makefile.inc" The following is my personal, local workaround for = /usr/src/lib/csu/powerpc64/Makefile forcing use of the gcc command even = when the context does not have one. root@FreeBSDx64:/usr/src # svnlite diff /usr/src Index: /usr/src/lib/csu/powerpc64/Makefile =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- /usr/src/lib/csu/powerpc64/Makefile (revision 288459) +++ /usr/src/lib/csu/powerpc64/Makefile (working copy) @@ -13,8 +13,8 @@ # clang doesn't support -mlongcall, and testing shows a clang linked = with a # clang-built csu segfaults, this must currently be compiled with gcc. = Once # clang supports -mlongcall, or we get a fixed ld, this can be = revisited. -CC:=3D gcc -COMPILER_TYPE:=3D gcc +#CC:=3D gcc +#COMPILER_TYPE:=3D gcc FILES=3D ${OBJS} FILESMODE=3D ${LIBMODE} =3D=3D=3D Mark Millard markmi at dsl-only.net From owner-freebsd-toolchain@freebsd.org Mon Oct 12 02:17:49 2015 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3B9429D2F28 for ; Mon, 12 Oct 2015 02:17:49 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-210-2.reflexion.net [208.70.210.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EE56CB19 for ; Mon, 12 Oct 2015 02:17:47 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 31405 invoked from network); 12 Oct 2015 02:17:46 -0000 Received: from unknown (HELO rtc-sm-01.app.dca.reflexion.local) (10.81.150.1) by 0 (rfx-qmail) with SMTP; 12 Oct 2015 02:17:46 -0000 Received: by rtc-sm-01.app.dca.reflexion.local (Reflexion email security v7.70.2) with SMTP; Sun, 11 Oct 2015 22:17:46 -0400 (EDT) Received: (qmail 3704 invoked from network); 12 Oct 2015 02:17:45 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (AES256-SHA encrypted) SMTP; 12 Oct 2015 02:17:45 -0000 X-No-Relay: not in my network X-No-Relay: not in my network Received: from [192.168.1.109] (c-67-170-167-181.hsd1.or.comcast.net [67.170.167.181]) by iron2.pdx.net (Postfix) with ESMTPSA id 8FB3D1C43E4; Sun, 11 Oct 2015 19:17:39 -0700 (PDT) From: Mark Millard Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Subject: powerpc64-xtoolchain-gcc/powerpc64-gcc gets libcxxrt/guard.cc:104:15: error: expected constructor, destructor, . . . for lib32 (clang 3.6.1 context) Message-Id: Date: Sun, 11 Oct 2015 19:17:44 -0700 To: FreeBSD PowerPC ML , FreeBSD Toolchain Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) X-Mailer: Apple Mail (2.2104) X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Oct 2015 02:17:49 -0000 For an amd64 11.0 context (still having clang 3.6.1 source, not 3.7) = doing make -j 6 CROSS_TOOLCHAIN=3Dpowerpc64-gcc \ -DWITH_GCC -DWITH_GCC_BOOTSTRAP -DWITH_GNUCXX \ -DWITHCLANG -DWITHOUT_CLANG_BOOTSTRAP -DWITH_CLANG_FULL = -DWITHOUT_CLANG_IS_CC \ -DWITHOUT_CLANG_EXTRAS -DWITHOUT_LLDB \ -DWITHOUT_BOOT -DWITH_LIB32 \ buildworld buildkernel KERNCONF=3DGENERIC64-NODBG \ TARGET=3Dpowerpc TARGET_ARCH=3Dpowerpc64 the results for this (a test of attempting to also build lib32) are the = following: [powerpc64-xtoolchain-gcc/powerpc64-gcc is based on gcc5.2 these days. = More context details are given later.] --- guard.po --- /usr/local/bin/powerpc64-portbld-freebsd11.0-g++ -m32 -mcpu=3Dpowerpc = -DCOMPAT_32BIT -isystem = /usr/obj/powerpc.powerpc64/usr/src/lib32/usr/include/ = -L/usr/obj/powerpc.powerpc64/usr/src/lib32/usr/lib32 = -B/usr/obj/powerpc.powerpc64/usr/src/lib32/usr/lib32 = --sysroot=3D/usr/obj/powerpc.powerpc64/usr/src/tmp -pg -O2 -pipe = -I/usr/src/lib/libcxxrt/../../contrib/libcxxrt -fstack-protector -c = /usr/src/lib/libcxxrt/../../contrib/libcxxrt/guard.cc -o guard.po /usr/src/lib/libcxxrt/../../contrib/libcxxrt/guard.cc:104:15: error: = expected constructor, destructor, or type conversion before '(' token _Static_assert(sizeof(guard_t) =3D=3D sizeof(uint64_t), ""); ^ *** [guard.po] Error code 1 make[4]: stopped in /usr/src/lib/libcxxrt 1 error The context details follow. Mac OS X 10.10.5 using a VirtualBox V5.0.4 VM with. . . root@FreeBSDx64:/usr/src # freebsd-version -ku; uname -aKU 11.0-CURRENT 11.0-CURRENT FreeBSD FreeBSDx64 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r288459: Sat Oct = 3 03:42:08 PDT 2015 = root@FreeBSDx64:/usr/obj/usr/src/sys/GENERIC-NODEBUG amd64 1100079 = 1100079 root@FreeBSDx64:/usr/src # svnlite info /usr/src Path: . Working Copy Root Path: /usr/src URL: https://svn.freebsd.org/base/head Relative URL: ^/head Repository Root: https://svn.freebsd.org/base Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f Revision: 288459 Node Kind: directory Schedule: normal Last Changed Author: gjb Last Changed Rev: 288459 Last Changed Date: 2015-10-01 12:48:10 -0700 (Thu, 01 Oct 2015) root@FreeBSDx64:/usr/src # more /etc/src.conf # World: NO_WERROR=3D # Kernel: WERROR=3D root@FreeBSDx64:/usr/src # more /etc/make.conf /etc/make.conf: No such file or directory root@FreeBSDx64:/usr/src # svnlite info /usr/ports Path: /usr/ports Working Copy Root Path: /usr/ports URL: https://svn.freebsd.org/ports/head Relative URL: ^/head Repository Root: https://svn.freebsd.org/ports Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5 Revision: 398559 Node Kind: directory Schedule: normal Last Changed Author: jbeich Last Changed Rev: 398559 Last Changed Date: 2015-10-03 17:42:55 -0700 (Sat, 03 Oct 2015) root@FreeBSDx64:/usr/src # portmaster --list-origins net/avahi devel/boost-all lang/clang37 ports-mgmt/dialog4ports lang/gcc5 devel/git-lite x11/lumina sysutils/lxterminal www/midori net/netatalk3 ports-mgmt/pkg ports-mgmt/portmaster devel/powerpc64-xtoolchain-gcc devel/qtcreator security/sudo mail/thunderbird emulators/virtualbox-ose-additions Very little is non-default source code. . . root@FreeBSDx64:/usr/src # svnlite status M lib/csu/powerpc64/Makefile ? sys/arm/conf/RPI2-NODBG M sys/boot/powerpc/Makefile.inc ? sys/powerpc/conf/GENERIC64-NODBG root@FreeBSDx64:/usr/src # svnlite status /usr/ports ? /usr/ports/ion root@FreeBSDx64:/usr/src # more = /usr/src/sys/powerpc/conf/GENERIC64-NODBG=20 . . . (comments omitted) . . . include GENERIC64 ident GENERIC-NODBG nooptions INVARIANTS nooptions INVARIANT_SUPPORT nooptions WITNESS nooptions WITNESS_SKIPSPIN nooptions DEADLKRES (The copy->paste sequence for the below diffs likely turned tabs into = spaces.) root@FreeBSDx64:/usr/src # svnlite diff sys/boot/powerpc/Makefile.inc=20 Index: sys/boot/powerpc/Makefile.inc =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- sys/boot/powerpc/Makefile.inc (revision 288459) +++ sys/boot/powerpc/Makefile.inc (working copy) @@ -2,7 +2,7 @@ .if ${MACHINE_ARCH} =3D=3D "powerpc64" CFLAGS+=3D -m32 -mcpu=3Dpowerpc -LDFLAGS+=3D -m elf32ppc_fbsd +LDFLAGS+=3D -Wl,-m -Wl,elf32ppc_fbsd -Wl,-M,--verbose .endif .include "../Makefile.inc" The following is my personal, local workaround for = /usr/src/lib/csu/powerpc64/Makefile forcing use of the gcc command even = when the context does not have one. root@FreeBSDx64:/usr/src # svnlite diff /usr/src Index: /usr/src/lib/csu/powerpc64/Makefile =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- /usr/src/lib/csu/powerpc64/Makefile (revision 288459) +++ /usr/src/lib/csu/powerpc64/Makefile (working copy) @@ -13,8 +13,8 @@ # clang doesn't support -mlongcall, and testing shows a clang linked = with a # clang-built csu segfaults, this must currently be compiled with gcc. = Once # clang supports -mlongcall, or we get a fixed ld, this can be = revisited. -CC:=3D gcc -COMPILER_TYPE:=3D gcc +#CC:=3D gcc +#COMPILER_TYPE:=3D gcc FILES=3D ${OBJS} FILESMODE=3D ${LIBMODE} =3D=3D=3D Mark Millard markmi at dsl-only.net From owner-freebsd-toolchain@freebsd.org Mon Oct 12 08:21:28 2015 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B7832A11D16; Mon, 12 Oct 2015 08:21:28 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from theravensnest.org (theraven.freebsd.your.org [216.14.102.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "cloud.theravensnest.org", Issuer "StartCom Class 1 Primary Intermediate Server CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 7F7A11C89; Mon, 12 Oct 2015 08:21:27 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from [192.168.0.7] (cpc16-cmbg15-2-0-cust60.5-4.cable.virginm.net [86.5.162.61]) (authenticated bits=0) by theravensnest.org (8.15.2/8.15.2) with ESMTPSA id t9C8LFR4033616 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 12 Oct 2015 08:21:17 GMT (envelope-from theraven@FreeBSD.org) X-Authentication-Warning: theravensnest.org: Host cpc16-cmbg15-2-0-cust60.5-4.cable.virginm.net [86.5.162.61] claimed to be [192.168.0.7] Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Subject: Re: powerpc64-xtoolchain-gcc/powerpc64-gcc gets libcxxrt/guard.cc:104:15: error: expected constructor, destructor, . . . for lib32 (clang 3.6.1 context) From: David Chisnall In-Reply-To: Date: Mon, 12 Oct 2015 09:21:11 +0100 Cc: FreeBSD PowerPC ML , FreeBSD Toolchain Content-Transfer-Encoding: quoted-printable Message-Id: References: To: Mark Millard X-Mailer: Apple Mail (2.2104) X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Oct 2015 08:21:28 -0000 On 12 Oct 2015, at 03:17, Mark Millard wrote: >=20 > /usr/src/lib/libcxxrt/../../contrib/libcxxrt/guard.cc:104:15: error: = expected constructor, destructor, or type conversion before '(' token > _Static_assert(sizeof(guard_t) =3D=3D sizeof(uint64_t), ""); I think that this is the error that you get with old gcc when a static = assert fails. What is the type of guard_t on PPC64? It may simply be = that gcc isn=E2=80=99t providing the correct #defines to let the file = know that it=E2=80=99s a 64-bit target. David From owner-freebsd-toolchain@freebsd.org Tue Oct 13 11:36:23 2015 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A02B2A1166C for ; Tue, 13 Oct 2015 11:36:23 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-210-1.reflexion.net [208.70.210.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4C43E987 for ; Tue, 13 Oct 2015 11:36:22 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 2324 invoked from network); 13 Oct 2015 11:36:14 -0000 Received: from unknown (HELO mail-cs-02.app.dca.reflexion.local) (10.81.19.2) by 0 (rfx-qmail) with SMTP; 13 Oct 2015 11:36:14 -0000 Received: by mail-cs-02.app.dca.reflexion.local (Reflexion email security v7.70.2) with SMTP; Tue, 13 Oct 2015 07:36:14 -0400 (EDT) Received: (qmail 17463 invoked from network); 13 Oct 2015 11:36:14 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (AES256-SHA encrypted) SMTP; 13 Oct 2015 11:36:14 -0000 X-No-Relay: not in my network X-No-Relay: not in my network X-No-Relay: not in my network X-No-Relay: not in my network Received: from [192.168.1.106] (c-67-170-167-181.hsd1.or.comcast.net [67.170.167.181]) by iron2.pdx.net (Postfix) with ESMTPSA id 7CB281C43AF; Tue, 13 Oct 2015 04:36:12 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Subject: Re: powerpc64-xtoolchain-gcc/powerpc64-gcc gets libcxxrt/guard.cc:104:15: error: expected constructor, destructor, . . . for lib32 (clang 3.6.1 context) From: Mark Millard In-Reply-To: Date: Tue, 13 Oct 2015 04:36:13 -0700 Cc: FreeBSD PowerPC ML , FreeBSD Toolchain Content-Transfer-Encoding: quoted-printable Message-Id: <15CF1760-66B9-477B-B382-7F0C41D7C699@dsl-only.net> References: To: David Chisnall , Baptiste Daroussin X-Mailer: Apple Mail (2.2104) X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Oct 2015 11:36:23 -0000 On 2015-Oct-12, at 01:21 AM, David Chisnall = wrote: > On 12 Oct 2015, at 03:17, Mark Millard wrote: >>=20 >> /usr/src/lib/libcxxrt/../../contrib/libcxxrt/guard.cc:104:15: error: = expected constructor, destructor, or type conversion before '(' token >> _Static_assert(sizeof(guard_t) =3D=3D sizeof(uint64_t), ""); >=20 > I think that this is the error that you get with old gcc when a static = assert fails. What is the type of guard_t on PPC64? It may simply be = that gcc isn=E2=80=99t providing the correct #defines to let the file = know that it=E2=80=99s a 64-bit target. >=20 > David Turns out that _Static_assert is a C11 keyword (not before), and not a = C++ keyword at all, not c++11 nor c++14 nor c++17 that I=E2=80=99ve = found. So far I=E2=80=99ve not found any FreeBSD specific definition = that effectively adds it to c++ for FreeBSD. lines 100 through 104 of guard.cc (from -r276417, 2014-Dec-30 by bapt) = are: typedef struct { uint32_t init_half; uint32_t lock_half; } guard_t; _Static_assert(sizeof(guard_t) =3D=3D sizeof(uint64_t), ""); which would seem to be unlikely to have sizeof(guard_t) =3D=3D = sizeof(uint64_t) be false unless there was unusual padding. This is for a not __LITTLE_ENDIAN__, not __arm__, not _LP64 context = (following the #if. . . structure those lines are contained in). powerpc = code (lib32 code under powerpc64) fits that. The compiler in use was a c++ one (well, g++, 5.2 vintage) in use for = c++ source code (.cc) compiled with -m32: > /usr/local/bin/powerpc64-portbld-freebsd11.0-g++ -m32 -mcpu=3Dpowerpc = -DCOMPAT_32BIT -isystem = /usr/obj/powerpc.powerpc64/usr/src/lib32/usr/include/ = -L/usr/obj/powerpc.powerpc64/usr/src/lib32/usr/lib32 = -B/usr/obj/powerpc.powerpc64/usr/src/lib32/usr/lib32 = --sysroot=3D/usr/obj/powerpc.powerpc64/usr/src/tmp -pg -O2 -pipe = -I/usr/src/lib/libcxxrt/../../contrib/libcxxrt -fstack-protector -c = /usr/src/lib/libcxxrt/../../contrib/libcxxrt/guard.cc -o guard.po > /usr/src/lib/libcxxrt/../../contrib/libcxxrt/guard.cc:104:15: error: = expected constructor, destructor, or type conversion before '(' token > _Static_assert(sizeof(guard_t) =3D=3D sizeof(uint64_t), ""); > ^ > *** [guard.po] Error code 1 I will note that no 4.2.1 or other old gcc for compiling to = powerpc/powerpc64 from amd64 was present. As near as I can tell, for FreeBSD as it is, _Static_assert should not = be used for a c++ context such as guard.cc. But 32 bit powerpc contexts = may be the primary examples with _Static_assert in use that way. =3D=3D=3D Mark Millard markmi at dsl-only.net From owner-freebsd-toolchain@freebsd.org Wed Oct 14 07:34:42 2015 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 21891A12578 for ; Wed, 14 Oct 2015 07:34:42 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-210-2.reflexion.net [208.70.210.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D17581604 for ; Wed, 14 Oct 2015 07:34:41 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 9070 invoked from network); 14 Oct 2015 07:34:38 -0000 Received: from unknown (HELO mail-cs-01.app.dca.reflexion.local) (10.81.19.1) by 0 (rfx-qmail) with SMTP; 14 Oct 2015 07:34:38 -0000 Received: by mail-cs-01.app.dca.reflexion.local (Reflexion email security v7.70.2) with SMTP; Wed, 14 Oct 2015 03:34:38 -0400 (EDT) Received: (qmail 8215 invoked from network); 14 Oct 2015 07:34:38 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (AES256-SHA encrypted) SMTP; 14 Oct 2015 07:34:38 -0000 X-No-Relay: not in my network X-No-Relay: not in my network X-No-Relay: not in my network X-No-Relay: not in my network Received: from [192.168.1.106] (c-67-170-167-181.hsd1.or.comcast.net [67.170.167.181]) by iron2.pdx.net (Postfix) with ESMTPSA id 3C4221C43BC; Wed, 14 Oct 2015 00:34:37 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Subject: Re: powerpc64-xtoolchain-gcc/powerpc64-gcc gets libcxxrt/guard.cc:104:15: error: expected constructor, destructor, . . . for lib32 (clang 3.6.1 context) From: Mark Millard In-Reply-To: <15CF1760-66B9-477B-B382-7F0C41D7C699@dsl-only.net> Date: Wed, 14 Oct 2015 00:34:36 -0700 Cc: FreeBSD PowerPC ML , FreeBSD Toolchain Content-Transfer-Encoding: quoted-printable Message-Id: <00A78528-C61E-494C-B471-F2D86759D4E9@dsl-only.net> References: <15CF1760-66B9-477B-B382-7F0C41D7C699@dsl-only.net> To: David Chisnall , Baptiste Daroussin X-Mailer: Apple Mail (2.2104) X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 14 Oct 2015 07:34:42 -0000 David Chisnall wrote (Mon Oct 12 08:21:28 UTC 2015): > On 12 Oct 2015, at 03:17, Mark Millard wrote: > >=20 > > /usr/src/lib/libcxxrt/../../contrib/libcxxrt/guard.cc:104:15: error: = expected constructor, destructor, or type conversion before '(' token > > _Static_assert(sizeof(guard_t) =3D=3D sizeof(uint64_t), ""); >=20 > I think that this is the error that you get with old gcc when a static = assert fails. What is the type of guard_t on PPC64? It may simply be = that gcc isn=E2=80=99t providing the correct #defines to let the file = know that it=E2=80=99s a 64-bit target. >=20 > David and I had replied about _Static_assert not being a C++ keyword and not = being created for C++ by FreeBSD=E2=80=99s current. But C++11's = static_assert "may appear at block scope (as a block declration) and = inside a class body (as a member declaration" (cppreference.com). It is = not valid at file scope. And unless the compile is explicitly or = implicitly specified as a c++11 or later style of compile static_assert = is then not part of the C++ vintage in use. /usr/local/bin/powerpc64-portbld-freebsd11.0-g++ -m32 -mcpu=3Dpowerpc = -DCOMPAT_32BIT -isystem = /usr/obj/powerpc.powerpc64/usr/src/lib32/usr/include/ = -L/usr/obj/powerpc.powerpc64/usr/src/lib32/usr/lib32 = -B/usr/obj/powerpc.powerpc64/usr/src/lib32/usr/lib32 = --sysroot=3D/usr/obj/powerpc.powerpc64/usr/src/tmp -O2 -pipe = -I/usr/src/lib/libcxxrt/../../contrib/libcxxrt -fstack-protector -c = /usr/src/lib/libcxxrt/../../contrib/libcxxrt/guard.cc -o guard.o does not specify -std=3Dc++11 or -std=3Dgnu++11 or the like so = static_assert is not enabled as part of the language vintage used. So = moving into block scope would not be sufficient of itself. So I tried simply removing the _Static_assert line that was in guard.cc: Index: /usr/src/contrib/libcxxrt/guard.cc =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- /usr/src/contrib/libcxxrt/guard.cc (revision 288459) +++ /usr/src/contrib/libcxxrt/guard.cc (working copy) @@ -101,7 +101,6 @@ uint32_t init_half; uint32_t lock_half; } guard_t; -_Static_assert(sizeof(guard_t) =3D=3D sizeof(uint64_t), ""); static const uint32_t LOCKED =3D 1; static const uint32_t INITIALISED =3D static_cast(1) << = 24; =20 =09 This allowed the guard.cc compile in question to complete and more. = (I=E2=80=99m not claiming FreeBSD should skip having a check for a size = mismatch someplace.) But eventually the build eventually got: --- lib/libcrypt__L --- CC=3D'/usr/local/bin/powerpc64-portbld-freebsd11.0-gcc -m32 = -mcpu=3Dpowerpc -DCOMPAT_32BIT -isystem = /usr/obj/powerpc.powerpc64/usr/src/lib32/usr/include/ = -L/usr/obj/powerpc.powerpc64/usr/src/lib32/usr/lib32 = -B/usr/obj/powerpc.powerpc64/usr/src/lib32/usr/lib32 = --sysroot=3D/usr/obj/powerpc.powerpc64/usr/src/tmp ' mkdep -f .depend -a = -I/usr/src/lib/libcrypt/../libmd -I/usr/src/lib/libcrypt/../libutil = -I/usr/src/lib/libcrypt -DHAS_DES -DHAS_BLOWFISH -DMD4Init=3D__MD4Init = -DMD4Final=3D__MD4Final -DMD4Update=3D__MD4Update -DMD4Pad=3D__MD4Pad = -DMD5Init=3D__MD5Init -DMD5Final=3D__MD5Final -DMD5Update=3D__MD5Update = -DMD5Pad=3D__MD5Pad -DSHA256_Init=3D__SHA256_Init = -DSHA256_Final=3D__SHA256_Final -DSHA256_Update=3D__SHA256_Update = -DSHA512_Init=3D__SHA512_Init -DSHA512_Final=3D__SHA512_Final = -DSHA512_Update=3D__SHA512_Update -std=3Dgnu99 = /usr/src/lib/libcrypt/crypt.c /usr/src/lib/libcrypt/misc.c = /usr/src/lib/libcrypt/crypt-md5.c /usr/src/lib/libcrypt/../libmd/md5c.c = /usr/src/lib/libcrypt/crypt-nthash.c = /usr/src/lib/libcrypt/../libmd/md4c.c = /usr/src/lib/libcrypt/crypt-sha256.c = /usr/src/lib/libcrypt/../../sys/crypto/sha2/sha256c.c = /usr/src/lib/libcrypt/crypt-sha512.c = /usr/src/lib/libcrypt/../libmd/sha512c.c = /usr/src/lib/libcrypt/../../secure/lib/libcrypt/crypt-des.c = /usr/src/lib/libcrypt/../../secure/lib/libcrypt/crypt-blowfish.c = /usr/src/lib/libcrypt/../../secure/lib/libcrypt/blowfish.c . . . --- lib/libcrypt__L --- /usr/src/lib/libcrypt/crypt-sha256.c:38:20: fatal error: sha256.h: No = such file or directory . . . --- lib/libcrypt__L --- mkdep: compile failed *** [.depend] Error code 1 make[4]: stopped in /usr/src/lib/libcrypt 1 error Note. . . root@FreeBSDx64:/usr/src # find / -name sha256.h -print | more /usr/obj/powerpc.powerpc64/usr/src/tmp/legacy/usr/include/sha256.h /usr/obj/powerpc.powerpc64/usr/src/tmp/usr/include/sha256.h /usr/obj/usr/src/tmp/legacy/usr/include/sha256.h /usr/obj/usr/src/tmp/usr/include/sha256.h /usr/include/sha256.h /usr/src/contrib/wpa/src/crypto/sha256.h /usr/src/sys/crypto/sha2/sha256.h and the lack of a = /usr/obj/powerpc.powerpc64/usr/src/lib32/usr/include/sha256.h for the = -isystem to find. To be explicit about no amd64 to powerpc64 cross compling gcc being = present for the build to execute . . . For an amd64 11.0 context doing root@FreeBSDx64:/usr/src # yes|make -j 6 CROSS_TOOLCHAIN=3Dpowerpc64-gcc = \ -DWITHOUT_GCC -DWITHOUT_GCC_BOOTSTRAP -DWITHOUT_GNUCXX \ -DWITHOUT_CLANG -DWITHOUT_CLANG_BOOTSTRAP -DWITHOUT_CLANG_FULL = -DWITHOUT_CLANG_IS_CC \ -DWITHOUT_CLANG_EXTRAS -DWITHOUT_LLDB \ -DWITHOUT_BOOT -DWITHOUT_LIB32 \ delete-old KERNCONF=3DGENERIC64-NODBG \ TARGET=3Dpowerpc TARGET_ARCH=3Dpowerpc64 . . . root@FreeBSDx64:/usr/src # make -j 6 CROSS_TOOLCHAIN=3Dpowerpc64-gcc \ -DWITHOUT_GCC -DWITHOUT_GCC_BOOTSTRAP -DWITHOUT_GNUCXX \ -DWITHOUT_CLANG -DWITHOUT_CLANG_BOOTSTRAP -DWITHOUT_CLANG_FULL = -DWITHOUT_CLANG_IS_CC \ -DWITHOUT_CLANG_EXTRAS -DWITHOUT_LLDB \ -DWITHOUT_BOOT -DWITH_LIB32 \ buildworld buildkernel KERNCONF=3DGENERIC64-NODBG \ TARGET=3Dpowerpc TARGET_ARCH=3Dpowerpc64 The context details follow. Mac OS X 10.10.5 using a VirtualBox V5.0.4 VM with. . . root@FreeBSDx64:/usr/src # freebsd-version -ku; uname -aKU 11.0-CURRENT 11.0-CURRENT FreeBSD FreeBSDx64 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r288459: Sat Oct = 3 03:42:08 PDT 2015 = root@FreeBSDx64:/usr/obj/usr/src/sys/GENERIC-NODEBUG amd64 1100079 = 1100079 root@FreeBSDx64:/usr/src # svnlite info /usr/src Path: . Working Copy Root Path: /usr/src URL: https://svn.freebsd.org/base/head Relative URL: ^/head Repository Root: https://svn.freebsd.org/base Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f Revision: 288459 Node Kind: directory Schedule: normal Last Changed Author: gjb Last Changed Rev: 288459 Last Changed Date: 2015-10-01 12:48:10 -0700 (Thu, 01 Oct 2015) root@FreeBSDx64:/usr/src # more /etc/src.conf # World: NO_WERROR=3D # Kernel: WERROR=3D root@FreeBSDx64:/usr/src # more /etc/make.conf /etc/make.conf: No such file or directory root@FreeBSDx64:/usr/src # svnlite info /usr/ports Path: /usr/ports Working Copy Root Path: /usr/ports URL: https://svn.freebsd.org/ports/head Relative URL: ^/head Repository Root: https://svn.freebsd.org/ports Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5 Revision: 398559 Node Kind: directory Schedule: normal Last Changed Author: jbeich Last Changed Rev: 398559 Last Changed Date: 2015-10-03 17:42:55 -0700 (Sat, 03 Oct 2015) root@FreeBSDx64:/usr/src # portmaster --list-origins net/avahi devel/boost-all lang/clang37 ports-mgmt/dialog4ports lang/gcc5 devel/git-lite x11/lumina sysutils/lxterminal www/midori net/netatalk3 ports-mgmt/pkg ports-mgmt/portmaster devel/powerpc64-xtoolchain-gcc devel/qtcreator security/sudo mail/thunderbird emulators/virtualbox-ose-additions Very little is non-default source code. . . root@FreeBSDx64:/usr/src # svnlite status M lib/csu/powerpc64/Makefile ? sys/arm/conf/RPI2-NODBG M sys/boot/powerpc/Makefile.inc ? sys/powerpc/conf/GENERIC64-NODBG root@FreeBSDx64:/usr/src # svnlite status /usr/ports ? /usr/ports/ion root@FreeBSDx64:/usr/src # more = /usr/src/sys/powerpc/conf/GENERIC64-NODBG=20 . . . (comments omitted) . . . include GENERIC64 ident GENERIC-NODBG nooptions INVARIANTS nooptions INVARIANT_SUPPORT nooptions WITNESS nooptions WITNESS_SKIPSPIN nooptions DEADLKRES (The copy->paste sequence for the below diffs likely turned tabs into = spaces.) root@FreeBSDx64:/usr/src # svnlite diff sys/boot/powerpc/Makefile.inc=20 Index: sys/boot/powerpc/Makefile.inc =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- sys/boot/powerpc/Makefile.inc (revision 288459) +++ sys/boot/powerpc/Makefile.inc (working copy) @@ -2,7 +2,7 @@ .if ${MACHINE_ARCH} =3D=3D "powerpc64" CFLAGS+=3D -m32 -mcpu=3Dpowerpc -LDFLAGS+=3D -m elf32ppc_fbsd +LDFLAGS+=3D -Wl,-m -Wl,elf32ppc_fbsd -Wl,-M,--verbose .endif .include "../Makefile.inc" The following is my personal, local workaround for = /usr/src/lib/csu/powerpc64/Makefile forcing use of the gcc command even = when the context does not have one. root@FreeBSDx64:/usr/src # svnlite diff /usr/src Index: /usr/src/lib/csu/powerpc64/Makefile =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- /usr/src/lib/csu/powerpc64/Makefile (revision 288459) +++ /usr/src/lib/csu/powerpc64/Makefile (working copy) @@ -13,8 +13,8 @@ # clang doesn't support -mlongcall, and testing shows a clang linked = with a # clang-built csu segfaults, this must currently be compiled with gcc. = Once # clang supports -mlongcall, or we get a fixed ld, this can be = revisited. -CC:=3D gcc -COMPILER_TYPE:=3D gcc +#CC:=3D gcc +#COMPILER_TYPE:=3D gcc FILES=3D ${OBJS} FILESMODE=3D ${LIBMODE} =3D=3D=3D Mark Millard markmi@dsl-only.net From owner-freebsd-toolchain@freebsd.org Thu Oct 15 20:11:30 2015 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 05FCFA159B4 for ; Thu, 15 Oct 2015 20:11:30 +0000 (UTC) (envelope-from daemon-user@freebsd.org) Received: from phabric-backend.isc.freebsd.org (phabric-backend.isc.freebsd.org [IPv6:2001:4f8:3:ffe0:406a:0:50:2]) by mx1.freebsd.org (Postfix) with ESMTP id E066112D6 for ; Thu, 15 Oct 2015 20:11:29 +0000 (UTC) (envelope-from daemon-user@freebsd.org) Received: by phabric-backend.isc.freebsd.org (Postfix, from userid 1346) id D87BC106A66; Thu, 15 Oct 2015 20:11:29 +0000 (UTC) Date: Thu, 15 Oct 2015 20:11:29 +0000 To: freebsd-toolchain@freebsd.org From: "dim (Dimitry Andric)" Reply-to: D3909+334+f2accde7feb1cddf@reviews.freebsd.org Subject: [Differential] [Request, 27 lines] D3909: Get rid of the vendor suffix patch for clang. Message-ID: X-Priority: 3 X-Phabricator-Sent-This-Message: Yes X-Mail-Transport-Agent: MetaMTA X-Auto-Response-Suppress: All X-Phabricator-Mail-Tags: , , , Thread-Topic: D3909: Get rid of the vendor suffix patch for clang. X-Herald-Rules: <28> X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-Cc: X-Phabricator-Cc: Precedence: bulk Thread-Index: OWRhYWE4YjM2MTRkMzBmMzM2YWQ0ODRlNTZh MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="b1_b71a8b0fac0bd82e2ccfbb5b31133d6e" X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.20 List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Oct 2015 20:11:30 -0000 --b1_b71a8b0fac0bd82e2ccfbb5b31133d6e Content-Type: text/plain; charset = "utf-8" Content-Transfer-Encoding: 8bit dim created this revision. dim added reviewers: emaste, theraven. dim added a subscriber: freebsd-toolchain-list. Herald added a subscriber: imp. REVISION SUMMARY Get rid of the vendor suffix patch for clang, since it is very unlikely that anyone has ever used the suffix (which was mostly the approximate datetime stamp of the import from the vendor area). This changes the first line of "clang -v" output (in -current) from: FreeBSD clang version 3.7.0 (tags/RELEASE_370/final 246257) 20150906 to: FreeBSD clang version 3.7.0 (tags/RELEASE_370/final 246257) (based on LLVM 3.7.0) TEST PLAN There no functional change, this is purely cosmetic. REPOSITORY rS FreeBSD src repository BRANCH /head REVISION DETAIL https://reviews.freebsd.org/D3909 AFFECTED FILES contrib/llvm/patches/patch-01-clang-vendor-suffix.diff contrib/llvm/tools/clang/lib/Basic/Version.cpp lib/clang/include/clang/Basic/Version.inc CHANGE DETAILS diff --git a/lib/clang/include/clang/Basic/Version.inc b/lib/clang/include/clang/Basic/Version.inc --- a/lib/clang/include/clang/Basic/Version.inc +++ b/lib/clang/include/clang/Basic/Version.inc @@ -6,6 +6,5 @@ #define CLANG_VERSION_PATCHLEVEL 0 #define CLANG_VENDOR "FreeBSD " -#define CLANG_VENDOR_SUFFIX " 20150906" #define SVN_REVISION "246257" diff --git a/contrib/llvm/tools/clang/lib/Basic/Version.cpp b/contrib/llvm/tools/clang/lib/Basic/Version.cpp --- a/contrib/llvm/tools/clang/lib/Basic/Version.cpp +++ b/contrib/llvm/tools/clang/lib/Basic/Version.cpp @@ -128,10 +128,8 @@ OS << ToolName << " version " CLANG_VERSION_STRING " " << getClangFullRepositoryVersion(); -#ifdef CLANG_VENDOR_SUFFIX - OS << CLANG_VENDOR_SUFFIX; -#elif defined(CLANG_VENDOR) // If vendor supplied, include the base LLVM version as well. +#ifdef CLANG_VENDOR OS << " (based on " << BACKEND_PACKAGE_STRING << ")"; #endif diff --git a/contrib/llvm/patches/patch-01-clang-vendor-suffix.diff b/contrib/llvm/patches/patch-01-clang-vendor-suffix.diff --- a/contrib/llvm/patches/patch-01-clang-vendor-suffix.diff +++ /dev/null @@ -1,22 +0,0 @@ -This patch adds a FreeBSD-specific suffix to clang's version string. This is -usually of the form "(yyyyddmm)", representing the date when the compiler was -last updated. - -Introduced here: http://svnweb.freebsd.org/changeset/base/209107 - -Index: tools/clang/lib/Basic/Version.cpp -=================================================================== ---- tools/clang/lib/Basic/Version.cpp -+++ tools/clang/lib/Basic/Version.cpp -@@ -128,8 +128,10 @@ std::string getClangToolFullVersion(StringRef Tool - OS << ToolName << " version " CLANG_VERSION_STRING " " - << getClangFullRepositoryVersion(); - -+#ifdef CLANG_VENDOR_SUFFIX -+ OS << CLANG_VENDOR_SUFFIX; -+#elif defined(CLANG_VENDOR) - // If vendor supplied, include the base LLVM version as well. --#ifdef CLANG_VENDOR - OS << " (based on " << BACKEND_PACKAGE_STRING << ")"; - #endif - EMAIL PREFERENCES https://reviews.freebsd.org/settings/panel/emailpreferences/ To: dim, emaste, theraven Cc: imp, freebsd-toolchain-list --b1_b71a8b0fac0bd82e2ccfbb5b31133d6e Content-Type: text/x-patch; charset=utf-8; name="D3909.9434.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="D3909.9434.patch" ZGlmZiAtLWdpdCBhL2xpYi9jbGFuZy9pbmNsdWRlL2NsYW5nL0Jhc2ljL1ZlcnNpb24uaW5jIGIv bGliL2NsYW5nL2luY2x1ZGUvY2xhbmcvQmFzaWMvVmVyc2lvbi5pbmMKLS0tIGEvbGliL2NsYW5n L2luY2x1ZGUvY2xhbmcvQmFzaWMvVmVyc2lvbi5pbmMKKysrIGIvbGliL2NsYW5nL2luY2x1ZGUv Y2xhbmcvQmFzaWMvVmVyc2lvbi5pbmMKQEAgLTYsNiArNiw1IEBACiAjZGVmaW5lCUNMQU5HX1ZF UlNJT05fUEFUQ0hMRVZFTAkwCiAKICNkZWZpbmUJQ0xBTkdfVkVORE9SCQkJIkZyZWVCU0QgIgot I2RlZmluZQlDTEFOR19WRU5ET1JfU1VGRklYCQkiIDIwMTUwOTA2IgogCiAjZGVmaW5lCVNWTl9S RVZJU0lPTgkJCSIyNDYyNTciCmRpZmYgLS1naXQgYS9jb250cmliL2xsdm0vdG9vbHMvY2xhbmcv bGliL0Jhc2ljL1ZlcnNpb24uY3BwIGIvY29udHJpYi9sbHZtL3Rvb2xzL2NsYW5nL2xpYi9CYXNp Yy9WZXJzaW9uLmNwcAotLS0gYS9jb250cmliL2xsdm0vdG9vbHMvY2xhbmcvbGliL0Jhc2ljL1Zl cnNpb24uY3BwCisrKyBiL2NvbnRyaWIvbGx2bS90b29scy9jbGFuZy9saWIvQmFzaWMvVmVyc2lv bi5jcHAKQEAgLTEyOCwxMCArMTI4LDggQEAKICAgT1MgPDwgVG9vbE5hbWUgPDwgIiB2ZXJzaW9u ICIgQ0xBTkdfVkVSU0lPTl9TVFJJTkcgIiAiCiAgICAgIDw8IGdldENsYW5nRnVsbFJlcG9zaXRv cnlWZXJzaW9uKCk7CiAKLSNpZmRlZiBDTEFOR19WRU5ET1JfU1VGRklYCi0gIE9TIDw8IENMQU5H X1ZFTkRPUl9TVUZGSVg7Ci0jZWxpZiBkZWZpbmVkKENMQU5HX1ZFTkRPUikKICAgLy8gSWYgdmVu ZG9yIHN1cHBsaWVkLCBpbmNsdWRlIHRoZSBiYXNlIExMVk0gdmVyc2lvbiBhcyB3ZWxsLgorI2lm ZGVmIENMQU5HX1ZFTkRPUgogICBPUyA8PCAiIChiYXNlZCBvbiAiIDw8IEJBQ0tFTkRfUEFDS0FH RV9TVFJJTkcgPDwgIikiOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL2NvbnRyaWIvbGx2bS9wYXRj aGVzL3BhdGNoLTAxLWNsYW5nLXZlbmRvci1zdWZmaXguZGlmZiBiL2NvbnRyaWIvbGx2bS9wYXRj aGVzL3BhdGNoLTAxLWNsYW5nLXZlbmRvci1zdWZmaXguZGlmZgotLS0gYS9jb250cmliL2xsdm0v cGF0Y2hlcy9wYXRjaC0wMS1jbGFuZy12ZW5kb3Itc3VmZml4LmRpZmYKKysrIC9kZXYvbnVsbApA QCAtMSwyMiArMCwwIEBACi1UaGlzIHBhdGNoIGFkZHMgYSBGcmVlQlNELXNwZWNpZmljIHN1ZmZp eCB0byBjbGFuZydzIHZlcnNpb24gc3RyaW5nLiAgVGhpcyBpcwotdXN1YWxseSBvZiB0aGUgZm9y bSAiKHl5eXlkZG1tKSIsIHJlcHJlc2VudGluZyB0aGUgZGF0ZSB3aGVuIHRoZSBjb21waWxlciB3 YXMKLWxhc3QgdXBkYXRlZC4KLQotSW50cm9kdWNlZCBoZXJlOiBodHRwOi8vc3Zud2ViLmZyZWVi c2Qub3JnL2NoYW5nZXNldC9iYXNlLzIwOTEwNwotCi1JbmRleDogdG9vbHMvY2xhbmcvbGliL0Jh c2ljL1ZlcnNpb24uY3BwCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gdG9vbHMvY2xhbmcvbGliL0Jhc2ljL1Zl cnNpb24uY3BwCi0rKysgdG9vbHMvY2xhbmcvbGliL0Jhc2ljL1ZlcnNpb24uY3BwCi1AQCAtMTI4 LDggKzEyOCwxMCBAQCBzdGQ6OnN0cmluZyBnZXRDbGFuZ1Rvb2xGdWxsVmVyc2lvbihTdHJpbmdS ZWYgVG9vbAotICAgT1MgPDwgVG9vbE5hbWUgPDwgIiB2ZXJzaW9uICIgQ0xBTkdfVkVSU0lPTl9T VFJJTkcgIiAiCi0gICAgICA8PCBnZXRDbGFuZ0Z1bGxSZXBvc2l0b3J5VmVyc2lvbigpOwotIAot KyNpZmRlZiBDTEFOR19WRU5ET1JfU1VGRklYCi0rICBPUyA8PCBDTEFOR19WRU5ET1JfU1VGRklY OwotKyNlbGlmIGRlZmluZWQoQ0xBTkdfVkVORE9SKQotICAgLy8gSWYgdmVuZG9yIHN1cHBsaWVk LCBpbmNsdWRlIHRoZSBiYXNlIExMVk0gdmVyc2lvbiBhcyB3ZWxsLgotLSNpZmRlZiBDTEFOR19W RU5ET1IKLSAgIE9TIDw8ICIgKGJhc2VkIG9uICIgPDwgQkFDS0VORF9QQUNLQUdFX1NUUklORyA8 PCAiKSI7Ci0gI2VuZGlmCi0gCgo= --b1_b71a8b0fac0bd82e2ccfbb5b31133d6e--