Index: branches/2018Q3/www/chromium/Makefile =================================================================== --- branches/2018Q3/www/chromium/Makefile (revision 476626) +++ branches/2018Q3/www/chromium/Makefile (revision 476627) @@ -1,312 +1,312 @@ # Created by: Florent Thoumie # $FreeBSD$ PORTNAME= chromium -PORTVERSION= 67.0.3396.87 +PORTVERSION= 68.0.3440.84 CATEGORIES?= www MASTER_SITES= https://commondatastorage.googleapis.com/chromium-browser-official/ DISTFILES= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER?= chromium@FreeBSD.org COMMENT?= Google web browser based on WebKit LICENSE= BSD3CLAUSE LGPL21 MPL11 LICENSE_COMB= multi BUILD_DEPENDS= bash:shells/bash \ ${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ply>0:devel/py-ply@${PY_FLAVOR} \ .if !defined(GN_ONLY) BUILD_DEPENDS+= gperf:devel/gperf \ yasm:devel/yasm \ ffmpeg>=3.2.2,1:multimedia/ffmpeg \ flock:sysutils/flock \ node:www/node \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ ${LOCALBASE}/share/usbids/usb.ids:misc/usbids \ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR} .endif .if !defined(GN_ONLY) LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-atk \ libspeechd.so:accessibility/speech-dispatcher \ libsnappy.so:archivers/snappy \ libFLAC.so:audio/flac \ libopus.so:audio/opus \ libspeex.so:audio/speex \ libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib \ libicuuc.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libpci.so:devel/libpci \ libnspr4.so:devel/nspr \ libre2.so:devel/re2 \ libcairo.so:graphics/cairo \ libdrm.so:graphics/libdrm \ libexif.so:graphics/libexif \ libpng.so:graphics/png \ libwebp.so:graphics/webp \ libavcodec.so:multimedia/ffmpeg \ libopenh264.so:multimedia/openh264 \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libgcrypt.so:security/libgcrypt \ libsecret-1.so:security/libsecret \ libnss3.so:security/nss \ libexpat.so:textproc/expat2 \ libfontconfig.so:x11-fonts/fontconfig RUN_DEPENDS= xdg-open:devel/xdg-utils \ noto-lite>0:x11-fonts/noto-lite BROKEN_FreeBSD_11_aarch64= components/safe_browsing_db/v4_rice.cc:120:18: use of overloaded operator '&' is ambiguous ONLY_FOR_ARCHS= aarch64 amd64 i386 .endif .if defined(GN_ONLY) USES= compiler:c++14-lang ninja pkgconfig python:2.7,build shebangfix tar:xz .else USES= bison cpe desktop-file-utils jpeg ninja perl5 pkgconfig \ python:2.7,build shebangfix tar:xz .endif MAKE_ARGS= -C out/${BUILDTYPE} BINARY_ALIAS= python=${PYTHON_CMD} .if !defined(GN_ONLY) CPE_VENDOR= google CPE_PRODUCT= chrome USE_GL= gl USE_LDCONFIG= ${DATADIR} USE_PERL5= build USE_XORG= scrnsaverproto x11 xcb xcomposite xcursor xext xdamage xfixes xi \ xproto xrandr xrender xscrnsaver xtst USE_GNOME= atk dconf glib20 gtk30 libxml2 libxslt SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper ALL_TARGET= chrome INSTALLS_ICONS= yes .endif EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clang # TODO bz@ : install libwidevinecdm.so (see third_party/widevine/cdm/BUILD.gn) # # Run "./out/${BUILDTYPE}/gn args out/${BUILDTYPE} --list" for all variables. # Some parts don't have use_system_* flag, and can be turned on/off by using # replace_gn_files.py script, some parts just turned on/off for target host # OS "target_os == is_bsd", like libusb, libpci. GN_ARGS+= clang_use_chrome_plugins=false \ enable_nacl=false \ enable_one_click_signin=true \ enable_remoting=false \ - enable_webrtc=true \ fieldtrial_testing_like_official_build=true \ is_clang=true \ toolkit_views=true \ treat_warnings_as_errors=false \ use_allocator="none" \ use_allocator_shim=false \ use_aura=true \ use_bundled_fontconfig=false \ use_custom_libcxx=false \ use_gnome_keyring=false \ use_gtk3=true \ use_lld=true \ use_sysroot=false \ use_system_freetype=true \ use_system_harfbuzz=true \ use_system_libjpeg=true \ extra_cxxflags="-I${LOCALBASE}/include" \ extra_ldflags="-L${LOCALBASE}/lib" # TODO: investigate building with these options: # use_system_minigbm GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild # FreeBSD Chromium Api Key # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . # Note: these are for FreeBSD use ONLY. For your own distribution, # please get your own set of keys. GN_ARGS+= google_api_key="AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8" \ google_default_client_id="996322985003.apps.googleusercontent.com" \ google_default_client_secret="IR1za9-1VK0zZ0f_O8MVFicn" .if !defined(GN_ONLY) SUB_FILES= chromium-browser.desktop chrome SUB_LIST+= COMMENT="${COMMENT}" OPTIONS_DEFINE= CODECS CUPS DEBUG DRIVER KERBEROS TEST CODECS_DESC= Compile and enable patented codecs like H.264 DRIVER_DESC= Install chromedriver OPTIONS_GROUP= AUDIO OPTIONS_GROUP_AUDIO= ALSA PULSEAUDIO SNDIO OPTIONS_DEFAULT= ALSA CODECS CUPS DRIVER KERBEROS OPTIONS_SUB= yes ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \ alsa-lib>=1.1.1_1:audio/alsa-lib ALSA_VARS= GN_ARGS+=use_alsa=true ALSA_VARS_OFF= GN_ARGS+=use_alsa=false CODECS_VARS= GN_ARGS+=ffmpeg_branding="Chrome" \ GN_ARGS+=proprietary_codecs=true \ GN_ARGS+=enable_hevc_demuxing=true CODECS_VARS_OFF= GN_ARGS+=ffmpeg_branding="Chromium" \ GN_ARGS+=proprietary_codecs=false \ GN_ARGS+=enable_hevc_demuxing=false CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_VARS= GN_ARGS+=use_cups=true CUPS_VARS_OFF= GN_ARGS+=use_cups=false DEBUG_VARS= BUILDTYPE=Debug \ GN_ARGS+=is_debug=true \ GN_ARGS+=is_component_build=false \ GN_BOOTSTRAP_FLAGS+=--debug \ WANTSPACE="lots of free disk space (~ 12GB)" DEBUG_VARS_OFF= BUILDTYPE=Release \ GN_ARGS+=is_debug=false \ GN_ARGS+=is_official_build=true \ GN_ARGS+=symbol_level=0 \ GN_ARGS+=remove_webcore_debug_symbols=true \ WANTSPACE="a fair amount of free disk space (~ 5.8GB)" DRIVER_BUILD_DEPENDS= git:devel/git DRIVER_MAKE_ARGS= chromedriver KERBEROS_VARS= GN_ARGS+=use_kerberos=true KERBEROS_VARS_OFF= GN_ARGS+=use_kerberos=false PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_VARS= GN_ARGS+=use_pulseaudio=true PULSEAUDIO_VARS_OFF= GN_ARGS+=use_pulseaudio=false # With SNDIO=on we exclude audio_manager_linux from the build (see # media/audio/BUILD.gn) and use audio_manager_openbsd which does not # support falling back to ALSA or PulseAudio. SNDIO_PREVENTS= ALSA PULSEAUDIO SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_VARS= GN_ARGS+=use_sndio=true SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false .endif .include "Makefile.tests" TEST_ALL_TARGET= ${TEST_TARGETS} TEST_DISTFILES= ${PORTNAME}-${DISTVERSION}-testdata${EXTRACT_SUFX} .include .if ${OPSYS} == FreeBSD && ${OSVERSION} < 1101513 BUILD_DEPENDS+= clang60:devel/llvm60 CC= clang60 CXX= clang++60 EXTRA_PATCHES+= ${FILESDIR}/extra-patch-llvm-port .else BUILD_DEPENDS+= ${LOCALBASE}/bin/ar:devel/binutils EXTRA_PATCHES+= ${FILESDIR}/extra-patch-llvm-base .endif # TODO: -isystem, would be just as ugly as this approach, but more reliably # build would fail without C_INCLUDE_PATH/CPLUS_INCLUDE_PATH env var set. MAKE_ENV+= C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include .if !defined(GN_ONLY) pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build Chromium, you should have around 2GB of memory" @${ECHO_MSG} "and ${WANTSPACE}." @${ECHO_MSG} post-patch: @${REINPLACE_CMD} -e 's|@@PACKAGE@@|chromium|' \ -e 's|@@MENUNAME@@|Chromium Web Browser|' \ ${WRKSRC}/chrome/app/resources/manpage.1.in post-patch-SNDIO-on: @${MKDIR} ${WRKSRC}/media/audio/sndio ${WRKSRC}/media/audio/openbsd @${CP} ${FILESDIR}/sndio_output.* ${WRKSRC}/media/audio/sndio @${CP} ${FILESDIR}/sndio_input.* ${WRKSRC}/media/audio/sndio @${CP} ${FILESDIR}/audio_manager_openbsd.* ${WRKSRC}/media/audio/openbsd pre-configure: # We used to remove bundled libraries to be sure that chromium uses # system libraries and not shipped ones. # cd ${WRKSRC} && ${PYTHON_CMD} \ #./build/linux/unbundle/remove_bundled_libraries.py [list of preserved] cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries \ ffmpeg flac freetype harfbuzz-ng libdrm libusb libwebp libxml libxslt openh264 opus snappy yasm || ${FALSE} .endif do-configure: # GN generator bootstrapping and generating ninja files cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} .if !defined(GN_ONLY) cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn \ gen --args='${GN_ARGS}' out/${BUILDTYPE} # Setup nodejs dependency @${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd-x64/bin ${LN} -sf ${LOCALBASE}/bin/node ${WRKSRC}/third_party/node/freebsd/node-freebsd-x64/bin/node .endif do-test-TEST-on: .for t in ${TEST_TARGETS} cd ${WRKSRC}/out/${BUILDTYPE} && ${SETENV} LC_ALL=en_US.UTF-8 \ ./${t} --gtest_filter=-${EXCLUDE_${t}:ts:} || ${TRUE} .endfor .if !defined(GN_ONLY) do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_MAN} ${WRKSRC}/chrome/app/resources/manpage.1.in \ ${STAGEDIR}${MANPREFIX}/man/man1/chrome.1 ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.service ${STAGEDIR}${DATADIR} .for s in 22 24 48 64 128 256 @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps ${INSTALL_DATA} ${WRKSRC}/chrome/app/theme/chromium/product_logo_${s}.png \ ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps/chrome.png .endfor ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.png ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.pak ${STAGEDIR}${DATADIR} .for d in protoc icudtl.dat mksnapshot natives_blob.bin snapshot_blob.bin v8_context_snapshot.bin ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chrome \ ${STAGEDIR}${DATADIR} cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} "locales resources" ${STAGEDIR}${DATADIR} @${MKDIR} ${STAGEDIR}${DESKTOPDIR} ${INSTALL_DATA} ${WRKDIR}/chromium-browser.desktop \ ${STAGEDIR}${DESKTOPDIR} ${INSTALL_SCRIPT} ${WRKDIR}/chrome ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${WRKSRC}/chrome/tools/build/linux/chrome-wrapper \ ${STAGEDIR}${DATADIR} .for f in libEGL.so libGLESv2.so ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor @${MKDIR} ${STAGEDIR}${DATADIR}/swiftshader .for g in libEGL.so libGLESv2.so ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/swiftshader/${g} \ ${STAGEDIR}${DATADIR}/swiftshader .endfor + ${INSTALL_SCRIPT} ${FILESDIR}/fix-hanging-tabs.sh ${STAGEDIR}${DATADIR} post-install-DEBUG-on: ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/*.so \ ${STAGEDIR}${DATADIR} ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/character_data_generator \ ${STAGEDIR}${DATADIR} post-install-DRIVER-on: ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chromedriver \ ${STAGEDIR}${PREFIX}/bin .endif .include Index: branches/2018Q3/www/chromium/distinfo =================================================================== --- branches/2018Q3/www/chromium/distinfo (revision 476626) +++ branches/2018Q3/www/chromium/distinfo (revision 476627) @@ -1,5 +1,5 @@ -TIMESTAMP = 1531563535 -SHA256 (chromium-67.0.3396.87.tar.xz) = 5d27a72f0cb8247343034f63fdd9747ff388c05b9fceb541668dd04fb372db1d -SIZE (chromium-67.0.3396.87.tar.xz) = 591491608 -SHA256 (chromium-67.0.3396.87-testdata.tar.xz) = 091923fca8baca0e949d1d8e490cabdec0a536c3af3d67d398c6465b67c5fb3c -SIZE (chromium-67.0.3396.87-testdata.tar.xz) = 261857908 +TIMESTAMP = 1533378824 +SHA256 (chromium-68.0.3440.84.tar.xz) = 1031d167ae18d8a37f9291ff0e9a3dca2337c0fc1031f2c243d0327b14ecc9d9 +SIZE (chromium-68.0.3440.84.tar.xz) = 630259488 +SHA256 (chromium-68.0.3440.84-testdata.tar.xz) = bdd6906154d7c4a8477da2e8fd25b08eebe472104256e62ec2ab63050218ddd3 +SIZE (chromium-68.0.3440.84-testdata.tar.xz) = 310285796 Index: branches/2018Q3/www/chromium/files/patch-media_ffmpeg_ffmpeg_common.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-media_ffmpeg_ffmpeg_common.h (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-media_ffmpeg_ffmpeg_common.h (nonexistent) @@ -1,21 +0,0 @@ ---- media/ffmpeg/ffmpeg_common.h.orig 2018-07-20 02:33:15.643297000 +0200 -+++ media/ffmpeg/ffmpeg_common.h 2018-07-20 02:34:16.943706000 +0200 -@@ -28,9 +28,6 @@ - MSVC_PUSH_DISABLE_WARNING(4244); - #include - #include --#if !BUILDFLAG(USE_SYSTEM_FFMPEG) --#include --#endif // !BUILDFLAG(USE_SYSTEM_FFMPEG) - #include - #include - #include -@@ -41,6 +38,8 @@ - } // extern "C" - - namespace media { -+ -+constexpr int64_t kNoFFmpegTimestamp = static_cast(AV_NOPTS_VALUE); - - class AudioDecoderConfig; - class EncryptionScheme; Property changes on: branches/2018Q3/www/chromium/files/patch-media_ffmpeg_ffmpeg_common.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-content_public_browser_zygote_host_linux.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_public_browser_zygote_host_linux.h (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_public_browser_zygote_host_linux.h (nonexistent) @@ -1,16 +0,0 @@ ---- content/public/browser/zygote_host_linux.h.orig 2017-09-07 23:29:05.803550000 +0200 -+++ content/public/browser/zygote_host_linux.h 2017-09-07 23:29:43.081801000 +0200 -@@ -30,11 +30,13 @@ - // after the first render has been forked. - virtual int GetRendererSandboxStatus() const = 0; - -+#if !defined(OS_FREEBSD) - // Adjust the OOM score of the given renderer's PID. The allowed - // range for the score is [0, 1000], where higher values are more - // likely to be killed by the OOM killer. - virtual void AdjustRendererOOMScore(base::ProcessHandle process_handle, - int score) = 0; -+#endif - }; - - } // namespace content Property changes on: branches/2018Q3/www/chromium/files/patch-content_public_browser_zygote_host_linux.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-media_filters_ffmpeg_demuxer.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-media_filters_ffmpeg_demuxer.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-media_filters_ffmpeg_demuxer.cc (nonexistent) @@ -1,139 +0,0 @@ ---- media/filters/ffmpeg_demuxer.cc.orig 2018-06-13 00:10:20.000000000 +0200 -+++ media/filters/ffmpeg_demuxer.cc 2018-07-20 16:10:50.322176000 +0200 -@@ -85,29 +85,26 @@ - frames * base::Time::kMicrosecondsPerSecond / sample_rate); - } - --static base::TimeDelta ExtractStartTime(AVStream* stream, -- base::TimeDelta start_time_estimate) { -- DCHECK(start_time_estimate != kNoTimestamp); -- if (stream->start_time == static_cast(AV_NOPTS_VALUE)) { -- return start_time_estimate == kInfiniteDuration ? base::TimeDelta() -- : start_time_estimate; -- } -+static base::TimeDelta ExtractStartTime(AVStream* stream) { -+ // The default start time is zero. -+ base::TimeDelta start_time; - -- // First try the lower of the estimate and the |start_time| value. -- base::TimeDelta start_time = -- std::min(ConvertFromTimeBase(stream->time_base, stream->start_time), -- start_time_estimate); -+ // First try to use the |start_time| value as is. -+ if (stream->start_time != kNoFFmpegTimestamp) -+ start_time = ConvertFromTimeBase(stream->time_base, stream->start_time); - -- // Next see if the first buffered pts value is usable. -- if (stream->pts_buffer[0] != static_cast(AV_NOPTS_VALUE)) { -- const base::TimeDelta buffered_pts = -- ConvertFromTimeBase(stream->time_base, stream->pts_buffer[0]); -- if (buffered_pts < start_time) -- start_time = buffered_pts; -+ // Next try to use the first DTS value, for codecs where we know PTS == DTS -+ // (exclude all H26x codecs). The start time must be returned in PTS. -+ if (stream->first_dts != kNoFFmpegTimestamp && -+ stream->codecpar->codec_id != AV_CODEC_ID_HEVC && -+ stream->codecpar->codec_id != AV_CODEC_ID_H264 && -+ stream->codecpar->codec_id != AV_CODEC_ID_MPEG4) { -+ const base::TimeDelta first_pts = -+ ConvertFromTimeBase(stream->time_base, stream->first_dts); -+ if (first_pts < start_time) -+ start_time = first_pts; - } - -- // NOTE: Do not use AVStream->first_dts since |start_time| should be a -- // presentation timestamp. - return start_time; - } - -@@ -514,7 +511,7 @@ - buffer->set_duration(kNoTimestamp); - } - -- // Note: If pts is AV_NOPTS_VALUE, stream_timestamp will be kNoTimestamp. -+ // Note: If pts is kNoFFmpegTimestamp, stream_timestamp will be kNoTimestamp. - const base::TimeDelta stream_timestamp = - ConvertStreamTimestamp(stream_->time_base, packet->pts); - -@@ -557,8 +554,8 @@ - // code paths below; otherwise they should be treated as a parse error. - if ((!fixup_chained_ogg_ || last_packet_timestamp_ == kNoTimestamp) && - buffer->timestamp() < base::TimeDelta()) { -- MEDIA_LOG(DEBUG, media_log_) -- << "FFmpegDemuxer: unfixable negative timestamp"; -+ MEDIA_LOG(ERROR, media_log_) -+ << "FFmpegDemuxer: unfixable negative timestamp."; - demuxer_->NotifyDemuxerError(DEMUXER_ERROR_COULD_NOT_PARSE); - return; - } -@@ -871,7 +868,7 @@ - base::TimeDelta FFmpegDemuxerStream::ConvertStreamTimestamp( - const AVRational& time_base, - int64_t timestamp) { -- if (timestamp == static_cast(AV_NOPTS_VALUE)) -+ if (timestamp == kNoFFmpegTimestamp) - return kNoTimestamp; - - return ConvertFromTimeBase(time_base, timestamp); -@@ -1271,42 +1268,6 @@ - AVFormatContext* format_context = glue_->format_context(); - streams_.resize(format_context->nb_streams); - -- // Estimate the start time for each stream by looking through the packets -- // buffered during avformat_find_stream_info(). These values will be -- // considered later when determining the actual stream start time. -- // -- // These packets haven't been completely processed yet, so only look through -- // these values if the AVFormatContext has a valid start time. -- // -- // If no estimate is found, the stream entry will be kInfiniteDuration. -- std::vector start_time_estimates(format_context->nb_streams, -- kInfiniteDuration); --#if !BUILDFLAG(USE_SYSTEM_FFMPEG) -- const AVFormatInternal* internal = format_context->internal; -- if (internal && internal->packet_buffer && -- format_context->start_time != static_cast(AV_NOPTS_VALUE)) { -- struct AVPacketList* packet_buffer = internal->packet_buffer; -- while (packet_buffer != internal->packet_buffer_end) { -- DCHECK_LT(static_cast(packet_buffer->pkt.stream_index), -- start_time_estimates.size()); -- const AVStream* stream = -- format_context->streams[packet_buffer->pkt.stream_index]; -- if (packet_buffer->pkt.pts != static_cast(AV_NOPTS_VALUE)) { -- const base::TimeDelta packet_pts = -- ConvertFromTimeBase(stream->time_base, packet_buffer->pkt.pts); -- // We ignore kNoTimestamp here since -int64_t::min() is possible; see -- // https://crbug.com/700501. Technically this is a valid value, but in -- // practice shouldn't occur, so just ignore it when estimating. -- if (packet_pts != kNoTimestamp && packet_pts != kInfiniteDuration && -- packet_pts < start_time_estimates[stream->index]) { -- start_time_estimates[stream->index] = packet_pts; -- } -- } -- packet_buffer = packet_buffer->next; -- } -- } --#endif // !BUILDFLAG(USE_SYSTEM_FFMPEG) -- - std::unique_ptr media_tracks(new MediaTracks()); - - DCHECK(track_id_to_demux_stream_map_.empty()); -@@ -1455,8 +1416,7 @@ - - max_duration = std::max(max_duration, streams_[i]->duration()); - -- base::TimeDelta start_time = -- ExtractStartTime(stream, start_time_estimates[i]); -+ base::TimeDelta start_time = ExtractStartTime(stream); - - // Note: This value is used for seeking, so we must take the true value and - // not the one possibly clamped to zero below. -@@ -1494,7 +1454,7 @@ - if (text_enabled_) - AddTextStreams(); - -- if (format_context->duration != static_cast(AV_NOPTS_VALUE)) { -+ if (format_context->duration != kNoFFmpegTimestamp) { - // If there is a duration value in the container use that to find the - // maximum between it and the duration from A/V streams. - const AVRational av_time_base = {1, AV_TIME_BASE}; Property changes on: branches/2018Q3/www/chromium/files/patch-media_filters_ffmpeg_demuxer.cc ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-content_browser_zygote_host_zygote_host_impl_linux.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_browser_zygote_host_zygote_host_impl_linux.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_browser_zygote_host_zygote_host_impl_linux.cc (nonexistent) @@ -1,40 +0,0 @@ ---- content/browser/zygote_host/zygote_host_impl_linux.cc.orig 2018-07-19 11:56:14.006818000 +0200 -+++ content/browser/zygote_host/zygote_host_impl_linux.cc 2018-07-19 11:58:05.834024000 +0200 -@@ -72,6 +72,7 @@ - } - - void ZygoteHostImpl::Init(const base::CommandLine& command_line) { -+#if !defined(OS_BSD) - if (command_line.HasSwitch(switches::kNoSandbox)) { - return; - } -@@ -130,6 +131,7 @@ - "you can try using --" - << switches::kNoSandbox << "."; - } -+#endif - } - - void ZygoteHostImpl::AddZygotePid(pid_t pid) { -@@ -154,6 +156,7 @@ - base::CommandLine* cmd_line, - base::ScopedFD* control_fd, - base::FileHandleMappingVector additional_remapped_fds) { -+#if !defined(OS_BSD) - int fds[2]; - CHECK_EQ(0, socketpair(AF_UNIX, SOCK_SEQPACKET, 0, fds)); - CHECK(base::UnixDomainSocket::EnableReceiveProcessId(fds[0])); -@@ -218,9 +221,12 @@ - - AddZygotePid(pid); - return pid; -+#else -+ return 0; -+#endif - } - --#if !defined(OS_OPENBSD) -+#if !defined(OS_BSD) - void ZygoteHostImpl::AdjustRendererOOMScore(base::ProcessHandle pid, - int score) { - // 1) You can't change the oom_score_adj of a non-dumpable process Property changes on: branches/2018Q3/www/chromium/files/patch-content_browser_zygote_host_zygote_host_impl_linux.cc ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-content_public_common_zygote_features.gni =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_public_common_zygote_features.gni (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_public_common_zygote_features.gni (nonexistent) @@ -1,8 +0,0 @@ ---- content/public/common/zygote_features.gni.orig 2018-03-24 12:14:17.829148000 +0100 -+++ content/public/common/zygote_features.gni 2018-03-24 12:14:28.619495000 +0100 -@@ -2,4 +2,4 @@ - # Use of this source code is governed by a BSD-style license that can be - # found in the LICENSE file. - --use_zygote_handle = is_posix && !is_android && !is_mac && !is_fuchsia -+use_zygote_handle = is_posix && !is_android && !is_mac && !is_fuchsia && !is_bsd Property changes on: branches/2018Q3/www/chromium/files/patch-content_public_common_zygote_features.gni ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-content_browser_zygote_host_zygote_host_impl_linux.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_browser_zygote_host_zygote_host_impl_linux.h (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_browser_zygote_host_zygote_host_impl_linux.h (nonexistent) @@ -1,13 +0,0 @@ ---- content/browser/zygote_host/zygote_host_impl_linux.h.orig 2018-06-13 00:10:17.000000000 +0200 -+++ content/browser/zygote_host/zygote_host_impl_linux.h 2018-07-19 11:55:28.795795000 +0200 -@@ -41,8 +41,10 @@ - base::ScopedFD* control_fd, - base::FileHandleMappingVector additional_remapped_fds); - -+#if !defined(OS_BSD) - void AdjustRendererOOMScore(base::ProcessHandle process_handle, - int score) override; -+#endif - - private: - friend struct base::DefaultSingletonTraits; Property changes on: branches/2018Q3/www/chromium/files/patch-content_browser_zygote_host_zygote_host_impl_linux.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-media_filters_ffmpeg_demuxer_unittest.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-media_filters_ffmpeg_demuxer_unittest.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-media_filters_ffmpeg_demuxer_unittest.cc (nonexistent) @@ -1,56 +0,0 @@ ---- media/filters/ffmpeg_demuxer_unittest.cc.orig 2018-07-20 03:38:14.345859000 +0200 -+++ media/filters/ffmpeg_demuxer_unittest.cc 2018-07-20 03:43:52.359278000 +0200 -@@ -724,12 +724,9 @@ - ReadUntilEndOfStream(GetStream(DemuxerStream::AUDIO)); - } - --// TODO(dalecurtis): Test is disabled since FFmpeg does not currently guarantee --// the order of demuxed packets in OGG containers. Re-enable and fix key frame --// expectations once we decide to either workaround it or attempt a fix --// upstream. See http://crbug.com/387996. --TEST_F(FFmpegDemuxerTest, -- DISABLED_Read_AudioNegativeStartTimeAndOggDiscard_Bear) { -+// Android has no Theora support, so these tests doesn't work. -+#if !defined(OS_ANDROID) -+TEST_F(FFmpegDemuxerTest, Read_AudioNegativeStartTimeAndOggDiscard_Bear) { - // Many ogg files have negative starting timestamps, so ensure demuxing and - // seeking work correctly with a negative start time. - CreateDemuxer("bear.ogv"); -@@ -739,8 +736,12 @@ - DemuxerStream* video = GetStream(DemuxerStream::VIDEO); - DemuxerStream* audio = GetStream(DemuxerStream::AUDIO); - -- // Run the test twice with a seek in between. -- for (int i = 0; i < 2; ++i) { -+ // Run the test once (should be twice..., see note) with a seek in between. -+ // -+ // TODO(dalecurtis): We only run the test once since FFmpeg does not currently -+ // guarantee the order of demuxed packets in OGG containers. See -+ // http://crbug.com/387996 -+ for (int i = 0; i < 1; ++i) { - audio->Read( - NewReadCBWithCheckedDiscard(FROM_HERE, 40, 0, kInfiniteDuration, true)); - base::RunLoop().Run(); -@@ -759,10 +760,10 @@ - video->Read(NewReadCB(FROM_HERE, 5751, 0, true)); - base::RunLoop().Run(); - -- video->Read(NewReadCB(FROM_HERE, 846, 33367, true)); -+ video->Read(NewReadCB(FROM_HERE, 846, 33367, false)); - base::RunLoop().Run(); - -- video->Read(NewReadCB(FROM_HERE, 1255, 66733, true)); -+ video->Read(NewReadCB(FROM_HERE, 1255, 66733, false)); - base::RunLoop().Run(); - - // Seek back to the beginning and repeat the test. -@@ -775,9 +776,6 @@ - // Same test above, but using sync2.ogv which has video stream muxed before the - // audio stream, so seeking based only on start time will fail since ffmpeg is - // essentially just seeking based on file position. --// --// Android has no Theora support, so this test doesn't work. --#if !defined(OS_ANDROID) - TEST_F(FFmpegDemuxerTest, Read_AudioNegativeStartTimeAndOggDiscard_Sync) { - // Many ogg files have negative starting timestamps, so ensure demuxing and - // seeking work correctly with a negative start time. Property changes on: branches/2018Q3/www/chromium/files/patch-media_filters_ffmpeg_demuxer_unittest.cc ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-v8_src_globals.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-v8_src_globals.h (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-v8_src_globals.h (nonexistent) @@ -1,14 +0,0 @@ ---- v8/src/globals.h.orig 2018-03-20 23:06:56.000000000 +0100 -+++ v8/src/globals.h 2018-03-24 19:21:33.728280000 +0100 -@@ -195,7 +195,11 @@ - constexpr size_t kMaximalCodeRangeSize = 512 * MB; - constexpr size_t kCodeRangeAreaAlignment = 64 * KB; // OS page on PPC Linux - #else -+#if defined(__FreeBSD__) - constexpr size_t kMaximalCodeRangeSize = 512 * MB; -+#else -+constexpr size_t kMaximalCodeRangeSize = 512 * MB; -+#endif - constexpr size_t kCodeRangeAreaAlignment = 4 * KB; // OS page. - #endif - #if V8_OS_WIN Property changes on: branches/2018Q3/www/chromium/files/patch-v8_src_globals.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-v8_src_trap-handler_handler-inside.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-v8_src_trap-handler_handler-inside.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-v8_src_trap-handler_handler-inside.cc (nonexistent) @@ -1,16 +0,0 @@ ---- v8/src/trap-handler/handler-inside.cc.orig 2017-06-27 01:24:28.401955000 +0200 -+++ v8/src/trap-handler/handler-inside.cc 2017-06-27 01:25:16.190737000 +0200 -@@ -36,11 +36,13 @@ - - namespace { - -+#if V8_TRAP_HANDLER_SUPPORTED && V8_OS_LINUX - bool IsKernelGeneratedSignal(siginfo_t* info) { - return info->si_code > 0 && info->si_code != SI_USER && - info->si_code != SI_QUEUE && info->si_code != SI_TIMER && - info->si_code != SI_ASYNCIO && info->si_code != SI_MESGQ; - } -+#endif - - #if V8_TRAP_HANDLER_SUPPORTED - class SigUnmaskStack { Property changes on: branches/2018Q3/www/chromium/files/patch-v8_src_trap-handler_handler-inside.cc ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-content_app_content__main__runner.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_app_content__main__runner.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_app_content__main__runner.cc (nonexistent) @@ -1,37 +0,0 @@ ---- content/app/content_main_runner.cc.orig 2018-06-13 00:10:16.000000000 +0200 -+++ content/app/content_main_runner.cc 2018-07-19 00:17:30.909304000 +0200 -@@ -84,10 +84,10 @@ - #include "base/posix/global_descriptors.h" - #include "content/public/common/content_descriptors.h" - --#if !defined(OS_MACOSX) -+#if !defined(OS_MACOSX) && !defined(OS_BSD) - #include "content/public/common/zygote_fork_delegate_linux.h" - #endif --#if !defined(OS_MACOSX) && !defined(OS_ANDROID) -+#if !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) - #include "content/zygote/zygote_main.h" - #include "sandbox/linux/services/libc_interceptor.h" - #endif -@@ -153,7 +153,7 @@ - namespace content { - extern int GpuMain(const content::MainFunctionParams&); - #if BUILDFLAG(ENABLE_PLUGINS) --#if !defined(OS_LINUX) -+#if !defined(OS_LINUX) && !defined(OS_BSD) - extern int PluginMain(const content::MainFunctionParams&); - #endif - extern int PpapiPluginMain(const MainFunctionParams&); -@@ -702,10 +702,10 @@ - kFieldTrialDescriptor + base::GlobalDescriptors::kBaseDescriptor); - #endif // !OS_ANDROID - --#if defined(OS_LINUX) || defined(OS_OPENBSD) -+#if defined(OS_LINUX) - g_fds->Set(kCrashDumpSignal, - kCrashDumpSignal + base::GlobalDescriptors::kBaseDescriptor); --#endif // OS_LINUX || OS_OPENBSD -+#endif // OS_LINUX - - #endif // !OS_WIN - Property changes on: branches/2018Q3/www/chromium/files/patch-content_app_content__main__runner.cc ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-base__trace_event__process_memory_dump.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-base__trace_event__process_memory_dump.h (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-base__trace_event__process_memory_dump.h (nonexistent) @@ -1,11 +0,0 @@ ---- base/trace_event/process_memory_dump.h.orig 2017-04-19 19:06:28 UTC -+++ base/trace_event/process_memory_dump.h -@@ -24,7 +24,7 @@ - - // Define COUNT_RESIDENT_BYTES_SUPPORTED if platform supports counting of the - // resident memory. --#if (defined(OS_POSIX) && !defined(OS_NACL)) || defined(OS_WIN) -+#if (defined(OS_POSIX) && !defined(OS_NACL) && !defined(OS_BSD)) || defined(OS_WIN) - #define COUNT_RESIDENT_BYTES_SUPPORTED - #endif - Property changes on: branches/2018Q3/www/chromium/files/patch-base__trace_event__process_memory_dump.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-net_quic_platform_impl_quic__ip__address__impl.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-net_quic_platform_impl_quic__ip__address__impl.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-net_quic_platform_impl_quic__ip__address__impl.cc (nonexistent) @@ -1,10 +0,0 @@ ---- net/quic/platform/impl/quic_ip_address_impl.cc.orig 2017-04-19 19:06:36 UTC -+++ net/quic/platform/impl/quic_ip_address_impl.cc -@@ -12,6 +12,7 @@ - #include - #elif defined(OS_POSIX) - #include -+#include - #endif - - using std::string; Property changes on: branches/2018Q3/www/chromium/files/patch-net_quic_platform_impl_quic__ip__address__impl.cc ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_webui_extensions_extension__loader__handler.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_webui_extensions_extension__loader__handler.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_webui_extensions_extension__loader__handler.cc (nonexistent) @@ -1,14 +0,0 @@ ---- chrome/browser/ui/webui/extensions/extension_loader_handler.cc.orig 2017-04-19 19:06:30 UTC -+++ chrome/browser/ui/webui/extensions/extension_loader_handler.cc -@@ -28,7 +28,11 @@ - #include "extensions/common/constants.h" - #include "extensions/common/extension.h" - #include "extensions/common/manifest_constants.h" -+#if defined(OS_BSD) -+#include -+#else - #include "third_party/re2/src/re2/re2.h" -+#endif - #include "ui/base/l10n/l10n_util.h" - - namespace extensions { Property changes on: branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_webui_extensions_extension__loader__handler.cc ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/audio_manager_openbsd.cc =================================================================== --- branches/2018Q3/www/chromium/files/audio_manager_openbsd.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/audio_manager_openbsd.cc (revision 476627) @@ -1,179 +1,177 @@ // Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "base/metrics/histogram_macros.h" #include "base/memory/ptr_util.h" #include "media/audio/openbsd/audio_manager_openbsd.h" #include "media/audio/audio_device_description.h" #include "media/audio/audio_output_dispatcher.h" #if defined(USE_SNDIO) #include "media/audio/sndio/sndio_input.h" #include "media/audio/sndio/sndio_output.h" #else #include "media/audio/fake_audio_manager.h" #endif #include "media/base/limits.h" #include "media/base/media_switches.h" namespace media { enum OpenBSDAudioIO { kPulse, kSndio, kAudioIOMax = kSndio }; #if defined(USE_SNDIO) // Maximum number of output streams that can be open simultaneously. static const int kMaxOutputStreams = 4; // Default sample rate for input and output streams. static const int kDefaultSampleRate = 48000; void AddDefaultDevice(AudioDeviceNames* device_names) { DCHECK(device_names->empty()); device_names->push_front(AudioDeviceName::CreateDefault()); } bool AudioManagerOpenBSD::HasAudioOutputDevices() { return true; } bool AudioManagerOpenBSD::HasAudioInputDevices() { return true; } void AudioManagerOpenBSD::GetAudioInputDeviceNames( AudioDeviceNames* device_names) { DCHECK(device_names->empty()); AddDefaultDevice(device_names); } void AudioManagerOpenBSD::GetAudioOutputDeviceNames( AudioDeviceNames* device_names) { AddDefaultDevice(device_names); } #if defined(USE_SNDIO) const char* AudioManagerOpenBSD::GetName() { return "SNDIO"; } #endif AudioParameters AudioManagerOpenBSD::GetInputStreamParameters( const std::string& device_id) { static const int kDefaultInputBufferSize = 1024; int user_buffer_size = GetUserBufferSize(); int buffer_size = user_buffer_size ? user_buffer_size : kDefaultInputBufferSize; return AudioParameters( AudioParameters::AUDIO_PCM_LOW_LATENCY, CHANNEL_LAYOUT_STEREO, - kDefaultSampleRate, 16, buffer_size); + kDefaultSampleRate, buffer_size); } AudioManagerOpenBSD::AudioManagerOpenBSD(std::unique_ptr audio_thread, AudioLogFactory* audio_log_factory) : AudioManagerBase(std::move(audio_thread), audio_log_factory) { DLOG(WARNING) << "AudioManagerOpenBSD"; SetMaxOutputStreamsAllowed(kMaxOutputStreams); } AudioManagerOpenBSD::~AudioManagerOpenBSD() { Shutdown(); } AudioOutputStream* AudioManagerOpenBSD::MakeLinearOutputStream( const AudioParameters& params, const LogCallback& log_callback) { DCHECK_EQ(AudioParameters::AUDIO_PCM_LINEAR, params.format()); return MakeOutputStream(params); } AudioOutputStream* AudioManagerOpenBSD::MakeLowLatencyOutputStream( const AudioParameters& params, const std::string& device_id, const LogCallback& log_callback) { DLOG_IF(ERROR, !device_id.empty()) << "Not implemented!"; DCHECK_EQ(AudioParameters::AUDIO_PCM_LOW_LATENCY, params.format()); return MakeOutputStream(params); } AudioInputStream* AudioManagerOpenBSD::MakeLinearInputStream( const AudioParameters& params, const std::string& device_id, const LogCallback& log_callback) { DCHECK_EQ(AudioParameters::AUDIO_PCM_LINEAR, params.format()); return MakeInputStream(params); } AudioInputStream* AudioManagerOpenBSD::MakeLowLatencyInputStream( const AudioParameters& params, const std::string& device_id, const LogCallback& log_callback) { DCHECK_EQ(AudioParameters::AUDIO_PCM_LOW_LATENCY, params.format()); return MakeInputStream(params); } AudioParameters AudioManagerOpenBSD::GetPreferredOutputStreamParameters( const std::string& output_device_id, const AudioParameters& input_params) { // TODO(tommi): Support |output_device_id|. DLOG_IF(ERROR, !output_device_id.empty()) << "Not implemented!"; static const int kDefaultOutputBufferSize = 2048; ChannelLayout channel_layout = CHANNEL_LAYOUT_STEREO; int sample_rate = kDefaultSampleRate; int buffer_size = kDefaultOutputBufferSize; - int bits_per_sample = 16; if (input_params.IsValid()) { sample_rate = input_params.sample_rate(); - bits_per_sample = input_params.bits_per_sample(); channel_layout = input_params.channel_layout(); buffer_size = std::min(buffer_size, input_params.frames_per_buffer()); } int user_buffer_size = GetUserBufferSize(); if (user_buffer_size) buffer_size = user_buffer_size; return AudioParameters( AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, - sample_rate, bits_per_sample, buffer_size); + sample_rate, buffer_size); } AudioInputStream* AudioManagerOpenBSD::MakeInputStream( const AudioParameters& params) { DLOG(WARNING) << "MakeInputStream"; return new SndioAudioInputStream(this, AudioDeviceDescription::kDefaultDeviceId, params); } AudioOutputStream* AudioManagerOpenBSD::MakeOutputStream( const AudioParameters& params) { DLOG(WARNING) << "MakeOutputStream"; return new SndioAudioOutputStream(params, this); } #endif std::unique_ptr CreateAudioManager( std::unique_ptr audio_thread, AudioLogFactory* audio_log_factory) { DLOG(WARNING) << "CreateAudioManager"; #if defined(USE_SNDIO) UMA_HISTOGRAM_ENUMERATION("Media.OpenBSDAudioIO", kSndio, kAudioIOMax + 1); return std::make_unique(std::move(audio_thread), audio_log_factory); #else return std::make_unique(std::move(audio_thread), audio_log_factory); #endif } } // namespace media Index: branches/2018Q3/www/chromium/files/extra-patch-llvm-base =================================================================== --- branches/2018Q3/www/chromium/files/extra-patch-llvm-base (revision 476626) +++ branches/2018Q3/www/chromium/files/extra-patch-llvm-base (revision 476627) @@ -1,121 +1,45 @@ --- build/toolchain/gcc_toolchain.gni.orig 2018-03-20 23:05:14.000000000 +0100 +++ build/toolchain/gcc_toolchain.gni 2018-06-18 20:55:17.080248000 +0200 @@ -25,6 +25,11 @@ rebase_path("//build/toolchain/clang_static_analyzer_wrapper.py", root_build_dir) + " --mode=clang" +declare_args() { + extra_cxxflags = "" + extra_ldflags = "" +} + # This template defines a toolchain for something that works like gcc # (including clang). # @@ -596,13 +601,23 @@ } gcc_toolchain(target_name) { - prefix = rebase_path("$clang_base_path/bin", root_build_dir) - cc = "$prefix/clang" - cxx = "$prefix/clang++" - ld = cxx - readelf = "${toolprefix}readelf" - ar = "${prefix}/llvm-ar" - nm = "${toolprefix}nm" + if (is_bsd) { + prefix = "/usr/local/bin" + cc = "cc" + cxx = "c++" + ld = cxx + readelf = "readelf" + ar = "${prefix}/ar" + nm = "${toolprefix}nm" + } else { + prefix = rebase_path("$clang_base_path/bin", root_build_dir) + cc = "$prefix/clang" + cxx = "$prefix/clang++" + ld = cxx + readelf = "${toolprefix}readelf" + ar = "${prefix}/llvm-ar" + nm = "${toolprefix}nm" + } forward_variables_from(invoker, [ ---- build/config/compiler/BUILD.gn.orig 2018-06-13 00:10:02.000000000 +0200 -+++ build/config/compiler/BUILD.gn 2018-07-21 13:05:54.418405000 +0200 -@@ -51,7 +51,7 @@ - # only two architectures that are currently checked in). Turn this off when - # you are using a custom toolchain and need to control -B in cflags. - linux_use_bundled_binutils = -- linux_use_bundled_binutils_override && is_linux && -+ linux_use_bundled_binutils_override && (is_linux && !is_bsd) && - (current_cpu == "x64" || current_cpu == "x86") - binutils_path = rebase_path("//third_party/binutils/Linux_x64/Release/bin", - root_build_dir) -@@ -375,8 +375,6 @@ - "-Wl,-z,relro", - ] - if (!using_sanitizer) { -- ldflags += [ "-Wl,-z,defs" ] -- - # Functions interposed by the sanitizers can make ld think - # that some libraries aren't needed when they actually are, - # http://crbug.com/234010. As workaround, disable --as-needed. -@@ -467,7 +465,7 @@ - # TODO(hans): Remove this once Clang generates better optimized debug info by - # default. https://crbug.com/765793 - if (is_clang && !is_nacl && current_toolchain == host_toolchain && -- target_os != "chromeos") { -+ target_os != "chromeos" && !is_bsd) { - cflags += [ - "-Xclang", - "-mllvm", -@@ -708,7 +706,7 @@ - cflags += [ "-mtune=$arm_tune" ] - } - } else if (current_cpu == "arm64") { -- if (is_clang && !is_android && !is_nacl && !is_fuchsia) { -+ if (is_clang && !is_android && !is_nacl && !is_fuchsia && !is_bsd) { - cflags += [ "--target=aarch64-linux-gnu" ] - ldflags += [ "--target=aarch64-linux-gnu" ] - } -@@ -1387,10 +1385,6 @@ - - # TODO(hans): https://crbug.com/766891 - "-Wno-null-pointer-arithmetic", -- -- # Ignore warnings about MSVC optimization pragmas. -- # TODO(thakis): Only for no_chromium_code? http://crbug.com/505314 -- "-Wno-ignored-pragma-optimize", - ] - if (llvm_force_head_revision) { - cflags += [ -@@ -2096,7 +2090,7 @@ - # [1] crrev.com/a81d5ade0b043208e06ad71a38bcf9c348a1a52f - cflags += [ "-gdwarf-3" ] - } -- cflags += [ "-g2" ] -+ cflags += [ "-g0" ] - } - if (use_debug_fission && !is_nacl) { - cflags += [ "-gsplit-dwarf" ] -@@ -2110,7 +2104,7 @@ - # DWARF info may be corrupt; offsets in a range list entry are in different - # sections" there. Maybe just a bug in nacl_switch_32.S. - if (!is_mac && !is_ios && !is_nacl && target_cpu != "x86" && -- (use_gold || use_lld)) { -+ (use_gold || use_lld) && !is_bsd) { - if (is_clang) { - # This flag enables the GNU-format pubnames and pubtypes sections, - # which lld needs in order to generate a correct GDB index. -@@ -2207,7 +2201,7 @@ - if (!is_win && fatal_linker_warnings && - !(is_chromeos && current_cpu == "arm") && - !(is_android && use_order_profiling) && !is_mac && !is_ios && -- current_os != "aix") { -+ current_os != "aix" && !is_bsd) { - # TODO(jochen): Enable this on chromeos on arm. http://crbug.com/356580 - # TODO(lizeb,pasko): Fix link errors when linking with order_profiling=1 - # crbug.com/485542 Index: branches/2018Q3/www/chromium/files/extra-patch-llvm-port =================================================================== --- branches/2018Q3/www/chromium/files/extra-patch-llvm-port (revision 476626) +++ branches/2018Q3/www/chromium/files/extra-patch-llvm-port (revision 476627) @@ -1,148 +1,59 @@ --- build/toolchain/gcc_toolchain.gni.orig 2018-06-13 00:10:02.000000000 +0200 +++ build/toolchain/gcc_toolchain.gni 2018-07-21 12:38:45.107087000 +0200 @@ -25,6 +25,11 @@ rebase_path("//build/toolchain/clang_static_analyzer_wrapper.py", root_build_dir) + " --mode=clang" +declare_args() { + extra_cxxflags = "" + extra_ldflags = "" +} + # This template defines a toolchain for something that works like gcc # (including clang). # @@ -343,12 +348,12 @@ # We use slightly different arflags for AIX. extra_arflags = "-r -c -s" } else { - extra_arflags = "-r -c -s -D" + extra_arflags = "rcsD" } # Almost all targets build with //build/config/compiler:thin_archive which # adds -T to arflags. - command = "$python_path \"$ar_wrapper\"$whitelist_flag --output={{output}} --ar=\"$ar\" \"{{arflags}} $extra_arflags\" @\"$rspfile\"" + command = "$python_path \"$ar_wrapper\"$whitelist_flag --output={{output}} --ar=\"$ar\" {{arflags}} $extra_arflags @\"$rspfile\"" description = "AR {{output}}" rspfile_content = "{{inputs}}" outputs = [ @@ -608,13 +613,22 @@ } gcc_toolchain(target_name) { - prefix = rebase_path("$clang_base_path/bin", root_build_dir) - cc = "$prefix/clang" - cxx = "$prefix/clang++" - ld = cxx - readelf = "${toolprefix}readelf" - ar = "${prefix}/llvm-ar" - nm = "${toolprefix}nm" + if (is_bsd) { + cc = "${toolprefix}clang60" + cxx = "${toolprefix}clang++60" + ld = cxx + readelf = "readelf" + ar = "${toolprefix}llvm-ar60" + nm = "${toolprefix}llvm-nm60" + } else { + prefix = rebase_path("$clang_base_path/bin", root_build_dir) + cc = "$prefix/clang" + cxx = "$prefix/clang++" + ld = cxx + readelf = "${toolprefix}readelf" + ar = "${prefix}/llvm-ar" + nm = "${toolprefix}nm" + } forward_variables_from(invoker, [ ---- build/config/compiler/BUILD.gn.orig 2018-06-13 00:10:02.000000000 +0200 -+++ build/config/compiler/BUILD.gn 2018-07-21 12:57:03.823912000 +0200 -@@ -51,7 +51,7 @@ - # only two architectures that are currently checked in). Turn this off when - # you are using a custom toolchain and need to control -B in cflags. - linux_use_bundled_binutils = -- linux_use_bundled_binutils_override && is_linux && -+ linux_use_bundled_binutils_override && (is_linux && !is_bsd) && - (current_cpu == "x64" || current_cpu == "x86") - binutils_path = rebase_path("//third_party/binutils/Linux_x64/Release/bin", - root_build_dir) -@@ -375,8 +375,6 @@ - "-Wl,-z,relro", - ] - if (!using_sanitizer) { -- ldflags += [ "-Wl,-z,defs" ] -- - # Functions interposed by the sanitizers can make ld think - # that some libraries aren't needed when they actually are, - # http://crbug.com/234010. As workaround, disable --as-needed. -@@ -467,7 +465,7 @@ - # TODO(hans): Remove this once Clang generates better optimized debug info by - # default. https://crbug.com/765793 - if (is_clang && !is_nacl && current_toolchain == host_toolchain && -- target_os != "chromeos") { -+ target_os != "chromeos" && !is_bsd) { - cflags += [ - "-Xclang", - "-mllvm", -@@ -708,7 +706,7 @@ - cflags += [ "-mtune=$arm_tune" ] - } - } else if (current_cpu == "arm64") { -- if (is_clang && !is_android && !is_nacl && !is_fuchsia) { -+ if (is_clang && !is_android && !is_nacl && !is_fuchsia && !is_bsd) { - cflags += [ "--target=aarch64-linux-gnu" ] - ldflags += [ "--target=aarch64-linux-gnu" ] - } -@@ -1387,10 +1385,6 @@ - - # TODO(hans): https://crbug.com/766891 - "-Wno-null-pointer-arithmetic", -- -- # Ignore warnings about MSVC optimization pragmas. -- # TODO(thakis): Only for no_chromium_code? http://crbug.com/505314 -- "-Wno-ignored-pragma-optimize", - ] - if (llvm_force_head_revision) { - cflags += [ -@@ -1572,9 +1566,9 @@ - if ((is_posix && !is_nacl) || is_fuchsia) { - # TODO(thomasanderson): Enable on ChromeOS builds once - # https://crbug.com/829956 is fixed. -- if (default_toolchain != "//build/toolchain/cros:target") { -- arflags = [ "-T" ] -- } -+ # if (default_toolchain != "//build/toolchain/cros:target") { -+ # arflags = [ "-T" ] -+ # } - } - } - -@@ -2096,7 +2090,7 @@ - # [1] crrev.com/a81d5ade0b043208e06ad71a38bcf9c348a1a52f - cflags += [ "-gdwarf-3" ] - } -- cflags += [ "-g2" ] -+ cflags += [ "-g0" ] - } - if (use_debug_fission && !is_nacl) { - cflags += [ "-gsplit-dwarf" ] -@@ -2110,7 +2104,7 @@ - # DWARF info may be corrupt; offsets in a range list entry are in different - # sections" there. Maybe just a bug in nacl_switch_32.S. - if (!is_mac && !is_ios && !is_nacl && target_cpu != "x86" && -- (use_gold || use_lld)) { -+ (use_gold || use_lld) && !is_bsd) { - if (is_clang) { - # This flag enables the GNU-format pubnames and pubtypes sections, - # which lld needs in order to generate a correct GDB index. -@@ -2207,7 +2201,7 @@ - if (!is_win && fatal_linker_warnings && - !(is_chromeos && current_cpu == "arm") && - !(is_android && use_order_profiling) && !is_mac && !is_ios && -- current_os != "aix") { -+ current_os != "aix" && !is_bsd) { - # TODO(jochen): Enable this on chromeos on arm. http://crbug.com/356580 - # TODO(lizeb,pasko): Fix link errors when linking with order_profiling=1 - # crbug.com/485542 Index: branches/2018Q3/www/chromium/files/fix-hanging-tabs.sh =================================================================== --- branches/2018Q3/www/chromium/files/fix-hanging-tabs.sh (nonexistent) +++ branches/2018Q3/www/chromium/files/fix-hanging-tabs.sh (revision 476627) @@ -0,0 +1,45 @@ +#! /bin/sh - +# +# Chromium has a known problem of hanging tabs. The workaround for this +# problem is to mount ~/.cache/chromium as memory-fs. In order to do this, +# before you run Chromium, please run this script as root once for each user +# who uses Chromium. +# +# $FreeBSD$ + +set -e + +# Make sure that the user specified both the user and the group. +if [ ${#} -ne 2 ]; then + printf 'Usage: %s user group\n' "${0}" >&2 + exit 1 +fi + +user="${1}" +group="${2}" +home="$(awk -F: -v user="${user}" '{if ($1==user) print $6}' /etc/passwd)" +cachedir="${home}/.cache/chromium" +fstabrecord="md ${cachedir} mfs rw,late,-w${user}:${group},-s300m 2 0" + +# Make sure that the provided user and group are valid. +if ! id "${user}" >/dev/null 2>&1; then + printf 'Invalid user "%s"\n' "${user}" >&2 + exit 1 +elif [ ! -d "${home}" ]; then + printf 'Cannot locate home directory of user "%s"\n' "${user}" >&2 + exit 1 +elif ! grep "^${group}:" /etc/group >/dev/null; then + printf 'Invalid group "%s"\n' "${group}" >&2 + exit 1 +fi + +if grep "${fstabrecord}" /etc/fstab >/dev/null; then + printf 'Workaround already configured for user "%s"\n' "${user}" >&2 + exit 1 +fi + +if [ ! -d "${cachedir}" ]; then + su -l "${user}" -c 'mkdir "${cachedir}"' +fi +printf '%s\n' "${fstabrecord}" >> /etc/fstab +mount "${cachedir}" Property changes on: branches/2018Q3/www/chromium/files/fix-hanging-tabs.sh ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-base_debug_elf_reader_linux.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-base_debug_elf_reader_linux.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-base_debug_elf_reader_linux.cc (revision 476627) @@ -0,0 +1,13 @@ +--- base/debug/elf_reader_linux.cc.orig 2018-08-04 13:15:46.374048000 +0200 ++++ base/debug/elf_reader_linux.cc 2018-08-04 13:16:14.292901000 +0200 +@@ -41,8 +41,10 @@ + const void* section_end = segment.data() + segment.size_bytes(); + const Nhdr* note_header = reinterpret_cast(segment.data()); + while (note_header < section_end) { ++#if !defined(OS_BSD) + if (note_header->n_type == NT_GNU_BUILD_ID) + break; ++#endif + note_header = reinterpret_cast( + reinterpret_cast(note_header) + sizeof(Nhdr) + + bits::Align(note_header->n_namesz, 4) + Property changes on: branches/2018Q3/www/chromium/files/patch-base_debug_elf_reader_linux.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-base_process_process__metrics__freebsd.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-base_process_process__metrics__freebsd.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-base_process_process__metrics__freebsd.cc (revision 476627) @@ -1,79 +1,85 @@ ---- base/process/process_metrics_freebsd.cc.orig 2018-06-13 00:10:01.000000000 +0200 -+++ base/process/process_metrics_freebsd.cc 2018-07-20 00:07:42.005261000 +0200 -@@ -13,6 +13,10 @@ - #include "base/memory/ptr_util.h" +--- base/process/process_metrics_freebsd.cc.orig 2018-08-01 00:08:25.000000000 +0200 ++++ base/process/process_metrics_freebsd.cc 2018-08-04 21:48:06.554728000 +0200 +@@ -14,11 +14,14 @@ #include "base/process/process_metrics_iocounters.h" + #include "base/stl_util.h" +#include /* getpagesize() */ +#include /* O_RDONLY */ +#include + namespace base { ProcessMetrics::ProcessMetrics(ProcessHandle process) -@@ -61,6 +65,65 @@ +- : process_(process), +- last_cpu_(0) {} ++ : process_(process) {} + + // static + std::unique_ptr ProcessMetrics::CreateProcessMetrics( +@@ -67,6 +70,65 @@ pagesize = getpagesize(); return mem_total - (mem_free*pagesize) - (mem_inactive*pagesize); +} + +int GetNumberOfThreads(ProcessHandle process) { + // Taken from FreeBSD top (usr.bin/top/machine.c) + + kvm_t* kd = kvm_open(NULL, "/dev/null", NULL, O_RDONLY, "kvm_open"); + if (kd == NULL) + return 0; + + struct kinfo_proc* pbase; + int nproc; + pbase = kvm_getprocs(kd, KERN_PROC_PID, process, &nproc); + if (pbase == NULL) + return 0; + + if (kvm_close(kd) == -1) + return 0; + + return nproc; +} + +bool GetSystemMemoryInfo(SystemMemoryInfoKB *meminfo) { + unsigned int mem_total, mem_free, swap_total, swap_used; + size_t length; + int pagesizeKB; + + pagesizeKB = getpagesize() / 1024; + + length = sizeof(mem_total); + if (sysctlbyname("vm.stats.vm.v_page_count", &mem_total, + &length, NULL, 0) != 0 || length != sizeof(mem_total)) + return false; + + length = sizeof(mem_free); + if (sysctlbyname("vm.stats.vm.v_free_count", &mem_free, &length, NULL, 0) + != 0 || length != sizeof(mem_free)) + return false; + + length = sizeof(swap_total); + if (sysctlbyname("vm.swap_size", &swap_total, &length, NULL, 0) + != 0 || length != sizeof(swap_total)) + return false; + + length = sizeof(swap_used); + if (sysctlbyname("vm.swap_anon_use", &swap_used, &length, NULL, 0) + != 0 || length != sizeof(swap_used)) + return false; + + meminfo->total = mem_total * pagesizeKB; + meminfo->free = mem_free * pagesizeKB; + meminfo->swap_total = swap_total * pagesizeKB; + meminfo->swap_free = (swap_total - swap_used) * pagesizeKB; + + return true; +} + +uint64_t ProcessMetrics::GetVmSwapBytes() const { + NOTIMPLEMENTED(); + return 0; } } // namespace base Index: branches/2018Q3/www/chromium/files/patch-base_process_process__metrics__posix.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-base_process_process__metrics__posix.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-base_process_process__metrics__posix.cc (revision 476627) @@ -1,22 +1,20 @@ ---- base/process/process_metrics_posix.cc.orig 2017-09-05 21:05:11.000000000 +0200 -+++ base/process/process_metrics_posix.cc 2017-09-11 19:41:06.103369000 +0200 -@@ -16,6 +16,8 @@ +--- base/process/process_metrics_posix.cc.orig 2018-08-01 00:08:25.000000000 +0200 ++++ base/process/process_metrics_posix.cc 2018-08-05 00:53:58.559513000 +0200 +@@ -19,6 +19,8 @@ #if defined(OS_MACOSX) #include -+#elif defined(OS_BSD) ++#elif defined(OS_FREEBSD) +#include #else #include #endif -@@ -103,8 +105,9 @@ +@@ -107,7 +109,7 @@ + #else + return minfo.hblkhd + minfo.arena; #endif - #elif defined(OS_FUCHSIA) +-#elif defined(OS_FUCHSIA) ++#elif defined(OS_FUCHSIA) || defined(OS_BSD) // TODO(fuchsia): Not currently exposed. https://crbug.com/735087. -- return 0; -+ NOTIMPLEMENTED(); + return 0; #endif -+ return 0; - } - - } // namespace base Index: branches/2018Q3/www/chromium/files/patch-base_trace__event_process__memory__dump.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-base_trace__event_process__memory__dump.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-base_trace__event_process__memory__dump.cc (revision 476627) @@ -1,11 +1,11 @@ ---- base/trace_event/process_memory_dump.cc.orig 2017-12-15 02:04:05.000000000 +0100 -+++ base/trace_event/process_memory_dump.cc 2017-12-23 21:58:59.977492000 +0100 -@@ -86,7 +86,7 @@ - const size_t kMaxChunkSize = 8 * 1024 * 1024; - size_t max_vec_size = - GetSystemPageCount(std::min(mapped_size, kMaxChunkSize), page_size); --#if defined(OS_MACOSX) -+#if defined(OS_MACOSX) || defined(OS_BSD) - std::unique_ptr vec(new char[max_vec_size]); - #elif defined(OS_WIN) +--- base/trace_event/process_memory_dump.cc.orig 2018-08-01 00:08:26.000000000 +0200 ++++ base/trace_event/process_memory_dump.cc 2018-08-04 13:42:42.870211000 +0200 +@@ -95,7 +95,7 @@ + #if defined(OS_WIN) std::unique_ptr vec( + new PSAPI_WORKING_SET_EX_INFORMATION[max_vec_size]); +-#elif defined(OS_MACOSX) ++#elif defined(OS_MACOSX) || defined(OS_BSD) + std::unique_ptr vec(new char[max_vec_size]); + #elif defined(OS_POSIX) || defined(OS_FUCHSIA) + std::unique_ptr vec(new unsigned char[max_vec_size]); Index: branches/2018Q3/www/chromium/files/patch-base_trace__event_process__memory__dump.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-base_trace__event_process__memory__dump.h (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-base_trace__event_process__memory__dump.h (revision 476627) @@ -0,0 +1,11 @@ +--- base/trace_event/process_memory_dump.h.orig 2018-08-01 00:08:26.000000000 +0200 ++++ base/trace_event/process_memory_dump.h 2018-08-04 13:49:22.487126000 +0200 +@@ -22,7 +22,7 @@ + + // Define COUNT_RESIDENT_BYTES_SUPPORTED if platform supports counting of the + // resident memory. +-#if !defined(OS_NACL) ++#if !defined(OS_NACL) && !defined(OS_BSD) + #define COUNT_RESIDENT_BYTES_SUPPORTED + #endif + Property changes on: branches/2018Q3/www/chromium/files/patch-base_trace__event_process__memory__dump.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-build_config_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-build_config_BUILD.gn (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-build_config_BUILD.gn (revision 476627) @@ -1,29 +1,30 @@ ---- build/config/BUILD.gn.orig 2017-07-25 21:04:48.000000000 +0200 -+++ build/config/BUILD.gn 2017-08-02 23:31:08.597825000 +0200 -@@ -166,7 +166,7 @@ +--- build/config/BUILD.gn.orig 2018-08-01 00:08:26.000000000 +0200 ++++ build/config/BUILD.gn 2018-08-05 13:59:34.648903000 +0200 +@@ -167,7 +167,7 @@ # builds, and we have to tell it to turn it off. defines += [ "_HAS_ITERATOR_DEBUGGING=0" ] } - } else if (is_linux && current_cpu == "x64" && enable_iterator_debugging) { + } else if ((is_linux || is_bsd) && current_cpu == "x64" && enable_iterator_debugging) { # Enable libstdc++ debugging facilities to help catch problems early, see # http://crbug.com/65151 . # TODO(phajdan.jr): Should we enable this for all of POSIX? -@@ -255,7 +255,7 @@ - "CoreText.framework", - "Foundation.framework", +@@ -269,9 +269,7 @@ ] -- } else if (is_linux) { -+ } else if (is_linux && !is_bsd) { + } else if (is_linux) { libs = [ - "dl", - "rt", -@@ -302,7 +302,7 @@ +- "dl", + "pthread", +- "rt", + ] + } + } +@@ -320,7 +318,7 @@ "//build/config/ios:ios_dynamic_flags", "//build/config/ios:ios_executable_flags", ] - } else if (is_linux || is_android || current_os == "aix") { + } else if (is_linux || is_bsd || is_android || current_os == "aix") { configs += [ "//build/config/gcc:executable_ldconfig" ] if (is_android) { configs += [ "//build/config/android:executable_config" ] Index: branches/2018Q3/www/chromium/files/patch-build_config_BUILDCONFIG.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-build_config_BUILDCONFIG.gn (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-build_config_BUILDCONFIG.gn (revision 476627) @@ -1,122 +1,118 @@ ---- build/config/BUILDCONFIG.gn.orig 2018-02-24 16:25:08.000000000 +0100 -+++ build/config/BUILDCONFIG.gn 2018-03-03 19:33:34.562749000 +0100 -@@ -131,14 +131,14 @@ +--- build/config/BUILDCONFIG.gn.orig 2018-08-01 00:08:26.000000000 +0200 ++++ build/config/BUILDCONFIG.gn 2018-08-04 13:56:21.383564000 +0200 +@@ -131,10 +131,10 @@ is_official_build = false # Whether we're a traditional desktop unix. - is_desktop_linux = current_os == "linux" + is_desktop_linux = current_os == "linux" || current_os == "bsd" - # Set to true when compiling with the Clang compiler. Typically this is used - # to configure warnings. - is_clang = - current_os == "mac" || current_os == "ios" || current_os == "chromeos" || - current_os == "fuchsia" || current_os == "android" || -- current_os == "win" || -+ current_os == "win" || current_os == "bsd" || - (current_os == "linux" && current_cpu != "s390x" && - current_cpu != "s390" && current_cpu != "ppc64" && - current_cpu != "ppc" && current_cpu != "mips" && current_cpu != "mips64") -@@ -191,8 +191,8 @@ + # Set to true when compiling with the Clang compiler. +- is_clang = current_os != "linux" || ++ is_clang = current_os != "linux" || current_os == "bsd" || + (current_cpu != "s390x" && current_cpu != "s390" && + current_cpu != "ppc64" && current_cpu != "ppc" && + current_cpu != "mips" && current_cpu != "mips64") +@@ -186,8 +186,8 @@ # TODO(dpranke): Add some sort of assert here that verifies that # no toolchain omitted host_toolchain from its toolchain_args(). - if (host_os == "linux") { - if (target_os != "linux") { + if (host_os == "linux" || host_os == "bsd") { + if (target_os != "linux" || target_os != "bsd") { # TODO(dpranke) - is_clang normally applies only to the target # build, and there is no way to indicate that you want to override # it for both the target build *and* the host build. Do we need to -@@ -226,7 +226,7 @@ +@@ -227,7 +227,7 @@ assert(host_os == "linux" || host_os == "mac", "Android builds are only supported on Linux and Mac hosts.") _default_toolchain = "//build/toolchain/android:android_clang_$target_cpu" -} else if (target_os == "chromeos" || target_os == "linux") { +} else if (target_os == "chromeos" || target_os == "linux" || target_os == "bsd") { # See comments in build/toolchain/cros/BUILD.gn about board compiles. if (is_clang) { _default_toolchain = "//build/toolchain/linux:clang_$target_cpu" -@@ -296,6 +296,7 @@ +@@ -300,6 +300,7 @@ is_nacl = false is_posix = false is_win = true + is_bsd = false } else if (current_os == "mac") { is_android = false is_chromeos = false -@@ -306,6 +307,7 @@ +@@ -310,6 +311,7 @@ is_nacl = false is_posix = true is_win = false + is_bsd = false } else if (current_os == "android") { is_android = true is_chromeos = false -@@ -316,6 +318,7 @@ +@@ -320,6 +322,7 @@ is_nacl = false is_posix = true is_win = false + is_bsd = false } else if (current_os == "chromeos") { is_android = false is_chromeos = true -@@ -326,6 +329,7 @@ +@@ -330,6 +333,7 @@ is_nacl = false is_posix = true is_win = false + is_bsd = false } else if (current_os == "nacl") { # current_os == "nacl" will be passed by the nacl toolchain definition. # It is not set by default or on the command line. We treat is as a -@@ -339,6 +343,7 @@ +@@ -343,6 +347,7 @@ is_nacl = true is_posix = true is_win = false + is_bsd = false } else if (current_os == "fuchsia") { is_android = false is_chromeos = false -@@ -349,6 +354,7 @@ +@@ -353,6 +358,7 @@ is_nacl = false - is_posix = true + is_posix = false is_win = false + is_bsd = false } else if (current_os == "ios") { is_android = false is_chromeos = false -@@ -359,6 +365,7 @@ +@@ -363,6 +369,7 @@ is_nacl = false is_posix = true is_win = false + is_bsd = false } else if (current_os == "linux") { is_android = false is_chromeos = false -@@ -369,6 +376,7 @@ +@@ -373,6 +380,7 @@ is_nacl = false is_posix = true is_win = false + is_bsd = false } else if (current_os == "aix") { is_android = false is_chromeos = false -@@ -378,6 +386,18 @@ +@@ -383,6 +391,18 @@ is_nacl = false is_posix = true is_win = false + is_bsd = false +} else if (current_os == "bsd") { + is_android = false + is_chromeos = false + is_fuchsia = false + is_ios = false + is_linux = true + is_mac = false + is_nacl = false + is_posix = true + is_win = false + is_bsd = true } # ============================================================================= Index: branches/2018Q3/www/chromium/files/patch-build_config_compiler_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-build_config_compiler_BUILD.gn (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-build_config_compiler_BUILD.gn (revision 476627) @@ -0,0 +1,89 @@ +--- build/config/compiler/BUILD.gn.orig 2018-08-01 00:08:26.000000000 +0200 ++++ build/config/compiler/BUILD.gn 2018-08-05 04:12:50.165240000 +0200 +@@ -51,7 +51,7 @@ + # only two architectures that are currently checked in). Turn this off when + # you are using a custom toolchain and need to control -B in cflags. + linux_use_bundled_binutils = +- linux_use_bundled_binutils_override && is_linux && ++ linux_use_bundled_binutils_override && (is_linux && !is_bsd) && + (current_cpu == "x64" || current_cpu == "x86") + binutils_path = rebase_path("//third_party/binutils/Linux_x64/Release/bin", + root_build_dir) +@@ -266,7 +266,7 @@ + # Linker warnings. + if (fatal_linker_warnings && !(is_chromeos && current_cpu == "arm") && + !(is_android && use_order_profiling) && !is_mac && !is_ios && +- current_os != "aix") { ++ current_os != "aix" && !is_bsd) { + # TODO(jochen): Enable this on chromeos on arm. http://crbug.com/356580 + # TODO(lizeb,pasko): Fix link errors when linking with order_profiling=1 + # crbug.com/485542 +@@ -380,12 +380,6 @@ + "-Wl,-z,now", + "-Wl,-z,relro", + ] +- if (!using_sanitizer) { +- ldflags += [ +- "-Wl,-z,defs", +- "-Wl,--as-needed", +- ] +- } + } + + # Linux-specific compiler flags setup. +@@ -489,7 +483,7 @@ + } + + if (is_clang && !is_nacl && current_toolchain == host_toolchain && +- target_os != "chromeos") { ++ target_os != "chromeos" && !is_bsd) { + cflags += [ + # TODO(hans): Remove this once Clang generates better optimized debug info + # by default. https://crbug.com/765793 +@@ -734,7 +728,7 @@ + cflags += [ "-mtune=$arm_tune" ] + } + } else if (current_cpu == "arm64") { +- if (is_clang && !is_android && !is_nacl && !is_fuchsia) { ++ if (is_clang && !is_android && !is_nacl && !is_fuchsia && !is_bsd) { + cflags += [ "--target=aarch64-linux-gnu" ] + ldflags += [ "--target=aarch64-linux-gnu" ] + } +@@ -1415,10 +1409,6 @@ + + # TODO(hans): https://crbug.com/766891 + "-Wno-null-pointer-arithmetic", +- +- # Ignore warnings about MSVC optimization pragmas. +- # TODO(thakis): Only for no_chromium_code? http://crbug.com/505314 +- "-Wno-ignored-pragma-optimize", + ] + } else if (use_xcode_clang) { + cflags += [ +@@ -1594,7 +1584,7 @@ + # Mac and iOS use the mac-specific "libtool" command, not ar, which doesn't + # have a "thin archive" mode (it does accept -T, but it means truncating + # archive names to 16 characters, which is not what we want). +- if ((is_posix && !is_nacl && !is_mac && !is_ios) || is_fuchsia) { ++ if ((is_posix && !is_nacl && !is_mac && !is_ios && !is_bsd) || is_fuchsia) { + arflags = [ "-T" ] + } + } +@@ -2119,7 +2109,7 @@ + # [1] crrev.com/a81d5ade0b043208e06ad71a38bcf9c348a1a52f + cflags += [ "-gdwarf-3" ] + } +- cflags += [ "-g2" ] ++ cflags += [ "-g0" ] + } + if (use_debug_fission && !is_nacl && !is_android) { + # NOTE: Some Chrome OS builds globally set |use_debug_fission| to true, +@@ -2139,7 +2129,7 @@ + # DWARF info may be corrupt; offsets in a range list entry are in different + # sections" there. Maybe just a bug in nacl_switch_32.S. + if (!is_mac && !is_ios && !is_nacl && target_cpu != "x86" && +- (use_gold || use_lld)) { ++ (use_gold || use_lld) && !is_bsd) { + if (is_clang) { + # This flag enables the GNU-format pubnames and pubtypes sections, + # which lld needs in order to generate a correct GDB index. Property changes on: branches/2018Q3/www/chromium/files/patch-build_config_compiler_BUILD.gn ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-build_config_compiler_compiler.gni =================================================================== --- branches/2018Q3/www/chromium/files/patch-build_config_compiler_compiler.gni (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-build_config_compiler_compiler.gni (revision 476627) @@ -1,11 +1,11 @@ ---- build/config/compiler/compiler.gni.orig 2018-06-19 18:20:54.692104000 +0200 -+++ build/config/compiler/compiler.gni 2018-06-19 18:21:18.098165000 +0200 -@@ -164,7 +164,7 @@ +--- build/config/compiler/compiler.gni.orig 2018-08-01 00:08:26.000000000 +0200 ++++ build/config/compiler/compiler.gni 2018-08-04 14:04:44.799794000 +0200 +@@ -172,7 +172,7 @@ declare_args() { # Whether to use the gold linker from binutils instead of lld or bfd. -- use_gold = -+ use_gold = !is_bsd && - (!use_lld && !(is_chromecast && is_linux && - (current_cpu == "arm" || current_cpu == "mipsel")) && - (is_linux && (current_cpu == "x64" || current_cpu == "x86" || +- use_gold = !use_lld && !(is_chromecast && is_linux && ++ use_gold = !is_bsd && !use_lld && !(is_chromecast && is_linux && + (current_cpu == "arm" || current_cpu == "mipsel")) && + ((is_linux && (current_cpu == "x64" || current_cpu == "x86" || + current_cpu == "arm" || current_cpu == "mipsel" || Index: branches/2018Q3/www/chromium/files/patch-chrome_browser_about__flags.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-chrome_browser_about__flags.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-chrome_browser_about__flags.cc (revision 476627) @@ -1,44 +1,20 @@ ---- chrome/browser/about_flags.cc.orig 2018-06-13 00:10:04.000000000 +0200 -+++ chrome/browser/about_flags.cc 2018-07-20 16:41:11.196156000 +0200 -@@ -593,7 +593,7 @@ - switches::kForceDirectionRTL}, - }; - --#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) -+#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_BSD) - // Feature used to enable the identification of open tabs given URLs in - // suggestions, and converting those suggestions to ones that allow switching to - // the tab if found. Currently only on the desktop. Includes button option -@@ -2441,12 +2441,12 @@ +--- chrome/browser/about_flags.cc.orig 2018-08-01 00:08:29.000000000 +0200 ++++ chrome/browser/about_flags.cc 2018-08-04 14:12:27.193526000 +0200 +@@ -2408,7 +2408,7 @@ flag_descriptions::kEnableMaterialDesignExtensionsDescription, kOsDesktop, FEATURE_VALUE_TYPE(features::kMaterialDesignExtensions)}, #endif // ENABLE_EXTENSIONS -#if defined(OS_WIN) || defined(OS_LINUX) +#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD) {"enable-input-ime-api", flag_descriptions::kEnableInputImeApiName, flag_descriptions::kEnableInputImeApiDescription, kOsWin | kOsLinux, ENABLE_DISABLE_VALUE_TYPE(switches::kEnableInputImeAPI, - switches::kDisableInputImeAPI)}, --#endif // OS_WIN || OS_LINUX -+#endif // OS_WIN || OS_LINUX || OS_BSD - {"enable-origin-trials", flag_descriptions::kOriginTrialsName, - flag_descriptions::kOriginTrialsDescription, kOsAll, - FEATURE_VALUE_TYPE(features::kOriginTrials)}, -@@ -3058,7 +3058,7 @@ +@@ -3024,7 +3024,7 @@ flag_descriptions::kLeftToRightUrlsDescription, kOsDesktop, FEATURE_VALUE_TYPE(features::kLeftToRightUrls)}, -#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) +#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_BSD) - {"omnibox-entity-suggestions", - flag_descriptions::kOmniboxEntitySuggestionsName, - flag_descriptions::kOmniboxEntitySuggestionsDescription, kOsDesktop, -@@ -3077,7 +3077,7 @@ - {"enable-new-app-menu-icon", flag_descriptions::kEnableNewAppMenuIconName, - flag_descriptions::kEnableNewAppMenuIconDescription, kOsDesktop, - FEATURE_VALUE_TYPE(features::kAnimatedAppMenuIcon)}, --#endif // defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) -+#endif // defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_BSD) - - #if defined(OS_ANDROID) - {"enable-custom-feedback-ui", + {"omnibox-new-answer-layout", + flag_descriptions::kOmniboxNewAnswerLayoutName, + flag_descriptions::kOmniboxNewAnswerLayoutDescription, kOsDesktop, Index: branches/2018Q3/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-chrome_browser_chrome__content__browser__client.cc (revision 476627) @@ -1,83 +1,74 @@ ---- chrome/browser/chrome_content_browser_client.cc.orig 2018-06-13 00:10:04.000000000 +0200 -+++ chrome/browser/chrome_content_browser_client.cc 2018-07-14 14:04:47.872292000 +0200 -@@ -305,7 +305,7 @@ +--- chrome/browser/chrome_content_browser_client.cc.orig 2018-08-01 00:08:29.000000000 +0200 ++++ chrome/browser/chrome_content_browser_client.cc 2018-08-04 14:22:56.785429000 +0200 +@@ -309,7 +309,7 @@ #include "chromeos/chromeos_switches.h" #include "components/user_manager/user_manager.h" #include "services/service_manager/public/mojom/interface_provider_spec.mojom.h" -#elif defined(OS_LINUX) +#elif defined(OS_LINUX) || defined(OS_BSD) #include "chrome/browser/chrome_browser_main_linux.h" #elif defined(OS_ANDROID) #include "base/android/application_status_listener.h" -@@ -342,7 +342,7 @@ +@@ -347,7 +347,7 @@ #include "chrome/common/importer/profile_import.mojom.h" #endif -#if defined(OS_LINUX) || defined(OS_WIN) +#if defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD) #include "chrome/browser/webshare/share_service_impl.h" #endif -@@ -356,7 +356,7 @@ +@@ -361,7 +361,7 @@ #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views.h" #endif -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#if (defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.h" #endif -@@ -1033,7 +1033,7 @@ - main_parts = new ChromeBrowserMainPartsMac(parameters); +@@ -1061,7 +1061,7 @@ #elif defined(OS_CHROMEOS) - main_parts = new chromeos::ChromeBrowserMainPartsChromeos(parameters); + main_parts = new chromeos::ChromeBrowserMainPartsChromeos( + parameters, std::move(service_manifest_data_pack_)); -#elif defined(OS_LINUX) +#elif defined(OS_LINUX) || defined(OS_BSD) - main_parts = new ChromeBrowserMainPartsLinux(parameters); + main_parts = new ChromeBrowserMainPartsLinux( + parameters, std::move(service_manifest_data_pack_)); #elif defined(OS_ANDROID) - main_parts = new ChromeBrowserMainPartsAndroid(parameters); -@@ -1049,7 +1049,7 @@ +@@ -1081,7 +1081,7 @@ // Construct additional browser parts. Stages are called in the order in // which they are added. #if defined(TOOLKIT_VIEWS) -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(USE_OZONE) -+#if (defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) && !defined(USE_OZONE) ++#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS) && !defined(USE_OZONE) main_parts->AddParts(new ChromeBrowserMainExtraPartsViewsLinux()); #else main_parts->AddParts(new ChromeBrowserMainExtraPartsViews()); -@@ -1789,7 +1789,7 @@ +@@ -1823,7 +1823,7 @@ command_line->AppendSwitchASCII(switches::kMetricsClientID, client_info->client_id); } -#elif defined(OS_POSIX) +#elif defined(OS_POSIX) && !defined(OS_BSD) - bool enable_crash_reporter = breakpad::IsCrashReporterEnabled(); - #if defined(OS_CHROMEOS) - // Chrome OS uses the OS-level crash_reporter for mash services, so disable -@@ -3096,7 +3096,7 @@ + if (breakpad::IsCrashReporterEnabled()) { + std::string switch_value; + std::unique_ptr client_info = +@@ -3177,7 +3177,7 @@ } } -#if defined(OS_POSIX) && !defined(OS_MACOSX) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD) void ChromeContentBrowserClient::GetAdditionalMappedFilesForChildProcess( const base::CommandLine& command_line, int child_process_id, -@@ -3132,7 +3132,7 @@ - } - #endif // defined(OS_ANDROID) - } --#endif // defined(OS_POSIX) && !defined(OS_MACOSX) -+#endif // defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD) - - #if defined(OS_WIN) - base::string16 ChromeContentBrowserClient::GetAppContainerSidForSandboxType( -@@ -3806,7 +3806,7 @@ +@@ -3892,7 +3892,7 @@ #if defined(OS_ANDROID) frame_interfaces_parameterized_->AddInterface(base::Bind( &ForwardToJavaWebContentsRegistry)); -#elif defined(OS_LINUX) || defined(OS_WIN) +#elif defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD) frame_interfaces_->AddInterface(base::Bind(&ShareServiceImpl::Create)); #endif Index: branches/2018Q3/www/chromium/files/patch-chrome_browser_memory__details.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-chrome_browser_memory__details.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-chrome_browser_memory__details.cc (revision 476627) @@ -1,20 +1,20 @@ ---- chrome/browser/memory_details.cc.orig 2017-06-05 19:03:02 UTC -+++ chrome/browser/memory_details.cc -@@ -35,7 +35,7 @@ - #include "extensions/features/features.h" +--- chrome/browser/memory_details.cc.orig 2018-08-01 00:08:30.000000000 +0200 ++++ chrome/browser/memory_details.cc 2018-08-04 14:30:27.145764000 +0200 +@@ -36,7 +36,7 @@ + #include "services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.h" #include "ui/base/l10n/l10n_util.h" -#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) - #include "content/public/browser/zygote_host_linux.h" + #include "services/service_manager/zygote/zygote_host_linux.h" #endif -@@ -344,7 +344,7 @@ void MemoryDetails::CollectChildInfoOnUIThread() { +@@ -341,7 +341,7 @@ process.titles.push_back(title); } -#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) - if (content::ZygoteHost::GetInstance()->IsZygotePid(process.pid)) { + if (service_manager::ZygoteHost::GetInstance()->IsZygotePid(process.pid)) { process.process_type = content::PROCESS_TYPE_ZYGOTE; } Index: branches/2018Q3/www/chromium/files/patch-chrome_browser_tracing_crash__service__uploader.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-chrome_browser_tracing_crash__service__uploader.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-chrome_browser_tracing_crash__service__uploader.cc (revision 476627) @@ -1,11 +1,11 @@ ---- chrome/browser/tracing/crash_service_uploader.cc.orig 2017-06-05 19:03:03 UTC -+++ chrome/browser/tracing/crash_service_uploader.cc -@@ -157,6 +157,8 @@ void TraceCrashServiceUploader::DoUploadOnFileThread( +--- chrome/browser/tracing/crash_service_uploader.cc.orig 2018-08-01 00:08:32.000000000 +0200 ++++ chrome/browser/tracing/crash_service_uploader.cc 2018-08-04 14:37:55.834228000 +0200 +@@ -158,6 +158,8 @@ + const char product[] = "Chrome_Linux"; + #elif defined(OS_ANDROID) const char product[] = "Chrome_Android"; - #elif defined(OS_CHROMEOS) - const char product[] = "Chrome_ChromeOS"; +#elif defined(OS_FREEBSD) + const char product[] = "Chrome_FreeBSD"; #else #error Platform not supported. #endif Index: branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_views_accelerator__table.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_views_accelerator__table.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_views_accelerator__table.cc (revision 476627) @@ -1,29 +1,29 @@ ---- chrome/browser/ui/views/accelerator_table.cc.orig 2017-06-05 19:03:03 UTC -+++ chrome/browser/ui/views/accelerator_table.cc -@@ -54,7 +54,7 @@ const AcceleratorMapping kAcceleratorMap[] = { - { ui::VKEY_S, kPlatformModifier, IDC_SAVE_PAGE }, - { ui::VKEY_9, kPlatformModifier, IDC_SELECT_LAST_TAB }, - { ui::VKEY_NUMPAD9, kPlatformModifier, IDC_SELECT_LAST_TAB }, +--- chrome/browser/ui/views/accelerator_table.cc.orig 2018-08-01 00:08:32.000000000 +0200 ++++ chrome/browser/ui/views/accelerator_table.cc 2018-08-04 17:21:33.552862000 +0200 +@@ -44,7 +44,7 @@ + {ui::VKEY_S, ui::EF_PLATFORM_ACCELERATOR, IDC_SAVE_PAGE}, + {ui::VKEY_9, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_LAST_TAB}, + {ui::VKEY_NUMPAD9, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_LAST_TAB}, -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS) - { ui::VKEY_9, ui::EF_ALT_DOWN, IDC_SELECT_LAST_TAB }, - { ui::VKEY_NUMPAD9, ui::EF_ALT_DOWN, IDC_SELECT_LAST_TAB }, - { ui::VKEY_NEXT, ui::EF_CONTROL_DOWN | ui::EF_SHIFT_DOWN, IDC_MOVE_TAB_NEXT }, -@@ -84,7 +84,7 @@ const AcceleratorMapping kAcceleratorMap[] = { - { ui::VKEY_NUMPAD7, kPlatformModifier, IDC_SELECT_TAB_6 }, - { ui::VKEY_8, kPlatformModifier, IDC_SELECT_TAB_7 }, - { ui::VKEY_NUMPAD8, kPlatformModifier, IDC_SELECT_TAB_7 }, + {ui::VKEY_9, ui::EF_ALT_DOWN, IDC_SELECT_LAST_TAB}, + {ui::VKEY_NUMPAD9, ui::EF_ALT_DOWN, IDC_SELECT_LAST_TAB}, + {ui::VKEY_NEXT, ui::EF_CONTROL_DOWN | ui::EF_SHIFT_DOWN, IDC_MOVE_TAB_NEXT}, +@@ -74,7 +74,7 @@ + {ui::VKEY_NUMPAD7, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_TAB_6}, + {ui::VKEY_8, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_TAB_7}, + {ui::VKEY_NUMPAD8, ui::EF_PLATFORM_ACCELERATOR, IDC_SELECT_TAB_7}, -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS) - { ui::VKEY_1, ui::EF_ALT_DOWN, IDC_SELECT_TAB_0 }, - { ui::VKEY_NUMPAD1, ui::EF_ALT_DOWN, IDC_SELECT_TAB_0 }, - { ui::VKEY_2, ui::EF_ALT_DOWN, IDC_SELECT_TAB_1 }, -@@ -129,7 +129,7 @@ const AcceleratorMapping kAcceleratorMap[] = { + {ui::VKEY_1, ui::EF_ALT_DOWN, IDC_SELECT_TAB_0}, + {ui::VKEY_NUMPAD1, ui::EF_ALT_DOWN, IDC_SELECT_TAB_0}, + {ui::VKEY_2, ui::EF_ALT_DOWN, IDC_SELECT_TAB_1}, +@@ -119,7 +119,7 @@ #endif // !OS_MACOSX // Platform-specific key maps. -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) - { ui::VKEY_BROWSER_BACK, ui::EF_NONE, IDC_BACK }, - { ui::VKEY_BROWSER_FORWARD, ui::EF_NONE, IDC_FORWARD }, - { ui::VKEY_BROWSER_HOME, ui::EF_NONE, IDC_HOME }, + {ui::VKEY_BROWSER_BACK, ui::EF_NONE, IDC_BACK}, + {ui::VKEY_BROWSER_FORWARD, ui::EF_NONE, IDC_FORWARD}, + {ui::VKEY_BROWSER_HOME, ui::EF_NONE, IDC_HOME}, Index: branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view__layout.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view__layout.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-chrome_browser_ui_views_frame_opaque__browser__frame__view__layout.cc (revision 476627) @@ -1,11 +1,11 @@ ---- chrome/browser/ui/views/frame/opaque_browser_frame_view_layout.cc.orig 2017-04-19 19:06:30 UTC -+++ chrome/browser/ui/views/frame/opaque_browser_frame_view_layout.cc -@@ -20,7 +20,7 @@ namespace { +--- chrome/browser/ui/views/frame/opaque_browser_frame_view_layout.cc.orig 2018-08-01 00:08:32.000000000 +0200 ++++ chrome/browser/ui/views/frame/opaque_browser_frame_view_layout.cc 2018-08-04 17:27:55.912686000 +0200 +@@ -21,7 +21,7 @@ - const int kCaptionButtonHeight = 18; + constexpr int kCaptionButtonHeight = 18; -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) || defined(OS_BSD) - // Default extra space between the top of the frame and the top of the window - // caption buttons. - const int kExtraCaption = 2; ++#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS) + // Default spacing around window caption buttons. + constexpr int kCaptionButtonSpacing = 2; + #else Index: branches/2018Q3/www/chromium/files/patch-chrome_common_chrome__features.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-chrome_common_chrome__features.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-chrome_common_chrome__features.cc (revision 476627) @@ -1,27 +1,29 @@ ---- chrome/common/chrome_features.cc.orig 2018-06-13 00:10:09.000000000 +0200 -+++ chrome/common/chrome_features.cc 2018-07-20 16:33:58.698475000 +0200 -@@ -85,13 +85,13 @@ +--- chrome/common/chrome_features.cc.orig 2018-08-01 00:08:33.000000000 +0200 ++++ chrome/common/chrome_features.cc 2018-08-05 16:46:49.046411000 +0200 +@@ -85,7 +85,7 @@ base::FEATURE_ENABLED_BY_DEFAULT}; #endif // defined(OS_WIN) || defined(OS_MACOSX) -#if defined(OS_WIN) || defined(OS_LINUX) +#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD) // Enables the Restart background mode optimization. When all Chrome UI is // closed and it goes in the background, allows to restart the browser to // discard memory. - const base::Feature kBackgroundModeAllowRestart{ - "BackgroundModeAllowRestart", base::FEATURE_DISABLED_BY_DEFAULT}; --#endif // defined(OS_WIN) || defined(OS_LINUX) -+#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD) - - // Enables or disables whether permission prompts are automatically blocked - // after the user has explicitly dismissed them too many times. @@ -142,7 +142,7 @@ base::FEATURE_ENABLED_BY_DEFAULT}; #endif -#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX) +#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX) || defined(OS_BSD) // Enables the dual certificate verification trial feature. // https://crbug.com/649026 const base::Feature kCertDualVerificationTrialFeature{ +@@ -367,7 +367,7 @@ + "AcknowledgeNtpOverrideOnDeactivate", base::FEATURE_DISABLED_BY_DEFAULT}; + #endif + +-#if defined(OS_WIN) || (defined(OS_LINUX) && !defined(OS_CHROMEOS)) ++#if defined(OS_WIN) || ((defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)) + const base::Feature kWarnBeforeQuitting{"WarnBeforeQuitting", + base::FEATURE_DISABLED_BY_DEFAULT}; + #endif Index: branches/2018Q3/www/chromium/files/patch-chrome_common_chrome__features.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-chrome_common_chrome__features.h (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-chrome_common_chrome__features.h (revision 476627) @@ -1,23 +1,29 @@ ---- chrome/common/chrome_features.h.orig 2018-06-13 00:10:09.000000000 +0200 -+++ chrome/common/chrome_features.h 2018-07-20 16:34:38.434106000 +0200 -@@ -52,9 +52,9 @@ +--- chrome/common/chrome_features.h.orig 2018-08-01 00:08:33.000000000 +0200 ++++ chrome/common/chrome_features.h 2018-08-05 16:48:04.662112000 +0200 +@@ -52,7 +52,7 @@ extern const base::Feature kAutomaticTabDiscarding; #endif // defined(OS_WIN) || defined(OS_MACOSX) -#if defined(OS_WIN) || defined(OS_LINUX) +#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD) extern const base::Feature kBackgroundModeAllowRestart; --#endif // defined(OS_WIN) || defined(OS_LINUX) -+#endif // defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD) + #endif // defined(OS_WIN) || defined(OS_LINUX) - extern const base::Feature kBlockPromptsIfDismissedOften; - extern const base::Feature kBlockPromptsIfIgnoredOften; @@ -76,7 +76,7 @@ extern const base::Feature kTabStripKeyboardFocus; #endif // defined(OS_MACOSX) -#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX) +#if (defined(OS_LINUX) && !defined(OS_CHROMEOS)) || defined(OS_MACOSX) || defined(OS_BSD) extern const base::Feature kCertDualVerificationTrialFeature; + #endif + +@@ -204,7 +204,7 @@ + extern const base::Feature kAcknowledgeNtpOverrideOnDeactivate; + #endif + +-#if defined(OS_WIN) || (defined(OS_LINUX) && !defined(OS_CHROMEOS)) ++#if defined(OS_WIN) || ((defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_CHROMEOS)) + extern const base::Feature kWarnBeforeQuitting; #endif Index: branches/2018Q3/www/chromium/files/patch-components_autofill_content_renderer_password__form__conversion__utils.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-components_autofill_content_renderer_password__form__conversion__utils.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-components_autofill_content_renderer_password__form__conversion__utils.cc (revision 476627) @@ -1,14 +1,14 @@ ---- components/autofill/content/renderer/password_form_conversion_utils.cc.orig 2018-06-13 00:10:12.000000000 +0200 -+++ components/autofill/content/renderer/password_form_conversion_utils.cc 2018-07-18 23:26:07.424533000 +0200 -@@ -34,7 +34,11 @@ +--- components/autofill/content/renderer/password_form_conversion_utils.cc.orig 2018-08-01 00:08:37.000000000 +0200 ++++ components/autofill/content/renderer/password_form_conversion_utils.cc 2018-08-04 17:44:14.098469000 +0200 +@@ -38,7 +38,11 @@ #include "third_party/blink/public/web/web_form_control_element.h" #include "third_party/blink/public/web/web_input_element.h" #include "third_party/blink/public/web/web_local_frame.h" +#if defined(OS_BSD) +#include +#else #include "third_party/re2/src/re2/re2.h" +#endif + #include "url/gurl.h" - using blink::WebDocument; using blink::WebFormControlElement; Index: branches/2018Q3/www/chromium/files/patch-components_autofill_strings.grdp =================================================================== --- branches/2018Q3/www/chromium/files/patch-components_autofill_strings.grdp (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-components_autofill_strings.grdp (revision 476627) @@ -1,20 +1,29 @@ ---- components/autofill_strings.grdp.orig 2017-12-15 02:04:14.000000000 +0100 -+++ components/autofill_strings.grdp 2017-12-24 11:25:08.009423000 +0100 -@@ -216,7 +216,7 @@ - Do you want Chromium to save this card? - - +--- components/autofill_strings.grdp.orig 2018-08-01 00:08:37.000000000 +0200 ++++ components/autofill_strings.grdp 2018-08-04 17:51:10.986958000 +0200 +@@ -195,7 +195,7 @@ + + Confirm + - + Do you want to save this card to your Google Account? -@@ -234,7 +234,7 @@ +@@ -213,7 +213,7 @@ Pay quickly on sites and apps across devices using cards you have saved with Google. - + To pay faster next time, save this card to your Google Account. +@@ -225,7 +225,7 @@ + + + +- ++ + + + To pay faster next time, save your card and billing address to your Google Account. Index: branches/2018Q3/www/chromium/files/patch-components_crash_content_app_crashpad.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-components_crash_content_app_crashpad.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-components_crash_content_app_crashpad.cc (revision 476627) @@ -1,32 +1,43 @@ ---- components/crash/content/app/crashpad.cc.orig 2018-07-19 00:30:58.065324000 +0200 -+++ components/crash/content/app/crashpad.cc 2018-07-19 00:32:11.350482000 +0200 -@@ -119,7 +119,7 @@ +--- components/crash/content/app/crashpad.cc.orig 2018-08-01 00:08:38.000000000 +0200 ++++ components/crash/content/app/crashpad.cc 2018-08-05 12:57:33.862455000 +0200 +@@ -101,6 +101,12 @@ + const std::string& user_data_dir, + const base::FilePath& exe_path, + bool embedded_handler) { ++ ++#if defined(OS_BSD) ++ NOTIMPLEMENTED(); ++ return; ++#endif ++ + static bool initialized = false; + DCHECK(!initialized); + initialized = true; +@@ -119,7 +125,7 @@ // as processed by the backend. DCHECK(browser_process || process_type == "Chrome Installer" || process_type == "notification-helper"); -#elif defined(OS_LINUX) || defined(OS_ANDROID) +#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD) DCHECK(browser_process); #else #error Port. -@@ -184,7 +184,7 @@ +@@ -184,7 +190,7 @@ // other "main, first process" to initialize things. There is no "relauncher" // on Windows, so this is synonymous with initial_client. const bool should_initialize_database_and_set_upload_policy = initial_client; -#elif defined(OS_LINUX) || defined(OS_ANDROID) +#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD) const bool should_initialize_database_and_set_upload_policy = browser_process; #endif if (should_initialize_database_and_set_upload_policy) { -@@ -253,7 +253,11 @@ +@@ -253,7 +259,9 @@ } void DumpWithoutCrashing() { -+#if defined(OS_BSD) -+ NOTIMPLEMENTED(); -+#else ++#if !defined(OS_BSD) CRASHPAD_SIMULATE_CRASH(); +#endif } void GetReports(std::vector* reports) { Index: branches/2018Q3/www/chromium/files/patch-components_crash_core_common_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-components_crash_core_common_BUILD.gn (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-components_crash_core_common_BUILD.gn (revision 476627) @@ -1,10 +1,28 @@ ---- components/crash/core/common/BUILD.gn.orig 2018-03-03 20:58:02.430388000 +0100 -+++ components/crash/core/common/BUILD.gn 2018-03-03 20:58:21.875946000 +0100 -@@ -38,7 +38,6 @@ - "crash_key_internal.h", - ] +--- components/crash/core/common/BUILD.gn.orig 2018-08-01 00:08:38.000000000 +0200 ++++ components/crash/core/common/BUILD.gn 2018-08-05 12:52:29.173813000 +0200 +@@ -6,7 +6,7 @@ + declare_args() { + # If set to true, this will stub out and disable the entire crash key system. +- use_crash_key_stubs = is_fuchsia ++ use_crash_key_stubs = is_fuchsia || is_bsd + } + + group("common") { +@@ -88,7 +88,6 @@ + ] + } + - deps += [ "//third_party/breakpad:client" ] } } +@@ -143,7 +142,7 @@ + sources += [ "objc_zombie_unittest.mm" ] + } + +- if (!is_mac && !is_win && !is_fuchsia) { ++ if (!is_mac && !is_win && !is_fuchsia && !is_bsd) { + include_dirs = [ "//third_party/breakpad/breakpad/src/" ] + sources += [ "crash_key_breakpad_unittest.cc" ] + } Index: branches/2018Q3/www/chromium/files/patch-components_services_filesystem_file_system_app.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-components_services_filesystem_file_system_app.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-components_services_filesystem_file_system_app.cc (revision 476627) @@ -1,20 +1,20 @@ ---- components/services/filesystem/file_system_app.cc.orig 2018-07-18 23:43:08.740779000 +0200 -+++ components/services/filesystem/file_system_app.cc 2018-07-18 23:43:41.614940000 +0200 +--- components/services/filesystem/file_system_app.cc.orig 2018-08-01 00:08:40.000000000 +0200 ++++ components/services/filesystem/file_system_app.cc 2018-08-04 18:24:22.212419000 +0200 @@ -20,7 +20,7 @@ #elif defined(OS_ANDROID) #include "base/base_paths_android.h" #include "base/path_service.h" -#elif defined(OS_LINUX) +#elif defined(OS_LINUX) || defined(OS_BSD) #include "base/environment.h" #include "base/nix/xdg_util.h" #elif defined(OS_MACOSX) @@ -75,7 +75,7 @@ - CHECK(PathService::Get(base::DIR_APP_DATA, &path)); + CHECK(base::PathService::Get(base::DIR_APP_DATA, &path)); #elif defined(OS_ANDROID) - CHECK(PathService::Get(base::DIR_ANDROID_APP_DATA, &path)); + CHECK(base::PathService::Get(base::DIR_ANDROID_APP_DATA, &path)); -#elif defined(OS_LINUX) +#elif defined(OS_LINUX) || defined(OS_BSD) std::unique_ptr env(base::Environment::Create()); path = base::nix::GetXDGDirectory( env.get(), base::nix::kXdgConfigHomeEnvVar, base::nix::kDotConfigDir); Index: branches/2018Q3/www/chromium/files/patch-content_app_content_main_runner_impl.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_app_content_main_runner_impl.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-content_app_content_main_runner_impl.cc (revision 476627) @@ -0,0 +1,38 @@ +--- content/app/content_main_runner_impl.cc.orig 2018-08-01 00:08:43.000000000 +0200 ++++ content/app/content_main_runner_impl.cc 2018-08-04 18:50:49.262605000 +0200 +@@ -83,10 +83,10 @@ + #include "base/posix/global_descriptors.h" + #include "content/public/common/content_descriptors.h" + +-#if !defined(OS_MACOSX) ++#if !defined(OS_MACOSX) && !defined(OS_BSD) + #include "services/service_manager/zygote/common/zygote_fork_delegate_linux.h" + #endif +-#if !defined(OS_MACOSX) && !defined(OS_ANDROID) ++#if !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) + #include "sandbox/linux/services/libc_interceptor.h" + #include "services/service_manager/zygote/zygote_main.h" + #endif +@@ -150,7 +150,7 @@ + namespace content { + extern int GpuMain(const content::MainFunctionParams&); + #if BUILDFLAG(ENABLE_PLUGINS) +-#if !defined(OS_LINUX) ++#if !defined(OS_LINUX) && !defined(OS_BSD) + extern int PluginMain(const content::MainFunctionParams&); + #endif + extern int PpapiPluginMain(const MainFunctionParams&); +@@ -722,11 +722,11 @@ + base::GlobalDescriptors::kBaseDescriptor); + #endif // !OS_ANDROID + +-#if defined(OS_LINUX) || defined(OS_OPENBSD) ++#if defined(OS_LINUX) + g_fds->Set(service_manager::kCrashDumpSignal, + service_manager::kCrashDumpSignal + + base::GlobalDescriptors::kBaseDescriptor); +-#endif // OS_LINUX || OS_OPENBSD ++#endif // OS_LINUX + + #endif // !OS_WIN + Property changes on: branches/2018Q3/www/chromium/files/patch-content_app_content_main_runner_impl.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-content_browser_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_browser_BUILD.gn (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_browser_BUILD.gn (revision 476627) @@ -1,31 +1,14 @@ ---- content/browser/BUILD.gn.orig 2018-03-20 23:05:23.000000000 +0100 -+++ content/browser/BUILD.gn 2018-03-24 19:29:32.232928000 +0100 -@@ -1711,11 +1711,6 @@ +--- content/browser/BUILD.gn.orig 2018-08-01 00:08:43.000000000 +0200 ++++ content/browser/BUILD.gn 2018-08-04 21:53:48.299617000 +0200 +@@ -1802,11 +1802,6 @@ "tracing/cros_tracing_agent.cc", "tracing/cros_tracing_agent.h", ] - } else { - sources += [ - "memory/memory_monitor_linux.cc", - "memory/memory_monitor_linux.h", - ] } - if (is_chromecast && is_linux) { -@@ -2191,6 +2186,16 @@ - deps += [ - "//chromeos", - "//chromeos:power_manager_proto", -+ ] -+ } else if (is_bsd) { -+ sources -= [ -+ "zygote_host/zygote_communication_linux.cc", -+ "zygote_host/zygote_communication_linux.h", -+ "zygote_host/zygote_host_impl_linux.cc", -+ "zygote_host/zygote_host_impl_linux.h", -+ "../zygote/zygote_linux.cc", -+ "../zygote/zygote_linux.h", -+ "../zygote/zygote_main_linux.cc", - ] - } - + if (is_chromeos || is_android || is_chromecast) { Index: branches/2018Q3/www/chromium/files/patch-content_browser_background_fetch_background_fetch_context.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_browser_background_fetch_background_fetch_context.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-content_browser_background_fetch_background_fetch_context.cc (revision 476627) @@ -0,0 +1,12 @@ +--- content/browser/background_fetch/background_fetch_context.cc.orig 2018-08-06 00:37:02.712040000 +0200 ++++ content/browser/background_fetch/background_fetch_context.cc 2018-08-06 01:03:47.477355000 +0200 +@@ -218,7 +218,8 @@ + + scheduler_->AddJobController(controller.get()); + +- job_controllers_.insert({unique_id, std::move(controller)}); ++ auto pair = std::make_pair(unique_id, std::move(controller)); ++ job_controllers_.insert(std::move(pair)); + std::move(done_closure).Run(); + } + Property changes on: branches/2018Q3/www/chromium/files/patch-content_browser_background_fetch_background_fetch_context.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-content_browser_browser__main__loop.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_browser_browser__main__loop.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_browser_browser__main__loop.cc (revision 476627) @@ -1,35 +1,28 @@ ---- content/browser/browser_main_loop.cc.orig 2018-06-13 00:10:16.000000000 +0200 -+++ content/browser/browser_main_loop.cc 2018-07-19 00:30:26.119970000 +0200 -@@ -205,7 +205,7 @@ - #include "base/fuchsia/default_job.h" - #endif // defined(OS_FUCHSIA) - --#if defined(OS_POSIX) && !defined(OS_MACOSX) -+#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD) - #include "content/browser/sandbox_host_linux.h" - #endif - -@@ -240,6 +240,11 @@ +--- content/browser/browser_main_loop.cc.orig 2018-08-01 00:08:43.000000000 +0200 ++++ content/browser/browser_main_loop.cc 2018-08-05 15:40:45.172441000 +0200 +@@ -234,6 +234,13 @@ #include "services/ui/common/image_cursors_set.h" #endif +#if defined(OS_BSD) +#include "content/browser/sandbox_host_linux.h" ++#include "services/service_manager/zygote/common/common_sandbox_support_linux.h" +#include "content/public/common/common_sandbox_support_linux.h" ++#include "services/service_manager/sandbox/sandbox.h" +#endif + // One of the linux specific headers defines this as a macro. #ifdef DestroyAll #undef DestroyAll -@@ -548,6 +553,11 @@ +@@ -546,6 +553,11 @@ // by now since a thread to start the ServiceManager has been created // before the browser main loop starts. DCHECK(SandboxHostLinux::GetInstance()->IsInitialized()); +#elif defined(OS_BSD) + SandboxHostLinux::GetInstance()->Init(); + base::FileHandleMappingVector fds_to_map; + const int sfd = SandboxHostLinux::GetInstance()->GetChildSocket(); -+ fds_to_map.push_back(std::make_pair(sfd, GetSandboxFD())); ++ fds_to_map.push_back(std::make_pair(sfd, service_manager::GetSandboxFD())); #endif #if defined(USE_X11) Index: branches/2018Q3/www/chromium/files/patch-content_browser_child__process__launcher__helper__linux.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_browser_child__process__launcher__helper__linux.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_browser_child__process__launcher__helper__linux.cc (revision 476627) @@ -1,59 +1,76 @@ ---- content/browser/child_process_launcher_helper_linux.cc.orig 2018-03-20 23:05:23.000000000 +0100 -+++ content/browser/child_process_launcher_helper_linux.cc 2018-03-24 23:20:38.539917000 +0100 -@@ -17,7 +17,9 @@ - #include "content/public/common/content_switches.h" - #include "content/public/common/result_codes.h" - #include "content/public/common/sandboxed_process_launcher_delegate.h" -+#if !defined(OS_BSD) - #include "content/public/common/zygote_handle.h" -+#endif +--- content/browser/child_process_launcher_helper_linux.cc.orig 2018-08-01 00:08:43.000000000 +0200 ++++ content/browser/child_process_launcher_helper_linux.cc 2018-08-04 18:57:46.407465000 +0200 +@@ -18,7 +18,9 @@ #include "gpu/config/gpu_switches.h" #include "services/service_manager/sandbox/linux/sandbox_linux.h" + #include "services/service_manager/zygote/common/common_sandbox_support_linux.h" ++#if !defined(OS_BSD) + #include "services/service_manager/zygote/common/zygote_handle.h" ++#endif + #include "services/service_manager/zygote/host/zygote_communication_linux.h" + #include "services/service_manager/zygote/host/zygote_host_impl_linux.h" -@@ -70,6 +72,7 @@ +@@ -72,6 +74,7 @@ int* launch_result) { *is_synchronous_launch = true; +#if !defined(OS_BSD) - ZygoteHandle zygote_handle = + service_manager::ZygoteHandle zygote_handle = base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kNoZygote) ? nullptr -@@ -101,6 +104,7 @@ +@@ -85,7 +88,6 @@ + GetProcessType()); + *launch_result = LAUNCH_RESULT_SUCCESS; + +-#if !defined(OS_OPENBSD) + if (handle) { + // This is just a starting score for a renderer or extension (the + // only types of processes that will be started this way). It will +@@ -96,13 +98,13 @@ + service_manager::ZygoteHostImpl::GetInstance()->AdjustRendererOOMScore( + handle, kLowestRendererOomScore); + } +-#endif + + Process process; + process.process = base::Process(handle); process.zygote = zygote_handle; return process; } +#endif Process process; process.process = base::LaunchProcess(*command_line(), options); -@@ -118,10 +122,12 @@ +@@ -120,10 +122,14 @@ const ChildProcessLauncherHelper::Process& process, - bool known_dead, - int* exit_code) { + bool known_dead) { + ChildProcessTerminationInfo info; +#if !defined(OS_BSD) if (process.zygote) { - return process.zygote->GetTerminationStatus( - process.process.Handle(), known_dead, exit_code); - } + info.status = process.zygote->GetTerminationStatus( + process.process.Handle(), known_dead, &info.exit_code); + } else if (known_dead) { ++#else ++ if (known_dead) { +#endif - if (known_dead) { - return base::GetKnownDeadTerminationStatus( - process.process.Handle(), exit_code); -@@ -140,13 +146,17 @@ - ChildProcessLauncherHelper::Process process) { - process.process.Terminate(RESULT_CODE_NORMAL_EXIT, false); + info.status = base::GetKnownDeadTerminationStatus(process.process.Handle(), + &info.exit_code); + } else { +@@ -147,13 +153,17 @@ + DCHECK(CurrentlyOnProcessLauncherTaskRunner()); + process.process.Terminate(service_manager::RESULT_CODE_NORMAL_EXIT, false); // On POSIX, we must additionally reap the child. +#if !defined(OS_BSD) if (process.zygote) { // If the renderer was created via a zygote, we have to proxy the reaping // through the zygote process. process.zygote->EnsureProcessTerminated(process.process.Handle()); } else { +#endif base::EnsureProcessTerminated(std::move(process.process)); +#if !defined(OS_BSD) } +#endif } void ChildProcessLauncherHelper::SetProcessPriorityOnLauncherThread( Index: branches/2018Q3/www/chromium/files/patch-content_common_common_sandbox_support_linux.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_common_common_sandbox_support_linux.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-content_common_common_sandbox_support_linux.cc (revision 476627) @@ -0,0 +1,11 @@ +--- content/common/common_sandbox_support_linux.cc.orig 2018-08-04 19:46:27.654459000 +0200 ++++ content/common/common_sandbox_support_linux.cc 2018-08-04 19:46:40.138833000 +0200 +@@ -5,6 +5,7 @@ + #include "content/public/common/common_sandbox_support_linux.h" + + #include ++#include + + #include + #include + Property changes on: branches/2018Q3/www/chromium/files/patch-content_common_common_sandbox_support_linux.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-content_renderer_input_input_event_prediction.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_renderer_input_input_event_prediction.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-content_renderer_input_input_event_prediction.cc (revision 476627) @@ -0,0 +1,12 @@ +--- content/renderer/input/input_event_prediction.cc.orig 2018-08-06 10:06:45.824140000 +0200 ++++ content/renderer/input/input_event_prediction.cc 2018-08-06 10:09:29.835896000 +0200 +@@ -119,7 +119,8 @@ + if (predictor != pointer_id_predictor_map_.end()) { + predictor->second->Update(data); + } else { +- pointer_id_predictor_map_.insert({event.id, SetUpPredictor()}); ++ auto pair = std::make_pair(event.id, SetUpPredictor()); ++ pointer_id_predictor_map_.insert(std::move(pair)); + pointer_id_predictor_map_[event.id]->Update(data); + } + } Property changes on: branches/2018Q3/www/chromium/files/patch-content_renderer_input_input_event_prediction.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-content_renderer_render__thread__impl.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_renderer_render__thread__impl.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_renderer_render__thread__impl.cc (revision 476627) @@ -1,51 +1,60 @@ ---- content/renderer/render_thread_impl.cc.orig 2018-06-13 00:10:17.000000000 +0200 -+++ content/renderer/render_thread_impl.cc 2018-07-19 12:51:34.446042000 +0200 -@@ -214,12 +214,21 @@ +--- content/renderer/render_thread_impl.cc.orig 2018-08-01 00:08:45.000000000 +0200 ++++ content/renderer/render_thread_impl.cc 2018-08-04 19:38:18.130085000 +0200 +@@ -199,12 +199,21 @@ #include "content/common/external_ipc_dumper.h" #endif +#if !defined(OS_BSD) #if defined(OS_MACOSX) #include #else #include #endif +#endif +#if defined(OS_BSD) +#include +#include +#include +#include +#endif + using base::ThreadRestrictions; using blink::WebDocument; using blink::WebFrame; -@@ -1096,7 +1105,7 @@ +@@ -1002,7 +1011,7 @@ + DCHECK(parsed_num_raster_threads) << string_value; + DCHECK_GT(num_raster_threads, 0); + +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_BSD) + categorized_worker_pool_->SetBackgroundingCallback( + main_thread_scheduler_->DefaultTaskRunner(), + base::BindOnce( +@@ -1043,7 +1052,7 @@ GetConnector()->BindInterface(mojom::kBrowserServiceName, mojo::MakeRequest(&storage_partition_service_)); -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) render_message_filter()->SetThreadPriority( ChildProcess::current()->io_thread_id(), base::ThreadPriority::DISPLAY); - render_message_filter()->SetThreadPriority( -@@ -1304,7 +1313,7 @@ + #endif +@@ -1248,7 +1257,7 @@ false)); GetContentClient()->renderer()->PostCompositorThreadCreated( compositor_task_runner_.get()); -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) render_message_filter()->SetThreadPriority(compositor_thread_->ThreadId(), base::ThreadPriority::DISPLAY); #endif -@@ -1584,7 +1593,7 @@ +@@ -1485,7 +1494,7 @@ gpu::kGpuFeatureStatusEnabled); - const bool enable_gpu_memory_buffer_video_frames = + const bool enable_gpu_memory_buffers = !is_gpu_compositing_disabled_ && --#if defined(OS_MACOSX) || defined(OS_LINUX) -+#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) +-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_WIN) ++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_WIN) || defined(OS_BSD) !cmd_line->HasSwitch(switches::kDisableGpuMemoryBufferVideoFrames); - #elif defined(OS_WIN) - !cmd_line->HasSwitch(switches::kDisableGpuMemoryBufferVideoFrames) && + #else + cmd_line->HasSwitch(switches::kEnableGpuMemoryBufferVideoFrames); Index: branches/2018Q3/www/chromium/files/patch-content_renderer_renderer_main.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-content_renderer_renderer_main.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-content_renderer_renderer_main.cc (revision 476627) @@ -1,26 +1,20 @@ ---- content/renderer/renderer_main.cc.orig 2018-02-24 16:25:14.000000000 +0100 -+++ content/renderer/renderer_main.cc 2018-03-04 02:01:25.568495000 +0100 -@@ -193,9 +193,13 @@ - // is OK. +--- content/renderer/renderer_main.cc.orig 2018-08-01 00:08:45.000000000 +0200 ++++ content/renderer/renderer_main.cc 2018-08-04 19:44:52.562529000 +0200 +@@ -218,7 +218,7 @@ InitializeWebRtcModule(); - #endif -+#if defined(OS_BSD) -+ SkFontConfigInterface::SetGlobal( -+ new FontConfigIPC(GetSandboxFD()))->unref(); -+#endif { -#if defined(OS_WIN) || defined(OS_MACOSX) +#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_BSD) // TODO(markus): Check if it is OK to unconditionally move this // instruction down. auto render_process = RenderProcessImpl::Create(); -@@ -205,7 +209,7 @@ +@@ -228,7 +228,7 @@ bool run_loop = true; if (!no_sandbox) run_loop = platform.EnableSandbox(); -#if defined(OS_POSIX) && !defined(OS_MACOSX) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD) auto render_process = RenderProcessImpl::Create(); RenderThreadImpl::Create(std::move(main_message_loop), - std::move(renderer_scheduler)); + std::move(main_thread_scheduler)); Index: branches/2018Q3/www/chromium/files/patch-net_base_address__tracker__linux.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-net_base_address__tracker__linux.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-net_base_address__tracker__linux.cc (revision 476627) @@ -1,363 +1,363 @@ ---- net/base/address_tracker_linux.cc.orig 2018-06-13 00:10:21.000000000 +0200 -+++ net/base/address_tracker_linux.cc 2018-07-19 15:22:53.324530000 +0200 -@@ -19,96 +19,10 @@ +--- net/base/address_tracker_linux.cc.orig 2018-08-01 00:08:53.000000000 +0200 ++++ net/base/address_tracker_linux.cc 2018-08-04 20:12:48.684622000 +0200 +@@ -20,96 +20,10 @@ namespace net { namespace internal { -namespace { - -// Some kernel functions such as wireless_send_event and rtnetlink_ifinfo_prep -// may send spurious messages over rtnetlink. RTM_NEWLINK messages where -// ifi_change == 0 and rta_type == IFLA_WIRELESS should be ignored. -bool IgnoreWirelessChange(const struct nlmsghdr* header, - const struct ifinfomsg* msg) { - size_t length = IFLA_PAYLOAD(header); - for (const struct rtattr* attr = IFLA_RTA(msg); RTA_OK(attr, length); - attr = RTA_NEXT(attr, length)) { - if (attr->rta_type == IFLA_WIRELESS && msg->ifi_change == 0) - return true; - } - return false; -} - -// Retrieves address from NETLINK address message. -// Sets |really_deprecated| for IPv6 addresses with preferred lifetimes of 0. -bool GetAddress(const struct nlmsghdr* header, - IPAddress* out, - bool* really_deprecated) { - if (really_deprecated) - *really_deprecated = false; - const struct ifaddrmsg* msg = - reinterpret_cast(NLMSG_DATA(header)); - size_t address_length = 0; - switch (msg->ifa_family) { - case AF_INET: - address_length = IPAddress::kIPv4AddressSize; - break; - case AF_INET6: - address_length = IPAddress::kIPv6AddressSize; - break; - default: - // Unknown family. - return false; - } - // Use IFA_ADDRESS unless IFA_LOCAL is present. This behavior here is based on - // getaddrinfo in glibc (check_pf.c). Judging from kernel implementation of - // NETLINK, IPv4 addresses have only the IFA_ADDRESS attribute, while IPv6 - // have the IFA_LOCAL attribute. - uint8_t* address = NULL; - uint8_t* local = NULL; - size_t length = IFA_PAYLOAD(header); - for (const struct rtattr* attr = - reinterpret_cast(IFA_RTA(msg)); - RTA_OK(attr, length); - attr = RTA_NEXT(attr, length)) { - switch (attr->rta_type) { - case IFA_ADDRESS: - DCHECK_GE(RTA_PAYLOAD(attr), address_length); - address = reinterpret_cast(RTA_DATA(attr)); - break; - case IFA_LOCAL: - DCHECK_GE(RTA_PAYLOAD(attr), address_length); - local = reinterpret_cast(RTA_DATA(attr)); - break; - case IFA_CACHEINFO: { - const struct ifa_cacheinfo *cache_info = - reinterpret_cast(RTA_DATA(attr)); - if (really_deprecated) - *really_deprecated = (cache_info->ifa_prefered == 0); - } break; - default: - break; - } - } - if (local) - address = local; - if (!address) - return false; - *out = IPAddress(address, address_length); - return true; -} - -} // namespace - // static char* AddressTrackerLinux::GetInterfaceName(int interface_index, char* buf) { - memset(buf, 0, IFNAMSIZ); - base::ScopedFD ioctl_socket = GetSocketForIoctl(); - if (!ioctl_socket.is_valid()) - return buf; - - struct ifreq ifr = {}; - ifr.ifr_ifindex = interface_index; - - if (ioctl(ioctl_socket.get(), SIOCGIFNAME, &ifr) == 0) - strncpy(buf, ifr.ifr_name, IFNAMSIZ - 1); - return buf; + NOTIMPLEMENTED(); + return NULL; } AddressTrackerLinux::AddressTrackerLinux() -@@ -151,93 +65,8 @@ +@@ -152,93 +66,8 @@ } void AddressTrackerLinux::Init() { - netlink_fd_ = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE); - if (netlink_fd_ < 0) { - PLOG(ERROR) << "Could not create NETLINK socket"; - AbortAndForceOnline(); - return; - } - - int rv; - - if (tracking_) { - // Request notifications. - struct sockaddr_nl addr = {}; - addr.nl_family = AF_NETLINK; - addr.nl_pid = getpid(); - // TODO(szym): Track RTMGRP_LINK as well for ifi_type, - // http://crbug.com/113993 - addr.nl_groups = - RTMGRP_IPV4_IFADDR | RTMGRP_IPV6_IFADDR | RTMGRP_NOTIFY | RTMGRP_LINK; - rv = bind( - netlink_fd_, reinterpret_cast(&addr), sizeof(addr)); - if (rv < 0) { - PLOG(ERROR) << "Could not bind NETLINK socket"; - AbortAndForceOnline(); - return; - } - } - - // Request dump of addresses. - struct sockaddr_nl peer = {}; - peer.nl_family = AF_NETLINK; - - struct { - struct nlmsghdr header; - struct rtgenmsg msg; - } request = {}; - - request.header.nlmsg_len = NLMSG_LENGTH(sizeof(request.msg)); - request.header.nlmsg_type = RTM_GETADDR; - request.header.nlmsg_flags = NLM_F_REQUEST | NLM_F_DUMP; - request.header.nlmsg_pid = getpid(); - request.msg.rtgen_family = AF_UNSPEC; - - rv = HANDLE_EINTR(sendto(netlink_fd_, &request, request.header.nlmsg_len, - 0, reinterpret_cast(&peer), - sizeof(peer))); - if (rv < 0) { - PLOG(ERROR) << "Could not send NETLINK request"; - AbortAndForceOnline(); - return; - } - - // Consume pending message to populate the AddressMap, but don't notify. - // Sending another request without first reading responses results in EBUSY. - bool address_changed; - bool link_changed; - bool tunnel_changed; - ReadMessages(&address_changed, &link_changed, &tunnel_changed); - - // Request dump of link state - request.header.nlmsg_type = RTM_GETLINK; - - rv = HANDLE_EINTR(sendto(netlink_fd_, &request, request.header.nlmsg_len, 0, - reinterpret_cast(&peer), - sizeof(peer))); - if (rv < 0) { - PLOG(ERROR) << "Could not send NETLINK request"; - AbortAndForceOnline(); - return; - } - - // Consume pending message to populate links_online_, but don't notify. - ReadMessages(&address_changed, &link_changed, &tunnel_changed); - { - AddressTrackerAutoLock lock(*this, connection_type_lock_); - connection_type_initialized_ = true; - connection_type_initialized_cv_.Broadcast(); - } - - if (tracking_) { -- rv = base::MessageLoopForIO::current()->WatchFileDescriptor( +- rv = base::MessageLoopCurrentForIO::Get()->WatchFileDescriptor( - netlink_fd_, true, base::MessagePumpForIO::WATCH_READ, &watcher_, this); - if (rv < 0) { - PLOG(ERROR) << "Could not watch NETLINK socket"; - AbortAndForceOnline(); - return; - } - } -+ NOTIMPLEMENTED(); -+ AbortAndForceOnline(); ++NOTIMPLEMENTED(); ++AbortAndForceOnline(); } void AddressTrackerLinux::AbortAndForceOnline() { -@@ -248,25 +77,6 @@ +@@ -249,25 +78,6 @@ connection_type_initialized_cv_.Broadcast(); } -AddressTrackerLinux::AddressMap AddressTrackerLinux::GetAddressMap() const { - AddressTrackerAutoLock lock(*this, address_map_lock_); - return address_map_; -} - -std::unordered_set AddressTrackerLinux::GetOnlineLinks() const { - AddressTrackerAutoLock lock(*this, online_links_lock_); - return online_links_; -} - -bool AddressTrackerLinux::IsInterfaceIgnored(int interface_index) const { - if (ignored_interfaces_.empty()) - return false; - - char buf[IFNAMSIZ] = {0}; - const char* interface_name = get_interface_name_(interface_index, buf); - return ignored_interfaces_.find(interface_name) != ignored_interfaces_.end(); -} - NetworkChangeNotifier::ConnectionType AddressTrackerLinux::GetCurrentConnectionType() { // http://crbug.com/125097 -@@ -317,102 +127,7 @@ +@@ -318,102 +128,7 @@ bool* address_changed, bool* link_changed, bool* tunnel_changed) { - DCHECK(buffer); - for (struct nlmsghdr* header = reinterpret_cast(buffer); - NLMSG_OK(header, length); - header = NLMSG_NEXT(header, length)) { - switch (header->nlmsg_type) { - case NLMSG_DONE: - return; - case NLMSG_ERROR: { - const struct nlmsgerr* msg = - reinterpret_cast(NLMSG_DATA(header)); - LOG(ERROR) << "Unexpected netlink error " << msg->error << "."; - } return; - case RTM_NEWADDR: { - IPAddress address; - bool really_deprecated; - struct ifaddrmsg* msg = - reinterpret_cast(NLMSG_DATA(header)); - if (IsInterfaceIgnored(msg->ifa_index)) - break; - if (GetAddress(header, &address, &really_deprecated)) { - AddressTrackerAutoLock lock(*this, address_map_lock_); - // Routers may frequently (every few seconds) output the IPv6 ULA - // prefix which can cause the linux kernel to frequently output two - // back-to-back messages, one without the deprecated flag and one with - // the deprecated flag but both with preferred lifetimes of 0. Avoid - // interpretting this as an actual change by canonicalizing the two - // messages by setting the deprecated flag based on the preferred - // lifetime also. http://crbug.com/268042 - if (really_deprecated) - msg->ifa_flags |= IFA_F_DEPRECATED; - // Only indicate change if the address is new or ifaddrmsg info has - // changed. - AddressMap::iterator it = address_map_.find(address); - if (it == address_map_.end()) { - address_map_.insert(it, std::make_pair(address, *msg)); - *address_changed = true; - } else if (memcmp(&it->second, msg, sizeof(*msg))) { - it->second = *msg; - *address_changed = true; - } - } - } break; - case RTM_DELADDR: { - IPAddress address; - const struct ifaddrmsg* msg = - reinterpret_cast(NLMSG_DATA(header)); - if (IsInterfaceIgnored(msg->ifa_index)) - break; - if (GetAddress(header, &address, NULL)) { - AddressTrackerAutoLock lock(*this, address_map_lock_); - if (address_map_.erase(address)) - *address_changed = true; - } - } break; - case RTM_NEWLINK: { - const struct ifinfomsg* msg = - reinterpret_cast(NLMSG_DATA(header)); - if (IsInterfaceIgnored(msg->ifi_index)) - break; - if (IgnoreWirelessChange(header, msg)) { - VLOG(2) << "Ignoring RTM_NEWLINK message"; - break; - } - if (!(msg->ifi_flags & IFF_LOOPBACK) && (msg->ifi_flags & IFF_UP) && - (msg->ifi_flags & IFF_LOWER_UP) && (msg->ifi_flags & IFF_RUNNING)) { - AddressTrackerAutoLock lock(*this, online_links_lock_); - if (online_links_.insert(msg->ifi_index).second) { - *link_changed = true; - if (IsTunnelInterface(msg->ifi_index)) - *tunnel_changed = true; - } - } else { - AddressTrackerAutoLock lock(*this, online_links_lock_); - if (online_links_.erase(msg->ifi_index)) { - *link_changed = true; - if (IsTunnelInterface(msg->ifi_index)) - *tunnel_changed = true; - } - } - } break; - case RTM_DELLINK: { - const struct ifinfomsg* msg = - reinterpret_cast(NLMSG_DATA(header)); - if (IsInterfaceIgnored(msg->ifi_index)) - break; - AddressTrackerAutoLock lock(*this, online_links_lock_); - if (online_links_.erase(msg->ifi_index)) { - *link_changed = true; - if (IsTunnelInterface(msg->ifi_index)) - *tunnel_changed = true; - } - } break; - default: - break; - } - } + NOTIMPLEMENTED(); } void AddressTrackerLinux::OnFileCanReadWithoutBlocking(int fd) { -@@ -449,34 +164,7 @@ +@@ -450,34 +165,7 @@ } void AddressTrackerLinux::UpdateCurrentConnectionType() { - AddressTrackerLinux::AddressMap address_map = GetAddressMap(); - std::unordered_set online_links = GetOnlineLinks(); - - // Strip out tunnel interfaces from online_links - for (std::unordered_set::const_iterator it = online_links.begin(); - it != online_links.end();) { - if (IsTunnelInterface(*it)) { - std::unordered_set::const_iterator tunnel_it = it; - ++it; - online_links.erase(*tunnel_it); - } else { - ++it; - } - } - - NetworkInterfaceList networks; - NetworkChangeNotifier::ConnectionType type = - NetworkChangeNotifier::CONNECTION_NONE; - if (GetNetworkListImpl(&networks, 0, online_links, address_map, - get_interface_name_)) { - type = NetworkChangeNotifier::ConnectionTypeFromInterfaceList(networks); - } else { - type = online_links.empty() ? NetworkChangeNotifier::CONNECTION_NONE - : NetworkChangeNotifier::CONNECTION_UNKNOWN; - } - - AddressTrackerAutoLock lock(*this, connection_type_lock_); - current_connection_type_ = type; + NOTIMPLEMENTED(); } int AddressTrackerLinux::GetThreadsWaitingForConnectionTypeInitForTesting() Index: branches/2018Q3/www/chromium/files/patch-net_third_party_quic_platform_impl_quic_ip_address_impl.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-net_third_party_quic_platform_impl_quic_ip_address_impl.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-net_third_party_quic_platform_impl_quic_ip_address_impl.cc (revision 476627) @@ -0,0 +1,10 @@ +--- net/third_party/quic/platform/impl/quic_ip_address_impl.cc.orig 2018-08-04 20:21:44.470242000 +0200 ++++ net/third_party/quic/platform/impl/quic_ip_address_impl.cc 2018-08-04 20:22:01.700604000 +0200 +@@ -13,6 +13,7 @@ + #include + #elif defined(OS_POSIX) || defined(OS_FUCHSIA) + #include ++#include + #endif + + using std::string; Property changes on: branches/2018Q3/www/chromium/files/patch-net_third_party_quic_platform_impl_quic_ip_address_impl.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-pdf_pdfium_pdfium__engine.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-pdf_pdfium_pdfium__engine.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-pdf_pdfium_pdfium__engine.cc (revision 476627) @@ -1,65 +1,65 @@ ---- pdf/pdfium/pdfium_engine.cc.orig 2017-07-25 21:04:59.000000000 +0200 -+++ pdf/pdfium/pdfium_engine.cc 2017-08-02 14:54:56.250862000 +0200 -@@ -131,7 +131,7 @@ - return page_numbers; - } +--- pdf/pdfium/pdfium_engine.cc.orig 2018-08-01 00:08:54.000000000 +0200 ++++ pdf/pdfium/pdfium_engine.cc 2018-08-04 20:29:42.077905000 +0200 +@@ -134,7 +134,7 @@ + PDFiumEngine* g_engine_for_fontmapper = nullptr; + -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) PP_Instance g_last_instance_id; -@@ -635,7 +635,7 @@ +@@ -651,7 +651,7 @@ config.m_v8EmbedderSlot = gin::kEmbedderPDFium; FPDF_InitLibraryWithConfig(&config); -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) // Font loading doesn't work in the renderer sandbox in Linux. FPDF_SetSystemFontInfo(&g_font_info); #else -@@ -660,7 +660,7 @@ +@@ -676,7 +676,7 @@ void ShutdownSDK() { FPDF_DestroyLibrary(); -#if !defined(OS_LINUX) +#if !defined(OS_LINUX) && !defined(OS_BSD) delete g_font_info; #endif TearDownV8(); -@@ -766,7 +766,7 @@ +@@ -712,7 +712,7 @@ IFSDK_PAUSE::user = nullptr; IFSDK_PAUSE::NeedToPauseNow = Pause_NeedToPauseNow; -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) // PreviewModeClient does not know its pp::Instance. pp::Instance* instance = client_->GetPluginInstance(); if (instance) -@@ -1496,7 +1496,7 @@ - FPDF_ClosePage(pdf_page); - } +@@ -1226,7 +1226,7 @@ + KillFormFocus(); + -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) g_last_instance_id = client_->GetPluginInstance()->pp_instance(); #endif -@@ -2918,7 +2918,7 @@ - DCHECK_LT(static_cast(progressive_index), progressive_paints_.size()); +@@ -2924,7 +2924,7 @@ DCHECK(image_data); + last_progressive_start_time_ = base::Time::Now(); -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) g_last_instance_id = client_->GetPluginInstance()->pp_instance(); #endif -@@ -3368,7 +3368,7 @@ - FORM_DoPageAAction(old_page, form_, FPDFPAGE_AACTION_CLOSE); +@@ -3402,7 +3402,7 @@ + FORM_DoPageAAction(old_page, form(), FPDFPAGE_AACTION_CLOSE); } most_visible_page_ = index; -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) g_last_instance_id = client_->GetPluginInstance()->pp_instance(); #endif if (most_visible_page_ != -1 && called_do_document_action_) { Index: branches/2018Q3/www/chromium/files/patch-sandbox_linux_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-sandbox_linux_BUILD.gn (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-sandbox_linux_BUILD.gn (revision 476627) @@ -1,47 +1,47 @@ ---- sandbox/linux/BUILD.gn.orig 2018-06-13 00:10:23.000000000 +0200 -+++ sandbox/linux/BUILD.gn 2018-07-20 21:32:57.834564000 +0200 +--- sandbox/linux/BUILD.gn.orig 2018-08-01 00:08:55.000000000 +0200 ++++ sandbox/linux/BUILD.gn 2018-08-04 20:49:57.663117000 +0200 @@ -12,12 +12,12 @@ } declare_args() { - compile_suid_client = is_linux + compile_suid_client = is_linux && !is_bsd - compile_credentials = is_linux + compile_credentials = is_linux && !is_bsd # On Android, use plain GTest. - use_base_test_suite = is_linux + use_base_test_suite = is_linux && !is_bsd } if (is_nacl_nonsfi) { -@@ -396,7 +396,7 @@ +@@ -399,7 +399,7 @@ public_deps += [ ":sandbox_services_headers" ] } - if (is_nacl_nonsfi) { + if (is_nacl_nonsfi || is_bsd) { cflags = [ "-fgnu-inline-asm" ] sources -= [ -@@ -404,6 +404,8 @@ +@@ -407,6 +407,8 @@ "services/init_process_reaper.h", "services/scoped_process.cc", "services/scoped_process.h", + "services/syscall_wrappers.cc", + "services/syscall_wrappers.h", "services/yama.cc", "services/yama.h", "syscall_broker/broker_channel.cc", -@@ -420,6 +422,10 @@ - "syscall_broker/broker_permission_list.h", - "syscall_broker/broker_process.cc", +@@ -425,6 +427,10 @@ "syscall_broker/broker_process.h", + "syscall_broker/broker_simple_message.cc", + "syscall_broker/broker_simple_message.h", + ] + sources += [ + "services/libc_interceptor.cc", + "services/libc_interceptor.h", ] } else if (!is_android) { sources += [ Index: branches/2018Q3/www/chromium/files/patch-sandbox_linux_services_init_process_reaper.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-sandbox_linux_services_init_process_reaper.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-sandbox_linux_services_init_process_reaper.cc (revision 476627) @@ -0,0 +1,15 @@ +--- sandbox/linux/services/init_process_reaper.cc.orig 2018-08-04 19:26:41.605247000 +0200 ++++ sandbox/linux/services/init_process_reaper.cc 2018-08-04 19:27:02.769442000 +0200 +@@ -1,6 +1,7 @@ + // Copyright 2013 The Chromium Authors. All rights reserved. + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. ++#if 0 + + #include "sandbox/linux/services/init_process_reaper.h" + +@@ -100,3 +101,4 @@ + } + + } // namespace sandbox. ++#endif Property changes on: branches/2018Q3/www/chromium/files/patch-sandbox_linux_services_init_process_reaper.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-services_network_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-services_network_BUILD.gn (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-services_network_BUILD.gn (revision 476627) @@ -0,0 +1,10 @@ +--- services/network/BUILD.gn.orig 2018-08-04 19:29:41.578469000 +0200 ++++ services/network/BUILD.gn 2018-08-04 19:29:55.745503000 +0200 +@@ -138,7 +138,6 @@ + + if (is_linux) { + deps += [ +- "//sandbox/linux:sandbox_services", + "//services/service_manager/sandbox:sandbox", + ] + } Property changes on: branches/2018Q3/www/chromium/files/patch-services_network_BUILD.gn ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-services_resource_coordinator_public_cpp_memory_instrumentation_os_metrics_linux.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-services_resource_coordinator_public_cpp_memory_instrumentation_os_metrics_linux.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-services_resource_coordinator_public_cpp_memory_instrumentation_os_metrics_linux.cc (revision 476627) @@ -1,20 +1,40 @@ ---- services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_linux.cc.orig 2018-06-13 00:10:24.000000000 +0200 -+++ services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_linux.cc 2018-07-20 15:29:23.131774000 +0200 -@@ -178,6 +178,9 @@ +--- services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_linux.cc.orig 2018-08-01 00:08:55.000000000 +0200 ++++ services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics_linux.cc 2018-08-04 21:00:31.567932000 +0200 +@@ -16,8 +16,10 @@ + #include "build/build_config.h" + #include "services/resource_coordinator/public/cpp/memory_instrumentation/os_metrics.h" + ++#if !defined(OS_BSD) + // Symbol with virtual address of the start of ELF header of the current binary. + extern char __ehdr_start; ++#endif + + namespace memory_instrumentation { + +@@ -101,7 +103,7 @@ + // Build ID is needed to symbolize heap profiles, and is generated only on + // official builds. Build ID is only added for the current library (chrome) + // since it is racy to read other libraries which can be unmapped any time. +-#if defined(OFFICIAL_BUILD) ++#if defined(OFFICIAL_BUILD) && !defined(OS_BSD) + uintptr_t addr = reinterpret_cast(&ParseSmapsHeader); + if (addr >= region->start_address && addr < end_addr) { + base::Optional buildid = +@@ -196,6 +198,9 @@ // static bool OSMetrics::FillOSMemoryDump(base::ProcessId pid, mojom::RawOSMemDump* dump) { +#if defined(OS_BSD) + return false; +#else base::ScopedFD autoclose = OpenStatm(pid); int statm_fd = autoclose.get(); -@@ -203,6 +206,7 @@ +@@ -221,6 +226,7 @@ dump->resident_set_kb = process_metrics->GetResidentSetSize() / 1024; return true; +#endif } // static Index: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_common_zygote_features.gni =================================================================== --- branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_common_zygote_features.gni (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_common_zygote_features.gni (revision 476627) @@ -0,0 +1,8 @@ +--- services/service_manager/zygote/common/zygote_features.gni.orig 2018-08-04 19:05:25.641485000 +0200 ++++ services/service_manager/zygote/common/zygote_features.gni 2018-08-04 19:05:36.695208000 +0200 +@@ -2,4 +2,4 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + +-use_zygote_handle = is_posix && !is_android && !is_mac ++use_zygote_handle = is_posix && !is_android && !is_mac && !is_bsd Property changes on: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_common_zygote_features.gni ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_host_zygote_host_impl_linux.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_host_zygote_host_impl_linux.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_host_zygote_host_impl_linux.cc (revision 476627) @@ -0,0 +1,40 @@ +--- services/service_manager/zygote/host/zygote_host_impl_linux.cc.orig 2018-08-04 19:08:22.136631000 +0200 ++++ services/service_manager/zygote/host/zygote_host_impl_linux.cc 2018-08-04 19:11:54.463784000 +0200 +@@ -72,6 +72,7 @@ + } + + void ZygoteHostImpl::Init(const base::CommandLine& command_line) { ++#if !defined(OS_BSD) + if (command_line.HasSwitch(service_manager::switches::kNoSandbox)) { + return; + } +@@ -133,6 +134,7 @@ + "you can try using --" + << service_manager::switches::kNoSandbox << "."; + } ++#endif + } + + void ZygoteHostImpl::AddZygotePid(pid_t pid) { +@@ -157,6 +159,7 @@ + base::CommandLine* cmd_line, + base::ScopedFD* control_fd, + base::FileHandleMappingVector additional_remapped_fds) { ++#if !defined(OS_BSD) + int fds[2]; + CHECK_EQ(0, socketpair(AF_UNIX, SOCK_SEQPACKET, 0, fds)); + CHECK(base::UnixDomainSocket::EnableReceiveProcessId(fds[0])); +@@ -221,9 +224,12 @@ + + AddZygotePid(pid); + return pid; ++#else ++ return 0; ++#endif + } + +-#if !defined(OS_OPENBSD) ++#if !defined(OS_BSD) + void ZygoteHostImpl::AdjustRendererOOMScore(base::ProcessHandle pid, + int score) { + // 1) You can't change the oom_score_adj of a non-dumpable process Property changes on: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_host_zygote_host_impl_linux.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_host_zygote_host_impl_linux.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_host_zygote_host_impl_linux.h (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_host_zygote_host_impl_linux.h (revision 476627) @@ -0,0 +1,13 @@ +--- services/service_manager/zygote/host/zygote_host_impl_linux.h.orig 2018-08-04 19:08:46.425404000 +0200 ++++ services/service_manager/zygote/host/zygote_host_impl_linux.h 2018-08-04 19:09:48.783775000 +0200 +@@ -44,8 +44,10 @@ + base::ScopedFD* control_fd, + base::FileHandleMappingVector additional_remapped_fds); + ++#if !defined(OS_BSD) + void AdjustRendererOOMScore(base::ProcessHandle process_handle, + int score) override; ++#endif + + private: + friend struct base::DefaultSingletonTraits; Property changes on: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_host_zygote_host_impl_linux.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_host_linux.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_host_linux.h (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_host_linux.h (revision 476627) @@ -0,0 +1,16 @@ +--- services/service_manager/zygote/zygote_host_linux.h.orig 2018-08-04 19:14:58.401790000 +0200 ++++ services/service_manager/zygote/zygote_host_linux.h 2018-08-04 19:15:49.368693000 +0200 +@@ -30,11 +30,13 @@ + // after the first render has been forked. + virtual int GetRendererSandboxStatus() const = 0; + ++#if !defined(OS_BSD) + // Adjust the OOM score of the given renderer's PID. The allowed + // range for the score is [0, 1000], where higher values are more + // likely to be killed by the OOM killer. + virtual void AdjustRendererOOMScore(base::ProcessHandle process_handle, + int score) = 0; ++#endif + }; + + } // namespace service_manager Property changes on: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_host_linux.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_linux.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_linux.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_linux.cc (revision 476627) @@ -0,0 +1,15 @@ +--- services/service_manager/zygote/zygote_linux.cc.orig 2018-08-04 19:15:10.269247000 +0200 ++++ services/service_manager/zygote/zygote_linux.cc 2018-08-04 19:16:18.712635000 +0200 +@@ -1,6 +1,7 @@ + // Copyright (c) 2012 The Chromium Authors. All rights reserved. + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. ++#if 0 + + #include "services/service_manager/zygote/zygote_linux.h" + +@@ -664,3 +665,4 @@ + } + + } // namespace service_manager ++#endif Property changes on: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_linux.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_main_linux.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_main_linux.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_main_linux.cc (revision 476627) @@ -0,0 +1,48 @@ +--- services/service_manager/zygote/zygote_main_linux.cc.orig 2018-08-04 19:15:20.665086000 +0200 ++++ services/service_manager/zygote/zygote_main_linux.cc 2018-08-04 19:17:50.032823000 +0200 +@@ -11,7 +11,9 @@ + #include + #include + #include ++#if !defined(OS_BSD) + #include ++#endif + #include + #include + #include +@@ -101,6 +103,7 @@ + // created through the setuid sandbox. + static bool EnterSuidSandbox(sandbox::SetuidSandboxClient* setuid_sandbox, + base::OnceClosure post_fork_parent_callback) { ++#if !defined(OS_BSD) + DCHECK(setuid_sandbox); + DCHECK(setuid_sandbox->IsSuidSandboxChild()); + +@@ -133,6 +136,9 @@ + + CHECK(service_manager::SandboxDebugHandling::SetDumpableStatusAndHandlers()); + return true; ++#else ++ return false; ++#endif + } + + static void DropAllCapabilities(int proc_fd) { +@@ -178,6 +184,7 @@ + + bool ZygoteMain( + std::vector> fork_delegates) { ++#if !defined(OS_BSD) + sandbox::SetAmZygoteOrRenderer(true, GetSandboxFD()); + + auto* linux_sandbox = service_manager::SandboxLinux::GetInstance(); +@@ -240,6 +247,9 @@ + + // This function call can return multiple times, once per fork(). + return zygote.ProcessRequests(); ++#else ++ return false; ++#endif + } + + } // namespace service_manager Property changes on: branches/2018Q3/www/chromium/files/patch-services_service__manager_zygote_zygote_main_linux.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-third__party_angle_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-third__party_angle_BUILD.gn (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-third__party_angle_BUILD.gn (revision 476627) @@ -1,19 +1,21 @@ ---- third_party/angle/BUILD.gn.orig 2017-09-05 21:06:47.000000000 +0200 -+++ third_party/angle/BUILD.gn 2017-09-10 02:30:29.868194000 +0200 -@@ -239,6 +239,7 @@ +--- third_party/angle/BUILD.gn.orig 2018-08-01 00:10:50.000000000 +0200 ++++ third_party/angle/BUILD.gn 2018-08-04 20:58:43.991734000 +0200 +@@ -271,6 +271,7 @@ "X11", "Xi", "Xext", + "GL", ] } } -@@ -677,7 +678,7 @@ - sources += rebase_path(util_gypi.util_win32_sources, ".", "util") +@@ -844,10 +845,6 @@ + libs = [] + if (is_linux) { + sources += rebase_path(util_gypi.util_linux_sources, ".", "util") +- libs += [ +- "rt", +- "dl", +- ] } -- if (is_linux) { -+ if (is_linux && !is_bsd) { - sources += rebase_path(util_gypi.util_linux_sources, ".", "util") - libs = [ - "rt", + if (is_mac) { Index: branches/2018Q3/www/chromium/files/patch-third_party_crashpad_crashpad_util_misc_capture_context.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-third_party_crashpad_crashpad_util_misc_capture_context.h (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-third_party_crashpad_crashpad_util_misc_capture_context.h (revision 476627) @@ -1,20 +1,20 @@ ---- third_party/crashpad/crashpad/util/misc/capture_context.h.orig 2018-06-13 00:11:02.000000000 +0200 -+++ third_party/crashpad/crashpad/util/misc/capture_context.h 2018-07-20 01:55:34.949535000 +0200 +--- third_party/crashpad/crashpad/util/misc/capture_context.h.orig 2018-08-01 00:09:40.000000000 +0200 ++++ third_party/crashpad/crashpad/util/misc/capture_context.h 2018-08-04 21:08:07.783574000 +0200 @@ -21,7 +21,7 @@ #include #elif defined(OS_WIN) #include -#elif defined(OS_LINUX) || defined(OS_ANDROID) +#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD) #include - #endif // OS_MACOSX - -@@ -33,7 +33,7 @@ + #elif defined(OS_FUCHSIA) + #include +@@ -35,7 +35,7 @@ #endif #elif defined(OS_WIN) using NativeCPUContext = CONTEXT; --#elif defined(OS_LINUX) || defined(OS_ANDROID) -+#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_BSD) +-#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FUCHSIA) ++#elif defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FUCHSIA) || defined(OS_BSD) using NativeCPUContext = ucontext_t; #endif // OS_MACOSX Index: branches/2018Q3/www/chromium/files/patch-third_party_perfetto_include_perfetto_base_build_config.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-third_party_perfetto_include_perfetto_base_build_config.h (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-third_party_perfetto_include_perfetto_base_build_config.h (revision 476627) @@ -0,0 +1,37 @@ +--- third_party/perfetto/include/perfetto/base/build_config.h.orig 2018-08-04 21:12:09.930418000 +0200 ++++ third_party/perfetto/include/perfetto/base/build_config.h 2018-08-04 21:14:11.343838000 +0200 +@@ -28,6 +28,7 @@ + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 1 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 0 ++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 0 + #elif defined(__APPLE__) +@@ -36,22 +37,25 @@ + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 0 +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 1 ++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 1 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 0 + #elif defined(_WIN32) + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 0 ++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 1 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 0 + #elif defined(__EMSCRIPTEN__) + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_ANDROID() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_MACOSX() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_LINUX() 0 ++#define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_FREEBSD() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WIN() 0 + #define PERFETTO_BUILDFLAG_DEFINE_PERFETTO_OS_WASM() 1 + #else Property changes on: branches/2018Q3/www/chromium/files/patch-third_party_perfetto_include_perfetto_base_build_config.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-third_party_perfetto_include_perfetto_base_watchdog_posix.h =================================================================== --- branches/2018Q3/www/chromium/files/patch-third_party_perfetto_include_perfetto_base_watchdog_posix.h (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-third_party_perfetto_include_perfetto_base_watchdog_posix.h (revision 476627) @@ -0,0 +1,11 @@ +--- third_party/perfetto/include/perfetto/base/watchdog_posix.h.orig 2018-08-04 21:15:43.145900000 +0200 ++++ third_party/perfetto/include/perfetto/base/watchdog_posix.h 2018-08-04 21:16:02.944049000 +0200 +@@ -45,7 +45,7 @@ + Timer(const Timer&) = delete; + Timer& operator=(const Timer&) = delete; + +- timer_t timerid_ = nullptr; ++ timer_t timerid_ = 0; + }; + virtual ~Watchdog(); + Property changes on: branches/2018Q3/www/chromium/files/patch-third_party_perfetto_include_perfetto_base_watchdog_posix.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-third_party_perfetto_src_base_unix_task_runner.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-third_party_perfetto_src_base_unix_task_runner.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-third_party_perfetto_src_base_unix_task_runner.cc (revision 476627) @@ -0,0 +1,11 @@ +--- third_party/perfetto/src/base/unix_task_runner.cc.orig 2018-08-04 21:17:17.721052000 +0200 ++++ third_party/perfetto/src/base/unix_task_runner.cc 2018-08-04 21:17:57.424940000 +0200 +@@ -45,7 +45,7 @@ + control_read_.reset(pipe_fds[0]); + control_write_.reset(pipe_fds[1]); + +-#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) ++#if PERFETTO_BUILDFLAG(PERFETTO_OS_LINUX) && !PERFETTO_BUILDFLAG(PERFETTO_OS_FREEBSD) + // We are never expecting to have more than a few bytes in the wake-up pipe. + // Reduce the buffer size on Linux. Note that this gets rounded up to the page + // size. Property changes on: branches/2018Q3/www/chromium/files/patch-third_party_perfetto_src_base_unix_task_runner.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-third_party_perfetto_src_tracing_core_service_impl.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-third_party_perfetto_src_tracing_core_service_impl.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-third_party_perfetto_src_tracing_core_service_impl.cc (revision 476627) @@ -0,0 +1,11 @@ +--- third_party/perfetto/src/tracing/core/service_impl.cc.orig 2018-08-04 21:18:16.978067000 +0200 ++++ third_party/perfetto/src/tracing/core/service_impl.cc 2018-08-04 21:18:54.197576000 +0200 +@@ -1041,7 +1041,7 @@ + protos::TrustedPacket packet; + protos::ClockSnapshot* clock_snapshot = packet.mutable_clock_snapshot(); + +-#if !PERFETTO_BUILDFLAG(PERFETTO_OS_MACOSX) && !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN) ++#if !PERFETTO_BUILDFLAG(PERFETTO_OS_MACOSX) && !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN) && !PERFETTO_BUILDFLAG(PERFETTO_OS_FREEBSD) + struct { + clockid_t id; + protos::ClockSnapshot::Clock::Type type; Property changes on: branches/2018Q3/www/chromium/files/patch-third_party_perfetto_src_tracing_core_service_impl.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-ui_gfx_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-ui_gfx_BUILD.gn (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-ui_gfx_BUILD.gn (revision 476627) @@ -0,0 +1,11 @@ +--- ui/gfx/BUILD.gn.orig 2018-08-01 00:09:48.000000000 +0200 ++++ ui/gfx/BUILD.gn 2018-08-04 22:24:28.133674000 +0200 +@@ -568,7 +568,7 @@ + deps += [ "//third_party/libdrm" ] + } + +- if (is_linux || is_android) { ++ if ((is_linux || is_android) && !is_bsd) { + deps += [ "//third_party/libsync" ] + } + Property changes on: branches/2018Q3/www/chromium/files/patch-ui_gfx_BUILD.gn ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-ui_gl_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-ui_gl_BUILD.gn (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-ui_gl_BUILD.gn (revision 476627) @@ -1,21 +1,30 @@ ---- ui/gl/BUILD.gn.orig 2017-12-30 03:59:07.267974000 +0100 -+++ ui/gl/BUILD.gn 2017-12-30 03:59:58.156283000 +0100 -@@ -261,7 +261,6 @@ +--- ui/gl/BUILD.gn.orig 2018-08-01 00:09:48.000000000 +0200 ++++ ui/gl/BUILD.gn 2018-08-04 23:32:57.498139000 +0200 +@@ -214,7 +214,7 @@ + } + } + +- if (is_posix && !is_fuchsia && !is_mac) { ++ if (is_posix && !is_fuchsia && !is_mac && !is_bsd) { + # Windows has USE_EGL but doesn't support base::FileDescriptor. + # libsync isn't supported or needed on MacOSX. + # Fuchsia is excluded due to a libsync dependency and because it's +@@ -311,7 +311,6 @@ data_deps += [ "//third_party/angle:libEGL", "//third_party/angle:libGLESv2", - "//third_party/mesa:osmesa", "//third_party/swiftshader", ] - -@@ -434,10 +433,6 @@ + } +@@ -545,10 +544,6 @@ "//ui/gl/init", "//ui/platform_window", "//ui/platform_window:platform_impls", - ] - - data_deps = [ - "//third_party/mesa:osmesa", ] - } + if (use_x11) { Index: branches/2018Q3/www/chromium/files/patch-ui_gl_gl_fence.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-ui_gl_gl_fence.cc (nonexistent) +++ branches/2018Q3/www/chromium/files/patch-ui_gl_gl_fence.cc (revision 476627) @@ -0,0 +1,11 @@ +--- ui/gl/gl_fence.cc.orig 2018-08-04 21:33:30.691170000 +0200 ++++ ui/gl/gl_fence.cc 2018-08-04 21:33:47.409485000 +0200 +@@ -19,7 +19,7 @@ + #endif + + #if defined(USE_EGL) && defined(OS_POSIX) && !defined(OS_FUCHSIA) && \ +- !defined(OS_MACOSX) ++ !defined(OS_MACOSX) && !defined(OS_FREEBSD) + #define USE_GL_FENCE_ANDROID_NATIVE_FENCE_SYNC + #include "ui/gl/gl_fence_android_native_fence_sync.h" + #include "ui/gl/gl_surface_egl.h" Property changes on: branches/2018Q3/www/chromium/files/patch-ui_gl_gl_fence.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/chromium/files/patch-ui_gl_gl_implementation.cc =================================================================== --- branches/2018Q3/www/chromium/files/patch-ui_gl_gl_implementation.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-ui_gl_gl_implementation.cc (revision 476627) @@ -1,11 +1,11 @@ ---- ui/gl/gl_implementation.cc.orig 2017-12-24 20:24:43.427221000 +0100 -+++ ui/gl/gl_implementation.cc 2017-12-24 20:25:40.159567000 +0100 -@@ -104,7 +104,7 @@ - } +--- ui/gl/gl_implementation.cc.orig 2018-08-01 00:09:48.000000000 +0200 ++++ ui/gl/gl_implementation.cc 2018-08-04 21:27:12.545235000 +0200 +@@ -123,7 +123,7 @@ GLImplementation GetSoftwareGLImplementation() { --#if (defined(OS_WIN) || (defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(USE_OZONE))) -+#if (defined(OS_WIN) || ((defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) && !defined(USE_OZONE))) + #if (defined(OS_WIN) || \ +- (defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(USE_OZONE)) || \ ++ ((defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) && !defined(USE_OZONE)) || \ + (defined(OS_MACOSX) && defined(USE_EGL))) return kGLImplementationSwiftShaderGL; #else - return kGLImplementationOSMesaGL; Index: branches/2018Q3/www/chromium/files/patch-v8_BUILD.gn =================================================================== --- branches/2018Q3/www/chromium/files/patch-v8_BUILD.gn (revision 476626) +++ branches/2018Q3/www/chromium/files/patch-v8_BUILD.gn (revision 476627) @@ -1,32 +1,41 @@ ---- v8/BUILD.gn.orig 2017-06-05 19:04:29 UTC -+++ v8/BUILD.gn -@@ -2455,7 +2455,7 @@ v8_component("v8_libbase") { +--- v8/BUILD.gn.orig 2018-08-01 00:10:59.000000000 +0200 ++++ v8/BUILD.gn 2018-08-05 12:16:07.941632000 +0200 +@@ -2529,7 +2529,7 @@ + "src/x64/simulator-x64.h", + "src/x64/sse-instr.h", ] +- if (is_linux) { ++ if (is_linux && !is_bsd) { + sources += [ + "src/trap-handler/handler-inside-linux.cc", + "src/trap-handler/handler-outside-linux.cc", +@@ -2875,7 +2875,7 @@ + } } - if (is_linux) { + if (is_linux && !is_bsd) { sources += [ "src/base/debug/stack_trace_posix.cc", "src/base/platform/platform-linux.cc", -@@ -2465,6 +2465,12 @@ v8_component("v8_libbase") { +@@ -2895,6 +2895,12 @@ "dl", "rt", ] + } else if (is_bsd) { + sources += [ + "src/base/debug/stack_trace_posix.cc", + "src/base/platform/platform-freebsd.cc", + ] + libs = [ "rt", "execinfo" ] } else if (is_android) { if (current_toolchain == host_toolchain) { libs = [ -@@ -2598,6 +2604,7 @@ if (current_toolchain == v8_snapshot_toolchain) { +@@ -3064,6 +3070,7 @@ sources = [ "src/snapshot/mksnapshot.cc", ] + libs = ["execinfo"] configs = [ ":internal_config" ] Index: branches/2018Q3/www/chromium/files/sndio_input.cc =================================================================== --- branches/2018Q3/www/chromium/files/sndio_input.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/sndio_input.cc (revision 476627) @@ -1,165 +1,170 @@ // Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "media/audio/sndio/sndio_input.h" #include #include "base/bind.h" #include "base/logging.h" #include "base/macros.h" #include "base/message_loop/message_loop.h" #include "media/audio/openbsd/audio_manager_openbsd.h" #include "media/audio/audio_manager.h" namespace media { +static const SampleFormat kSampleFormat = kSampleFormatS16; + void sndio_in_onmove(void *arg, int delta) { NOTIMPLEMENTED(); SndioAudioInputStream* self = static_cast(arg); - self->hw_delay_ = delta - self->params_.GetBytesPerFrame(); + self->hw_delay_ = delta - self->params_.GetBytesPerFrame(kSampleFormat); } void *sndio_in_threadstart(void *arg) { NOTIMPLEMENTED(); SndioAudioInputStream* self = static_cast(arg); self->ReadAudio(); return NULL; } SndioAudioInputStream::SndioAudioInputStream(AudioManagerBase* audio_manager, const std::string& device_name, const AudioParameters& params) : audio_manager_(audio_manager), device_name_(device_name), params_(params), - bytes_per_buffer_(params.frames_per_buffer() * - (params.channels() * params.bits_per_sample()) / - 8), + bytes_per_buffer_(params.GetBytesPerBuffer(kSampleFormat)), buffer_duration_(base::TimeDelta::FromMicroseconds( params.frames_per_buffer() * base::Time::kMicrosecondsPerSecond / static_cast(params.sample_rate()))), callback_(NULL), device_handle_(NULL), read_callback_behind_schedule_(false), audio_bus_(AudioBus::Create(params)) { } SndioAudioInputStream::~SndioAudioInputStream() {} bool SndioAudioInputStream::Open() { struct sio_par par; int sig; if (device_handle_) return false; // Already open. if (params_.format() != AudioParameters::AUDIO_PCM_LINEAR && params_.format() != AudioParameters::AUDIO_PCM_LOW_LATENCY) { LOG(WARNING) << "Unsupported audio format."; return false; } sio_initpar(&par); par.rate = params_.sample_rate(); par.pchan = params_.channels(); - par.bits = params_.bits_per_sample(); + par.bits = SampleFormatToBytesPerChannel(kSampleFormat); par.bps = par.bits / 8; par.sig = sig = par.bits != 8 ? 1 : 0; par.le = SIO_LE_NATIVE; par.appbufsz = params_.frames_per_buffer(); sndio_rec_bufsz_ = par.bufsz; sndio_rec_bufsize_ = par.round * par.bps * par.rchan; device_handle_ = sio_open(SIO_DEVANY, SIO_REC, 0); if (device_handle_ == NULL) { LOG(ERROR) << "Couldn't open audio device."; return false; } if (!sio_setpar(device_handle_, &par) || !sio_getpar(device_handle_, &par)) { LOG(ERROR) << "Couldn't set audio parameters."; goto bad_close; } if (par.rate != (unsigned int)params_.sample_rate() || par.pchan != (unsigned int)params_.channels() || - par.bits != (unsigned int)params_.bits_per_sample() || + par.bits != (unsigned int)SampleFormatToBytesPerChannel(kSampleFormat) || par.sig != (unsigned int)sig || (par.bps > 1 && par.le != SIO_LE_NATIVE) || (par.bits != par.bps * 8)) { LOG(ERROR) << "Unsupported audio parameters."; goto bad_close; } sio_onmove(device_handle_, sndio_in_onmove, this); audio_buffer_.reset(new uint8_t[bytes_per_buffer_]); return true; bad_close: sio_close(device_handle_); return false; } void SndioAudioInputStream::Start(AudioInputCallback* callback) { DCHECK(!callback_ && callback); callback_ = callback; StartAgc(); // We start reading data half |buffer_duration_| later than when the // buffer might have got filled, to accommodate some delays in the audio // driver. This could also give us a smooth read sequence going forward. base::TimeDelta delay = buffer_duration_ + buffer_duration_ / 2; next_read_time_ = base::TimeTicks::Now() + delay; if (pthread_create(&thread_, NULL, sndio_in_threadstart, this) != 0) LOG(ERROR) << "Failed to create real-time thread."; } void SndioAudioInputStream::ReadAudio() { NOTIMPLEMENTED(); } void SndioAudioInputStream::Stop() { if (!device_handle_ || !callback_) return; StopAgc(); pthread_join(thread_, NULL); sio_stop(device_handle_); callback_ = NULL; } void SndioAudioInputStream::Close() { if (device_handle_) { sio_close(device_handle_); audio_buffer_.reset(); device_handle_ = NULL; } audio_manager_->ReleaseInputStream(this); } double SndioAudioInputStream::GetMaxVolume() { return static_cast(SIO_MAXVOL); } void SndioAudioInputStream::SetVolume(double volume) { NOTIMPLEMENTED(); } double SndioAudioInputStream::GetVolume() { long current_volume = 0; return static_cast(current_volume); } bool SndioAudioInputStream::IsMuted() { return false; +} + +void SndioAudioInputStream::SetOutputDeviceForAec( + const std::string& output_device_id) { +// Not supported. Do nothing. } } // namespace media Index: branches/2018Q3/www/chromium/files/sndio_input.h =================================================================== --- branches/2018Q3/www/chromium/files/sndio_input.h (revision 476626) +++ branches/2018Q3/www/chromium/files/sndio_input.h (revision 476627) @@ -1,108 +1,109 @@ // Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef MEDIA_AUDIO_SNDIO_SNDIO_INPUT_H_ #define MEDIA_AUDIO_SNDIO_SNDIO_INPUT_H_ #include #include #include #include "base/compiler_specific.h" #include "base/macros.h" #include "base/memory/weak_ptr.h" #include "base/time/time.h" #include "media/audio/agc_audio_stream.h" #include "media/audio/audio_io.h" #include "media/audio/audio_device_description.h" #include "media/base/audio_parameters.h" namespace media { class AudioManagerBase; // call-backs invoked from C libraries, thus requiring C linkage extern "C" { // Invoked (on the real-time thread) at each sound card clock tick void sndio_in_onmove(void *arg, int delta); // Invoked (on the real-time thread) whenever the volume changes void sndio_in_onvol(void *arg, unsigned int vol); // Real-time thread entry point void *sndio_in_threadstart(void *arg); } // Provides an input stream for audio capture based on the SNDIO PCM interface. // This object is not thread safe and all methods should be invoked in the // thread that created the object. class SndioAudioInputStream : public AgcAudioStream { public: // Pass this to the constructor if you want to attempt auto-selection // of the audio recording device. static const char kAutoSelectDevice[]; // Create a PCM Output stream for the SNDIO device identified by // |device_name|. If unsure of what to use for |device_name|, use // |kAutoSelectDevice|. SndioAudioInputStream(AudioManagerBase* audio_manager, const std::string& device_name, const AudioParameters& params); ~SndioAudioInputStream() override; // Implementation of AudioInputStream. bool Open() override; void Start(AudioInputCallback* callback) override; void Stop() override; void Close() override; double GetMaxVolume() override; void SetVolume(double volume) override; double GetVolume() override; bool IsMuted() override; + void SetOutputDeviceForAec(const std::string& output_device_id) override; // C-linkage call-backs are friends to access private data friend void sndio_in_onmove(void *arg, int delta); friend void sndio_in_onvol(void *arg, unsigned int vol); friend void *sndio_in_threadstart(void *arg); private: // Logs the error and invokes any registered callbacks. void HandleError(const char* method, int error); // Reads one or more buffers of audio from the device, passes on to the // registered callback and schedules the next read. void ReadAudio(); // Recovers from any device errors if possible. bool Recover(int error); // Non-refcounted pointer back to the audio manager. // The AudioManager indirectly holds on to stream objects, so we don't // want circular references. Additionally, stream objects live on the audio // thread, which is owned by the audio manager and we don't want to addref // the manager from that thread. AudioManagerBase* audio_manager_; std::string device_name_; AudioParameters params_; int bytes_per_buffer_; base::TimeDelta buffer_duration_; // Length of each recorded buffer. AudioInputCallback* callback_; // Valid during a recording session. base::TimeTicks next_read_time_; // Scheduled time for next read callback. struct sio_hdl* device_handle_; // Handle to the SNDIO PCM recording device. std::unique_ptr audio_buffer_; // Buffer used for reading audio data. bool read_callback_behind_schedule_; std::unique_ptr audio_bus_; int hw_delay_; int sndio_rec_bufsize_; int sndio_rec_bufsz_; // High priority thread running RealTimeThread() pthread_t thread_; DISALLOW_COPY_AND_ASSIGN(SndioAudioInputStream); }; } // namespace media #endif // MEDIA_AUDIO_SNDIO_SNDIO_INPUT_H_ Index: branches/2018Q3/www/chromium/files/sndio_output.cc =================================================================== --- branches/2018Q3/www/chromium/files/sndio_output.cc (revision 476626) +++ branches/2018Q3/www/chromium/files/sndio_output.cc (revision 476627) @@ -1,177 +1,179 @@ // Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "base/logging.h" #include "base/time/time.h" #include "base/time/default_tick_clock.h" #include "media/audio/audio_manager_base.h" #include "media/base/audio_timestamp_helper.h" #include "media/audio/sndio/sndio_output.h" namespace media { +static const SampleFormat kSampleFormat = kSampleFormatS16; + void sndio_onmove(void *arg, int delta) { SndioAudioOutputStream* self = static_cast(arg); self->hw_delay = delta; } void sndio_onvol(void *arg, unsigned int vol) { SndioAudioOutputStream* self = static_cast(arg); self->vol = vol; } void *sndio_threadstart(void *arg) { SndioAudioOutputStream* self = static_cast(arg); self->RealTimeThread(); return NULL; } SndioAudioOutputStream::SndioAudioOutputStream(const AudioParameters& params, AudioManagerBase* manager) : manager(manager), params(params), audio_bus(AudioBus::Create(params)), - bytes_per_frame(params.GetBytesPerFrame()), + bytes_per_frame(params.GetBytesPerFrame(kSampleFormat)), state(kClosed), mutex(PTHREAD_MUTEX_INITIALIZER) { } SndioAudioOutputStream::~SndioAudioOutputStream() { if (state != kClosed) Close(); } bool SndioAudioOutputStream::Open() { struct sio_par par; int sig; if (params.format() != AudioParameters::AUDIO_PCM_LINEAR && params.format() != AudioParameters::AUDIO_PCM_LOW_LATENCY) { LOG(WARNING) << "Unsupported audio format."; return false; } sio_initpar(&par); par.rate = params.sample_rate(); par.pchan = params.channels(); - par.bits = params.bits_per_sample(); + par.bits = SampleFormatToBitsPerChannel(kSampleFormat); par.bps = par.bits / 8; par.sig = sig = par.bits != 8 ? 1 : 0; par.le = SIO_LE_NATIVE; par.appbufsz = params.frames_per_buffer(); hdl = sio_open(SIO_DEVANY, SIO_PLAY, 0); if (hdl == NULL) { LOG(ERROR) << "Couldn't open audio device."; return false; } if (!sio_setpar(hdl, &par) || !sio_getpar(hdl, &par)) { LOG(ERROR) << "Couldn't set audio parameters."; goto bad_close; } if (par.rate != (unsigned int)params.sample_rate() || par.pchan != (unsigned int)params.channels() || - par.bits != (unsigned int)params.bits_per_sample() || + par.bits != (unsigned int)SampleFormatToBitsPerChannel(kSampleFormat) || par.sig != (unsigned int)sig || (par.bps > 1 && par.le != SIO_LE_NATIVE) || (par.bits != par.bps * 8)) { LOG(ERROR) << "Unsupported audio parameters."; goto bad_close; } state = kStopped; volpending = 0; vol = 0; - buffer = new char[audio_bus->frames() * params.GetBytesPerFrame()]; + buffer = new char[audio_bus->frames() * params.GetBytesPerFrame(kSampleFormat)]; sio_onmove(hdl, sndio_onmove, this); sio_onvol(hdl, sndio_onvol, this); return true; bad_close: sio_close(hdl); return false; } void SndioAudioOutputStream::Close() { if (state == kClosed) return; if (state == kRunning) Stop(); state = kClosed; delete [] buffer; sio_close(hdl); manager->ReleaseOutputStream(this); // Calls the destructor } void SndioAudioOutputStream::Start(AudioSourceCallback* callback) { state = kRunning; hw_delay = 0; source = callback; sio_start(hdl); if (pthread_create(&thread, NULL, sndio_threadstart, this) != 0) { LOG(ERROR) << "Failed to create real-time thread."; sio_stop(hdl); state = kStopped; } } void SndioAudioOutputStream::Stop() { if (state == kStopped) return; state = kStopWait; pthread_join(thread, NULL); sio_stop(hdl); state = kStopped; } void SndioAudioOutputStream::SetVolume(double v) { pthread_mutex_lock(&mutex); vol = v * SIO_MAXVOL; volpending = 1; pthread_mutex_unlock(&mutex); } void SndioAudioOutputStream::GetVolume(double* v) { pthread_mutex_lock(&mutex); *v = vol * (1. / SIO_MAXVOL); pthread_mutex_unlock(&mutex); } void SndioAudioOutputStream::RealTimeThread(void) { int avail, count; while (state == kRunning) { // Update volume if needed pthread_mutex_lock(&mutex); if (volpending) { volpending = 0; sio_setvol(hdl, vol); } pthread_mutex_unlock(&mutex); // Get data to play const base::TimeDelta delay = AudioTimestampHelper::FramesToTime(hw_delay, params.sample_rate() * 1000); count = source->OnMoreData(delay, base::TimeTicks::Now(), 0, audio_bus.get()); - audio_bus->ToInterleaved(count, params.bits_per_sample() / 8, buffer); + audio_bus->ToInterleaved(count, SampleFormatToBytesPerChannel(kSampleFormat), buffer); if (count == 0) { // We have to submit something to the device count = audio_bus->frames(); - memset(buffer, 0, count * params.GetBytesPerFrame()); + memset(buffer, 0, count * params.GetBytesPerFrame(kSampleFormat)); LOG(WARNING) << "No data to play, running empty cycle."; } // Submit data to the device - avail = count * params.GetBytesPerFrame(); + avail = count * params.GetBytesPerFrame(kSampleFormat); count = sio_write(hdl, buffer, avail); if (count == 0) { LOG(WARNING) << "Audio device disconnected."; break; } // Update hardware pointer hw_delay += count; } } } // namespace media Index: branches/2018Q3/www/chromium/pkg-message =================================================================== --- branches/2018Q3/www/chromium/pkg-message (revision 476626) +++ branches/2018Q3/www/chromium/pkg-message (revision 476627) @@ -1,23 +1,21 @@ --I-- For correct operation, shared memory support has to be enabled -in Chromium by performing the following command as root : +in Chromium by performing the following command as root: -# sysctl kern.ipc.shm_allow_removed=1 + # sysctl kern.ipc.shm_allow_removed=1 To preserve this setting across reboots, append the following -to /etc/sysctl.conf : +to /etc/sysctl.conf: -kern.ipc.shm_allow_removed=1 + kern.ipc.shm_allow_removed=1 -FreeBSD 11.0-R and newer have this set by default. +FreeBSD 11.0-RELEASE and newer have this set by default. --II-- Chromium has a known problem of hanging tabs. The workaround for this problem is to mount ~/.cache/chromium as memory-fs. -In order to do this, before you run chromium, please run these -commands once as root for each user who uses chromium (replace -{user}/{group} with your user/group names): +In order to do this, before you run Chromium, please run the +following script as root once for each user who uses Chromium +(replace {user}/{group} with your user/group names): -# [ -d ~{user}/.cache/chromium ] || mkdir ~{user}/.cache/chromium -# echo "md $(echo ~{user})/.cache/chromium mfs rw,late,-w{user}:{group},-s300m 2 0" >> /etc/fstab -# mount ~{user}/.cache/chromium + # %%DATADIR%%/fix-hanging-tabs.sh {user} {group} Index: branches/2018Q3/www/chromium/pkg-plist =================================================================== --- branches/2018Q3/www/chromium/pkg-plist (revision 476626) +++ branches/2018Q3/www/chromium/pkg-plist (revision 476627) @@ -1,332 +1,335 @@ bin/chrome %%DATADIR%%/chrome %%DATADIR%%/chrome-wrapper %%DATADIR%%/chrome_100_percent.pak %%DATADIR%%/chrome_200_percent.pak +%%DATADIR%%/fix-hanging-tabs.sh %%DATADIR%%/font_service.service %%DATADIR%%/headless_lib.pak %%DATADIR%%/icudtl.dat %%DATADIR%%/natives_blob.bin %%DATADIR%%/keyboard_resources.pak %%DATADIR%%/libEGL.so %%DATADIR%%/libGLESv2.so %%DATADIR%%/locales/am.pak %%DATADIR%%/locales/am.pak.info %%DATADIR%%/locales/ar.pak %%DATADIR%%/locales/ar.pak.info %%DATADIR%%/locales/bg.pak %%DATADIR%%/locales/bg.pak.info %%DATADIR%%/locales/bn.pak %%DATADIR%%/locales/bn.pak.info %%DATADIR%%/locales/ca.pak %%DATADIR%%/locales/ca.pak.info %%DATADIR%%/locales/cs.pak %%DATADIR%%/locales/cs.pak.info %%DATADIR%%/locales/da.pak %%DATADIR%%/locales/da.pak.info %%DATADIR%%/locales/de.pak %%DATADIR%%/locales/de.pak.info %%DATADIR%%/locales/el.pak %%DATADIR%%/locales/el.pak.info %%DATADIR%%/locales/en-GB.pak %%DATADIR%%/locales/en-GB.pak.info %%DATADIR%%/locales/en-US.pak %%DATADIR%%/locales/en-US.pak.info %%DATADIR%%/locales/es-419.pak %%DATADIR%%/locales/es-419.pak.info %%DATADIR%%/locales/es.pak %%DATADIR%%/locales/es.pak.info %%DATADIR%%/locales/et.pak %%DATADIR%%/locales/et.pak.info %%DATADIR%%/locales/fa.pak %%DATADIR%%/locales/fa.pak.info %%DATADIR%%/locales/fi.pak %%DATADIR%%/locales/fi.pak.info %%DATADIR%%/locales/fil.pak %%DATADIR%%/locales/fil.pak.info %%DATADIR%%/locales/fr.pak %%DATADIR%%/locales/fr.pak.info %%DATADIR%%/locales/gu.pak %%DATADIR%%/locales/gu.pak.info %%DATADIR%%/locales/he.pak %%DATADIR%%/locales/he.pak.info %%DATADIR%%/locales/hi.pak %%DATADIR%%/locales/hi.pak.info %%DATADIR%%/locales/hr.pak %%DATADIR%%/locales/hr.pak.info %%DATADIR%%/locales/hu.pak %%DATADIR%%/locales/hu.pak.info %%DATADIR%%/locales/id.pak %%DATADIR%%/locales/id.pak.info %%DATADIR%%/locales/it.pak %%DATADIR%%/locales/it.pak.info %%DATADIR%%/locales/ja.pak %%DATADIR%%/locales/ja.pak.info %%DATADIR%%/locales/kn.pak %%DATADIR%%/locales/kn.pak.info %%DATADIR%%/locales/ko.pak %%DATADIR%%/locales/ko.pak.info %%DATADIR%%/locales/lt.pak %%DATADIR%%/locales/lt.pak.info %%DATADIR%%/locales/lv.pak %%DATADIR%%/locales/lv.pak.info %%DATADIR%%/locales/ml.pak %%DATADIR%%/locales/ml.pak.info %%DATADIR%%/locales/mr.pak %%DATADIR%%/locales/mr.pak.info %%DATADIR%%/locales/ms.pak %%DATADIR%%/locales/ms.pak.info %%DATADIR%%/locales/nb.pak %%DATADIR%%/locales/nb.pak.info %%DATADIR%%/locales/nl.pak %%DATADIR%%/locales/nl.pak.info %%DATADIR%%/locales/pl.pak %%DATADIR%%/locales/pl.pak.info %%DATADIR%%/locales/pt-BR.pak %%DATADIR%%/locales/pt-BR.pak.info %%DATADIR%%/locales/pt-PT.pak %%DATADIR%%/locales/pt-PT.pak.info %%DATADIR%%/locales/ro.pak %%DATADIR%%/locales/ro.pak.info %%DATADIR%%/locales/ru.pak %%DATADIR%%/locales/ru.pak.info %%DATADIR%%/locales/sk.pak %%DATADIR%%/locales/sk.pak.info %%DATADIR%%/locales/sl.pak %%DATADIR%%/locales/sl.pak.info %%DATADIR%%/locales/sr.pak %%DATADIR%%/locales/sr.pak.info %%DATADIR%%/locales/sv.pak %%DATADIR%%/locales/sv.pak.info %%DATADIR%%/locales/sw.pak %%DATADIR%%/locales/sw.pak.info %%DATADIR%%/locales/ta.pak %%DATADIR%%/locales/ta.pak.info %%DATADIR%%/locales/te.pak %%DATADIR%%/locales/te.pak.info %%DATADIR%%/locales/th.pak %%DATADIR%%/locales/th.pak.info %%DATADIR%%/locales/tr.pak %%DATADIR%%/locales/tr.pak.info %%DATADIR%%/locales/uk.pak %%DATADIR%%/locales/uk.pak.info %%DATADIR%%/locales/vi.pak %%DATADIR%%/locales/vi.pak.info %%DATADIR%%/locales/zh-CN.pak %%DATADIR%%/locales/zh-CN.pak.info %%DATADIR%%/locales/zh-TW.pak %%DATADIR%%/locales/zh-TW.pak.info %%DATADIR%%/mksnapshot %%DATADIR%%/product_logo_48.png %%DATADIR%%/protoc %%DATADIR%%/resources.pak %%DATADIR%%/resources/inspector/Images/accelerometer-back.png %%DATADIR%%/resources/inspector/Images/accelerometer-bottom.png %%DATADIR%%/resources/inspector/Images/accelerometer-front.png %%DATADIR%%/resources/inspector/Images/accelerometer-left.png %%DATADIR%%/resources/inspector/Images/accelerometer-right.png %%DATADIR%%/resources/inspector/Images/accelerometer-top.png %%DATADIR%%/resources/inspector/Images/audits_logo.svg %%DATADIR%%/resources/inspector/Images/breakpoint.png %%DATADIR%%/resources/inspector/Images/breakpointConditional.png %%DATADIR%%/resources/inspector/Images/breakpointConditional_2x.png %%DATADIR%%/resources/inspector/Images/breakpoint_2x.png %%DATADIR%%/resources/inspector/Images/checker.png %%DATADIR%%/resources/inspector/Images/chromeDisabledSelect.png %%DATADIR%%/resources/inspector/Images/chromeDisabledSelect_2x.png %%DATADIR%%/resources/inspector/Images/chromeLeft.png %%DATADIR%%/resources/inspector/Images/chromeMiddle.png %%DATADIR%%/resources/inspector/Images/chromeRight.png %%DATADIR%%/resources/inspector/Images/chromeSelect.png %%DATADIR%%/resources/inspector/Images/chromeSelect_2x.png %%DATADIR%%/resources/inspector/Images/deleteIcon.png %%DATADIR%%/resources/inspector/Images/errorWave.png %%DATADIR%%/resources/inspector/Images/errorWave_2x.png %%DATADIR%%/resources/inspector/Images/ic_info_black_18dp.svg %%DATADIR%%/resources/inspector/Images/ic_warning_black_18dp.svg %%DATADIR%%/resources/inspector/Images/largeIcons.png %%DATADIR%%/resources/inspector/Images/largeIcons_2x.png %%DATADIR%%/resources/inspector/Images/mediumIcons.png %%DATADIR%%/resources/inspector/Images/mediumIcons_2x.png %%DATADIR%%/resources/inspector/Images/navigationControls.png %%DATADIR%%/resources/inspector/Images/navigationControls_2x.png %%DATADIR%%/resources/inspector/Images/nodeIcon.png %%DATADIR%%/resources/inspector/Images/popoverArrows.png %%DATADIR%%/resources/inspector/Images/profileGroupIcon.png %%DATADIR%%/resources/inspector/Images/profileIcon.png %%DATADIR%%/resources/inspector/Images/profileSmallIcon.png %%DATADIR%%/resources/inspector/Images/radioDot.png %%DATADIR%%/resources/inspector/Images/resizeDiagonal.png %%DATADIR%%/resources/inspector/Images/resizeDiagonal_2x.png %%DATADIR%%/resources/inspector/Images/resizeHorizontal.png %%DATADIR%%/resources/inspector/Images/resizeHorizontal_2x.png %%DATADIR%%/resources/inspector/Images/resizeVertical.png %%DATADIR%%/resources/inspector/Images/resizeVertical_2x.png %%DATADIR%%/resources/inspector/Images/resourceCSSIcon.png %%DATADIR%%/resources/inspector/Images/resourceDocumentIcon.png %%DATADIR%%/resources/inspector/Images/resourceDocumentIconSmall.png %%DATADIR%%/resources/inspector/Images/resourceJSIcon.png %%DATADIR%%/resources/inspector/Images/resourcePlainIcon.png %%DATADIR%%/resources/inspector/Images/resourcePlainIconSmall.png %%DATADIR%%/resources/inspector/Images/resourcesTimeGraphIcon.png %%DATADIR%%/resources/inspector/Images/searchNext.png %%DATADIR%%/resources/inspector/Images/searchPrev.png %%DATADIR%%/resources/inspector/Images/securityIcons.png %%DATADIR%%/resources/inspector/Images/securityIcons_2x.png %%DATADIR%%/resources/inspector/Images/smallIcons.png %%DATADIR%%/resources/inspector/Images/smallIcons_2x.png %%DATADIR%%/resources/inspector/Images/speech.png %%DATADIR%%/resources/inspector/Images/toolbarResizerVertical.png %%DATADIR%%/resources/inspector/Images/touchCursor.png %%DATADIR%%/resources/inspector/Images/touchCursor_2x.png %%DATADIR%%/resources/inspector/Images/treeoutlineTriangles.png %%DATADIR%%/resources/inspector/Images/treeoutlineTriangles_2x.png %%DATADIR%%/resources/inspector/Images/whatsnew.png %%DATADIR%%/resources/inspector/InspectorBackendCommands.js %%DATADIR%%/resources/inspector/SupportedCSSProperties.js %%DATADIR%%/resources/inspector/Tests.js +%%DATADIR%%/resources/inspector/accessibility/ARIAProperties.js %%DATADIR%%/resources/inspector/accessibility/accessibility_module.js %%DATADIR%%/resources/inspector/accessibility_test_runner/accessibility_test_runner_module.js %%DATADIR%%/resources/inspector/animation/animation_module.js %%DATADIR%%/resources/inspector/application_test_runner/application_test_runner_module.js %%DATADIR%%/resources/inspector/audits2/audits2_module.js %%DATADIR%%/resources/inspector/audits2_test_runner/audits2_test_runner_module.js %%DATADIR%%/resources/inspector/audits2_worker.js %%DATADIR%%/resources/inspector/audits2_worker/audits2_worker_module.js %%DATADIR%%/resources/inspector/bindings_test_runner/bindings_test_runner_module.js %%DATADIR%%/resources/inspector/browser_console/browser_console_module.js %%DATADIR%%/resources/inspector/browser_debugger/browser_debugger_module.js %%DATADIR%%/resources/inspector/changes/changes_module.js %%DATADIR%%/resources/inspector/cm/cm_module.js %%DATADIR%%/resources/inspector/cm_modes/cm_modes_module.js %%DATADIR%%/resources/inspector/color_picker/color_picker_module.js %%DATADIR%%/resources/inspector/console/console_module.js %%DATADIR%%/resources/inspector/console_test_runner/console_test_runner_module.js %%DATADIR%%/resources/inspector/cookie_table/cookie_table_module.js %%DATADIR%%/resources/inspector/coverage/coverage_module.js %%DATADIR%%/resources/inspector/coverage_test_runner/coverage_test_runner_module.js %%DATADIR%%/resources/inspector/cpu_profiler_test_runner/cpu_profiler_test_runner_module.js %%DATADIR%%/resources/inspector/data_grid/data_grid_module.js %%DATADIR%%/resources/inspector/data_grid_test_runner/data_grid_test_runner_module.js %%DATADIR%%/resources/inspector/device_mode_test_runner/device_mode_test_runner_module.js %%DATADIR%%/resources/inspector/devices/devices_module.js %%DATADIR%%/resources/inspector/devtools_app.html %%DATADIR%%/resources/inspector/devtools_app.js %%DATADIR%%/resources/inspector/devtools_compatibility.js %%DATADIR%%/resources/inspector/devtools_extension_api.js %%DATADIR%%/resources/inspector/diff/diff_module.js %%DATADIR%%/resources/inspector/elements/elements_module.js %%DATADIR%%/resources/inspector/elements_test_runner/elements_test_runner_module.js %%DATADIR%%/resources/inspector/emulated_devices/Nexus5X-landscape.svg %%DATADIR%%/resources/inspector/emulated_devices/Nexus5X-portrait.svg %%DATADIR%%/resources/inspector/emulated_devices/Nexus6P-landscape.svg %%DATADIR%%/resources/inspector/emulated_devices/Nexus6P-portrait.svg %%DATADIR%%/resources/inspector/emulated_devices/emulated_devices_module.js %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-horizontal-default-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-horizontal-default-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-horizontal-keyboard-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-horizontal-keyboard-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-horizontal-navigation-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-horizontal-navigation-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-vertical-default-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-vertical-default-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-vertical-keyboard-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-vertical-keyboard-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-vertical-navigation-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5-vertical-navigation-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-horizontal-default-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-horizontal-default-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-horizontal-keyboard-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-horizontal-keyboard-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-horizontal-navigation-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-horizontal-navigation-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-vertical-default-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-vertical-default-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-vertical-keyboard-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-vertical-keyboard-2x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-vertical-navigation-1x.png %%DATADIR%%/resources/inspector/emulated_devices/google-nexus-5x-vertical-navigation-2x.png %%DATADIR%%/resources/inspector/emulated_devices/iPad-landscape.svg %%DATADIR%%/resources/inspector/emulated_devices/iPad-portrait.svg %%DATADIR%%/resources/inspector/emulated_devices/iPhone5-landscape.svg %%DATADIR%%/resources/inspector/emulated_devices/iPhone5-portrait.svg %%DATADIR%%/resources/inspector/emulated_devices/iPhone6-landscape.svg %%DATADIR%%/resources/inspector/emulated_devices/iPhone6-portrait.svg %%DATADIR%%/resources/inspector/emulated_devices/iPhone6Plus-landscape.svg %%DATADIR%%/resources/inspector/emulated_devices/iPhone6Plus-portrait.svg %%DATADIR%%/resources/inspector/event_listeners/event_listeners_module.js %%DATADIR%%/resources/inspector/extensions_test_runner/extensions_test_runner_module.js %%DATADIR%%/resources/inspector/formatter_worker.js %%DATADIR%%/resources/inspector/formatter/formatter_module.js %%DATADIR%%/resources/inspector/har_importer/har_importer_module.js %%DATADIR%%/resources/inspector/heap_profiler_test_runner/heap_profiler_test_runner_module.js %%DATADIR%%/resources/inspector/heap_snapshot_model/heap_snapshot_model_module.js %%DATADIR%%/resources/inspector/heap_snapshot_worker.js %%DATADIR%%/resources/inspector/heap_snapshot_worker/heap_snapshot_worker_module.js %%DATADIR%%/resources/inspector/help/help_module.js %%DATADIR%%/resources/inspector/inline_editor/inline_editor_module.js %%DATADIR%%/resources/inspector/inspector.html %%DATADIR%%/resources/inspector/inspector.js %%DATADIR%%/resources/inspector/integration_test_runner.html %%DATADIR%%/resources/inspector/integration_test_runner.js +%%DATADIR%%/resources/inspector/javascript_metadata/javascript_metadata_module.js %%DATADIR%%/resources/inspector/js_app.html %%DATADIR%%/resources/inspector/js_app.js %%DATADIR%%/resources/inspector/js_profiler/js_profiler_module.js %%DATADIR%%/resources/inspector/layer_viewer/layer_viewer_module.js %%DATADIR%%/resources/inspector/layers/layers_module.js %%DATADIR%%/resources/inspector/layers_test_runner/layers_test_runner_module.js %%DATADIR%%/resources/inspector/ndb_app.html %%DATADIR%%/resources/inspector/ndb_app.js %%DATADIR%%/resources/inspector/network/network_module.js %%DATADIR%%/resources/inspector/network_test_runner/network_test_runner_module.js %%DATADIR%%/resources/inspector/node_app.html %%DATADIR%%/resources/inspector/node_app.js %%DATADIR%%/resources/inspector/node_debugger/node_debugger_module.js %%DATADIR%%/resources/inspector/object_ui/object_ui_module.js %%DATADIR%%/resources/inspector/perf_ui/perf_ui_module.js %%DATADIR%%/resources/inspector/performance_monitor/performance_monitor_module.js %%DATADIR%%/resources/inspector/performance_test_runner/performance_test_runner_module.js %%DATADIR%%/resources/inspector/product_registry_impl/product_registry_impl_module.js %%DATADIR%%/resources/inspector/profiler/profiler_module.js %%DATADIR%%/resources/inspector/protocol_monitor/protocol_monitor_module.js %%DATADIR%%/resources/inspector/quick_open/quick_open_module.js %%DATADIR%%/resources/inspector/resources/resources_module.js %%DATADIR%%/resources/inspector/sdk_test_runner/sdk_test_runner_module.js %%DATADIR%%/resources/inspector/search/search_module.js %%DATADIR%%/resources/inspector/security/security_module.js %%DATADIR%%/resources/inspector/security_test_runner/security_test_runner_module.js %%DATADIR%%/resources/inspector/settings/settings_module.js %%DATADIR%%/resources/inspector/shell.js %%DATADIR%%/resources/inspector/snippets/snippets_module.js %%DATADIR%%/resources/inspector/source_frame/source_frame_module.js %%DATADIR%%/resources/inspector/sources/sources_module.js %%DATADIR%%/resources/inspector/sources_test_runner/sources_test_runner_module.js %%DATADIR%%/resources/inspector/terminal/terminal_module.js %%DATADIR%%/resources/inspector/text_editor/text_editor_module.js %%DATADIR%%/resources/inspector/timeline/timeline_module.js %%DATADIR%%/resources/inspector/timeline_model/timeline_model_module.js %%DATADIR%%/resources/inspector/toolbox.html %%DATADIR%%/resources/inspector/toolbox.js %%DATADIR%%/resources/inspector/worker_app.html %%DATADIR%%/resources/inspector/worker_app.js %%DATADIR%%/resources/inspector/workspace_diff/workspace_diff_module.js %%DATADIR%%/snapshot_blob.bin %%DATADIR%%/swiftshader/libEGL.so %%DATADIR%%/swiftshader/libGLESv2.so %%DATADIR%%/v8_context_snapshot.bin %%DATADIR%%/views_mus_resources.pak %%DEBUG%%%%DATADIR%%/character_data_generator %%DEBUG%%%%DATADIR%%/libVkLayer_core_validation.so %%DEBUG%%%%DATADIR%%/libVkLayer_object_tracker.so %%DEBUG%%%%DATADIR%%/libVkLayer_parameter_validation.so %%DEBUG%%%%DATADIR%%/libVkLayer_threading.so %%DEBUG%%%%DATADIR%%/libVkLayer_unique_objects.so %%DRIVER%%bin/chromedriver man/man1/chrome.1.gz share/applications/chromium-browser.desktop share/icons/hicolor/128x128/apps/chrome.png share/icons/hicolor/22x22/apps/chrome.png share/icons/hicolor/24x24/apps/chrome.png share/icons/hicolor/256x256/apps/chrome.png share/icons/hicolor/48x48/apps/chrome.png share/icons/hicolor/64x64/apps/chrome.png Index: branches/2018Q3 =================================================================== --- branches/2018Q3 (revision 476626) +++ branches/2018Q3 (revision 476627) Property changes on: branches/2018Q3 ___________________________________________________________________ Modified: svn:mergeinfo ## -0,0 +0,1 ## Merged /head:r476599