Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Oct 2016 20:40:20 +0200
From:      =?UTF-8?Q?Ren=C3=A9_Ladan?= <rene@freebsd.org>
To:        clutton <clutton@zoho.com>, chromium-list freebsd <freebsd-chromium@freebsd.org>
Subject:   Fwd: Use of _LIBCPP_TRIVIAL_PAIR_COPY_CTOR in www/chromium
Message-ID:  <CADL2u4g2s3H9X%2BgFk2Vi=GJWzvmCXc843Ft-BpQ27XYWDtz2QA@mail.gmail.com>
In-Reply-To: <A1BAF0EA-D253-4563-91FD-3C82266E5C9F@FreeBSD.org>
References:  <A1BAF0EA-D253-4563-91FD-3C82266E5C9F@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
--001a11487766a0ec8b053effcae4
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Forwarding a compilation failure with clang 3.9.0 which is currently
being tested in FreeeBSD 12.

Ren=C3=A9

---------- Forwarded message ----------
From: Dimitry Andric <dim@freebsd.org>
Date: 2016-10-16 20:05 GMT+02:00
Subject: Use of _LIBCPP_TRIVIAL_PAIR_COPY_CTOR in www/chromium
To: Christoph Moench-Tegeder <cmt@freebsd.org>
Cc: Martin Wilke <miwi@freebsd.org>, Ren=C3=A9 Ladan <rene@freebsd.org>,
Antoine Brodin <antoine@freebsd.org>


Hi,

For PR 212343, which did an exp-run with clang and libc++ 3.9.0, I am
having a look at www/chromium, which failed to build [1] in the
following manner:

c++ -MMD -MF obj/v8/src/base/v8_libbase.cpu.o.d
-DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=3D64 -DNO_TCMALLOC
-DDISABLE_NACL -DCHROMIUM_BUILD -DCR_CLANG_REVISION=3D269902-1
-DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=3D1 -DUSE_PANGO=3D1
-DUSE_CAIRO=3D1 -DUSE_DEFAULT_RENDER_THEME=3D1 -DUSE_LIBJPEG_TURBO=3D1
-DUSE_X11=3D1 -DUSE_CLIPBOARD_AURAX11=3D1 -DENABLE_WEBRTC=3D1
-DENABLE_MEDIA_ROUTER=3D1 -DUSE_PROPRIETARY_CODECS
-DENABLE_NOTIFICATIONS -DENABLE_TOPCHROME_MD=3D1
-DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=3D1
-DENABLE_EXTENSIONS=3D1 -DENABLE_PDF=3D1 -DENABLE_PLUGINS=3D1
-DENABLE_SESSION_SERVICE=3D1 -DENABLE_THEMES=3D1 -DENABLE_PRINTING=3D1
-DENABLE_BASIC_PRINTING=3D1 -DENABLE_PRINT_PREVIEW=3D1
-DENABLE_SPELLCHECK=3D1 -DENABLE_CAPTIVE_PORTAL_DETECTION=3D1
-DENABLE_SUPERVISED_USERS=3D1 -DENABLE_MDNS=3D1
-DENABLE_SERVICE_DISCOVERY=3D1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD
-DSAFE_BROWSING_DB_LOCAL -DV8_TARGET_ARCH_IA32 -DV8_I18N_SUPPORT
-DUSE_LIBPCI=3D1 -DUSE_GLIB=3D1 -DUSE_NSS_CERTS=3D1 -DNDEBUG -DNVALGRIND
-DDYNAMIC_ANNOTATIONS_ENABLED=3D0 -I../../v8 -Igen -fstack-protector
--param=3Dssp-buffer-size=3D4  -pthread -fno-strict-aliasing -Wall
-Wno-unused-parameter -Wno-missing-field-initializers
-fvisibility=3Dhidden -pipe -fPIC -momit-leaf-frame-pointer
-mstack-alignment=3D16 -mstackrealign -fcolor-diagnostics
-Wheader-hygiene -Wno-char-subscripts
-Wno-unneeded-internal-declaration -Wno-covered-switch-default
-Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register
-Wno-inconsistent-missing-override -Wno-shift-negative-value
-Wno-undefined-var-template -Wno-unused-variable -msse2 -mfpmath=3Dsse
-mmmx -I/usr/local/include -msse2 -mfpmath=3Dsse -mmmx -m32 -m32
-fno-ident -fdata-sections -ffunction-sections -funwind-tables
-fdata-sections -ffunction-sections -O3 -O2 -pipe
-isystem/usr/local/include -I/usr/local/include/atk-1.0
-Wno-unknown-warning-option -D_LIBCPP_TRIVIAL_PAIR_COPY_CTOR=3D1
-fstack-protector -fno-strict-aliasing -fno-exceptions -fno-rtti
-fno-threadsafe-statics -fvisibility-inlines-hidden -std=3Dgnu++11
-Wno-deprecated  -c ../../v8/src/base/cpu.cc -o
obj/v8/src/base/v8_libbase.cpu.o
In file included from ../../v8/src/base/cpu.cc:5:
In file included from ../../v8/src/base/cpu.h:16:
In file included from ../../v8/src/base/macros.h:9:
In file included from ../../v8/src/base/format-macros.h:24:
In file included from /usr/include/c++/v1/stddef.h:40:
/usr/include/c++/v1/__config:58:2: error:
"_LIBCPP_TRIVIAL_PAIR_COPY_CTOR" is no longer supported.        use
_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR instead
#error "_LIBCPP_TRIVIAL_PAIR_COPY_CTOR" is no longer supported. \
 ^
1 error generated.

This is because upstream libc++ has replaced the
_LIBCPP_TRIVIAL_PAIR_COPY_CTOR define with
_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR, together with
some other restructuring around std::pair's copy constructors.

I see the -D_LIBCPP_TRIVIAL_PAIR_COPY_CTOR flag was added in ports
r412135 [2], as part of updating chromium to 49.0.2623.110.  Apparently
some port of chromium relied on std::pair's copy constructor being
trivial, but I am unsure if it is still needed with chromium
52.0.2743.116?  For me, the latest port compiles just fine when I
deleted the define.

-Dimitry

[1] http://package18.nyi.freebsd.org/data/headi386PR212343-default/2016-09-=
11_07h04m19s/logs/errors/chromium-52.0.2743.116.log
[2] https://svnweb.freebsd.org/ports?view=3Drevision&revision=3D412135



--=20
https://rene-ladan.nl/

--001a11487766a0ec8b053effcae4
Content-Type: application/pgp-signature; name="signature.asc"
Content-Disposition: attachment; filename="signature.asc"
Content-Transfer-Encoding: base64
X-Attachment-Id: b03af11e4ba65900_0.1

LS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0NClZlcnNpb246IEdudVBHL01hY0dQRzIgdjIu
MC4zMA0KDQppRVlFQVJFQ0FBWUZBbGdEd1lzQUNna1FzRjZqQ2k0Z2xxTXFaQUNnbVFpU2pMeng2
QW00c0JBSE01aFZWZlpEDQptQ0lBbmljNWpDVGw5Z1JNQjFVNHU4VVk4cVlZMlhNSA0KPXppZVQN
Ci0tLS0tRU5EIFBHUCBTSUdOQVRVUkUtLS0tLQ0K
--001a11487766a0ec8b053effcae4--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADL2u4g2s3H9X%2BgFk2Vi=GJWzvmCXc843Ft-BpQ27XYWDtz2QA>