diff options
author | Carlos J. Puga Medina <cpm@FreeBSD.org> | 2018-09-01 13:23:08 +0000 |
---|---|---|
committer | Carlos J. Puga Medina <cpm@FreeBSD.org> | 2018-09-01 13:23:08 +0000 |
commit | 2299656dc85e8913973644394da364c6e688b2d3 (patch) | |
tree | 7f15dd99507cc3168eefed0ad1b121026e8925dd /www/chromium | |
parent | 77277fb2c0a412155617cbcf784ab458629fffd3 (diff) | |
download | ports-2299656dc85e8913973644394da364c6e688b2d3.tar.gz ports-2299656dc85e8913973644394da364c6e688b2d3.zip |
- USE_GNOME also requires USES=gnome
- Switch to USES=localbase:ldflags
- Revert Makefile.tests and include more *_unittests
- Update patch file with missing WEBRTC_BSD macro
- Apply several patches from devel/googletest (thanks to jbeich@)
- Bump PORTREVISION
Notes
Notes:
svn path=/head/; revision=478691
Diffstat (limited to 'www/chromium')
11 files changed, 155 insertions, 14 deletions
diff --git a/www/chromium/Makefile b/www/chromium/Makefile index e248d37833cc..3a8945465b8a 100644 --- a/www/chromium/Makefile +++ b/www/chromium/Makefile @@ -3,7 +3,7 @@ PORTNAME= chromium PORTVERSION= 68.0.3440.106 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES?= www MASTER_SITES= https://commondatastorage.googleapis.com/chromium-browser-official/ \ LOCAL/cpm/chromium/:fonts @@ -69,10 +69,11 @@ ONLY_FOR_ARCHS= aarch64 amd64 i386 .endif .if defined(GN_ONLY) -USES= compiler:c++14-lang ninja pkgconfig python:2.7,build shebangfix tar:xz -.else -USES= bison cpe desktop-file-utils jpeg ninja perl5 pkgconfig \ +USES= compiler:c++14-lang localbase:ldflags ninja pkgconfig \ python:2.7,build shebangfix tar:xz +.else +USES= bison cpe desktop-file-utils gnome jpeg localbase:ldflags \ + ninja perl5 pkgconfig python:2.7,build shebangfix tar:xz .endif MAKE_ARGS= -C out/${BUILDTYPE} BINARY_ALIAS= python=${PYTHON_CMD} @@ -120,8 +121,8 @@ GN_ARGS+= clang_use_chrome_plugins=false \ use_system_freetype=true \ use_system_harfbuzz=true \ use_system_libjpeg=true \ - extra_cxxflags="-I${LOCALBASE}/include" \ - extra_ldflags="-L${LOCALBASE}/lib" + extra_cxxflags="${CXXFLAGS}" \ + extra_ldflags="${LDFLAGS}" # TODO: investigate building with these options: # use_system_minigbm GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild @@ -196,7 +197,8 @@ SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false .endif -TEST_ALL_TARGET= base_unittests +.include "Makefile.tests" +TEST_ALL_TARGET= ${TEST_TARGETS} TEST_DISTFILES= ${PORTNAME}-${DISTVERSION}-testdata${EXTRACT_SUFX} \ test_fonts${EXTRACT_SUFX}:fonts diff --git a/www/chromium/Makefile.tests b/www/chromium/Makefile.tests new file mode 100644 index 000000000000..0089706a0030 --- /dev/null +++ b/www/chromium/Makefile.tests @@ -0,0 +1,9 @@ +# $FreeBSD$ +TEST_TARGETS= base_unittests \ + chromedriver_unittests \ + crypto_unittests \ + gn_unittests \ + headless_unittests \ + printing_unittests \ + url_unittests + diff --git a/www/chromium/files/patch-base_allocator_partition_allocator_partition_alloc_unittest.cc b/www/chromium/files/patch-base_allocator_partition_allocator_partition_alloc_unittest.cc new file mode 100644 index 000000000000..3f1f612dabad --- /dev/null +++ b/www/chromium/files/patch-base_allocator_partition_allocator_partition_alloc_unittest.cc @@ -0,0 +1,11 @@ +--- base/allocator/partition_allocator/partition_alloc_unittest.cc.orig 2018-08-23 19:18:25.616099000 +0200 ++++ base/allocator/partition_allocator/partition_alloc_unittest.cc 2018-08-23 19:34:45.738651000 +0200 +@@ -1297,7 +1297,7 @@ + // not provide a working setrlimit(). + #if !defined(ARCH_CPU_64_BITS) || \ + (defined(OS_POSIX) && \ +- !(defined(OS_FUCHSIA) || defined(OS_MACOSX) || defined(OS_ANDROID))) ++ !(defined(OS_FUCHSIA) || defined(OS_MACOSX) || defined(OS_ANDROID) || defined(OS_BSD))) + + // This is defined as a separate test class because RepeatedReturnNull + // test exhausts the process memory, and breaks any test in the same diff --git a/www/chromium/files/patch-base_files_file__path__watcher__unittest.cc b/www/chromium/files/patch-base_files_file__path__watcher__unittest.cc new file mode 100644 index 000000000000..e011562c7fca --- /dev/null +++ b/www/chromium/files/patch-base_files_file__path__watcher__unittest.cc @@ -0,0 +1,11 @@ +--- base/files/file_path_watcher_unittest.cc.orig 2018-08-08 21:10:31.000000000 +0200 ++++ base/files/file_path_watcher_unittest.cc 2018-08-29 20:20:06.152675000 +0200 +@@ -435,7 +435,7 @@ + VLOG(1) << "Waiting for file1 creation"; + ASSERT_TRUE(WaitForEvents()); + +-#if !defined(OS_MACOSX) ++#if !defined(OS_MACOSX) && !defined(OS_BSD) + // Mac implementation does not detect files modified in a directory. + ASSERT_TRUE(WriteFile(file1, "content v2")); + VLOG(1) << "Waiting for file1 modification"; diff --git a/www/chromium/files/patch-base_native__library__unittest.cc b/www/chromium/files/patch-base_native__library__unittest.cc new file mode 100644 index 000000000000..7e769d4b5b7a --- /dev/null +++ b/www/chromium/files/patch-base_native__library__unittest.cc @@ -0,0 +1,11 @@ +--- base/native_library_unittest.cc.orig 2018-08-23 19:08:51.430697000 +0200 ++++ base/native_library_unittest.cc 2018-08-23 19:09:42.937027000 +0200 +@@ -120,7 +120,7 @@ + // Android dlopen() requires further investigation, as it might vary across + // versions with respect to symbol resolution scope. + // TSan and MSan error out on RTLD_DEEPBIND, https://crbug.com/705255 +-#if !defined(OS_ANDROID) && !defined(THREAD_SANITIZER) && \ ++#if !defined(OS_ANDROID) && !defined(OS_BSD) && !defined(THREAD_SANITIZER) && \ + !defined(MEMORY_SANITIZER) + + // Verifies that the |prefer_own_symbols| option satisfies its guarantee that diff --git a/www/chromium/files/patch-base_task_scheduler_scheduler_single_thread_task_runner_manager_unittest.cc b/www/chromium/files/patch-base_task_scheduler_scheduler_single_thread_task_runner_manager_unittest.cc new file mode 100644 index 000000000000..f697f76df2af --- /dev/null +++ b/www/chromium/files/patch-base_task_scheduler_scheduler_single_thread_task_runner_manager_unittest.cc @@ -0,0 +1,12 @@ +--- base/task_scheduler/scheduler_single_thread_task_runner_manager_unittest.cc.orig 2018-08-31 05:44:39.768079000 +0200 ++++ base/task_scheduler/scheduler_single_thread_task_runner_manager_unittest.cc 2018-08-31 05:45:55.842704000 +0200 +@@ -301,6 +301,9 @@ + EXPECT_EQ(ThreadPriority::NORMAL, thread_priority_normal); + } + ++#if defined(OS_BSD) ++#define ThreadNamesSet DISABLED_ThreadNamesSet ++#endif + TEST_P(TaskSchedulerSingleThreadTaskRunnerManagerCommonTest, ThreadNamesSet) { + constexpr TaskTraits foo_traits = {TaskPriority::BACKGROUND, + TaskShutdownBehavior::BLOCK_SHUTDOWN}; diff --git a/www/chromium/files/patch-third__party_webrtc_rtc_base_physicalsocketserver.cc b/www/chromium/files/patch-third__party_webrtc_rtc_base_physicalsocketserver.cc index b50aeecd72de..d71fd5f1c11a 100644 --- a/www/chromium/files/patch-third__party_webrtc_rtc_base_physicalsocketserver.cc +++ b/www/chromium/files/patch-third__party_webrtc_rtc_base_physicalsocketserver.cc @@ -1,6 +1,6 @@ ---- third_party/webrtc/rtc_base/physicalsocketserver.cc.orig 2018-02-24 16:26:17.000000000 +0100 -+++ third_party/webrtc/rtc_base/physicalsocketserver.cc 2018-03-04 04:38:51.589837000 +0100 -@@ -60,7 +60,7 @@ +--- third_party/webrtc/rtc_base/physicalsocketserver.cc.orig 2018-08-08 21:13:16.000000000 +0200 ++++ third_party/webrtc/rtc_base/physicalsocketserver.cc 2018-08-27 01:15:56.484919000 +0200 +@@ -68,7 +68,7 @@ #endif // WEBRTC_POSIX @@ -9,7 +9,7 @@ int64_t GetSocketRecvTimestamp(int socket) { struct timeval tv_ioctl; -@@ -317,7 +317,7 @@ +@@ -295,7 +295,7 @@ socklen_t optlen = sizeof(*value); int ret = ::getsockopt(s_, slevel, sopt, (SockOptArg)value, &optlen); if (ret != -1 && opt == OPT_DONTFRAGMENT) { @@ -18,7 +18,7 @@ *value = (*value != IP_PMTUDISC_DONT) ? 1 : 0; #endif } -@@ -330,7 +330,7 @@ +@@ -308,7 +308,7 @@ if (TranslateOption(opt, &slevel, &sopt) == -1) return -1; if (opt == OPT_DONTFRAGMENT) { @@ -27,7 +27,7 @@ value = (value) ? IP_PMTUDISC_DO : IP_PMTUDISC_DONT; #endif } -@@ -340,7 +340,7 @@ +@@ -318,7 +318,7 @@ int PhysicalSocket::Send(const void* pv, size_t cb) { int sent = DoSend(s_, reinterpret_cast<const char *>(pv), static_cast<int>(cb), @@ -36,7 +36,16 @@ // Suppress SIGPIPE. Without this, attempting to send on a socket whose // other end is closed will result in a SIGPIPE signal being raised to // our process, which by default will terminate the process, which we -@@ -560,7 +560,7 @@ +@@ -347,7 +347,7 @@ + size_t len = addr.ToSockAddrStorage(&saddr); + int sent = DoSendTo( + s_, static_cast<const char *>(buffer), static_cast<int>(length), +-#if defined(WEBRTC_LINUX) && !defined(WEBRTC_ANDROID) ++#if defined(WEBRTC_LINUX) && !defined(WEBRTC_ANDROID) && !defined(WEBRTC_BSD) + // Suppress SIGPIPE. See above for explanation. + MSG_NOSIGNAL, + #else +@@ -538,7 +538,7 @@ *slevel = IPPROTO_IP; *sopt = IP_DONTFRAGMENT; break; diff --git a/www/chromium/files/patch-third_party_googletest_src_googletest_include_gtest_internal_gtest-port.h b/www/chromium/files/patch-third_party_googletest_src_googletest_include_gtest_internal_gtest-port.h new file mode 100644 index 000000000000..ab9e646bd7c7 --- /dev/null +++ b/www/chromium/files/patch-third_party_googletest_src_googletest_include_gtest_internal_gtest-port.h @@ -0,0 +1,11 @@ +--- third_party/googletest/src/googletest/include/gtest/internal/gtest-port.h.orig 2018-08-23 02:51:47.688298000 +0200 ++++ third_party/googletest/src/googletest/include/gtest/internal/gtest-port.h 2018-08-23 02:53:09.975152000 +0200 +@@ -841,7 +841,7 @@ + (GTEST_OS_WINDOWS || GTEST_OS_CYGWIN || GTEST_OS_SYMBIAN || GTEST_OS_AIX) + + // Determines whether test results can be streamed to a socket. +-#if GTEST_OS_LINUX ++#if GTEST_OS_LINUX || GTEST_OS_FREEBSD + # define GTEST_CAN_STREAM_RESULTS_ 1 + #endif + diff --git a/www/chromium/files/patch-third_party_googletest_src_googletest_src_gtest-port.cc b/www/chromium/files/patch-third_party_googletest_src_googletest_src_gtest-port.cc new file mode 100644 index 000000000000..59f0ab6f460d --- /dev/null +++ b/www/chromium/files/patch-third_party_googletest_src_googletest_src_gtest-port.cc @@ -0,0 +1,43 @@ +--- third_party/googletest/src/googletest/src/gtest-port.cc.orig 2018-08-23 02:39:24.119551000 +0200 ++++ third_party/googletest/src/googletest/src/gtest-port.cc 2018-08-23 02:46:41.990204000 +0200 +@@ -52,6 +52,11 @@ + # include <mach/vm_map.h> + #endif // GTEST_OS_MAC + ++#if GTEST_OS_FREEBSD ++#include <sys/sysctl.h> ++#include <sys/user.h> ++#endif ++ + #if GTEST_OS_QNX + # include <devctl.h> + # include <fcntl.h> +@@ -126,6 +131,28 @@ + } else { + return 0; + } ++} ++ ++#elif GTEST_OS_FREEBSD ++ ++#define KP_NLWP(kp) (kp.ki_numthreads) ++ ++// Return the number of threads running in the process, or 0 to indicate that ++// we cannot detect it. ++size_t GetThreadCount() { ++ int mib[] = { ++ CTL_KERN, ++ KERN_PROC, ++ KERN_PROC_PID, ++ getpid(), ++ }; ++ u_int miblen = sizeof(mib) / sizeof(mib[0]); ++ struct kinfo_proc(info); ++ size_t size = sizeof(info); ++ if (sysctl(mib, miblen, &info, &size, NULL, 0)) { ++ return 0; ++ } ++ return KP_NLWP(info); + } + + #elif GTEST_OS_QNX diff --git a/www/chromium/files/patch-third_party_googletest_src_googletest_src_gtest.cc b/www/chromium/files/patch-third_party_googletest_src_googletest_src_gtest.cc new file mode 100644 index 000000000000..4f6266182c7b --- /dev/null +++ b/www/chromium/files/patch-third_party_googletest_src_googletest_src_gtest.cc @@ -0,0 +1,10 @@ +--- third_party/googletest/src/googletest/src/gtest.cc.orig 2018-08-23 02:47:05.784079000 +0200 ++++ third_party/googletest/src/googletest/src/gtest.cc 2018-08-23 02:47:43.415365000 +0200 +@@ -128,6 +128,7 @@ + + #if GTEST_CAN_STREAM_RESULTS_ + # include <arpa/inet.h> // NOLINT ++# include <sys/socket.h> // NOLINT + # include <netdb.h> // NOLINT + # include <sys/socket.h> // NOLINT + # include <sys/types.h> // NOLINT diff --git a/www/chromium/files/patch-third_party_googletest_src_googletest_test_gtest-port_test.cc b/www/chromium/files/patch-third_party_googletest_src_googletest_test_gtest-port_test.cc new file mode 100644 index 000000000000..fd5f6b49b868 --- /dev/null +++ b/www/chromium/files/patch-third_party_googletest_src_googletest_test_gtest-port_test.cc @@ -0,0 +1,12 @@ +--- third_party/googletest/src/googletest/test/gtest-port_test.cc.orig 2018-08-23 02:48:03.607358000 +0200 ++++ third_party/googletest/src/googletest/test/gtest-port_test.cc 2018-08-23 02:48:57.198397000 +0200 +@@ -296,7 +296,8 @@ + EXPECT_EQ("unknown file", FormatCompilerIndependentFileLocation(NULL, -1)); + } + +-#if GTEST_OS_LINUX || GTEST_OS_MAC || GTEST_OS_QNX || GTEST_OS_FUCHSIA ++#if GTEST_OS_LINUX || GTEST_OS_MAC || GTEST_OS_QNX || GTEST_OS_FUCHSIA || \ ++ GTEST_OS_FREEBSD + void* ThreadFunc(void* data) { + internal::Mutex* mutex = static_cast<internal::Mutex*>(data); + mutex->Lock(); |