Index: head/www/chromium/Makefile =================================================================== --- head/www/chromium/Makefile (revision 384823) +++ head/www/chromium/Makefile (revision 384824) @@ -1,383 +1,385 @@ # Created by: Florent Thoumie # $FreeBSD$ PORTNAME= chromium -PORTVERSION= 40.0.2214.115 -PORTREVISION= 1 +PORTVERSION= 42.0.2311.90 CATEGORIES= www MASTER_SITES= http://commondatastorage.googleapis.com/chromium-browser-official/ DISTFILES= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= chromium@FreeBSD.org COMMENT= Google web browser based on WebKit LICENSE= BSD3CLAUSE LGPL21 MPL LICENSE_COMB= multi CFLAGS+= -isystem${LOCALBASE}/include BUILD_DEPENDS= ${LOCALBASE}/bin/gperf:${PORTSDIR}/devel/gperf \ bash:${PORTSDIR}/shells/bash \ yasm:${PORTSDIR}/devel/yasm \ flock:${PORTSDIR}/sysutils/flock \ ${LOCALBASE}/include/linux/videodev2.h:${PORTSDIR}/multimedia/v4l_compat \ - ${LOCALBASE}/share/usbids/usb.ids:${PORTSDIR}/misc/usbids + ${LOCALBASE}/share/usbids/usb.ids:${PORTSDIR}/misc/usbids \ + ${PYTHON_PKGNAMEPREFIX}Jinja2>0:${PORTSDIR}/devel/py-Jinja2 \ + ${PYTHON_PKGNAMEPREFIX}ply>0:${PORTSDIR}/devel/py-ply LIB_DEPENDS= libcairo.so:${PORTSDIR}/graphics/cairo \ libdbus-1.so:${PORTSDIR}/devel/dbus \ libdbus-glib-1.so:${PORTSDIR}/devel/dbus-glib \ libasound.so:${PORTSDIR}/audio/alsa-lib \ libfreetype.so:${PORTSDIR}/print/freetype2 \ libnss3.so:${PORTSDIR}/security/nss \ libFLAC.so:${PORTSDIR}/audio/flac \ libgnome-keyring.so:${PORTSDIR}/security/libgnome-keyring \ libharfbuzz.so:${PORTSDIR}/print/harfbuzz \ libcups.so:${PORTSDIR}/print/cups-client \ libevent.so:${PORTSDIR}/devel/libevent2 \ libexif.so:${PORTSDIR}/graphics/libexif \ libgcrypt.so:${PORTSDIR}/security/libgcrypt \ libpci.so:${PORTSDIR}/devel/libpci \ libdrm.so:${PORTSDIR}/graphics/libdrm \ libicuuc.so:${PORTSDIR}/devel/icu \ libjpeg.so:${PORTSDIR}/graphics/jpeg \ libjsoncpp.so:${PORTSDIR}/devel/jsoncpp \ libnspr4.so:${PORTSDIR}/devel/nspr \ libpng.so:${PORTSDIR}/graphics/png \ libre2.so:${PORTSDIR}/devel/re2 \ libsnappy.so:${PORTSDIR}/archivers/snappy \ libspeechd.so:${PORTSDIR}/accessibility/speech-dispatcher \ libspeex.so:${PORTSDIR}/audio/speex \ libxml2.so:${PORTSDIR}/textproc/libxml2 \ libwebp.so:${PORTSDIR}/graphics/webp RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:${PORTSDIR}/audio/alsa-plugins \ droid-fonts-ttf>0:${PORTSDIR}/x11-fonts/droid-fonts-ttf \ xdg-open:${PORTSDIR}/devel/xdg-utils ONLY_FOR_ARCHS= i386 amd64 USES= bison compiler:c++11-lib cpe desktop-file-utils pkgconfig \ perl5 shebangfix ninja tar:xz python:2,build execinfo CPE_VENDOR= google CPE_PRODUCT= chrome USE_PERL5= build USE_XORG= scrnsaverproto x11 xproto xscrnsaver xtst USE_GNOME= glib20 gtk20 dconf libxslt SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper ALL_TARGET= chrome INSTALLS_ICONS= yes #TODO bz@ : if you do undestand the gyp stuff, third_party/widevine/cdm/widevine_cdm.gyp talks about it (plz install libwidevinecdm.so) # See build/common.gypi for all the available variables. GYP_DEFINES+= \ clang_use_chrome_plugins=0 \ linux_breakpad=0 \ linux_use_heapchecker=0 \ linux_strip_binary=1 \ test_isolation_mode=noop \ disable_nacl=1 \ enable_extensions=1 \ enable_one_click_signin=1 \ enable_openmax=1 \ enable_webrtc=1 \ werror= \ no_gc_sections=1 \ os_ver=${OSVERSION} \ prefix_dir=${LOCALBASE} \ python_ver=${PYTHON_VER} \ use_allocator=none \ use_cups=1 \ linux_link_gsettings=1 \ linux_link_libpci=1 \ linux_link_libspeechd=1 \ libspeechd_h_prefix=speech-dispatcher/ \ usb_ids_path=${LOCALBASE}/share/usbids/usb.ids \ want_separate_host_toolset=0 \ use_system_bzip2=1 \ use_system_flac=1 \ use_system_harfbuzz=1 \ use_system_icu=1 \ use_system_jsoncpp=1 \ use_system_libevent=1 \ use_system_libexif=1 \ use_system_libjpeg=1 \ use_system_libpng=1 \ use_system_libusb=1 \ use_system_libwebp=1 \ use_system_libxml=1 \ use_system_libxslt=1 \ use_system_nspr=1 \ use_system_protobuf=0 \ use_system_re2=1 \ use_system_snappy=1 \ use_system_speex=1 \ use_system_xdg_utils=1 \ - use_system_yasm=1 + use_system_yasm=1 \ + v8_use_external_startup_data=0 # allow removal of third_party/adobe GYP_DEFINES+= flapper_version_h_file='${WRKSRC}/flapper_version.h' # 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. GYP_DEFINES+= google_api_key=AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8 \ google_default_client_id=996322985003.apps.googleusercontent.com \ google_default_client_secret=IR1za9-1VK0zZ0f_O8MVFicn SUB_FILES= chromium-browser.desktop chrome SUB_LIST+= COMMENT="${COMMENT}" OPTIONS_DEFINE= CODECS GCONF PULSEAUDIO TEST KERBEROS DEBUG CODECS_DESC= Compile and enable patented codecs like H.264 OPTIONS_DEFAULT= CODECS GCONF KERBEROS GCONF_USE= GNOME=gconf2 PULSEAUDIO_LIB_DEPENDS= libpulse.so:${PORTSDIR}/audio/pulseaudio TEST_DISTFILES= ${PORTNAME}-${DISTVERSION}-testdata${EXTRACT_SUFX} .include .if ${PORT_OPTIONS:MCODECS} GYP_DEFINES+= ffmpeg_branding=Chrome GYP_DEFINES+= proprietary_codecs=1 .else GYP_DEFINES+= ffmpeg_branding=Chromium GYP_DEFINES+= proprietary_codecs=0 .endif .if ${PORT_OPTIONS:MGCONF} GYP_DEFINES+= use_gconf=1 .else GYP_DEFINES+= use_gconf=0 .endif .if ${PORT_OPTIONS:MPULSEAUDIO} GYP_DEFINES+= use_pulseaudio=1 .else GYP_DEFINES+= use_pulseaudio=0 .endif .if ! ${MACHINE_CPU:Msse2} GYP_DEFINES+= disable_sse2=1 .endif .if !exists(/usr/libdata/pkgconfig/libusb-1.0.pc) EXTRA_PATCHES+= ${FILESDIR}/extra-patch-libusb-pc .endif # pointed out by "Tomek" on freebsd-chromium@ .if !exists(/usr/lib/libexecinfo.so) CFLAGS+= -fno-omit-frame-pointer EXTRA_PATCHES+= ${FILESDIR}/extra-patch-fixup-ffmpeg .endif .if ${PORT_OPTIONS:MTEST} .include "Makefile.tests" ALL_TARGET+= ${TEST_TARGETS} .endif DEBUG_MAKE_ENV= V=1 .if ${PORT_OPTIONS:MDEBUG} BROKEN= Produces empty binary BUILDTYPE= Debug .else BUILDTYPE= Release .endif CONFIGURE_ENV+= CC="${CC}" \ CXX="${CXX}" \ GYP_GENERATORS=ninja \ GYP_DEFINES="${GYP_DEFINES}" MAKE_ENV+= BUILDTYPE=${BUILDTYPE} \ GPERF="${LOCALBASE}/bin/gperf" MAKE_ARGS= -C out/${BUILDTYPE} .include .if ${CHOSEN_COMPILER_TYPE} == gcc GYP_DEFINES+= gcc_version=${CXX:S/g++//} EXTRA_PATCHES+= ${FILESDIR}/extra-patch-gcc CFLAGS+= -fno-stack-protector # gcc 4.8 cannot find __stack_chk_fail_local .else GYP_DEFINES+= clang=1 CFLAGS+= -Wno-unknown-warning-option EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clang CONFIGURE_ENV+= AR=/usr/bin/ar .endif .if ! ${PORT_OPTIONS:MKERBEROS} GYP_DEFINES+= use_kerberos=0 .endif # according to portlint the below is passed via bsd.port.mk, # but 'make -V CONFIGURE_ENV' does not show it: CONFIGURE_ENV+= CFLAGS="${CFLAGS}" \ CPPFLAGS="${CPPFLAGS}" \ CXXFLAGS="${CXXFLAGS}" \ LDFLAGS="${LDFLAGS}" pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build Chromium, you should have around 2 GB of memory" .if ${PORT_OPTIONS:MDEBUG} @${ECHO_MSG} "and lots of free diskspace (~ 8.5GB)." .else @${ECHO_MSG} "and a fair amount of free diskspace (~ 3.7GB)." .endif @${ECHO_MSG} @${ECHO_MSG} "Make sure you have Python build with the SEM option ON" @${ECHO_MSG} "(default in python27-2.7.8 since r361735)" post-patch: @${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|" \ ${WRKSRC}/crypto/crypto.gyp \ ${WRKSRC}/v8/tools/gyp/v8.gyp \ ${WRKSRC}/v8/build/toolchain.gypi @${REINPLACE_CMD} -e "s|/usr/local|${PREFIX}|" \ ${WRKSRC}/chrome/common/chrome_paths.cc \ ${WRKSRC}/base/base.gyp pre-configure: # phajdan-jr: list of things *not* to remove, so maybe the script # should be called "keep_bundled_libraries.py" cd ${WRKSRC} && ${PYTHON_CMD} \ ./build/linux/unbundle/remove_bundled_libraries.py \ 'base/third_party/dmg_fp' \ 'base/third_party/dynamic_annotations' \ 'base/third_party/icu' \ 'base/third_party/nspr' \ 'base/third_party/superfasthash' \ 'base/third_party/symbolize' \ 'base/third_party/valgrind' \ 'base/third_party/xdg_mime' \ 'base/third_party/xdg_user_dirs' \ 'breakpad/src/third_party/curl' \ 'chrome/third_party/mock4js' \ 'chrome/third_party/mozilla_security_manager' \ 'courgette/third_party' \ 'crypto/third_party/nss' \ 'net/third_party/mozilla_security_manager' \ 'net/third_party/nss' \ 'third_party/WebKit' \ + 'third_party/analytics' \ 'third_party/angle' \ 'third_party/angle/src/third_party' \ 'third_party/blanketjs' \ 'third_party/brotli' \ 'third_party/boringssl' \ 'third_party/cacheinvalidation' \ 'third_party/cld' \ 'third_party/cros_system_api' \ 'third_party/dom_distiller_js' \ 'third_party/dom_distiller_js/package/proto_gen/third_party/dom_distiller_js' \ 'third_party/ffmpeg' \ 'third_party/gardiner_mod' \ 'third_party/fips181' \ 'third_party/flot' \ 'third_party/google_input_tools' \ 'third_party/google_input_tools/third_party/closure_library' \ 'third_party/google_input_tools/third_party/closure_library/third_party/closure' \ 'third_party/hunspell' \ 'third_party/iccjpeg' \ 'third_party/icu/icu.isolate' \ 'third_party/jinja2' \ 'third_party/jstemplate' \ 'third_party/khronos' \ 'third_party/leveldatabase' \ 'third_party/libaddressinput' \ 'third_party/libjingle' \ 'third_party/libphonenumber' \ 'third_party/libsrtp' \ 'third_party/libvpx' \ 'third_party/libvpx/source/libvpx/third_party/x86inc' \ - 'third_party/libwebm' \ 'third_party/libxml/chromium' \ 'third_party/libXNVCtrl' \ 'third_party/libyuv' \ 'third_party/lss' \ 'third_party/lzma_sdk' \ 'third_party/markupsafe' \ 'third_party/mesa' \ + 'third_party/mojo' \ 'third_party/modp_b64' \ 'third_party/mt19937ar' \ 'third_party/npapi' \ 'third_party/openmax_dl' \ 'third_party/opus' \ 'third_party/ots' \ 'third_party/pdfium' \ 'third_party/pdfium/third_party' \ 'third_party/ply' \ 'third_party/polymer' \ 'third_party/protobuf' \ 'third_party/pywebsocket' \ 'third_party/qcms' \ 'third_party/qunit' \ 'third_party/readability' \ 'third_party/sfntly' \ 'third_party/sinonjs' \ 'third_party/skia' \ 'third_party/smhasher' \ 'third_party/sqlite' \ 'third_party/tcmalloc' \ 'third_party/tlslite' \ 'third_party/trace-viewer' \ 'third_party/trace-viewer/third_party' \ 'third_party/trace-viewer/third_party/tvcm/third_party' \ 'third_party/undoview' \ 'third_party/usrsctp' \ + 'third_party/web-animations-js' \ 'third_party/webdriver' \ 'third_party/webrtc' \ 'third_party/widevine' \ 'third_party/x86inc' \ 'third_party/yasm' \ 'third_party/zlib' \ 'url/third_party/mozilla' \ 'v8/src/third_party/valgrind' \ 'v8/src/third_party/fdlibm' \ --do-remove || ${FALSE} cd ${WRKSRC} && ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gyp_files.py \ ${GYP_DEFINES:C/^/-D/} || ${FALSE} # allow removal of third_party/adobe ${ECHO_CMD} > ${WRKSRC}/flapper_version.h do-configure: cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/gyp_chromium chrome/chrome.gyp --depth . test regression-test: build .for t in ${TEST_TARGETS} cd ${WRKSRC}/out/${BUILDTYPE} && ${SETENV} LC_ALL=en_US.UTF-8 \ ./${t} --gtest_filter=-${EXCLUDE_${t}:ts:} || ${TRUE} .endfor do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_MAN} ${WRKSRC}/out/${BUILDTYPE}/chrome.1 ${STAGEDIR}${MANPREFIX}/man/man1 .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_SCRIPT} ${WRKSRC}/chrome/tools/build/linux/chrome-wrapper \ ${STAGEDIR}${DATADIR} .for p in chrome_100_percent content_resources keyboard_resources resources ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${p}.pak \ ${STAGEDIR}${DATADIR} .endfor ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chrome \ ${STAGEDIR}${DATADIR} ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libffmpegsumo.so \ - ${STAGEDIR}${DATADIR} - ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libpdf.so \ ${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_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/mksnapshot \ ${STAGEDIR}${DATADIR}/mksnapshot .include Index: head/www/chromium/distinfo =================================================================== --- head/www/chromium/distinfo (revision 384823) +++ head/www/chromium/distinfo (revision 384824) @@ -1,4 +1,4 @@ -SHA256 (chromium-40.0.2214.115.tar.xz) = 2261b96dba5747b52512e2391956c54f4e36b9bbaa310b16c7fb0f1e4efba6a5 -SIZE (chromium-40.0.2214.115.tar.xz) = 284973228 -SHA256 (chromium-40.0.2214.115-testdata.tar.xz) = 862a2d2b1afeb7b458f39b65ef1fd4062415dbb7f948d5f463ec31a845369300 -SIZE (chromium-40.0.2214.115-testdata.tar.xz) = 115348788 +SHA256 (chromium-42.0.2311.90.tar.xz) = 60b0eb38c1c3d0cc998dae70b7333e53b715cff2847c1652e03d1723300db4c9 +SIZE (chromium-42.0.2311.90.tar.xz) = 306502344 +SHA256 (chromium-42.0.2311.90-testdata.tar.xz) = 79bb822e879862bee121ea3b8e42e06623790552bc63689beecce680fc018163 +SIZE (chromium-42.0.2311.90-testdata.tar.xz) = 115728192 Index: head/www/chromium/files/patch-build__linux__unbundle__openssl.gyp =================================================================== --- head/www/chromium/files/patch-build__linux__unbundle__openssl.gyp (revision 384823) +++ head/www/chromium/files/patch-build__linux__unbundle__openssl.gyp (nonexistent) @@ -1,21 +0,0 @@ ---- build/linux/unbundle/openssl.gyp.orig 2014-10-10 08:54:09 UTC -+++ build/linux/unbundle/openssl.gyp -@@ -9,15 +9,15 @@ - 'type': 'none', - 'direct_dependent_settings': { - 'cflags': [ -- ' $out_dir/$1 Property changes on: head/www/chromium/files/patch-third_party__libvpx__unpack_lib_posix.sh ___________________________________________________________________ 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: head/www/chromium/files/patch-breakpad__breakpad.gyp =================================================================== --- head/www/chromium/files/patch-breakpad__breakpad.gyp (revision 384823) +++ head/www/chromium/files/patch-breakpad__breakpad.gyp (nonexistent) @@ -1,11 +0,0 @@ ---- breakpad/breakpad.gyp.orig 2014-10-10 09:15:29 UTC -+++ breakpad/breakpad.gyp -@@ -353,7 +353,7 @@ - }, - ], - }], -- [ 'OS=="linux" or OS=="android" or OS=="freebsd"', { -+ [ 'OS=="linux" or OS=="android" or os_bsd==1', { - 'conditions': [ - ['OS=="android"', { - 'defines': [ Property changes on: head/www/chromium/files/patch-breakpad__breakpad.gyp ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -LF \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/www/chromium/files/patch-components__omaha_query_params__omaha_query_params.cc =================================================================== --- head/www/chromium/files/patch-components__omaha_query_params__omaha_query_params.cc (revision 384823) +++ head/www/chromium/files/patch-components__omaha_query_params__omaha_query_params.cc (nonexistent) @@ -1,11 +0,0 @@ ---- components/omaha_query_params/omaha_query_params.cc.orig 2014-10-10 08:54:14 UTC -+++ components/omaha_query_params/omaha_query_params.cc -@@ -31,6 +31,8 @@ - "linux"; - #elif defined(OS_OPENBSD) - "openbsd"; -+#elif defined(OS_FREEBSD) -+ "freebsd"; - #else - #error "unknown os" - #endif Property changes on: head/www/chromium/files/patch-components__omaha_query_params__omaha_query_params.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: head/www/chromium/files/patch-third_party__pdfium__third_party__logging.h =================================================================== --- head/www/chromium/files/patch-third_party__pdfium__third_party__logging.h (revision 384823) +++ head/www/chromium/files/patch-third_party__pdfium__third_party__logging.h (nonexistent) @@ -1,11 +0,0 @@ ---- third_party/pdfium/third_party/logging.h.orig 2014-10-10 09:15:55 UTC -+++ third_party/pdfium/third_party/logging.h -@@ -10,7 +10,7 @@ - #define CHECK(condition) \ - if (!(condition)) { \ - abort(); \ -- *(reinterpret_cast(NULL) + 42) = 0x42; \ -+ *(reinterpret_cast(__null) + 42) = 0x42; \ - } - - #define NOTREACHED() abort() Property changes on: head/www/chromium/files/patch-third_party__pdfium__third_party__logging.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: head/www/chromium/files/patch-v8__src__preparser.h =================================================================== --- head/www/chromium/files/patch-v8__src__preparser.h (revision 384823) +++ head/www/chromium/files/patch-v8__src__preparser.h (nonexistent) @@ -1,11 +0,0 @@ ---- v8/src/preparser.h.orig 2014-10-10 09:16:50 UTC -+++ v8/src/preparser.h -@@ -450,7 +450,7 @@ - void ReportMessageAt(Scanner::Location location, const char* message, - bool is_reference_error = false) { - Traits::ReportMessageAt(location, message, -- reinterpret_cast(NULL), -+ reinterpret_cast(__null), - is_reference_error); - } - Property changes on: head/www/chromium/files/patch-v8__src__preparser.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -LF \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/www/chromium/files/patch-chrome__renderer__printing__print_web_view_helper.h =================================================================== --- head/www/chromium/files/patch-chrome__renderer__printing__print_web_view_helper.h (revision 384823) +++ head/www/chromium/files/patch-chrome__renderer__printing__print_web_view_helper.h (nonexistent) @@ -1,11 +0,0 @@ ---- chrome/renderer/printing/print_web_view_helper.h.orig 2014-10-10 09:15:30 UTC -+++ chrome/renderer/printing/print_web_view_helper.h -@@ -211,7 +211,7 @@ - void FinishFramePrinting(); - - // Prints the page listed in |params|. --#if defined(OS_LINUX) || defined(OS_ANDROID) -+#if defined(OS_POSIX) && !defined(OS_MACOSX) - void PrintPageInternal(const PrintMsg_PrintPage_Params& params, - blink::WebFrame* frame, - PdfMetafileSkia* metafile); Property changes on: head/www/chromium/files/patch-chrome__renderer__printing__print_web_view_helper.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: head/www/chromium/files/patch-content__browser__tracing__tracing_ui.cc =================================================================== --- head/www/chromium/files/patch-content__browser__tracing__tracing_ui.cc (revision 384823) +++ head/www/chromium/files/patch-content__browser__tracing__tracing_ui.cc (nonexistent) @@ -1,11 +0,0 @@ ---- content/browser/tracing/tracing_ui.cc.orig 2014-10-10 08:54:14 UTC -+++ content/browser/tracing/tracing_ui.cc -@@ -330,6 +330,8 @@ - const char product[] = "Chrome_Android"; - #elif defined(OS_CHROMEOS) - const char product[] = "Chrome_ChromeOS"; -+#elif defined(OS_BSD) -+ const char product[] = "Chrome_BSD"; - #else - #error Platform not supported. - #endif Property changes on: head/www/chromium/files/patch-content__browser__tracing__tracing_ui.cc ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -LF \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/www/chromium/files/extra-patch-clang =================================================================== --- head/www/chromium/files/extra-patch-clang (revision 384823) +++ head/www/chromium/files/extra-patch-clang (revision 384824) @@ -1,289 +1,266 @@ ---- base/allocator/allocator_extension.cc 2013-07-03 23:39:54.000000000 -0400 -+++ base/allocator/allocator_extension.cc 2013-07-19 00:39:26.000000000 -0400 +--- base/allocator/allocator_extension.cc 2015-04-15 00:18:47.000000000 +0200 ++++ base/allocator/allocator_extension.cc 2015-04-18 21:44:25.000000000 +0200 @@ -35,20 +35,20 @@ void SetGetAllocatorWasteSizeFunction( thunks::GetAllocatorWasteSizeFunction get_allocator_waste_size_function) { DCHECK_EQ(thunks::GetGetAllocatorWasteSizeFunction(), - reinterpret_cast(NULL)); + static_cast(NULL)); thunks::SetGetAllocatorWasteSizeFunction(get_allocator_waste_size_function); } void SetGetStatsFunction(thunks::GetStatsFunction get_stats_function) { DCHECK_EQ(thunks::GetGetStatsFunction(), - reinterpret_cast(NULL)); + static_cast(NULL)); thunks::SetGetStatsFunction(get_stats_function); } void SetReleaseFreeMemoryFunction( thunks::ReleaseFreeMemoryFunction release_free_memory_function) { DCHECK_EQ(thunks::GetReleaseFreeMemoryFunction(), - reinterpret_cast(NULL)); + static_cast(NULL)); thunks::SetReleaseFreeMemoryFunction(release_free_memory_function); } ---- base/profiler/alternate_timer.cc 2013-07-03 23:39:54.000000000 -0400 -+++ base/profiler/alternate_timer.cc 2013-07-19 00:41:06.000000000 -0400 -@@ -21,7 +21,7 @@ - // Set an alternate timer function to replace the OS time function when - // profiling. - void SetAlternateTimeSource(NowFunction* now_function, TimeSourceType type) { -- DCHECK_EQ(reinterpret_cast(NULL), g_time_function); -+ DCHECK_EQ(static_cast(NULL), g_time_function); - g_time_function = now_function; - g_time_source_type = type; - } ---- base/threading/thread_local_storage_unittest.cc.orig 2013-08-30 23:06:21.000000000 +0300 -+++ base/threading/thread_local_storage_unittest.cc 2013-08-30 23:06:50.000000000 +0300 +--- base/strings/safe_sprintf_unittest.cc 2015-04-15 00:18:48.000000000 +0200 ++++ base/strings/safe_sprintf_unittest.cc 2015-04-18 22:08:45.000000000 +0200 +@@ -729,12 +729,14 @@ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wconversion-null" + #endif ++/* Avoid compiler error: http://pastebin.com/1edWUE84 + EXPECT_EQ(1, SafeSPrintf(buf, "%d", NULL)); + EXPECT_EQ("0", std::string(buf)); + EXPECT_EQ(3, SafeSPrintf(buf, "%p", NULL)); + EXPECT_EQ("0x0", std::string(buf)); + EXPECT_EQ(6, SafeSPrintf(buf, "%s", NULL)); + EXPECT_EQ("", std::string(buf)); ++*/ + #if defined(__GCC__) + #pragma GCC diagnostic pop + #endif +--- base/threading/thread_local_storage_unittest.cc 2015-04-15 00:18:48.000000000 +0200 ++++ base/threading/thread_local_storage_unittest.cc 2015-04-18 21:45:40.000000000 +0200 @@ -60,7 +60,7 @@ void ThreadLocalStorageCleanup(void *value) { int *ptr = reinterpret_cast(value); // Destructors should never be called with a NULL. - ASSERT_NE(reinterpret_cast(NULL), ptr); + ASSERT_NE(static_cast(NULL), ptr); if (*ptr == kFinalTlsValue) return; // We've been called enough times. ASSERT_LT(kFinalTlsValue, *ptr); ---- base/tracked_objects.cc 2013-07-03 23:39:54.000000000 -0400 -+++ base/tracked_objects.cc 2013-07-19 00:42:10.000000000 -0400 -@@ -378,7 +378,7 @@ +--- base/tracked_objects.cc 2015-04-15 00:31:20.000000000 +0200 ++++ base/tracked_objects.cc 2015-04-18 21:57:33.000000000 +0200 +@@ -393,7 +393,7 @@ } // We must NOT do any allocations during this callback. // Using the simple linked lists avoids all allocations. - DCHECK_EQ(this->next_retired_worker_, reinterpret_cast(NULL)); + DCHECK_EQ(this->next_retired_worker_, static_cast(NULL)); this->next_retired_worker_ = first_retired_worker_; first_retired_worker_ = this; } ---- base/tracked_objects_unittest.cc.orig 2013-08-30 23:09:01.000000000 +0300 -+++ base/tracked_objects_unittest.cc 2013-08-30 23:10:14.000000000 +0300 -@@ -53,9 +53,9 @@ +--- base/tracked_objects_unittest.cc 2015-04-15 00:31:20.000000000 +0200 ++++ base/tracked_objects_unittest.cc 2015-04-18 22:01:28.000000000 +0200 +@@ -58,9 +58,9 @@ Births* birth = ThreadData::TallyABirthIfActive(location); - + if (ThreadData::status() == ThreadData::DEACTIVATED) - EXPECT_EQ(reinterpret_cast(NULL), birth); + EXPECT_EQ(static_cast(NULL), birth); else - EXPECT_NE(reinterpret_cast(NULL), birth); + EXPECT_NE(static_cast(NULL), birth); } - + // Helper function to verify the most common test expectations. -@@ -234,7 +234,7 @@ - return; - +@@ -271,7 +271,7 @@ + } + scoped_ptr data(new DeathData()); - ASSERT_NE(data, reinterpret_cast(NULL)); + ASSERT_NE(data, static_cast(NULL)); EXPECT_EQ(data->run_duration_sum(), 0); EXPECT_EQ(data->run_duration_sample(), 0); EXPECT_EQ(data->queue_duration_sum(), 0); -@@ -435,7 +435,7 @@ +@@ -489,7 +489,7 @@ Location location(kFunction, kFile, kLineNumber, NULL); // Do not delete |birth|. We don't own it. Births* birth = ThreadData::TallyABirthIfActive(location); - EXPECT_NE(reinterpret_cast(NULL), birth); + EXPECT_NE(static_cast(NULL), birth); - - const TrackedTime kTimePosted = TrackedTime() + Duration::FromMilliseconds(1); - const TrackedTime kStartOfRun = TrackedTime() + ---- chrome/browser/sync/glue/synced_session_tracker.cc 2013-07-03 23:46:07.000000000 -0400 -+++ chrome/browser/sync/glue/synced_session_tracker.cc 2013-07-19 01:50:13.000000000 -0400 + + const unsigned int kTimePosted = 1; + const unsigned int kStartOfRun = 5; +--- chrome/browser/sync/glue/synced_session_tracker.cc 2015-04-15 00:18:50.000000000 +0200 ++++ chrome/browser/sync/glue/synced_session_tracker.cc 2015-04-18 22:02:15.000000000 +0200 @@ -260,7 +260,7 @@ } DCHECK(window_ptr); DCHECK_EQ(window_ptr->window_id.id(), window_id); -- DCHECK_EQ(reinterpret_cast(NULL), -+ DCHECK_EQ(static_cast(NULL), +- DCHECK_EQ(reinterpret_cast(NULL), ++ DCHECK_EQ(static_cast(NULL), GetSession(session_tag)->windows[window_id]); GetSession(session_tag)->windows[window_id] = window_ptr; } ---- media/audio/audio_output_proxy_unittest.cc.orig 2013-08-30 23:23:03.000000000 +0300 -+++ media/audio/audio_output_proxy_unittest.cc 2013-08-30 23:23:54.000000000 +0300 -@@ -392,7 +392,7 @@ +--- content/browser/frame_host/render_widget_host_view_guest.cc 2015-04-15 00:31:22.000000000 +0200 ++++ content/browser/frame_host/render_widget_host_view_guest.cc 2015-04-18 22:10:28.000000000 +0200 +@@ -241,11 +241,11 @@ + + gfx::NativeViewId RenderWidgetHostViewGuest::GetNativeViewId() const { + if (!guest_) +- return static_cast(NULL); ++ return reinterpret_cast(NULL); + + RenderWidgetHostView* rwhv = guest_->GetOwnerRenderWidgetHostView(); + if (!rwhv) +- return static_cast(NULL); ++ return reinterpret_cast(NULL); + return rwhv->GetNativeViewId(); + } + +--- media/audio/audio_output_proxy_unittest.cc 2015-04-15 00:18:55.000000000 +0200 ++++ media/audio/audio_output_proxy_unittest.cc 2015-04-18 22:02:38.000000000 +0200 +@@ -387,7 +387,7 @@ // |stream| is closed at this point. Start() should reopen it again. EXPECT_CALL(manager(), MakeAudioOutputStream(_, _)) .Times(2) - .WillRepeatedly(Return(reinterpret_cast(NULL))); + .WillRepeatedly(Return(static_cast(NULL))); - + EXPECT_CALL(callback_, OnError(_)) .Times(2); ---- media/filters/decrypting_video_decoder_unittest.cc.orig 2014-09-04 02:04:17.000000000 +0200 -+++ media/filters/decrypting_video_decoder_unittest.cc 2014-09-08 20:51:21.000000000 +0200 +--- media/filters/decrypting_video_decoder_unittest.cc 2015-04-15 00:31:22.000000000 +0200 ++++ media/filters/decrypting_video_decoder_unittest.cc 2015-04-18 22:03:40.000000000 +0200 @@ -420,7 +420,7 @@ // NULL callback to cancel the |decryptor_ready_cb|. EXPECT_CALL(*this, RequestDecryptorNotification(IsNullCallback())).WillOnce( ResetAndRunCallback(&decryptor_ready_cb, - reinterpret_cast(NULL), + static_cast(NULL), base::Bind(&DecryptingVideoDecoderTest::DecryptorSet, base::Unretained(this)))); EXPECT_CALL(*this, DecryptorSet(_)).Times(0); ---- third_party/hunspell/src/hunspell/affentry.hxx 2013-07-03 23:52:32.000000000 -0400 -+++ third_party/hunspell/src/hunspell/affentry.hxx 2013-07-19 01:31:57.000000000 -0400 +--- third_party/hunspell/src/hunspell/affentry.hxx 2015-04-15 00:31:35.000000000 +0200 ++++ third_party/hunspell/src/hunspell/affentry.hxx 2015-04-18 22:04:39.000000000 +0200 @@ -27,7 +27,7 @@ struct hentry * checkword(const char * word, int len, char in_compound, const FLAG needflag = FLAG_NULL); - struct hentry * check_twosfx(const char * word, int len, char in_compound, const FLAG needflag = NULL); + struct hentry * check_twosfx(const char * word, int len, char in_compound, const FLAG needflag = 0); char * check_morph(const char * word, int len, char in_compound, const FLAG needflag = FLAG_NULL); @@ -90,7 +90,7 @@ // const FLAG cclass = FLAG_NULL, const FLAG needflag = FLAG_NULL, char in_compound=IN_CPD_NOT); const FLAG cclass = FLAG_NULL, const FLAG needflag = FLAG_NULL, const FLAG badflag = 0); - struct hentry * check_twosfx(const char * word, int len, int optflags, PfxEntry* ppfx, const FLAG needflag = NULL); + struct hentry * check_twosfx(const char * word, int len, int optflags, PfxEntry* ppfx, const FLAG needflag = 0); char * check_twosfx_morph(const char * word, int len, int optflags, PfxEntry* ppfx, const FLAG needflag = FLAG_NULL); ---- third_party/sfntly/cpp/src/sfntly/table/core/cmap_table.cc 2013-07-03 23:54:15.000000000 -0400 -+++ third_party/sfntly/cpp/src/sfntly/table/core/cmap_table.cc 2013-07-19 00:44:09.000000000 -0400 +--- third_party/sfntly/cpp/src/sfntly/table/core/cmap_table.cc 2015-04-15 00:31:48.000000000 +0200 ++++ third_party/sfntly/cpp/src/sfntly/table/core/cmap_table.cc 2015-04-18 22:05:41.000000000 +0200 @@ -439,7 +439,7 @@ } CMapTable::CMapFormat0::Builder::Builder(const CMapId& cmap_id) - : CMap::Builder(reinterpret_cast(NULL), + : CMap::Builder(static_cast(NULL), CMapFormat::kFormat0, cmap_id) { } @@ -563,7 +563,7 @@ : CMapTable::CMap::Builder(data ? down_cast( data->Slice(offset, data->ReadUShort( offset + Offset::kFormat0Length))) - : reinterpret_cast(NULL), + : static_cast(NULL), CMapFormat::kFormat2, cmap_id) { // TODO(arthurhsu): FIXIT: heavy lifting and leak, need fix. } @@ -574,7 +574,7 @@ : CMapTable::CMap::Builder(data ? down_cast( data->Slice(offset, data->ReadUShort( offset + Offset::kFormat0Length))) - : reinterpret_cast(NULL), + : static_cast(NULL), CMapFormat::kFormat2, cmap_id) { // TODO(arthurhsu): FIXIT: heavy lifting and leak, need fix. } @@ -958,7 +958,7 @@ CMapTable::CMapFormat4::Builder::Builder(SegmentList* segments, IntegerList* glyph_id_array, const CMapId& cmap_id) - : CMap::Builder(reinterpret_cast(NULL), + : CMap::Builder(static_cast(NULL), CMapFormat::kFormat4, cmap_id), segments_(segments->begin(), segments->end()), glyph_id_array_(glyph_id_array->begin(), glyph_id_array->end()) { @@ -966,7 +966,7 @@ } CMapTable::CMapFormat4::Builder::Builder(const CMapId& cmap_id) - : CMap::Builder(reinterpret_cast(NULL), + : CMap::Builder(static_cast(NULL), CMapFormat::kFormat4, cmap_id) { } - ---- v8/src/runtime/runtime-i18n.cc.orig 2015-01-25 15:08:31.732972197 +0100 -+++ v8/src/runtime/runtime-i18n.cc 2015-01-25 15:09:04.260951597 +0100 -@@ -626,7 +626,7 @@ - local_object->SetInternalField(0, reinterpret_cast(break_iterator)); - // Make sure that the pointer to adopted text is NULL. -- local_object->SetInternalField(1, reinterpret_cast(NULL)); -+ local_object->SetInternalField(1, static_cast(NULL)); - - Factory* factory = isolate->factory(); - Handle key = factory->NewStringFromStaticChars("breakIterator"); ---- base/strings/safe_sprintf_unittest.cc.orig 2013-11-08 07:42:08.000000000 +0100 -+++ base/strings/safe_sprintf_unittest.cc 2013-11-15 15:04:45.000000000 +0100 -@@ -721,12 +721,14 @@ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wconversion-null" - #endif -+/* Avoid compiler error: http://pastebin.com/1edWUE84 - EXPECT_EQ(1, SafeSPrintf(buf, "%d", NULL)); - EXPECT_EQ("0", std::string(buf)); - EXPECT_EQ(3, SafeSPrintf(buf, "%p", NULL)); - EXPECT_EQ("0x0", std::string(buf)); - EXPECT_EQ(6, SafeSPrintf(buf, "%s", NULL)); - EXPECT_EQ("", std::string(buf)); -+*/ - #if defined(__GCC__) - #pragma GCC diagnostic pop - #endif ---- content/browser/frame_host/render_widget_host_view_guest.cc.orig 2014-03-05 22:24:07.000000000 +0100 -+++ content/browser/frame_host/render_widget_host_view_guest.cc 2014-03-09 20:01:20.000000000 +0100 -@@ -258,11 +258,11 @@ - - gfx::NativeViewId RenderWidgetHostViewGuest::GetNativeViewId() const { - if (!guest_) -- return static_cast(NULL); -+ return reinterpret_cast(NULL); - - RenderWidgetHostView* rwhv = guest_->GetEmbedderRenderWidgetHostView(); - if (!rwhv) -- return static_cast(NULL); -+ return reinterpret_cast(NULL); - return rwhv->GetNativeViewId(); - } - -- ---- ./third_party/webrtc/base/taskrunner.cc.orig 2014-08-20 21:04:28.000000000 +0200 -+++ ./third_party/webrtc/base/taskrunner.cc 2014-08-22 18:55:46.000000000 +0200 +--- third_party/webrtc/base/taskrunner.cc 2015-04-15 00:32:17.000000000 +0200 ++++ third_party/webrtc/base/taskrunner.cc 2015-04-18 22:10:53.000000000 +0200 @@ -102,7 +102,7 @@ std::vector::iterator it; it = std::remove(tasks_.begin(), tasks_.end(), - reinterpret_cast(NULL)); + static_cast(NULL)); tasks_.erase(it, tasks_.end()); ---- v8/src/unique.h.orig 2014-10-10 11:16:50.000000000 +0200 -+++ v8/src/unique.h 2014-10-13 18:55:35.000000000 +0200 -@@ -110,7 +110,7 @@ +--- third_party/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc 2015-04-15 00:32:17.000000000 +0200 ++++ third_party/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc 2015-04-18 22:13:27.000000000 +0200 +@@ -1754,7 +1754,7 @@ - // TODO(titzer): this is a hack to migrate to Unique incrementally. - static Unique CreateUninitialized(Handle handle) { -- return Unique(reinterpret_cast
(NULL), handle); -+ return Unique(static_cast
(NULL), handle); - } - - static Unique CreateImmovable(Handle handle) { ---- third_party/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc.orig 2015-01-25 14:52:44 UTC -+++ third_party/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc -@@ -2072,7 +2072,7 @@ - const AudioEncoder* AudioCodingImpl::GetSenderInfo() const { FATAL() << "Not implemented yet."; - return reinterpret_cast(NULL); + return static_cast(NULL); } const CodecInst* AudioCodingImpl::GetSenderCodecInst() { -@@ -2091,7 +2091,7 @@ +@@ -1773,7 +1773,7 @@ const ReceiverInfo* AudioCodingImpl::GetReceiverInfo() const { FATAL() << "Not implemented yet."; - return reinterpret_cast(NULL); + return static_cast(NULL); } bool AudioCodingImpl::RegisterReceiveCodec(AudioDecoder* receive_codec) { ---- v8/src/debug.cc.orig 2015-01-25 14:39:37 UTC -+++ v8/src/debug.cc -@@ -565,7 +565,7 @@ +--- v8/src/debug.cc 2015-04-15 00:32:36.000000000 +0200 ++++ v8/src/debug.cc 2015-04-18 22:14:03.000000000 +0200 +@@ -573,7 +573,7 @@ thread_local_.step_out_fp_ = 0; // TODO(isolates): frames_are_dropped_? base::NoBarrier_Store(&thread_local_.current_debug_scope_, -- static_cast(NULL)); -+ reinterpret_cast(NULL)); +- static_cast(0)); ++ reinterpret_cast(0)); thread_local_.restarter_frame_function_pointer_ = NULL; } +--- v8/src/runtime/runtime-i18n.cc 2015-04-15 00:32:37.000000000 +0200 ++++ v8/src/runtime/runtime-i18n.cc 2015-04-18 22:06:17.000000000 +0200 +@@ -627,7 +627,7 @@ + + local_object->SetInternalField(0, reinterpret_cast(break_iterator)); + // Make sure that the pointer to adopted text is NULL. +- local_object->SetInternalField(1, reinterpret_cast(NULL)); ++ local_object->SetInternalField(1, static_cast(NULL)); + + Factory* factory = isolate->factory(); + Handle key = factory->NewStringFromStaticChars("breakIterator"); Index: head/www/chromium/files/patch-base__process__launch.cc =================================================================== --- head/www/chromium/files/patch-base__process__launch.cc (revision 384823) +++ head/www/chromium/files/patch-base__process__launch.cc (revision 384824) @@ -1,15 +1,15 @@ ---- base/process/launch.cc.orig 2014-10-10 08:54:09 UTC -+++ base/process/launch.cc +--- base/process/launch.cc.orig 2015-04-18 22:25:46.000000000 +0200 ++++ base/process/launch.cc 2015-04-18 22:26:32.000000000 +0200 @@ -24,10 +24,10 @@ fds_to_remap(NULL), maximize_rlimits(NULL), new_process_group(false) -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_FREEBSD) , clone_flags(0) , allow_new_privs(false) -#endif // OS_LINUX +#endif // OS_LINUX || OS_FREEBSD - #if defined(OS_CHROMEOS) - , ctrl_terminal_fd(-1) - #endif // OS_CHROMEOS + #if defined(OS_POSIX) + , pre_exec_delegate(NULL) + #endif // OS_POSIX Index: head/www/chromium/files/patch-base__process__launch.h =================================================================== --- head/www/chromium/files/patch-base__process__launch.h (revision 384823) +++ head/www/chromium/files/patch-base__process__launch.h (revision 384824) @@ -1,19 +1,20 @@ ---- base/process/launch.h.orig 2014-10-10 08:54:09 UTC -+++ base/process/launch.h -@@ -113,14 +113,14 @@ +--- base/process/launch.h.orig 2015-04-18 22:29:06.000000000 +0200 ++++ base/process/launch.h 2015-04-18 22:30:09.000000000 +0200 +@@ -131,7 +131,7 @@ // will be the same as its pid. bool new_process_group; -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_FREEBSD) // If non-zero, start the process using clone(), using flags as provided. - int clone_flags; - + // Unlike in clone, clone_flags may not contain a custom termination signal + // that is sent to the parent when the child dies. The termination signal will +@@ -141,7 +141,7 @@ // By default, child processes will have the PR_SET_NO_NEW_PRIVS bit set. If // true, then this bit will not be set in the new child process. bool allow_new_privs; -#endif // defined(OS_LINUX) +#endif // defined(OS_LINUX) || defined(OS_FREEBSD) - #if defined(OS_CHROMEOS) - // If non-negative, the specified file descriptor will be set as the launched + #if defined(OS_POSIX) + // If not empty, change to this directory before execing the new process. Index: head/www/chromium/files/patch-build__common.gypi =================================================================== --- head/www/chromium/files/patch-build__common.gypi (revision 384823) +++ head/www/chromium/files/patch-build__common.gypi (revision 384824) @@ -1,63 +1,63 @@ ---- build/common.gypi.orig 2014-10-10 09:15:29 UTC -+++ build/common.gypi -@@ -91,7 +91,7 @@ +--- build/common.gypi.orig 2015-04-18 22:35:23.000000000 +0200 ++++ build/common.gypi 2015-04-18 22:42:51.000000000 +0200 +@@ -94,7 +94,7 @@ 'conditions': [ # ChromeOS and Windows use Aura and Ash. - ['chromeos==1 or OS=="win" or OS=="linux"', { + ['chromeos==1 or OS=="win" or OS=="linux" or OS=="freebsd"', { 'use_ash%': 1, 'use_aura%': 1, }], -@@ -702,7 +702,7 @@ +@@ -694,7 +694,7 @@ }], # DBus usage. - ['OS=="linux" and embedded==0', { + ['(OS=="linux" or OS=="freebsd") and embedded==0', { 'use_dbus%': 1, }, { 'use_dbus%': 0, -@@ -952,7 +952,7 @@ +@@ -944,7 +944,7 @@ }, { 'use_openmax_dl_fft%': 0, }], - ['OS=="win" or OS=="linux"', { + ['OS=="win" or OS=="linux" or OS=="freebsd"', { 'enable_mdns%' : 1, }], -@@ -975,7 +975,7 @@ - # except when building Android WebView or Chromecast. +@@ -968,7 +968,7 @@ + # except when building Android WebView. # TODO(jshin): Handle 'use_system_icu' on Linux (Chromium). # Set the data reduction proxy origin for Android Webview. -- ['android_webview_build==0 and android_webview_telemetry_build==0 and chromecast==0', { -+ ['android_webview_build==0 and OS!="freebsd" and OS!="openbsd" and android_webview_telemetry_build==0 and chromecast==0', { +- ['android_webview_build==0', { ++ ['android_webview_build==0 and OS!="freebsd" and OS!="openbsd"', { 'icu_use_data_file_flag%' : 1, - 'spdy_proxy_auth_origin%': '', - 'data_reduction_proxy_probe_url%': '', -@@ -1228,6 +1228,10 @@ + }, { + 'icu_use_data_file_flag%' : 0, +@@ -1216,6 +1216,10 @@ # able to turn it off for various reasons. 'linux_disable_pie%': 0, + # XXX(rene) More options, keep them? + 'os_ver%': 0, -+ 'use_system_libjpeg%': 0, ++ 'use_system_libjpeg%': 0, + # The release channel that this build targets. This is used to restrict # channel-specific build options, like which installer packages to create. # The default is 'all', which does no channel-specific filtering. -@@ -4391,6 +4395,13 @@ +@@ -4479,6 +4483,13 @@ 'ldflags': [ '-Wl,--no-keep-memory', ], + 'ldflags!': [ + '-ldl', -+ '-pie', ++ '-pie' + ], + 'libraries!': [ + '-ldl', + ], }, }], # Android-specific options; note that most are set above with Linux. Index: head/www/chromium/files/patch-cc__layers__layer_impl.cc =================================================================== --- head/www/chromium/files/patch-cc__layers__layer_impl.cc (revision 384823) +++ head/www/chromium/files/patch-cc__layers__layer_impl.cc (revision 384824) @@ -1,32 +1,22 @@ ---- cc/layers/layer_impl.cc.orig 2015-01-20 21:28:14 UTC -+++ cc/layers/layer_impl.cc -@@ -1239,21 +1239,23 @@ - scale_factor * scaled_scroll_bounds.height()); +--- cc/layers/layer_impl.cc.orig 2015-04-18 22:47:03.000000000 +0200 ++++ cc/layers/layer_impl.cc 2015-04-18 22:52:19.000000000 +0200 +@@ -1230,13 +1230,15 @@ + gfx::ToFlooredSize(gfx::ScaleSize(BoundsForScrolling(), scale_factor)); scaled_scroll_bounds = gfx::ToFlooredSize(scaled_scroll_bounds); - gfx::ScrollOffset max_offset( + // (rene) prevent name collision with /usr/include/vm/vm_map.h on FreeBSD + // which also defines max_offset + gfx::ScrollOffset _max_offset( scaled_scroll_bounds.width() - scroll_clip_layer_->bounds().width(), scaled_scroll_bounds.height() - scroll_clip_layer_->bounds().height()); // We need the final scroll offset to be in CSS coords. - max_offset.Scale(1 / scale_factor); - max_offset.SetToMax(gfx::ScrollOffset()); - return max_offset; + _max_offset.Scale(1 / scale_factor); + _max_offset.SetToMax(gfx::ScrollOffset()); + return _max_offset; } - gfx::Vector2dF LayerImpl::ClampScrollToMaxScrollOffset() { -- gfx::ScrollOffset max_offset = MaxScrollOffset(); -+ gfx::ScrollOffset _max_offset = MaxScrollOffset(); - gfx::ScrollOffset old_offset = TotalScrollOffset(); - gfx::ScrollOffset clamped_offset = old_offset; - -- clamped_offset.SetToMin(max_offset); -+ clamped_offset.SetToMin(_max_offset); - clamped_offset.SetToMax(gfx::ScrollOffset()); - gfx::Vector2dF delta = clamped_offset.DeltaFrom(old_offset); - if (!delta.IsZero()) + gfx::ScrollOffset LayerImpl::ClampScrollOffsetToLimits( Index: head/www/chromium/files/patch-chrome__browser__chrome_content_browser_client.cc =================================================================== --- head/www/chromium/files/patch-chrome__browser__chrome_content_browser_client.cc (revision 384823) +++ head/www/chromium/files/patch-chrome__browser__chrome_content_browser_client.cc (revision 384824) @@ -1,56 +1,47 @@ ---- chrome/browser/chrome_content_browser_client.cc.orig 2014-10-10 09:15:30 UTC -+++ chrome/browser/chrome_content_browser_client.cc -@@ -434,7 +434,7 @@ +--- chrome/browser/chrome_content_browser_client.cc.orig 2015-04-18 22:54:06.000000000 +0200 ++++ chrome/browser/chrome_content_browser_client.cc 2015-04-18 22:58:13.000000000 +0200 +@@ -446,7 +446,7 @@ return false; } -#if defined(OS_POSIX) && !defined(OS_ANDROID) && !defined(OS_MACOSX) +#if defined(OS_POSIX) && !defined(OS_ANDROID) && !defined(OS_MACOSX) && !defined(OS_BSD) breakpad::CrashHandlerHostLinux* CreateCrashHandlerHost( const std::string& process_type) { base::FilePath dumps_path; -@@ -491,7 +491,7 @@ +@@ -503,7 +503,7 @@ return -1; } -#endif // defined(OS_POSIX) && !defined(OS_ANDROID) && !defined(OS_MACOSX) +#endif // defined(OS_POSIX) && !defined(OS_ANDROID) && !defined(OS_MACOSX) && !defined(OS_BSD) #if !defined(OS_CHROMEOS) GURL GetEffectiveURLForSignin(const GURL& url) { -@@ -1194,7 +1194,7 @@ - - void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( - CommandLine* command_line, int child_process_id) { --#if defined(OS_POSIX) -+#if defined(OS_POSIX) && !defined(OS_BSD) +@@ -1295,7 +1295,7 @@ + command_line->AppendSwitchASCII(switches::kMetricsClientID, + client_info->client_id); + } +-#elif defined(OS_POSIX) ++#elif defined(OS_POSIX) && !defined(OS_BSD) if (breakpad::IsCrashReporterEnabled()) { scoped_ptr client_info = GoogleUpdateSettings::LoadMetricsClientInfo(); -@@ -1202,7 +1202,7 @@ - client_info ? client_info->client_id - : std::string()); +@@ -2409,7 +2409,7 @@ } --#endif // defined(OS_POSIX) -+#endif // defined(OS_POSIX) && !defined(OS_BSD) - - if (logging::DialogsAreSuppressed()) - command_line->AppendSwitch(switches::kNoErrorDialogs); -@@ -2408,7 +2408,7 @@ - } } -#if defined(OS_POSIX) && !defined(OS_MACOSX) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD) void ChromeContentBrowserClient::GetAdditionalMappedFilesForChildProcess( - const CommandLine& command_line, + const base::CommandLine& command_line, int child_process_id, -@@ -2474,7 +2474,7 @@ +@@ -2494,7 +2494,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) const wchar_t* ChromeContentBrowserClient::GetResourceDllName() { Index: head/www/chromium/files/patch-chrome__browser__download__download_shelf_context_menu.cc =================================================================== --- head/www/chromium/files/patch-chrome__browser__download__download_shelf_context_menu.cc (revision 384823) +++ head/www/chromium/files/patch-chrome__browser__download__download_shelf_context_menu.cc (revision 384824) @@ -1,46 +1,37 @@ ---- chrome/browser/download/download_shelf_context_menu.cc.orig 2015-01-24 21:45:08 UTC -+++ chrome/browser/download/download_shelf_context_menu.cc +--- chrome/browser/download/download_shelf_context_menu.cc.orig 2015-04-18 23:29:54.000000000 +0200 ++++ chrome/browser/download/download_shelf_context_menu.cc 2015-04-18 23:31:51.000000000 +0200 @@ -122,7 +122,7 @@ return download_item_->GetOpenWhenComplete() || download_crx_util::IsExtensionDownload(*download_item_); case ALWAYS_OPEN_TYPE: -#if defined(OS_WIN) || defined(OS_LINUX) || \ +#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD) || \ (defined(OS_MACOSX) && !defined(OS_IOS)) if (CanOpenPdfInSystemViewer()) { DownloadPrefs* prefs = DownloadPrefs::FromBrowserContext( @@ -162,7 +162,7 @@ bool is_checked = IsCommandIdChecked(ALWAYS_OPEN_TYPE); DownloadPrefs* prefs = DownloadPrefs::FromBrowserContext( download_item_->GetBrowserContext()); -#if defined(OS_WIN) || defined(OS_LINUX) || \ +#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_BSD) || \ (defined(OS_MACOSX) && !defined(OS_IOS)) if (CanOpenPdfInSystemViewer()) { prefs->SetShouldOpenPdfInSystemReader(!is_checked); -@@ -390,14 +390,14 @@ - #if defined(OS_WIN) - if (CanOpenPdfInSystemViewer()) - return IDS_DOWNLOAD_MENU_ALWAYS_OPEN_PDF_IN_READER; +@@ -392,14 +392,14 @@ + return IsAdobeReaderDefaultPDFViewer() + ? IDS_DOWNLOAD_MENU_ALWAYS_OPEN_PDF_IN_READER + : IDS_DOWNLOAD_MENU_PLATFORM_OPEN_ALWAYS; -#elif defined(OS_MACOSX) || defined(OS_LINUX) +#elif defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) if (CanOpenPdfInSystemViewer()) return IDS_DOWNLOAD_MENU_PLATFORM_OPEN_ALWAYS; #endif return IDS_DOWNLOAD_MENU_ALWAYS_OPEN_TYPE; } -#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) +#if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) bool DownloadShelfContextMenu::IsDownloadPdf() const { base::FilePath path = download_item_->GetTargetFilePath(); return path.MatchesExtension(FILE_PATH_LITERAL(".pdf")); -@@ -409,7 +409,7 @@ - return IsDownloadPdf() && - (IsAdobeReaderDefaultPDFViewer() ? is_adobe_pdf_reader_up_to_date_ : - true); --#elif defined(OS_MACOSX) || defined(OS_LINUX) -+#elif defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) - return IsDownloadPdf(); - #endif - } Index: head/www/chromium/files/patch-chrome__browser__ssl__ssl_blocking_page.cc =================================================================== --- head/www/chromium/files/patch-chrome__browser__ssl__ssl_blocking_page.cc (revision 384823) +++ head/www/chromium/files/patch-chrome__browser__ssl__ssl_blocking_page.cc (revision 384824) @@ -1,20 +1,11 @@ ---- chrome/browser/ssl/ssl_blocking_page.cc.orig 2015-01-21 20:28:15 UTC -+++ chrome/browser/ssl/ssl_blocking_page.cc -@@ -237,7 +237,7 @@ - #elif defined(OS_IOS) +--- chrome/browser/ssl/ssl_blocking_page.cc.orig 2015-04-18 23:34:15.000000000 +0200 ++++ chrome/browser/ssl/ssl_blocking_page.cc 2015-04-18 23:40:51.000000000 +0200 +@@ -132,7 +132,7 @@ // iOS does not have a way to launch the date and time settings. NOTREACHED(); + -#elif defined(OS_LINUX) +#elif defined(OS_LINUX) || defined(OS_BSD) struct ClockCommand { const char* pathname; const char* argument; -@@ -289,7 +289,7 @@ - #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) - base::LaunchOptions options; - options.wait = false; --#if defined(OS_LINUX) -+#if defined(OS_LINUX) || defined(OS_BSD) - options.allow_new_privs = true; - #endif - base::LaunchProcess(command, options, NULL); Index: head/www/chromium/files/patch-chrome__browser__tracing__crash_service_uploader.cc =================================================================== --- head/www/chromium/files/patch-chrome__browser__tracing__crash_service_uploader.cc (nonexistent) +++ head/www/chromium/files/patch-chrome__browser__tracing__crash_service_uploader.cc (revision 384824) @@ -0,0 +1,11 @@ +--- chrome/browser/tracing/crash_service_uploader.cc.orig 2015-04-20 19:15:53.000000000 +0200 ++++ chrome/browser/tracing/crash_service_uploader.cc 2015-04-20 19:16:21.000000000 +0200 +@@ -127,6 +127,8 @@ + 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 Property changes on: head/www/chromium/files/patch-chrome__browser__tracing__crash_service_uploader.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-chrome__browser__ui__views__frame__browser_frame.cc =================================================================== --- head/www/chromium/files/patch-chrome__browser__ui__views__frame__browser_frame.cc (revision 384823) +++ head/www/chromium/files/patch-chrome__browser__ui__views__frame__browser_frame.cc (revision 384824) @@ -1,20 +1,20 @@ ---- chrome/browser/ui/views/frame/browser_frame.cc.orig 2014-10-10 08:54:11 UTC -+++ chrome/browser/ui/views/frame/browser_frame.cc -@@ -36,7 +36,7 @@ - #include "ui/views/controls/menu/menu_runner.h" - #include "ui/views/widget/native_widget.h" - --#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) || defined(OS_BSD) - #include "chrome/browser/shell_integration_linux.h" +--- chrome/browser/ui/views/frame/browser_frame.cc.orig 2015-04-18 23:43:03.000000000 +0200 ++++ chrome/browser/ui/views/frame/browser_frame.cc 2015-04-18 23:46:33.000000000 +0200 +@@ -33,7 +33,7 @@ + #include "ash/shell.h" #endif -@@ -110,7 +110,7 @@ +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_BSD) + #include "chrome/browser/ui/views/frame/browser_command_handler_linux.h" #endif + +@@ -82,7 +82,7 @@ + non_client_view()->set_context_menu_controller(this); } --#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) || defined(OS_BSD) - // Set up a custom WM_CLASS for some sorts of window types. This allows - // task switchers in X11 environments to distinguish between main browser - // windows and e.g app windows. +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_BSD) + browser_command_handler_.reset(new BrowserCommandHandlerLinux(browser_view_)); + #endif + } Index: head/www/chromium/files/patch-chrome__browser__ui__views__frame__opaque_browser_frame_view.cc =================================================================== --- head/www/chromium/files/patch-chrome__browser__ui__views__frame__opaque_browser_frame_view.cc (revision 384823) +++ head/www/chromium/files/patch-chrome__browser__ui__views__frame__opaque_browser_frame_view.cc (revision 384824) @@ -1,47 +1,38 @@ ---- chrome/browser/ui/views/frame/opaque_browser_frame_view.cc.orig 2014-10-10 09:15:30 UTC -+++ chrome/browser/ui/views/frame/opaque_browser_frame_view.cc -@@ -52,7 +52,7 @@ - #include "ui/views/window/frame_background.h" - #include "ui/views/window/window_shape.h" +--- chrome/browser/ui/views/frame/opaque_browser_frame_view.cc.orig 2015-04-18 23:48:58.000000000 +0200 ++++ chrome/browser/ui/views/frame/opaque_browser_frame_view.cc 2015-04-18 23:53:50.000000000 +0200 +@@ -54,7 +54,7 @@ + #include "chrome/browser/ui/views/profiles/supervised_user_avatar_label.h" + #endif -#if defined(OS_LINUX) +#if defined(OS_LINUX) || defined(OS_BSD) #include "ui/views/controls/menu/menu_runner.h" #endif -@@ -77,7 +77,7 @@ +@@ -79,7 +79,7 @@ // The icon never shrinks below 16 px on a side. const int kIconMinimumSize = 16; -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) || defined(OS_BSD) // The number of pixels to move the frame background image upwards when using // the GTK+ theme and the titlebar is condensed. const int kGTKThemeCondensedFrameTopInset = 15; -@@ -318,7 +318,7 @@ +@@ -341,7 +341,7 @@ void OpaqueBrowserFrameView::OnMenuButtonClicked(views::View* source, const gfx::Point& point) { -#if defined(OS_LINUX) -+#if defined(OS_LINUX) || defined(OS_BSD) ++#if defined(OS_LINUX) || defined(OS_BSD) views::MenuRunner menu_runner(frame()->GetSystemMenuModel(), views::MenuRunner::HAS_MNEMONICS); ignore_result(menu_runner.RunMenuAt(browser_view()->GetWidget(), -@@ -571,7 +571,7 @@ - } - - bool OpaqueBrowserFrameView::ShouldShowWindowTitleBar() const { --#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) || defined(OS_BSD) - // Do not show the custom title bar if the system title bar option is enabled. - if (!frame()->UseCustomFrame()) - return false; -@@ -616,7 +616,7 @@ +@@ -637,7 +637,7 @@ frame_background_->set_theme_image(GetFrameImage()); frame_background_->set_theme_overlay_image(GetFrameOverlayImage()); frame_background_->set_top_area_height(GetTopAreaHeight()); -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) || defined(OS_BSD) // The window manager typically shows a gradient in the native title bar (when // the system title bar pref is set, or when maximized on Ubuntu). Hide the // gradient in the tab strip (by shifting it up vertically) to avoid a Index: head/www/chromium/files/patch-chrome__browser__ui__webui__about_ui.cc =================================================================== --- head/www/chromium/files/patch-chrome__browser__ui__webui__about_ui.cc (revision 384823) +++ head/www/chromium/files/patch-chrome__browser__ui__webui__about_ui.cc (revision 384824) @@ -1,36 +1,54 @@ ---- chrome/browser/ui/webui/about_ui.cc.orig 2014-10-10 09:15:30 UTC -+++ chrome/browser/ui/webui/about_ui.cc -@@ -761,7 +761,7 @@ - return data; +--- chrome/browser/ui/webui/about_ui.cc.orig 2015-04-18 23:56:37.000000000 +0200 ++++ chrome/browser/ui/webui/about_ui.cc 2015-04-20 19:06:22.000000000 +0200 +@@ -64,7 +64,7 @@ + #include "chrome/browser/ui/webui/theme_source.h" + #endif + +-#if defined(OS_LINUX) || defined(OS_OPENBSD) ++#if defined(OS_LINUX) || defined(OS_BSD) + #include "content/public/browser/zygote_host_linux.h" + #include "content/public/common/sandbox_linux.h" + #endif +@@ -659,7 +659,7 @@ + } } -#if defined(OS_LINUX) || defined(OS_OPENBSD) +#if defined(OS_LINUX) || defined(OS_BSD) std::string AboutLinuxProxyConfig() { std::string data; AppendHeader(&data, 0, -@@ -777,6 +777,7 @@ +@@ -675,6 +675,7 @@ return data; } +#if !defined(OS_BSD) - void AboutSandboxRow(std::string* data, const std::string& prefix, int name_id, - bool good) { + void AboutSandboxRow(std::string* data, int name_id, bool good) { data->append(""); -@@ -847,6 +848,7 @@ + data->append(l10n_util::GetStringUTF8(name_id)); +@@ -742,6 +743,7 @@ return data; } #endif +#endif // AboutMemoryHandler ---------------------------------------------------------- -@@ -1019,7 +1021,7 @@ +@@ -914,7 +916,7 @@ } else if (source_name_ == chrome::kChromeUIDNSHost) { AboutDnsHandler::Start(profile(), callback); return; -#if defined(OS_LINUX) || defined(OS_OPENBSD) +#if defined(OS_LINUX) || defined(OS_BSD) } else if (source_name_ == chrome::kChromeUILinuxProxyConfigHost) { response = AboutLinuxProxyConfig(); + #endif +@@ -928,7 +930,7 @@ + ChromeOSCreditsHandler::Start(path, callback); + return; + #endif +-#if defined(OS_LINUX) || defined(OS_OPENBSD) ++#if (defined(OS_LINUX) || defined(OS_BSD)) && !defined(OS_FREEBSD) + } else if (source_name_ == chrome::kChromeUISandboxHost) { + response = AboutSandbox(); #endif Index: head/www/chromium/files/patch-chrome__browser__ui__webui__chrome_web_ui_controller_factory.cc =================================================================== --- head/www/chromium/files/patch-chrome__browser__ui__webui__chrome_web_ui_controller_factory.cc (revision 384823) +++ head/www/chromium/files/patch-chrome__browser__ui__webui__chrome_web_ui_controller_factory.cc (revision 384824) @@ -1,11 +1,11 @@ ---- chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc.orig 2015-01-21 20:28:16 UTC -+++ chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc -@@ -511,7 +511,7 @@ +--- chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc.orig 2015-04-19 00:04:55.000000000 +0200 ++++ chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc 2015-04-19 00:05:15.000000000 +0200 +@@ -249,7 +249,7 @@ #if !defined(OS_ANDROID) - || url.host() == chrome::kChromeUITermsHost + || url.host() == chrome::kChromeUITermsHost #endif -#if defined(OS_LINUX) || defined(OS_OPENBSD) +#if defined(OS_LINUX) || defined(OS_BSD) - || url.host() == chrome::kChromeUILinuxProxyConfigHost - || url.host() == chrome::kChromeUISandboxHost + || url.host() == chrome::kChromeUILinuxProxyConfigHost + || url.host() == chrome::kChromeUISandboxHost #endif Index: head/www/chromium/files/patch-chrome__browser__ui__webui__options__browser_options_handler.cc =================================================================== --- head/www/chromium/files/patch-chrome__browser__ui__webui__options__browser_options_handler.cc (revision 384823) +++ head/www/chromium/files/patch-chrome__browser__ui__webui__options__browser_options_handler.cc (revision 384824) @@ -1,38 +1,45 @@ ---- chrome/browser/ui/webui/options/browser_options_handler.cc.orig 2015-01-21 20:28:16 UTC -+++ chrome/browser/ui/webui/options/browser_options_handler.cc -@@ -359,7 +359,7 @@ - { "toolbarShowHomeButton", IDS_OPTIONS_TOOLBAR_SHOW_HOME_BUTTON }, - { "translateEnableTranslate", - IDS_OPTIONS_TRANSLATE_ENABLE_TRANSLATE }, +--- chrome/browser/ui/webui/options/browser_options_handler.cc.orig 2015-04-19 00:13:56.000000000 +0200 ++++ chrome/browser/ui/webui/options/browser_options_handler.cc 2015-04-19 00:14:26.000000000 +0200 +@@ -470,13 +470,13 @@ + { "syncButtonTextStart", IDS_SYNC_SETUP_BUTTON_LABEL }, + #endif // defined(OS_CHROMEOS) + -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#if defined(OS_POSIX) && !defined(OS_CHROMEOS) { "showWindowDecorations", IDS_SHOW_WINDOW_DECORATIONS }, { "themesNativeButton", IDS_THEMES_GTK_BUTTON }, { "themesSetClassic", IDS_THEMES_SET_CLASSIC }, -@@ -692,7 +692,7 @@ + #else + { "themes", IDS_THEMES_GROUP_NAME }, +-#endif // defined(OS_LINUX) && !defined(OS_CHROMEOS) ++#endif // defined(OS_POSIX) && !defined(OS_CHROMEOS) + + #if defined(OS_CHROMEOS) && defined(USE_ASH) + { "setWallpaper", IDS_SET_WALLPAPER_BUTTON }, +@@ -718,7 +718,7 @@ "requestProfilesInfo", base::Bind(&BrowserOptionsHandler::HandleRequestProfilesInfo, base::Unretained(this))); -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#if defined(OS_POSIX) && !defined(OS_CHROMEOS) web_ui()->RegisterMessageCallback( "themesSetNative", base::Bind(&BrowserOptionsHandler::ThemesSetNative, -@@ -1342,7 +1342,7 @@ +@@ -1384,7 +1384,7 @@ ThemeService* theme_service = ThemeServiceFactory::GetForProfile(profile); bool is_system_theme = false; -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#if defined(OS_POSIX) && !defined(OS_CHROMEOS) bool profile_is_supervised = profile->IsSupervised(); is_system_theme = theme_service->UsingSystemTheme(); base::FundamentalValue native_theme_enabled(!is_system_theme && -@@ -1364,7 +1364,7 @@ +@@ -1406,7 +1406,7 @@ ThemeServiceFactory::GetForProfile(profile)->UseDefaultTheme(); } -#if defined(OS_LINUX) && !defined(OS_CHROMEOS) +#if defined(OS_POSIX) && !defined(OS_CHROMEOS) void BrowserOptionsHandler::ThemesSetNative(const base::ListValue* args) { content::RecordAction(UserMetricsAction("Options_GtkThemeSet")); Profile* profile = Profile::FromWebUI(web_ui()); Index: head/www/chromium/files/patch-chrome__chrome_exe.gypi =================================================================== --- head/www/chromium/files/patch-chrome__chrome_exe.gypi (nonexistent) +++ head/www/chromium/files/patch-chrome__chrome_exe.gypi (revision 384824) @@ -0,0 +1,11 @@ +--- chrome/chrome_exe.gypi.orig 2015-04-20 20:19:42.000000000 +0200 ++++ chrome/chrome_exe.gypi 2015-04-20 20:21:17.000000000 +0200 +@@ -190,7 +190,7 @@ + '../build/linux/system.gyp:xext', + ], + }], +- ['OS=="linux" and enable_plugins==1', { ++ ['(OS=="linux" or os_bsd==1) and enable_plugins==1', { + 'dependencies': [ + '../pdf/pdf.gyp:pdf', + ], Property changes on: head/www/chromium/files/patch-chrome__chrome_exe.gypi ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-chrome__renderer__pepper__pepper_flash_font_file_host.cc =================================================================== --- head/www/chromium/files/patch-chrome__renderer__pepper__pepper_flash_font_file_host.cc (revision 384823) +++ head/www/chromium/files/patch-chrome__renderer__pepper__pepper_flash_font_file_host.cc (revision 384824) @@ -1,46 +1,46 @@ ---- chrome/renderer/pepper/pepper_flash_font_file_host.cc.orig 2014-10-10 08:54:12 UTC -+++ chrome/renderer/pepper/pepper_flash_font_file_host.cc +--- chrome/renderer/pepper/pepper_flash_font_file_host.cc.orig 2015-04-19 00:16:05.000000000 +0200 ++++ chrome/renderer/pepper/pepper_flash_font_file_host.cc 2015-04-19 00:17:03.000000000 +0200 @@ -13,7 +13,7 @@ #include "ppapi/proxy/ppapi_messages.h" #include "ppapi/proxy/serialized_structs.h" -#if defined(OS_LINUX) || defined(OS_OPENBSD) +#if defined(OS_LINUX) || defined(OS_BSD) #include "content/public/common/child_process_sandbox_support_linux.h" #endif -@@ -25,14 +25,14 @@ +@@ -24,14 +24,14 @@ + const ppapi::proxy::SerializedFontDescription& description, PP_PrivateFontCharset charset) - : ResourceHost(host->GetPpapiHost(), instance, resource), - renderer_ppapi_host_(host) { + : ResourceHost(host->GetPpapiHost(), instance, resource) { -#if defined(OS_LINUX) || defined(OS_OPENBSD) +#if defined(OS_LINUX) || defined(OS_BSD) fd_.reset(content::MatchFontWithFallback( description.face.c_str(), description.weight >= PP_BROWSERFONT_TRUSTED_WEIGHT_BOLD, description.italic, charset, PP_BROWSERFONT_TRUSTED_FAMILY_DEFAULT)); -#endif // defined(OS_LINUX) || defined(OS_OPENBSD) +#endif // defined(OS_LINUX) || defined(OS_BSD) } PepperFlashFontFileHost::~PepperFlashFontFileHost() {} -@@ -52,7 +52,7 @@ +@@ -51,7 +51,7 @@ uint32_t table) { std::string contents; int32_t result = PP_ERROR_FAILED; -#if defined(OS_LINUX) || defined(OS_OPENBSD) +#if defined(OS_LINUX) || defined(OS_BSD) int fd = fd_.get(); if (fd != -1) { size_t length = 0; -@@ -68,7 +68,7 @@ +@@ -67,7 +67,7 @@ } } } -#endif // defined(OS_LINUX) || defined(OS_OPENBSD) +#endif // defined(OS_LINUX) || defined(OS_BSD) context->reply_msg = PpapiPluginMsg_FlashFontFile_GetFontTableReply(contents); return result; Index: head/www/chromium/files/patch-components__printing__renderer__print_web_view_helper.h =================================================================== --- head/www/chromium/files/patch-components__printing__renderer__print_web_view_helper.h (nonexistent) +++ head/www/chromium/files/patch-components__printing__renderer__print_web_view_helper.h (revision 384824) @@ -0,0 +1,11 @@ +--- components/printing/renderer/print_web_view_helper.h.orig 2015-04-20 18:54:28.000000000 +0200 ++++ components/printing/renderer/print_web_view_helper.h 2015-04-20 18:55:05.000000000 +0200 +@@ -246,7 +246,7 @@ + void FinishFramePrinting(); + + // Prints the page listed in |params|. +-#if defined(OS_LINUX) || defined(OS_ANDROID) ++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) + void PrintPageInternal(const PrintMsg_PrintPage_Params& params, + blink::WebFrame* frame, + PdfMetafileSkia* metafile); Property changes on: head/www/chromium/files/patch-components__printing__renderer__print_web_view_helper.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-components__storage_monitor__storage_monitor_freebsd.cc =================================================================== --- head/www/chromium/files/patch-components__storage_monitor__storage_monitor_freebsd.cc (revision 384823) +++ head/www/chromium/files/patch-components__storage_monitor__storage_monitor_freebsd.cc (revision 384824) @@ -1,105 +1,105 @@ ---- components/storage_monitor/storage_monitor_freebsd.cc.orig 2014-10-13 17:11:08 UTC -+++ components/storage_monitor/storage_monitor_freebsd.cc +--- components/storage_monitor/storage_monitor_freebsd.cc.orig 1970-01-01 01:00:00.000000000 +0100 ++++ components/storage_monitor/storage_monitor_freebsd.cc 2015-04-19 19:38:05.000000000 +0200 @@ -0,0 +1,102 @@ +// Copyright 2014 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. + +// StorageMonitorFreeBSD implementation. + +#include "components/storage_monitor/storage_monitor_freebsd.h" + +#include + +#include + +#include "base/basictypes.h" +#include "base/bind.h" +#include "base/metrics/histogram.h" +#include "base/process/kill.h" +#include "base/process/launch.h" +#include "base/stl_util.h" +#include "base/strings/string_number_conversions.h" +#include "base/strings/string_util.h" +#include "base/strings/utf_string_conversions.h" +#include "components/storage_monitor/media_storage_util.h" +#include "components/storage_monitor/removable_device_constants.h" +#include "components/storage_monitor/storage_info.h" + +using content::BrowserThread; + +namespace storage_monitor { + +namespace { + +// udev device property constants. +const char kBlockSubsystemKey[] = "block"; +const char kDiskDeviceTypeKey[] = "disk"; +const char kFsUUID[] = "ID_FS_UUID"; +const char kLabel[] = "ID_FS_LABEL"; +const char kModel[] = "ID_MODEL"; +const char kModelID[] = "ID_MODEL_ID"; +const char kRemovableSysAttr[] = "removable"; +const char kSerialShort[] = "ID_SERIAL_SHORT"; +const char kSizeSysAttr[] = "size"; +const char kVendor[] = "ID_VENDOR"; +const char kVendorID[] = "ID_VENDOR_ID"; + +StorageMonitor::EjectStatus EjectPathOnFileThread( + const base::FilePath& path, + const base::FilePath& device) { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); + + static const char kUmountBinary[] = "/sbin/umount"; + std::vector command; + command.push_back(kUmountBinary); + command.push_back(path.value()); + + base::LaunchOptions options; -+ base::ProcessHandle handle; -+ if (!base::LaunchProcess(command, options, &handle)) ++ base::Process process = base::LaunchProcess(command, options); ++ if (!process.IsValid()) + return StorageMonitor::EJECT_FAILURE; + + int exit_code = -1; -+ if (!base::WaitForExitCodeWithTimeout(handle, &exit_code, -+ base::TimeDelta::FromMilliseconds(3000))) { -+ base::KillProcess(handle, -1, false); -+ base::EnsureProcessTerminated(handle); ++ if (!process.WaitForExitWithTimeout(base::TimeDelta::FromMilliseconds(3000), ++ &exit_code)) { ++ base::KillProcess(process.Handle(), -1, false); ++ base::EnsureProcessTerminated(process.Pass()); + return StorageMonitor::EJECT_FAILURE; + } + + // TODO(gbillock): Make sure this is found in documentation + // somewhere. Experimentally it seems to hold that exit code + // 1 means device is in use. + if (exit_code == 1) + return StorageMonitor::EJECT_IN_USE; + if (exit_code != 0) + return StorageMonitor::EJECT_FAILURE; + + return StorageMonitor::EJECT_OK; +} + +} // namespace + +StorageMonitorFreeBSD::StorageMonitorFreeBSD() { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); +} + +StorageMonitorFreeBSD::~StorageMonitorFreeBSD() { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); +} + +void StorageMonitorFreeBSD::Init() { +} + +bool StorageMonitorFreeBSD::GetStorageInfoForPath( + const base::FilePath& path, + StorageInfo* device_info) const { + return false; // TODO +} + +StorageMonitor* StorageMonitor::CreateInternal() { + return new StorageMonitorFreeBSD(); +} + +} // namespace storage_monitor Index: head/www/chromium/files/patch-components__update_client__update_query_params.cc =================================================================== --- head/www/chromium/files/patch-components__update_client__update_query_params.cc (nonexistent) +++ head/www/chromium/files/patch-components__update_client__update_query_params.cc (revision 384824) @@ -0,0 +1,11 @@ +--- components/update_client/update_query_params.cc.orig 2015-04-19 21:26:41.000000000 +0200 ++++ components/update_client/update_query_params.cc 2015-04-19 21:27:50.000000000 +0200 +@@ -31,6 +31,8 @@ + "linux"; + #elif defined(OS_OPENBSD) + "openbsd"; ++#elif defined(OS_FREEBSD) ++ "freebsd"; + #else + #error "unknown os" + #endif Property changes on: head/www/chromium/files/patch-components__update_client__update_query_params.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: head/www/chromium/files/patch-content__app__content_main_runner.cc =================================================================== --- head/www/chromium/files/patch-content__app__content_main_runner.cc (revision 384823) +++ head/www/chromium/files/patch-content__app__content_main_runner.cc (revision 384824) @@ -1,35 +1,36 @@ ---- content/app/content_main_runner.cc.orig 2014-10-10 09:15:31 UTC -+++ content/app/content_main_runner.cc -@@ -95,10 +95,10 @@ +--- content/app/content_main_runner.cc.orig 2015-04-19 00:24:28.000000000 +0200 ++++ content/app/content_main_runner.cc 2015-04-19 00:28:17.000000000 +0200 +@@ -93,11 +93,11 @@ #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/content_descriptors.h" #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" #endif -@@ -291,7 +291,8 @@ +@@ -258,7 +258,8 @@ int (*function)(const MainFunctionParams&); }; -#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && \ + !defined(OS_BSD) // On platforms that use the zygote, we have a special subset of // subprocesses that are launched via the zygote. This function // fills in some process-launching bits around ZygoteMain(). -@@ -421,7 +422,8 @@ +@@ -383,7 +384,8 @@ } } -#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && \ + !defined(OS_BSD) // Zygote startup is special -- see RunZygote comments above // for why we don't use ZygoteMain directly. if (process_type == switches::kZygoteProcess) Index: head/www/chromium/files/patch-content__browser__child_process_launcher.cc =================================================================== --- head/www/chromium/files/patch-content__browser__child_process_launcher.cc (revision 384823) +++ head/www/chromium/files/patch-content__browser__child_process_launcher.cc (revision 384824) @@ -1,134 +1,152 @@ ---- content/browser/child_process_launcher.cc.orig 2015-01-21 20:28:16 UTC -+++ content/browser/child_process_launcher.cc -@@ -69,7 +69,7 @@ - #else - terminate_child_on_shutdown_(true) +--- content/browser/child_process_launcher.cc.orig 2015-04-19 00:30:35.000000000 +0200 ++++ content/browser/child_process_launcher.cc 2015-04-19 00:43:33.000000000 +0200 +@@ -120,7 +120,7 @@ + // Notifies the client about the result of the operation. + // Runs on the UI thread. + void Notify( +-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) ++#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) + bool zygote, #endif + base::Process process); +@@ -131,7 +131,7 @@ + bool background); + + static void TerminateInternal( -#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) - , zygote_(false) + bool zygote, #endif - { -@@ -190,7 +190,7 @@ - bool launch_elevated = delegate->ShouldLaunchElevated(); + base::Process process); +@@ -144,7 +144,7 @@ + #if defined(OS_ANDROID) + // The fd to close after creating the process. + base::ScopedFD ipcfd_; +-#elif defined(OS_POSIX) && !defined(OS_MACOSX) ++#elif defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD) + bool zygote_; + #endif + bool starting_; +@@ -158,7 +158,7 @@ + client_thread_id_(BrowserThread::UI), + termination_status_(base::TERMINATION_STATUS_NORMAL_TERMINATION), + exit_code_(RESULT_CODE_NORMAL_EXIT), +-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) ++#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) + zygote_(false), + #endif + starting_(true), +@@ -238,7 +238,7 @@ + } + + void ChildProcessLauncher::Context::UpdateTerminationStatus(bool known_dead) { +-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) ++#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) + if (zygote_) { + termination_status_ = ZygoteHostImpl::GetInstance()-> + GetTerminationStatus(process_.Handle(), known_dead, &exit_code_); +@@ -312,7 +312,7 @@ + bool launch_elevated = delegate->ShouldLaunchElevated(); #elif defined(OS_ANDROID) - // Uses |ipcfd_| instead of |ipcfd| on Android. + // Uses |ipcfd_| instead of |ipcfd| on Android. -#elif defined(OS_MACOSX) +#elif defined(OS_MACOSX) || defined(OS_BSD) - base::EnvironmentMap env = delegate->GetEnvironment(); - base::ScopedFD ipcfd = delegate->TakeIpcFd(); + base::EnvironmentMap env = delegate->GetEnvironment(); + base::ScopedFD ipcfd = delegate->TakeIpcFd(); #elif defined(OS_POSIX) -@@ -253,7 +253,7 @@ - // We need to close the client end of the IPC channel to reliably detect - // child termination. +@@ -366,7 +366,7 @@ + // We need to close the client end of the IPC channel to reliably detect + // child termination. -#if !defined(OS_MACOSX) +#if !defined(OS_MACOSX) && !defined(OS_BSD) - GetContentClient()->browser()->GetAdditionalMappedFilesForChildProcess( - *cmd_line, child_process_id, files_to_register.get()); - if (use_zygote) { -@@ -261,14 +261,14 @@ - cmd_line->argv(), files_to_register.Pass(), process_type); - } else - // Fall through to the normal posix case below when we're not zygoting. + GetContentClient()->browser()->GetAdditionalMappedFilesForChildProcess( + *cmd_line, child_process_id, files_to_register.get()); + if (use_zygote) { +@@ -375,14 +375,14 @@ + process = base::Process(handle); + } else + // Fall through to the normal posix case below when we're not zygoting. -#endif // !defined(OS_MACOSX) +#endif // !defined(OS_MACOSX) && !defined(OS_BSD) - { - // Convert FD mapping to FileHandleMappingVector - base::FileHandleMappingVector fds_to_map = - files_to_register->GetMappingWithIDAdjustment( - base::GlobalDescriptors::kBaseDescriptor); + { + // Convert FD mapping to FileHandleMappingVector + base::FileHandleMappingVector fds_to_map = + files_to_register->GetMappingWithIDAdjustment( + base::GlobalDescriptors::kBaseDescriptor); -#if !defined(OS_MACOSX) +#if !defined(OS_MACOSX) && !defined(OS_BSD) - if (process_type == switches::kRendererProcess) { - const int sandbox_fd = - RenderSandboxHostLinux::GetInstance()->GetRendererSocket(); -@@ -276,7 +276,7 @@ - sandbox_fd, - GetSandboxFD())); - } + if (process_type == switches::kRendererProcess) { + const int sandbox_fd = + RenderSandboxHostLinux::GetInstance()->GetRendererSocket(); +@@ -390,7 +390,7 @@ + sandbox_fd, + GetSandboxFD())); + } -#endif // defined(OS_MACOSX) +#endif // defined(OS_MACOSX) && !defined(OS_BSD) - // Actually launch the app. - base::LaunchOptions options; -@@ -335,7 +335,7 @@ - base::Bind( - &Context::Notify, - this_object.get(), + // Actually launch the app. + base::LaunchOptions options; +@@ -446,7 +446,7 @@ + client_thread_id, FROM_HERE, + base::Bind(&Context::Notify, + this_object.get(), -#if defined(OS_POSIX) && !defined(OS_MACOSX) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD) - use_zygote, + use_zygote, #endif - base::Passed(base::Process(handle)))); -@@ -343,7 +343,7 @@ - } + base::Passed(&process))); +@@ -454,7 +454,7 @@ + } - void Notify( + void ChildProcessLauncher::Context::Notify( -#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) - bool zygote, + bool zygote, #endif - base::Process process) { -@@ -356,7 +356,7 @@ - if (!process_.IsValid()) - LOG(ERROR) << "Failed to launch child process"; + base::Process process) { +@@ -467,7 +467,7 @@ + if (!process_.IsValid()) + LOG(ERROR) << "Failed to launch child process"; -#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) - zygote_ = zygote; + zygote_ = zygote; #endif - if (client_) { -@@ -383,7 +383,7 @@ - BrowserThread::PROCESS_LAUNCHER, FROM_HERE, - base::Bind( - &Context::TerminateInternal, + if (client_) { +@@ -493,7 +493,7 @@ + BrowserThread::PostTask( + BrowserThread::PROCESS_LAUNCHER, FROM_HERE, + base::Bind(&Context::TerminateInternal, -#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) - zygote_, + zygote_, #endif - base::Passed(&process_))); -@@ -398,7 +398,7 @@ - } + base::Passed(&process_))); +@@ -511,7 +511,7 @@ - static void TerminateInternal( + // static + void ChildProcessLauncher::Context::TerminateInternal( -#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) +#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) - bool zygote, + bool zygote, #endif - base::Process process) { -@@ -412,13 +412,13 @@ - process.Terminate(RESULT_CODE_NORMAL_EXIT); - // On POSIX, we must additionally reap the child. + base::Process process) { +@@ -525,13 +525,13 @@ + process.Terminate(RESULT_CODE_NORMAL_EXIT); + // On POSIX, we must additionally reap the child. #if defined(OS_POSIX) -#if !defined(OS_MACOSX) +#if !defined(OS_MACOSX) && !defined(OS_BSD) - if (zygote) { - // If the renderer was created via a zygote, we have to proxy the reaping - // through the zygote process. - ZygoteHostImpl::GetInstance()->EnsureProcessTerminated(process.Handle()); - } else + if (zygote) { + // If the renderer was created via a zygote, we have to proxy the reaping + // through the zygote process. + ZygoteHostImpl::GetInstance()->EnsureProcessTerminated(process.Handle()); + } else -#endif // !OS_MACOSX +#endif // !OS_MACOSX && !OS_BSD - { - base::EnsureProcessTerminated(process.Handle()); - } -@@ -438,7 +438,7 @@ - #if defined(OS_ANDROID) - // The fd to close after creating the process. - base::ScopedFD ipcfd_; --#elif defined(OS_POSIX) && !defined(OS_MACOSX) -+#elif defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_BSD) - bool zygote_; - #endif - }; -@@ -479,7 +479,7 @@ - *exit_code = context_->exit_code_; - return context_->termination_status_; - } --#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) -+#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && !defined(OS_BSD) - if (context_->zygote_) { - context_->termination_status_ = ZygoteHostImpl::GetInstance()-> - GetTerminationStatus(context_->process_.Handle(), known_dead, + base::EnsureProcessTerminated(process.Pass()); + #endif // OS_POSIX + #endif // defined(OS_ANDROID) Index: head/www/chromium/files/patch-content__common__sandbox_linux__sandbox_debug_handling_linux.cc =================================================================== --- head/www/chromium/files/patch-content__common__sandbox_linux__sandbox_debug_handling_linux.cc (nonexistent) +++ head/www/chromium/files/patch-content__common__sandbox_linux__sandbox_debug_handling_linux.cc (revision 384824) @@ -0,0 +1,29 @@ +--- content/common/sandbox_linux/sandbox_debug_handling_linux.cc.orig 2015-04-19 22:52:03.000000000 +0200 ++++ content/common/sandbox_linux/sandbox_debug_handling_linux.cc 2015-04-19 23:27:21.000000000 +0200 +@@ -6,7 +6,9 @@ + + #include + #include ++#if 0 // no OS_FREEBSD here? + #include ++#endif + #include + + #include "base/command_line.h" +@@ -68,12 +70,16 @@ + return true; + } + ++#if 0 // no OS_FREEBSD here? + if (prctl(PR_SET_DUMPABLE, 0) != 0) { + PLOG(ERROR) << "Failed to set non-dumpable flag"; + return false; + } + + return prctl(PR_GET_DUMPABLE) == 0; ++#else ++ return false; ++#endif + } + + } // namespace content Property changes on: head/www/chromium/files/patch-content__common__sandbox_linux__sandbox_debug_handling_linux.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-content__gpu__gpu_main.cc =================================================================== --- head/www/chromium/files/patch-content__gpu__gpu_main.cc (revision 384823) +++ head/www/chromium/files/patch-content__gpu__gpu_main.cc (revision 384824) @@ -1,54 +1,45 @@ ---- content/gpu/gpu_main.cc.orig 2015-01-21 20:28:16 UTC -+++ content/gpu/gpu_main.cc +--- content/gpu/gpu_main.cc.orig 2015-04-19 00:48:39.000000000 +0200 ++++ content/gpu/gpu_main.cc 2015-04-19 00:51:41.000000000 +0200 @@ -73,7 +73,7 @@ - const CommandLine& command_line); - bool WarmUpSandbox(const CommandLine& command_line); + const base::CommandLine& command_line); + bool WarmUpSandbox(const base::CommandLine& command_line); -#if !defined(OS_MACOSX) +#if !defined(OS_MACOSX) && !defined(OS_FREEBSD) //XXX(rene) added !FreeBSD bool CollectGraphicsInfo(gpu::GPUInfo& gpu_info); #endif @@ -162,13 +162,13 @@ message_loop_type = base::MessageLoop::TYPE_UI; } base::MessageLoop main_message_loop(message_loop_type); -#elif defined(OS_LINUX) && defined(USE_X11) +#elif (defined(OS_BSD) || defined(OS_LINUX)) && defined(USE_X11) // We need a UI loop so that we can grab the Expose events. See GLSurfaceGLX // and https://crbug.com/326995. base::MessageLoop main_message_loop(base::MessageLoop::TYPE_UI); scoped_ptr event_source = ui::PlatformEventSource::CreateDefault(); -#elif defined(OS_LINUX) +#elif defined(OS_LINUX) || defined(OS_BSD) base::MessageLoop main_message_loop(base::MessageLoop::TYPE_DEFAULT); #elif defined(OS_MACOSX) // This is necessary for CoreAnimation layers hosted in the GPU process to be -@@ -216,7 +216,7 @@ - // Temporarily disable DRI3 on desktop Linux. - // The GPU process is crashing on DRI3-enabled desktop Linux systems. - // TODO(jorgelo): remove this when crbug.com/415681 is fixed. --#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+#if (defined(OS_BSD) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) - { - scoped_ptr env(base::Environment::Create()); - env->SetVar("LIBGL_DRI3_DISABLE", "1"); -@@ -279,7 +279,7 @@ +@@ -269,7 +269,7 @@ // and we already registered them through SetGpuInfo() above. base::TimeTicks before_collect_context_graphics_info = base::TimeTicks::Now(); -#if !defined(OS_MACOSX) +#if !defined(OS_MACOSX) && !defined(OS_FREEBSD) //XXX(rene) added !FreeBSD if (!CollectGraphicsInfo(gpu_info)) dead_on_arrival = true; -@@ -412,7 +412,7 @@ +@@ -402,7 +402,7 @@ return true; } -#if !defined(OS_MACOSX) +#if !defined(OS_MACOSX) && !defined(OS_FREEBSD)//XXX(rene) added !FreeBSD bool CollectGraphicsInfo(gpu::GPUInfo& gpu_info) { bool res = true; gpu::CollectInfoResult result = gpu::CollectContextGraphicsInfo(&gpu_info); Index: head/www/chromium/files/patch-device__usb__usb_service_impl.cc =================================================================== --- head/www/chromium/files/patch-device__usb__usb_service_impl.cc (revision 384823) +++ head/www/chromium/files/patch-device__usb__usb_service_impl.cc (revision 384824) @@ -1,14 +1,42 @@ ---- device/usb/usb_service_impl.cc.orig 2014-10-10 09:15:31 UTC -+++ device/usb/usb_service_impl.cc -@@ -14,7 +14,11 @@ - #include "device/usb/usb_context.h" - #include "device/usb/usb_device_impl.h" - #include "device/usb/usb_error.h" -+#if defined(OS_FREEBSD) -+#include "libusb.h" -+#else - #include "third_party/libusb/src/libusb/libusb.h" -+#endif +--- device/usb/usb_service_impl.cc.orig 2015-04-19 21:12:40.000000000 +0200 ++++ device/usb/usb_service_impl.cc 2015-04-19 21:16:15.000000000 +0200 +@@ -113,6 +113,7 @@ + hotplug_enabled_(false), + weak_factory_(this) { + task_runner_ = base::ThreadTaskRunnerHandle::Get(); ++#if !defined(OS_FREEBSD) + int rv = libusb_hotplug_register_callback( + context_->context(), + static_cast(LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED | +@@ -130,12 +131,15 @@ + base::Unretained(ui_thread_helper_))); + #endif // OS_WIN + } ++#endif // !OS_FREEBSD + } - namespace device { + UsbServiceImpl::~UsbServiceImpl() { ++#if !defined(OS_FREEBSD) + if (hotplug_enabled_) { + libusb_hotplug_deregister_callback(context_->context(), hotplug_handle_); + } ++#endif // !OS_FREEBSD + #if defined(OS_WIN) + if (ui_thread_helper_) { + ui_task_runner_->DeleteSoon(FROM_HERE, ui_thread_helper_); +@@ -219,6 +223,7 @@ + } + } ++#if !defined(OS_FREEBSD) + // static + int LIBUSB_CALL UsbServiceImpl::HotplugCallback(libusb_context* context, + PlatformUsbDevice device, +@@ -256,6 +261,7 @@ + + return 0; + } ++#endif // !OS_FREEBSD + + void UsbServiceImpl::OnDeviceAdded(PlatformUsbDevice platform_device) { + DCHECK(CalledOnValidThread()); Index: head/www/chromium/files/patch-device__usb__usb_service_impl.h =================================================================== --- head/www/chromium/files/patch-device__usb__usb_service_impl.h (nonexistent) +++ head/www/chromium/files/patch-device__usb__usb_service_impl.h (revision 384824) @@ -0,0 +1,40 @@ +--- device/usb/usb_service_impl.h.orig 2015-04-19 16:22:47.000000000 +0200 ++++ device/usb/usb_service_impl.h 2015-04-19 21:10:55.000000000 +0200 +@@ -10,7 +10,13 @@ + #include "base/single_thread_task_runner.h" + #include "device/usb/usb_context.h" + #include "device/usb/usb_device_impl.h" ++#if defined(OS_FREEBSD) ++#include "libusb.h" ++#define LIBUSB_CALL ++#else + #include "third_party/libusb/src/libusb/libusb.h" ++#endif ++ + + namespace device { + +@@ -38,11 +44,13 @@ + // Adds a new UsbDevice to the devices_ map based on the given libusb device. + scoped_refptr AddDevice(PlatformUsbDevice platform_device); + ++#if !defined(OS_FREEBSD) + // Handle hotplug events from libusb. + static int LIBUSB_CALL HotplugCallback(libusb_context* context, + PlatformUsbDevice device, + libusb_hotplug_event event, + void* user_data); ++#endif + // These functions release a reference to the provided platform device. + void OnDeviceAdded(PlatformUsbDevice platform_device); + void OnDeviceRemoved(PlatformUsbDevice platform_device); +@@ -63,7 +71,9 @@ + // connected instead of only when a full enumeration is requested. + // TODO(reillyg): Support this on all platforms. crbug.com/411715 + bool hotplug_enabled_; ++#if !defined(OS_FREEBSD) + libusb_hotplug_callback_handle hotplug_handle_; ++#endif + + // The map from unique IDs to UsbDevices. + typedef std::map> DeviceMap; Property changes on: head/www/chromium/files/patch-device__usb__usb_service_impl.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-gpu__config__gpu_util.cc =================================================================== --- head/www/chromium/files/patch-gpu__config__gpu_util.cc (revision 384823) +++ head/www/chromium/files/patch-gpu__config__gpu_util.cc (revision 384824) @@ -1,15 +1,15 @@ ---- gpu/config/gpu_util.cc.orig 2014-10-10 08:54:15 UTC -+++ gpu/config/gpu_util.cc +--- gpu/config/gpu_util.cc.orig 2015-04-19 16:27:01.000000000 +0200 ++++ gpu/config/gpu_util.cc 2015-04-19 16:27:30.000000000 +0200 @@ -54,10 +54,12 @@ } - void ApplyGpuDriverBugWorkarounds(CommandLine* command_line) { + void ApplyGpuDriverBugWorkarounds(base::CommandLine* command_line) { +#ifndef __FreeBSD__ GPUInfo gpu_info; CollectBasicGraphicsInfo(&gpu_info); ApplyGpuDriverBugWorkarounds(gpu_info, command_line); +#endif } - void ApplyGpuDriverBugWorkarounds( + void ApplyGpuDriverBugWorkarounds(const GPUInfo& gpu_info, Index: head/www/chromium/files/patch-gpu__gpu_config.gypi =================================================================== --- head/www/chromium/files/patch-gpu__gpu_config.gypi (revision 384823) +++ head/www/chromium/files/patch-gpu__gpu_config.gypi (revision 384824) @@ -1,22 +1,23 @@ ---- gpu/gpu_config.gypi.orig 2014-10-10 08:54:15 UTC -+++ gpu/gpu_config.gypi -@@ -70,12 +70,18 @@ +--- gpu/gpu_config.gypi.orig 2015-04-19 16:30:17.000000000 +0200 ++++ gpu/gpu_config.gypi 2015-04-19 16:33:04.000000000 +0200 +@@ -70,7 +70,7 @@ '../build/linux/system.gyp:libpci', ], }], - ['OS=="linux" and use_x11==1', { + ['(OS=="linux" or os_bsd==1) and use_x11==1', { 'dependencies': [ '../build/linux/system.gyp:x11', '../build/linux/system.gyp:xext', - '../third_party/libXNVCtrl/libXNVCtrl.gyp:libXNVCtrl', +@@ -78,5 +78,11 @@ + '../ui/gfx/x/gfx_x11.gyp:gfx_x11', ], }], + ['os_bsd==1', { + 'sources!': [ + 'config/gpu_info_collector_linux.cc', + 'config/gpu_info_collector_linux.h', + ], -+ }], ++ }] ], } Index: head/www/chromium/files/patch-media__video__capture__video_capture_device_factory.cc =================================================================== --- head/www/chromium/files/patch-media__video__capture__video_capture_device_factory.cc (revision 384823) +++ head/www/chromium/files/patch-media__video__capture__video_capture_device_factory.cc (revision 384824) @@ -1,20 +1,11 @@ ---- media/video/capture/video_capture_device_factory.cc.orig 2014-10-10 08:54:15 UTC -+++ media/video/capture/video_capture_device_factory.cc -@@ -11,7 +11,7 @@ +--- media/video/capture/video_capture_device_factory.cc.orig 2015-04-24 22:45:15.000000000 +0200 ++++ media/video/capture/video_capture_device_factory.cc 2015-04-24 22:45:36.000000000 +0200 +@@ -50,7 +50,7 @@ + callback.Run(device_names.Pass()); + } - #if defined(OS_MACOSX) - #include "media/video/capture/mac/video_capture_device_factory_mac.h" --#elif defined(OS_LINUX) -+#elif defined(OS_LINUX) || defined(OS_FREEBSD) || defined(OS_OPENBSD) - #include "media/video/capture/linux/video_capture_device_factory_linux.h" - #elif defined(OS_ANDROID) - #include "media/video/capture/android/video_capture_device_factory_android.h" -@@ -41,7 +41,7 @@ - #if defined(OS_MACOSX) - return scoped_ptr(new - VideoCaptureDeviceFactoryMac(ui_task_runner)); --#elif defined(OS_LINUX) -+#elif defined(OS_LINUX) || defined(OS_FREEBSD) || defined(OS_OPENBSD) - return scoped_ptr(new - VideoCaptureDeviceFactoryLinux(ui_task_runner)); - #elif defined(OS_ANDROID) +-#if !defined(OS_MACOSX) && !defined(OS_LINUX) && !defined(OS_ANDROID) && !defined(OS_WIN) ++#if !defined(OS_MACOSX) && !defined(OS_LINUX) && !defined(OS_ANDROID) && !defined(OS_WIN) && !defined(OS_FREEBSD) + // static + VideoCaptureDeviceFactory* + VideoCaptureDeviceFactory::CreateVideoCaptureDeviceFactory( Index: head/www/chromium/files/patch-net__base__address_tracker_linux.cc =================================================================== --- head/www/chromium/files/patch-net__base__address_tracker_linux.cc (nonexistent) +++ head/www/chromium/files/patch-net__base__address_tracker_linux.cc (revision 384824) @@ -0,0 +1,94 @@ +--- net/base/address_tracker_linux.cc.orig 2015-04-19 20:31:08.000000000 +0200 ++++ net/base/address_tracker_linux.cc 2015-04-19 20:36:27.000000000 +0200 +@@ -5,7 +5,9 @@ + #include "net/base/address_tracker_linux.h" + + #include ++#if !defined(OS_FREEBSD) + #include ++#endif + #include + + #include "base/files/scoped_file.h" +@@ -24,6 +26,7 @@ + bool GetAddress(const struct nlmsghdr* header, + IPAddressNumber* out, + bool* really_deprecated) { ++#if !defined(OS_FREEBSD) + if (really_deprecated) + *really_deprecated = false; + const struct ifaddrmsg* msg = +@@ -76,6 +79,9 @@ + return false; + out->assign(address, address + address_length); + return true; ++#else ++ return false; ++#endif + } + + } // namespace +@@ -128,6 +134,7 @@ + } + + void AddressTrackerLinux::Init() { ++#if !defined(OS_FREEBSD) + netlink_fd_ = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE); + if (netlink_fd_ < 0) { + PLOG(ERROR) << "Could not create NETLINK socket"; +@@ -215,6 +222,10 @@ + return; + } + } ++#else ++ AbortAndForceOnline(); ++ return; ++#endif + } + + void AddressTrackerLinux::AbortAndForceOnline() { +@@ -250,6 +261,7 @@ + void AddressTrackerLinux::ReadMessages(bool* address_changed, + bool* link_changed, + bool* tunnel_changed) { ++#if !defined(OS_FREEBSD) + *address_changed = false; + *link_changed = false; + *tunnel_changed = false; +@@ -276,6 +288,7 @@ + } + if (*link_changed || *address_changed) + UpdateCurrentConnectionType(); ++#endif + } + + void AddressTrackerLinux::HandleMessage(char* buffer, +@@ -283,6 +296,7 @@ + bool* address_changed, + bool* link_changed, + bool* tunnel_changed) { ++#if !defined(OS_FREEBSD) + DCHECK(buffer); + for (struct nlmsghdr* header = reinterpret_cast(buffer); + NLMSG_OK(header, length); +@@ -365,6 +379,7 @@ + break; + } + } ++#endif + } + + void AddressTrackerLinux::OnFileCanReadWithoutBlocking(int fd) { +@@ -391,8 +406,12 @@ + + bool AddressTrackerLinux::IsTunnelInterface(int interface_index) const { + // Linux kernel drivers/net/tun.c uses "tun" name prefix. ++#if !defined(OS_FREEBSD) + char buf[IFNAMSIZ] = {0}; + return strncmp(get_interface_name_(interface_index, buf), "tun", 3) == 0; ++#else ++ return false; ++#endif + } + + void AddressTrackerLinux::UpdateCurrentConnectionType() { Property changes on: head/www/chromium/files/patch-net__base__address_tracker_linux.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-net__base__address_tracker_linux.h =================================================================== --- head/www/chromium/files/patch-net__base__address_tracker_linux.h (revision 384823) +++ head/www/chromium/files/patch-net__base__address_tracker_linux.h (revision 384824) @@ -1,15 +1,27 @@ ---- net/base/address_tracker_linux.h.orig 2014-10-10 09:15:31 UTC -+++ net/base/address_tracker_linux.h +--- net/base/address_tracker_linux.h.orig 2015-04-15 00:18:56.000000000 +0200 ++++ net/base/address_tracker_linux.h 2015-04-19 20:29:29.000000000 +0200 @@ -6,10 +6,12 @@ #define NET_BASE_ADDRESS_TRACKER_LINUX_H_ #include // Needed to include netlink. +#if !defined(__FreeBSD__) // Mask superfluous definition of |struct net|. This is fixed in Linux 2.6.38. #define net net_kernel #include #undef net +#endif #include +@@ -32,7 +34,11 @@ + class NET_EXPORT_PRIVATE AddressTrackerLinux : + public base::MessageLoopForIO::Watcher { + public: ++#if !defined(OS_FREEBSD) + typedef std::map AddressMap; ++#else ++ typedef void* AddressMap; ++#endif + + // Non-tracking version constructor: it takes a snapshot of the + // current system configuration. Once Init() returns, the Index: head/www/chromium/files/patch-net__base__net_util_linux.cc =================================================================== --- head/www/chromium/files/patch-net__base__net_util_linux.cc (nonexistent) +++ head/www/chromium/files/patch-net__base__net_util_linux.cc (revision 384824) @@ -0,0 +1,105 @@ +--- net/base/net_util_linux.cc.orig 2015-04-19 19:54:25.000000000 +0200 ++++ net/base/net_util_linux.cc 2015-04-20 20:26:41.000000000 +0200 +@@ -4,12 +4,14 @@ + + #include "net/base/net_util_linux.h" + ++#if !defined(OS_FREEBSD) + #if !defined(OS_ANDROID) + #include + #endif // !defined(OS_ANDROID) + #include + #include + #include ++#endif // !defined(OS_FREEBSD) + #include + #include + #include +@@ -44,6 +46,7 @@ + // are still progressing through duplicated address detection (DAD) + // and shouldn't be used by the application layer until DAD process + // is completed. ++#if !defined(OS_FREEBSD) + if (native_attributes & ( + #if !defined(OS_ANDROID) + IFA_F_OPTIMISTIC | IFA_F_DADFAILED | +@@ -61,6 +64,10 @@ + } + + return true; ++#else ++ // the flags tested above are not present on FreeBSD ++ return false; ++#endif // !OS_FREEBSD + } + + } // namespace +@@ -83,13 +90,15 @@ + if (!s.is_valid()) + return NetworkChangeNotifier::CONNECTION_UNKNOWN; + ++#if !defined(OS_FREEBSD) + // Test wireless extensions for CONNECTION_WIFI + struct iwreq pwrq = {}; + strncpy(pwrq.ifr_name, ifname.c_str(), IFNAMSIZ - 1); + if (ioctl(s.get(), SIOCGIWNAME, &pwrq) != -1) + return NetworkChangeNotifier::CONNECTION_WIFI; ++#endif // !defined(OS_FREEBSD) + +-#if !defined(OS_ANDROID) ++#if !defined(OS_ANDROID) && !defined(OS_FREEBSD) + // Test ethtool for CONNECTION_ETHERNET + struct ethtool_cmd ecmd = {}; + ecmd.cmd = ETHTOOL_GSET; +@@ -98,12 +107,13 @@ + strncpy(ifr.ifr_name, ifname.c_str(), IFNAMSIZ - 1); + if (ioctl(s.get(), SIOCETHTOOL, &ifr) != -1) + return NetworkChangeNotifier::CONNECTION_ETHERNET; +-#endif // !defined(OS_ANDROID) ++#endif // !defined(OS_ANDROID) && !defined(OS_FREEBSD) + + return NetworkChangeNotifier::CONNECTION_UNKNOWN; + } + + std::string GetInterfaceSSID(const std::string& ifname) { ++#if !defined(OS_FREEBSD) + base::ScopedFD ioctl_socket(socket(AF_INET, SOCK_DGRAM, 0)); + if (!ioctl_socket.is_valid()) + return ""; +@@ -115,9 +125,11 @@ + wreq.u.essid.length = IW_ESSID_MAX_SIZE; + if (ioctl(ioctl_socket.get(), SIOCGIWESSID, &wreq) != -1) + return ssid; ++#endif // !defined(OS_FREEBSD) + return ""; + } + ++#if !defined(OS_FREEBSD) + bool GetNetworkListImpl( + NetworkInterfaceList* networks, + int policy, +@@ -186,6 +198,7 @@ + + return true; + } ++#endif // !defined(OS_FREEBSD) + + std::string GetWifiSSIDFromInterfaceListInternal( + const NetworkInterfaceList& interfaces, +@@ -210,12 +223,16 @@ + if (networks == NULL) + return false; + ++#if !defined(OS_FREEBSD) + internal::AddressTrackerLinux tracker; + tracker.Init(); + + return internal::GetNetworkListImpl( + networks, policy, tracker.GetOnlineLinks(), tracker.GetAddressMap(), + &internal::AddressTrackerLinux::GetInterfaceName); ++#else ++ return false; ++#endif + } + + std::string GetWifiSSID() { Property changes on: head/www/chromium/files/patch-net__base__net_util_linux.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-net__base__net_util_posix.cc =================================================================== --- head/www/chromium/files/patch-net__base__net_util_posix.cc (revision 384823) +++ head/www/chromium/files/patch-net__base__net_util_posix.cc (revision 384824) @@ -1,62 +1,18 @@ ---- net/base/net_util_posix.cc.orig 2015-01-24 20:40:37.161729000 +0100 -+++ net/base/net_util_posix.cc 2015-01-24 20:41:01.962110000 +0100 -@@ -23,8 +23,10 @@ - #if defined(OS_MACOSX) - #include - #else -+#if !defined(OS_BSD) - #include "net/base/address_tracker_linux.h" - #include "net/base/net_util_posix.h" -+#endif - #endif // OS_MACOSX - #include - #include -@@ -40,6 +42,7 @@ +--- net/base/net_util_posix.cc.orig 2015-04-19 16:44:32.000000000 +0200 ++++ net/base/net_util_posix.cc 2015-04-19 16:45:29.000000000 +0200 +@@ -20,6 +20,7 @@ + #if !defined(OS_NACL) + namespace internal { - namespace { - +#if !defined(OS_BSD) // The application layer can pass |policy| defined in net_util.h to // request filtering out certain type of interfaces. bool ShouldIgnoreInterface(const std::string& name, int policy) { -@@ -76,6 +79,7 @@ +@@ -56,6 +57,7 @@ } return false; } +#endif - #if defined(OS_MACOSX) - -@@ -147,7 +151,7 @@ - } - - #endif // !defined(OS_IOS) --#elif !defined(OS_NACL) // OS_MACOSX -+#elif !defined(OS_NACL) && !defined(OS_BSD) // OS_MACOSX - - // Convert platform native IPv6 address attributes to net IP address - // attributes and drop ones that can't be used by the application -@@ -192,6 +196,7 @@ - #endif - } - -+#if !defined(OS_BSD) - bool GetNetworkListImpl( - NetworkInterfaceList* networks, - int policy, -@@ -265,13 +270,14 @@ - return true; - } - #endif -+#endif - } // namespace internal - - bool GetNetworkList(NetworkInterfaceList* networks, int policy) { - if (networks == NULL) - return false; --#if defined(OS_NACL) -+#if defined(OS_NACL) || defined(OS_BSD) - NOTIMPLEMENTED(); - return false; - #elif !defined(OS_MACOSX) + #else // OS_NACL Index: head/www/chromium/files/patch-net__quic__congestion_control__rtt_stats.cc =================================================================== --- head/www/chromium/files/patch-net__quic__congestion_control__rtt_stats.cc (revision 384823) +++ head/www/chromium/files/patch-net__quic__congestion_control__rtt_stats.cc (revision 384824) @@ -1,11 +1,11 @@ ---- net/quic/congestion_control/rtt_stats.cc.orig 2014-10-10 08:54:16 UTC -+++ net/quic/congestion_control/rtt_stats.cc -@@ -85,7 +85,7 @@ +--- net/quic/congestion_control/rtt_stats.cc.orig 2015-04-19 16:49:03.000000000 +0200 ++++ net/quic/congestion_control/rtt_stats.cc 2015-04-19 16:49:19.000000000 +0200 +@@ -81,7 +81,7 @@ } else { - mean_deviation_ = QuicTime::Delta::FromMicroseconds( + mean_deviation_ = QuicTime::Delta::FromMicroseconds(static_cast( kOneMinusBeta * mean_deviation_.ToMicroseconds() + -- kBeta * std::abs(smoothed_rtt_.Subtract(rtt_sample).ToMicroseconds())); -+ kBeta * std::labs(smoothed_rtt_.Subtract(rtt_sample).ToMicroseconds())); +- kBeta * std::abs(smoothed_rtt_.Subtract(rtt_sample).ToMicroseconds()))); ++ kBeta * std::labs(smoothed_rtt_.Subtract(rtt_sample).ToMicroseconds()))); smoothed_rtt_ = smoothed_rtt_.Multiply(kOneMinusAlpha).Add( rtt_sample.Multiply(kAlpha)); DVLOG(1) << " smoothed_rtt(us):" << smoothed_rtt_.ToMicroseconds() Index: head/www/chromium/files/patch-remoting__remoting_host.gypi =================================================================== --- head/www/chromium/files/patch-remoting__remoting_host.gypi (revision 384823) +++ head/www/chromium/files/patch-remoting__remoting_host.gypi (revision 384824) @@ -1,29 +1,45 @@ ---- remoting/remoting_host.gypi.orig 2015-01-21 20:28:17 UTC -+++ remoting/remoting_host.gypi -@@ -12,7 +12,7 @@ - 'variables': { - 'conditions': [ - # Remoting host is supported only on Windows, OSX and Linux (with X11). -- ['OS=="win" or OS=="mac" or (OS=="linux" and use_x11==1)', { -+ ['OS=="win" or OS=="mac" or ((OS=="linux" or os_bsd==1) and use_x11==1)', { - 'enable_me2me_host': 1, - 'enable_it2me_host': 1, - 'enable_remoting_host': 1, -@@ -317,7 +317,7 @@ - ], - }, - }], -- ['OS=="linux" and chromeos==0 and use_ozone==0', { -+ ['((OS=="linux" and chromeos==0) or os_bsd==1) and use_ozone==0', { - 'dependencies' : [ - # Always use GTK on Linux, even for Aura builds. - '../build/linux/system.gyp:gtk', -@@ -910,7 +910,7 @@ - 'host/it2me/it2me_native_messaging_host_main.h', +--- remoting/remoting_host.gypi.orig 2015-04-19 16:56:09.000000000 +0200 ++++ remoting/remoting_host.gypi 2015-04-19 16:55:50.000000000 +0200 +@@ -18,7 +18,7 @@ + 'remoting_host_win.gypi', + ], + }], +- ['OS=="linux"', { ++ ['OS=="linux" or os_bsd==1', { + 'includes': [ + 'remoting_host_linux.gypi', + ], +@@ -56,7 +56,7 @@ + '<@(remoting_host_sources)', ], 'conditions': [ -- ['OS=="linux" and chromeos==0 and use_ozone==0', { -+ ['((OS=="linux" and chromeos==0) or os_bsd==1) and use_ozone==0', { +- ['OS=="linux"', { ++ ['OS=="linux" or os_bsd==1', { + 'conditions': [ + ['use_x11==1', { + 'dependencies': [ +@@ -535,7 +535,7 @@ + }], # mac_breakpad==1 + ], # conditions + }], # OS=mac +- ['OS=="linux" and use_allocator!="none"', { ++ ['(OS=="linux" or os_bsd==1) and use_allocator!="none"', { 'dependencies': [ - # Always use GTK on Linux, even for Aura builds. - '../build/linux/system.gyp:gtk', + '../base/allocator/allocator.gyp:allocator', + ], +@@ -657,13 +657,13 @@ + 'host/it2me/it2me_native_messaging_host_main.h', + ], + 'conditions': [ +- ['OS=="linux" and chromeos==0 and use_ozone==0', { ++ ['(OS=="linux" or os_bsd==1) and chromeos==0 and use_ozone==0', { + 'dependencies': [ + # Always use GTK on Linux, even for Aura builds. + '../build/linux/system.gyp:gtk', + ], + }], +- ['OS=="linux" and use_allocator!="none"', { ++ ['(OS=="linux" or os_bsd==1) and use_allocator!="none"', { + 'dependencies': [ + '../base/allocator/allocator.gyp:allocator', + ], Index: head/www/chromium/files/patch-skia__ext__SkMemory_new_handler.cpp =================================================================== --- head/www/chromium/files/patch-skia__ext__SkMemory_new_handler.cpp (nonexistent) +++ head/www/chromium/files/patch-skia__ext__SkMemory_new_handler.cpp (revision 384824) @@ -0,0 +1,20 @@ +--- skia/ext/SkMemory_new_handler.cpp.orig 2015-04-20 19:38:21.000000000 +0200 ++++ skia/ext/SkMemory_new_handler.cpp 2015-04-20 19:38:39.000000000 +0200 +@@ -53,7 +53,7 @@ + static void* sk_malloc_nothrow(size_t size) { + // TODO(b.kelemen): we should always use UncheckedMalloc but currently it + // doesn't work as intended everywhere. +-#if defined(OS_IOS) ++#if defined(OS_IOS) || defined(OS_FREEBSD) + return malloc(size); + #else + void* result; +@@ -77,7 +77,7 @@ + void* sk_calloc(size_t size) { + // TODO(b.kelemen): we should always use UncheckedCalloc but currently it + // doesn't work as intended everywhere. +-#if defined(OS_IOS) ++#if defined(OS_IOS) || defined(OS_FREEBSD) + return calloc(1, size); + #else + void* result; Property changes on: head/www/chromium/files/patch-skia__ext__SkMemory_new_handler.cpp ___________________________________________________________________ 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: head/www/chromium/files/patch-third_party__WebKit__Source__bindings__core__v8__V8ScriptRunner.cpp =================================================================== --- head/www/chromium/files/patch-third_party__WebKit__Source__bindings__core__v8__V8ScriptRunner.cpp (nonexistent) +++ head/www/chromium/files/patch-third_party__WebKit__Source__bindings__core__v8__V8ScriptRunner.cpp (revision 384824) @@ -0,0 +1,11 @@ +--- third_party/WebKit/Source/bindings/core/v8/V8ScriptRunner.cpp.orig 2015-04-19 22:18:23.000000000 +0200 ++++ third_party/WebKit/Source/bindings/core/v8/V8ScriptRunner.cpp 2015-04-19 22:20:01.000000000 +0200 +@@ -43,6 +43,8 @@ + + #if defined(WTF_OS_WIN) + #include ++#elif defined(WTF_OS_FREEBSD) ++#include + #else + #include + #endif Property changes on: head/www/chromium/files/patch-third_party__WebKit__Source__bindings__core__v8__V8ScriptRunner.cpp ___________________________________________________________________ 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: head/www/chromium/files/patch-third_party__WebKit__Source__core__core.gyp =================================================================== --- head/www/chromium/files/patch-third_party__WebKit__Source__core__core.gyp (revision 384823) +++ head/www/chromium/files/patch-third_party__WebKit__Source__core__core.gyp (revision 384824) @@ -1,20 +1,52 @@ ---- third_party/WebKit/Source/core/core.gyp.orig 2014-10-10 09:34:37 UTC -+++ third_party/WebKit/Source/core/core.gyp -@@ -587,7 +587,7 @@ +--- third_party/WebKit/Source/core/core.gyp.orig 2015-04-19 17:00:10.000000000 +0200 ++++ third_party/WebKit/Source/core/core.gyp 2015-04-19 17:12:08.000000000 +0200 +@@ -505,13 +505,13 @@ # Due to a bug in gcc 4.6 in android NDK, we get warnings about uninitialized variable. 'cflags': ['-Wno-uninitialized'], }], - ['OS != "linux"', { + ['OS != "linux" and os_bsd != 1', { - 'sources/': [ - ['exclude', 'Linux\\.cpp$'], + 'sources!': [ + 'layout/LayoutThemeLinux.cpp', + 'layout/LayoutThemeLinux.h', ], -@@ -625,7 +625,7 @@ - ['OS=="win" and buildtype=="Official"', { - 'msvs_shard': 19, }], -- ['OS != "linux"', { -+ ['OS != "linux" and os_bsd != 1', { - 'sources/': [ - ['exclude', 'Linux\\.cpp$'], +- ['OS != "linux" and OS != "android"', { ++ ['OS != "linux" and OS != "android" and os_bsd != 1', { + 'sources!': [ + 'layout/LayoutThemeFontProviderLinux.cpp', ], +@@ -617,7 +617,7 @@ + ], + }, + 'conditions': [ +- ['OS=="linux" and "WTF_USE_WEBAUDIO_IPP=1" in feature_defines', { ++ ['(OS=="linux" or os_bsd==1) and "WTF_USE_WEBAUDIO_IPP=1" in feature_defines', { + 'link_settings': { + 'ldflags': [ + ' ++ + #if OS(WIN) + #include + #include Property changes on: head/www/chromium/files/patch-third_party__WebKit__Source__platform__heap__StackFrameDepth.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-third_party__WebKit__Source__platform__heap__Visitor.cpp =================================================================== --- head/www/chromium/files/patch-third_party__WebKit__Source__platform__heap__Visitor.cpp (nonexistent) +++ head/www/chromium/files/patch-third_party__WebKit__Source__platform__heap__Visitor.cpp (revision 384824) @@ -0,0 +1,11 @@ +--- third_party/WebKit/Source/platform/heap/Visitor.cpp.orig 2015-04-19 21:39:50.000000000 +0200 ++++ third_party/WebKit/Source/platform/heap/Visitor.cpp 2015-04-19 21:40:31.000000000 +0200 +@@ -34,6 +34,8 @@ + #include "platform/heap/Handle.h" + #include "platform/heap/Heap.h" + ++#include ++ + namespace blink { + + // GCInfo indices start from 1 for heap objects, with 0 being treated Property changes on: head/www/chromium/files/patch-third_party__WebKit__Source__platform__heap__Visitor.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-third_party__pdfium__third_party__base__logging.h =================================================================== --- head/www/chromium/files/patch-third_party__pdfium__third_party__base__logging.h (nonexistent) +++ head/www/chromium/files/patch-third_party__pdfium__third_party__base__logging.h (revision 384824) @@ -0,0 +1,11 @@ +--- third_party/pdfium/third_party/base/logging.h.orig 2015-04-19 17:22:14.000000000 +0200 ++++ third_party/pdfium/third_party/base/logging.h 2015-04-19 17:22:28.000000000 +0200 +@@ -10,7 +10,7 @@ + #define CHECK(condition) \ + if (!(condition)) { \ + abort(); \ +- *(reinterpret_cast(NULL) + 42) = 0x42; \ ++ *(reinterpret_cast(__null) + 42) = 0x42; \ + } + + #define NOTREACHED() abort() Property changes on: head/www/chromium/files/patch-third_party__pdfium__third_party__base__logging.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-third_party__skia__src__core__SkVarAlloc.cpp =================================================================== --- head/www/chromium/files/patch-third_party__skia__src__core__SkVarAlloc.cpp (nonexistent) +++ head/www/chromium/files/patch-third_party__skia__src__core__SkVarAlloc.cpp (revision 384824) @@ -0,0 +1,15 @@ +--- third_party/skia/src/core/SkVarAlloc.cpp.orig 2015-04-19 19:15:20.000000000 +0200 ++++ third_party/skia/src/core/SkVarAlloc.cpp 2015-04-19 19:17:08.000000000 +0200 +@@ -4,7 +4,12 @@ + #if defined(SK_BUILD_FOR_MAC) + #include + #elif defined(SK_BUILD_FOR_UNIX) || defined(SK_BUILD_FOR_WIN32) ++# if defined(__FreeBSD__) ++ #include ++ #include ++# else + #include ++# endif + #endif + + struct SkVarAlloc::Block { Property changes on: head/www/chromium/files/patch-third_party__skia__src__core__SkVarAlloc.cpp ___________________________________________________________________ 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: head/www/chromium/files/patch-third_party__webrtc__base__thread_checker_impl.cc =================================================================== --- head/www/chromium/files/patch-third_party__webrtc__base__thread_checker_impl.cc (nonexistent) +++ head/www/chromium/files/patch-third_party__webrtc__base__thread_checker_impl.cc (revision 384824) @@ -0,0 +1,35 @@ +--- third_party/webrtc/base/thread_checker_impl.cc.orig 2015-04-19 18:30:59.000000000 +0200 ++++ third_party/webrtc/base/thread_checker_impl.cc 2015-04-19 18:51:43.000000000 +0200 +@@ -14,10 +14,16 @@ + + #include "webrtc/base/checks.h" + +-#if defined(WEBRTC_LINUX) ++#if defined(WEBRTC_LINUX) && !defined(__FreeBSD__) + #include + #endif + ++#if defined(WEBRTC_BSD) ++#include ++#include ++#include ++#endif ++ + namespace rtc { + + PlatformThreadId CurrentThreadId() { +@@ -27,6 +33,14 @@ + #elif defined(WEBRTC_POSIX) + #if defined(WEBRTC_MAC) || defined(WEBRTC_IOS) + ret = pthread_mach_thread_np(pthread_self()); ++#elif defined(WEBRTC_BSD) ++# if __FreeBSD_version < 900031 ++ long lwpid; ++ thr_self(&lwpid); ++ ret = static_cast(lwpid); ++# else ++ ret = static_cast(pthread_getthreadid_np()); ++# endif + #elif defined(WEBRTC_LINUX) + ret = syscall(__NR_gettid); + #elif defined(WEBRTC_ANDROID) Property changes on: head/www/chromium/files/patch-third_party__webrtc__base__thread_checker_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: head/www/chromium/files/patch-third_party__webrtc__system_wrappers__source__thread_posix.cc =================================================================== --- head/www/chromium/files/patch-third_party__webrtc__system_wrappers__source__thread_posix.cc (revision 384823) +++ head/www/chromium/files/patch-third_party__webrtc__system_wrappers__source__thread_posix.cc (revision 384824) @@ -1,59 +1,24 @@ ---- third_party/webrtc/system_wrappers/source/thread_posix.cc.orig 2014-10-10 09:16:13 UTC -+++ third_party/webrtc/system_wrappers/source/thread_posix.cc -@@ -51,9 +51,11 @@ - #include // strncpy +--- third_party/webrtc/system_wrappers/source/thread_posix.cc.orig 2015-04-19 17:26:21.000000000 +0200 ++++ third_party/webrtc/system_wrappers/source/thread_posix.cc 2015-04-19 19:08:15.000000000 +0200 +@@ -15,9 +15,11 @@ + #include #include #ifdef WEBRTC_LINUX +#if !defined(WEBRTC_BSD) #include -#include #include +#endif +#include #include #include #endif -@@ -136,12 +138,12 @@ - } - - uint32_t ThreadWrapper::GetThreadId() { --#if defined(WEBRTC_ANDROID) || defined(WEBRTC_LINUX) -+#if (defined(WEBRTC_ANDROID) || defined(WEBRTC_LINUX)) && !defined(WEBRTC_BSD) - return static_cast(syscall(__NR_gettid)); +@@ -138,7 +140,7 @@ + if (!name_.empty()) { + // Setting the thread name may fail (harmlessly) if running inside a + // sandbox. Ignore failures if they happen. +-#if defined(WEBRTC_LINUX) || defined(WEBRTC_ANDROID) ++#if (defined(WEBRTC_LINUX) || defined(WEBRTC_ANDROID)) && !defined(WEBRTC_BSD) + prctl(PR_SET_NAME, reinterpret_cast(name_.c_str())); #elif defined(WEBRTC_MAC) || defined(WEBRTC_IOS) - return pthread_mach_thread_np(pthread_self()); - #else -- return reinterpret_cast(pthread_self()); -+ return reinterpret_cast(pthread_self()); - #endif - } - -@@ -171,7 +173,8 @@ - delete crit_state_; - } - --#define HAS_THREAD_ID !defined(WEBRTC_IOS) && !defined(WEBRTC_MAC) -+#define HAS_THREAD_ID !defined(WEBRTC_IOS) && !defined(WEBRTC_MAC) && \ -+ !defined(WEBRTC_BSD) - - bool ThreadPosix::Start(unsigned int& thread_id) - { -@@ -235,7 +238,8 @@ - - // CPU_ZERO and CPU_SET are not available in NDK r7, so disable - // SetAffinity on Android for now. --#if (defined(WEBRTC_LINUX) && (!defined(WEBRTC_ANDROID))) -+#if (defined(WEBRTC_LINUX) && (!defined(WEBRTC_ANDROID) && \ -+ !defined(WEBRTC_BSD))) - bool ThreadPosix::SetAffinity(const int* processor_numbers, - const unsigned int amount_of_processors) { - if (!processor_numbers || (amount_of_processors == 0)) { -@@ -317,7 +321,7 @@ - event_->Set(); - - if (set_thread_name_) { --#ifdef WEBRTC_LINUX -+#if defined(WEBRTC_LINUX) && !defined(WEBRTC_BSD) - prctl(PR_SET_NAME, (unsigned long)name_, 0, 0, 0); - #endif - WEBRTC_TRACE(kTraceStateInfo, kTraceUtility, -1, + pthread_setname_np(name_.substr(0, 63).c_str()); Index: head/www/chromium/files/patch-ui__base__ime__input_method_factory.cc =================================================================== --- head/www/chromium/files/patch-ui__base__ime__input_method_factory.cc (revision 384823) +++ head/www/chromium/files/patch-ui__base__ime__input_method_factory.cc (revision 384824) @@ -1,20 +1,20 @@ ---- ui/base/ime/input_method_factory.cc.orig 2014-10-14 21:31:49.000000000 +0200 -+++ ui/base/ime/input_method_factory.cc 2014-10-14 21:26:34.000000000 +0200 +--- ui/base/ime/input_method_factory.cc.orig 2015-04-19 17:31:55.000000000 +0200 ++++ ui/base/ime/input_method_factory.cc 2015-04-19 17:33:24.000000000 +0200 @@ -14,7 +14,7 @@ #include "ui/base/ime/remote_input_method_win.h" #elif defined(OS_MACOSX) #include "ui/base/ime/input_method_mac.h" -#elif defined(USE_AURA) && defined(OS_LINUX) && !defined(OS_CHROMEOS) +#elif defined(USE_AURA) && defined(OS_LINUX) && !defined(OS_CHROMEOS) || defined(OS_BSD) #include "ui/base/ime/input_method_auralinux.h" #else #include "ui/base/ime/input_method_minimal.h" @@ -47,7 +47,7 @@ - return scoped_ptr(new InputMethodWin(delegate, widget)); + return make_scoped_ptr(new InputMethodWin(delegate, widget)); #elif defined(OS_MACOSX) - return scoped_ptr(new InputMethodMac(delegate)); + return make_scoped_ptr(new InputMethodMac(delegate)); -#elif defined(USE_AURA) && defined(OS_LINUX) && !defined(OS_CHROMEOS) +#elif defined(USE_AURA) && defined(OS_LINUX) && !defined(OS_CHROMEOS) || defined(OS_BSD) - return scoped_ptr(new InputMethodAuraLinux(delegate)); + return make_scoped_ptr(new InputMethodAuraLinux(delegate)); #else - return scoped_ptr(new InputMethodMinimal(delegate)); + return make_scoped_ptr(new InputMethodMinimal(delegate)); Index: head/www/chromium/files/patch-ui__gfx__render_text.cc =================================================================== --- head/www/chromium/files/patch-ui__gfx__render_text.cc (nonexistent) +++ head/www/chromium/files/patch-ui__gfx__render_text.cc (revision 384824) @@ -0,0 +1,46 @@ +--- ui/gfx/render_text.cc.orig 2015-04-19 20:44:44.000000000 +0200 ++++ ui/gfx/render_text.cc 2015-04-19 20:45:55.000000000 +0200 +@@ -865,32 +865,33 @@ + const int extra_content = GetContentWidth() - display_rect_.width(); + const int cursor_width = cursor_enabled_ ? 1 : 0; + +- int min_offset = 0; +- int max_offset = 0; ++ // avoid collisions with vm_map.h on FreeBSD --cmt ++ int _min_offset = 0; ++ int _max_offset = 0; + if (extra_content > 0) { + switch (GetCurrentHorizontalAlignment()) { + case ALIGN_LEFT: +- min_offset = -extra_content; ++ _min_offset = -extra_content; + break; + case ALIGN_RIGHT: +- max_offset = extra_content; ++ _max_offset = extra_content; + break; + case ALIGN_CENTER: + // The extra space reserved for cursor at the end of the text is ignored + // when centering text. So, to calculate the valid range for offset, we + // exclude that extra space, calculate the range, and add it back to the + // range (if cursor is enabled). +- min_offset = -(extra_content - cursor_width + 1) / 2 - cursor_width; +- max_offset = (extra_content - cursor_width) / 2; ++ _min_offset = -(extra_content - cursor_width + 1) / 2 - cursor_width; ++ _max_offset = (extra_content - cursor_width) / 2; + break; + default: + break; + } + } +- if (horizontal_offset < min_offset) +- horizontal_offset = min_offset; +- else if (horizontal_offset > max_offset) +- horizontal_offset = max_offset; ++ if (horizontal_offset < _min_offset) ++ horizontal_offset = _min_offset; ++ else if (horizontal_offset > _max_offset) ++ horizontal_offset = _max_offset; + + cached_bounds_and_offset_valid_ = true; + display_offset_.set_x(horizontal_offset); Property changes on: head/www/chromium/files/patch-ui__gfx__render_text.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/files/patch-ui__views__views.gyp =================================================================== --- head/www/chromium/files/patch-ui__views__views.gyp (revision 384823) +++ head/www/chromium/files/patch-ui__views__views.gyp (revision 384824) @@ -1,11 +1,20 @@ ---- ui/views/views.gyp.orig 2014-10-10 08:54:19 UTC -+++ ui/views/views.gyp -@@ -612,7 +612,7 @@ +--- ui/views/views.gyp.orig 2015-04-15 00:31:23.000000000 +0200 ++++ ui/views/views.gyp 2015-04-20 21:31:06.000000000 +0200 +@@ -631,7 +631,7 @@ '../display/display.gyp:display_util', ], }], - ['OS=="linux" and chromeos==0', { + ['(OS=="linux" or os_bsd==1) and chromeos==0', { 'dependencies': [ '../shell_dialogs/shell_dialogs.gyp:shell_dialogs', ], +@@ -696,7 +696,7 @@ + ['use_aura and chromeos == 0', { + 'sources': [ '<@(views_desktop_aura_sources)' ], + 'conditions': [ +- ['OS == "linux"', { ++ ['OS == "linux" or os_bsd == 1', { + 'sources': [ '<@(views_desktop_aura_linux_sources)' ], + }], + ['use_x11 == 1', { Index: head/www/chromium/files/patch-v8__src__base__platform__platform-freebsd.cc =================================================================== --- head/www/chromium/files/patch-v8__src__base__platform__platform-freebsd.cc (revision 384823) +++ head/www/chromium/files/patch-v8__src__base__platform__platform-freebsd.cc (revision 384824) @@ -1,58 +1,29 @@ ---- v8/src/base/platform/platform-freebsd.cc.orig 2014-10-17 02:58:15.000000000 +0200 -+++ v8/src/base/platform/platform-freebsd.cc 2014-10-20 18:26:17.000000000 +0200 -@@ -141,21 +141,21 @@ - if (bytes_read < 8) break; - unsigned end = StringToLong(addr_buffer); - char buffer[MAP_LENGTH]; -- int bytes_read = -1; -+ int _bytes_read = -1; - do { -- bytes_read++; -- if (bytes_read >= MAP_LENGTH - 1) -+ _bytes_read++; -+ if (_bytes_read >= MAP_LENGTH - 1) - break; -- bytes_read = read(fd, buffer + bytes_read, 1); -+ bytes_read = read(fd, buffer + _bytes_read, 1); - if (bytes_read < 1) break; -- } while (buffer[bytes_read] != '\n'); -- buffer[bytes_read] = 0; -+ } while (buffer[_bytes_read] != '\n'); -+ buffer[_bytes_read] = 0; - // Ignore mappings that are not executable. - if (buffer[3] != 'x') continue; - char* start_of_path = index(buffer, '/'); - // There may be no filename in this line. Skip to next. - if (start_of_path == NULL) continue; -- buffer[bytes_read] = 0; -+ buffer[_bytes_read] = 0; - result.push_back(SharedLibraryAddress(start_of_path, start, end)); - } - close(fd); -@@ -187,7 +187,7 @@ +--- v8/src/base/platform/platform-freebsd.cc.orig 2015-04-19 17:39:23.000000000 +0200 ++++ v8/src/base/platform/platform-freebsd.cc 2015-04-19 17:40:29.000000000 +0200 +@@ -188,7 +188,7 @@ void* reservation = mmap(OS::GetRandomMmapAddr(), request_size, PROT_NONE, - MAP_PRIVATE | MAP_ANON | MAP_NORESERVE, + MAP_PRIVATE | MAP_ANON, kMmapFd, kMmapFdOffset); if (reservation == MAP_FAILED) return; -@@ -259,7 +259,7 @@ +@@ -260,7 +260,7 @@ void* result = mmap(OS::GetRandomMmapAddr(), size, PROT_NONE, - MAP_PRIVATE | MAP_ANON | MAP_NORESERVE, + MAP_PRIVATE | MAP_ANON, kMmapFd, kMmapFdOffset); -@@ -287,7 +287,7 @@ +@@ -288,7 +288,7 @@ return mmap(base, size, PROT_NONE, - MAP_PRIVATE | MAP_ANON | MAP_NORESERVE | MAP_FIXED, + MAP_PRIVATE | MAP_ANON | MAP_FIXED, kMmapFd, kMmapFdOffset) != MAP_FAILED; } Index: head/www/chromium/files/patch-v8__src__base__platform__platform-posix.cc =================================================================== --- head/www/chromium/files/patch-v8__src__base__platform__platform-posix.cc (revision 384823) +++ head/www/chromium/files/patch-v8__src__base__platform__platform-posix.cc (revision 384824) @@ -1,37 +1,37 @@ ---- v8/src/base/platform/platform-posix.cc.orig 2015-01-27 03:22:59.000000000 +0100 -+++ v8/src/base/platform/platform-posix.cc 2015-02-06 18:41:53.881294389 +0100 -@@ -54,6 +54,15 @@ +--- v8/src/base/platform/platform-posix.cc.orig 2015-04-19 17:42:27.000000000 +0200 ++++ v8/src/base/platform/platform-posix.cc 2015-04-19 17:46:17.000000000 +0200 +@@ -55,6 +55,15 @@ #include // NOLINT, for prctl #endif +#if V8_OS_FREEBSD && !defined(__DragonFly__) +#include // for __FreeBSD_version +#include // for thr_self +#endif + +#if V8_OS_NETBSD +#include // for _lwp_self +#endif + - #if !V8_OS_NACL + #if !defined(V8_OS_NACL) && !defined(_AIX) #include #endif -@@ -259,6 +268,18 @@ int OS::GetCurrentThreadId() { +@@ -271,6 +280,18 @@ return static_cast(syscall(__NR_gettid)); #elif V8_OS_ANDROID return static_cast(gettid()); +#elif V8_OS_DRAGONFLYBSD || defined(__DragonFly__) + return static_cast(lwp_gettid()); +#elif V8_OS_FREEBSD +# if __FreeBSD_version < 900031 + long lwpid; + thr_self(&lwpid); + return static_cast(lwpid); +# else + return static_cast(pthread_getthreadid_np()); +# endif +#elif V8_OS_NETBSD + return static_cast(_lwp_self()); - #else - return static_cast(pthread_self()); - #endif + #elif V8_OS_AIX + return static_cast(thread_self()); + #elif V8_OS_SOLARIS Index: head/www/chromium/files/patch-v8__src__debug.cc =================================================================== --- head/www/chromium/files/patch-v8__src__debug.cc (nonexistent) +++ head/www/chromium/files/patch-v8__src__debug.cc (revision 384824) @@ -0,0 +1,11 @@ +--- v8/src/debug.cc.orig 2015-04-19 19:02:03.000000000 +0200 ++++ v8/src/debug.cc 2015-04-19 19:02:41.000000000 +0200 +@@ -573,7 +573,7 @@ + thread_local_.step_out_fp_ = 0; + // TODO(isolates): frames_are_dropped_? + base::NoBarrier_Store(&thread_local_.current_debug_scope_, +- reinterpret_cast(0)); ++ static_cast(0)); + thread_local_.restarter_frame_function_pointer_ = NULL; + } + Property changes on: head/www/chromium/files/patch-v8__src__debug.cc ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +LF \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/chromium/pkg-plist =================================================================== --- head/www/chromium/pkg-plist (revision 384823) +++ head/www/chromium/pkg-plist (revision 384824) @@ -1,190 +1,191 @@ bin/chrome man/man1/chrome.1.gz share/applications/chromium-browser.desktop %%DATADIR%%/chrome %%DATADIR%%/chrome-wrapper %%DATADIR%%/chrome_100_percent.pak %%DATADIR%%/content_resources.pak %%DATADIR%%/keyboard_resources.pak %%DATADIR%%/libffmpegsumo.so -%%DATADIR%%/libpdf.so %%DATADIR%%/locales/am.pak %%DATADIR%%/locales/ar.pak %%DATADIR%%/locales/bg.pak %%DATADIR%%/locales/bn.pak %%DATADIR%%/locales/ca.pak %%DATADIR%%/locales/cs.pak %%DATADIR%%/locales/da.pak %%DATADIR%%/locales/de.pak %%DATADIR%%/locales/el.pak %%DATADIR%%/locales/en-GB.pak %%DATADIR%%/locales/en-US.pak %%DATADIR%%/locales/es-419.pak %%DATADIR%%/locales/es.pak %%DATADIR%%/locales/et.pak %%DATADIR%%/locales/fa.pak %%DATADIR%%/locales/fi.pak %%DATADIR%%/locales/fil.pak %%DATADIR%%/locales/fr.pak %%DATADIR%%/locales/gu.pak %%DATADIR%%/locales/he.pak %%DATADIR%%/locales/hi.pak %%DATADIR%%/locales/hr.pak %%DATADIR%%/locales/hu.pak %%DATADIR%%/locales/id.pak %%DATADIR%%/locales/it.pak %%DATADIR%%/locales/ja.pak %%DATADIR%%/locales/kn.pak %%DATADIR%%/locales/ko.pak %%DATADIR%%/locales/lt.pak %%DATADIR%%/locales/lv.pak %%DATADIR%%/locales/ml.pak %%DATADIR%%/locales/mr.pak %%DATADIR%%/locales/ms.pak %%DATADIR%%/locales/nb.pak %%DATADIR%%/locales/nl.pak %%DATADIR%%/locales/pl.pak %%DATADIR%%/locales/pt-BR.pak %%DATADIR%%/locales/pt-PT.pak %%DATADIR%%/locales/ro.pak %%DATADIR%%/locales/ru.pak %%DATADIR%%/locales/sk.pak %%DATADIR%%/locales/sl.pak %%DATADIR%%/locales/sr.pak %%DATADIR%%/locales/sv.pak %%DATADIR%%/locales/sw.pak %%DATADIR%%/locales/ta.pak %%DATADIR%%/locales/te.pak %%DATADIR%%/locales/th.pak %%DATADIR%%/locales/tr.pak %%DATADIR%%/locales/uk.pak %%DATADIR%%/locales/vi.pak %%DATADIR%%/locales/zh-CN.pak %%DATADIR%%/locales/zh-TW.pak %%DATADIR%%/mksnapshot %%DATADIR%%/resources.pak %%DATADIR%%/resources/extension/demo/library.js %%DATADIR%%/resources/inspector/Images/applicationCache.png -%%DATADIR%%/resources/inspector/Images/back.png %%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/cookie.png %%DATADIR%%/resources/inspector/Images/database.png %%DATADIR%%/resources/inspector/Images/databaseTable.png %%DATADIR%%/resources/inspector/Images/deleteIcon.png %%DATADIR%%/resources/inspector/Images/domain.png %%DATADIR%%/resources/inspector/Images/errorWave.png %%DATADIR%%/resources/inspector/Images/errorWave_2x.png %%DATADIR%%/resources/inspector/Images/fileSystem.png %%DATADIR%%/resources/inspector/Images/forward.png %%DATADIR%%/resources/inspector/Images/frame.png %%DATADIR%%/resources/inspector/Images/graphLabelCalloutLeft.png %%DATADIR%%/resources/inspector/Images/graphLabelCalloutRight.png %%DATADIR%%/resources/inspector/Images/indexedDB.png %%DATADIR%%/resources/inspector/Images/indexedDBIndex.png %%DATADIR%%/resources/inspector/Images/indexedDBObjectStore.png %%DATADIR%%/resources/inspector/Images/localStorage.png %%DATADIR%%/resources/inspector/Images/navigationControls.png %%DATADIR%%/resources/inspector/Images/navigationControls_2x.png %%DATADIR%%/resources/inspector/Images/paneAddButtons.png +%%DATADIR%%/resources/inspector/Images/paneAnimationsButtons.png %%DATADIR%%/resources/inspector/Images/paneElementStateButtons.png %%DATADIR%%/resources/inspector/Images/paneFilterButtons.png %%DATADIR%%/resources/inspector/Images/paneRefreshButtons.png %%DATADIR%%/resources/inspector/Images/popoverArrows.png %%DATADIR%%/resources/inspector/Images/popoverBackground.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/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/responsiveDesign.png %%DATADIR%%/resources/inspector/Images/responsiveDesign_2x.png %%DATADIR%%/resources/inspector/Images/searchNext.png %%DATADIR%%/resources/inspector/Images/searchPrev.png %%DATADIR%%/resources/inspector/Images/sessionStorage.png %%DATADIR%%/resources/inspector/Images/settingsListRemove.png %%DATADIR%%/resources/inspector/Images/settingsListRemove_2x.png %%DATADIR%%/resources/inspector/Images/statusbarButtonGlyphs.png %%DATADIR%%/resources/inspector/Images/statusbarButtonGlyphs_2x.png %%DATADIR%%/resources/inspector/Images/statusbarResizerHorizontal.png %%DATADIR%%/resources/inspector/Images/statusbarResizerVertical.png %%DATADIR%%/resources/inspector/Images/thumbActiveHoriz.png %%DATADIR%%/resources/inspector/Images/thumbActiveVert.png %%DATADIR%%/resources/inspector/Images/thumbHoriz.png %%DATADIR%%/resources/inspector/Images/thumbHoverHoriz.png %%DATADIR%%/resources/inspector/Images/thumbHoverVert.png %%DATADIR%%/resources/inspector/Images/thumbVert.png %%DATADIR%%/resources/inspector/Images/toolbarItemSelected.png %%DATADIR%%/resources/inspector/Images/touchCursor.png %%DATADIR%%/resources/inspector/Images/touchCursor_2x.png -%%DATADIR%%/resources/inspector/Images/transformControls.png -%%DATADIR%%/resources/inspector/Images/transformControls_2x.png %%DATADIR%%/resources/inspector/InspectorBackendCommands.js %%DATADIR%%/resources/inspector/SupportedCSSProperties.js %%DATADIR%%/resources/inspector/audits_module.js +%%DATADIR%%/resources/inspector/components_lazy_module.js %%DATADIR%%/resources/inspector/console_module.js %%DATADIR%%/resources/inspector/devices_module.js %%DATADIR%%/resources/inspector/devtools.css %%DATADIR%%/resources/inspector/devtools.html %%DATADIR%%/resources/inspector/devtools.js %%DATADIR%%/resources/inspector/devtools_extension_api.js -%%DATADIR%%/resources/inspector/documentation_module.js %%DATADIR%%/resources/inspector/elements_module.js %%DATADIR%%/resources/inspector/heap_snapshot_worker_module.js +%%DATADIR%%/resources/inspector/inspector.css +%%DATADIR%%/resources/inspector/inspector.html +%%DATADIR%%/resources/inspector/inspector.js %%DATADIR%%/resources/inspector/layers_module.js %%DATADIR%%/resources/inspector/network_module.js %%DATADIR%%/resources/inspector/profiler_module.js %%DATADIR%%/resources/inspector/promises_module.js %%DATADIR%%/resources/inspector/resources_module.js %%DATADIR%%/resources/inspector/script_formatter_worker_module.js %%DATADIR%%/resources/inspector/settings_module.js %%DATADIR%%/resources/inspector/source_frame_module.js %%DATADIR%%/resources/inspector/sources_module.js %%DATADIR%%/resources/inspector/temp_storage_shared_worker_module.js %%DATADIR%%/resources/inspector/timeline_module.js %%DATADIR%%/resources/inspector/toolbox.css %%DATADIR%%/resources/inspector/toolbox.html %%DATADIR%%/resources/inspector/toolbox.js +%%DATADIR%%/resources/inspector/ui_lazy_module.js 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 @dir %%DATADIR%%/locales @dir %%DATADIR%%/resources/extension/demo @dir %%DATADIR%%/resources/extension @dir %%DATADIR%%/resources/inspector/Images @dir %%DATADIR%%/resources/inspector @dir %%DATADIR%%/resources @dir %%DATADIR%% @dir share/icons/hicolor/128x128/apps @dir share/icons/hicolor/128x128 @dir share/icons/hicolor/22x22/apps @dir share/icons/hicolor/22x22 @dir share/icons/hicolor/24x24/apps @dir share/icons/hicolor/24x24 @dir share/icons/hicolor/256x256/apps @dir share/icons/hicolor/256x256 @dir share/icons/hicolor/48x48/apps @dir share/icons/hicolor/48x48 @dir share/icons/hicolor/64x64/apps @dir share/icons/hicolor/64x64 @dir share/icons/hicolor @dir share/icons