Date: Wed, 13 Nov 2019 21:40:57 +0000 (UTC) From: Luca Pizzamiglio <pizzamig@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r517388 - in head/devel/electron4: . files Message-ID: <201911132140.xADLev5L067579@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: pizzamig Date: Wed Nov 13 21:40:56 2019 New Revision: 517388 URL: https://svnweb.freebsd.org/changeset/ports/517388 Log: devel/electron4: Update to 4.2.12 Changes: https://github.com/electron/electron/releases/tag/v4.2.12 Changes: https://github.com/electron/electron/releases/tag/v4.2.11 Changes: https://github.com/electron/electron/releases/tag/v4.2.10 Submitted by: maintainer (via github) Added: head/devel/electron4/files/patch-tools_gn_base_files_file__posix.cc (contents, props changed) head/devel/electron4/files/patch-tools_gn_base_files_file__util.h (contents, props changed) head/devel/electron4/files/patch-tools_gn_base_files_file__util__posix.cc (contents, props changed) head/devel/electron4/files/patch-tools_gn_base_files_scoped__file.cc (contents, props changed) head/devel/electron4/files/patch-tools_gn_build_gen.py (contents, props changed) head/devel/electron4/files/patch-tools_gn_tools_gn_exec__process.cc (contents, props changed) head/devel/electron4/files/patch-tools_gn_util_sys__info.cc (contents, props changed) Deleted: head/devel/electron4/files/patch-tools_gn_bootstrap_bootstrap.py Modified: head/devel/electron4/Makefile head/devel/electron4/distinfo head/devel/electron4/files/package-lock.json head/devel/electron4/files/package.json Modified: head/devel/electron4/Makefile ============================================================================== --- head/devel/electron4/Makefile Wed Nov 13 21:36:10 2019 (r517387) +++ head/devel/electron4/Makefile Wed Nov 13 21:40:56 2019 (r517388) @@ -5,10 +5,12 @@ DISTVERSIONPREFIX= v DISTVERSION= ${ELECTRON_VER:S/-beta./.b/} CATEGORIES= devel MASTER_SITES= https://github.com/tagattie/FreeBSD-Electron/releases/download/v4.1.0/:chromium \ + https://commondatastorage.googleapis.com/chromium-browser-official/:chromium_official \ https://commondatastorage.googleapis.com/chromium-nodejs/:chromium_node \ https://commondatastorage.googleapis.com/chromium-fonts/:chromium_testfonts PKGNAMESUFFIX= 4 DISTFILES= chromium-${CHROMIUM_VER}${EXTRACT_SUFX}:chromium \ + chromium-${CHROMIUM_OFFICIAL_VER}${EXTRACT_SUFX}:chromium_official \ ${CHROMIUM_NODE_MODULES_HASH}:chromium_node \ electron-npm-modules-${ELECTRON_VER}${EXTRACT_SUFX}:prefetch DIST_SUBDIR= ${PORTNAME} @@ -19,12 +21,9 @@ COMMENT= Build cross-platform desktop apps with JavaSc LICENSE= MIT LICENSE_FILE= ${WRKSRC}/electron/LICENSE -BROKEN= fails to build - FETCH_DEPENDS= npm:www/npm-node10 PATCH_DEPENDS= git:devel/git BUILD_DEPENDS= ${LOCALBASE}/bin/ar:devel/binutils \ - gn:devel/chromium-gn \ gperf:devel/gperf \ yasm:devel/yasm \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ @@ -52,7 +51,7 @@ RUN_DEPENDS= xdg-open:devel/xdg-utils TEST_DEPENDS= npm:www/npm-node10 USES= bison dos2unix gettext-tools gl gnome jpeg localbase:ldflags \ - ninja pkgconfig python:2.7,build tar:xz xorg + ninja pkgconfig python:2.7,build tar:xz CONFLICTS_INSTALL= electron5 @@ -64,7 +63,9 @@ GH_TUPLE= electron:node:8bc5d171a0873c0ba49f9433798bc8 # yaml:pyyaml:3.12:pyyaml \ # kennethreitz:requests:e4d59bedfd3c7f4f254f4f5d036587bcd8152458:requests -ELECTRON_VER= 4.2.9 +ELECTRON_VER= 4.2.12 +# Official chromium version containing "gn" which is known to work +CHROMIUM_OFFICIAL_VER= 76.0.3809.132 # See ${WRKSRC}/electron/DEPS for CHROMIUM_VER CHROMIUM_VER= 69.0.3497.128 # See ${WRKSRC}/third_party/node/node_modules.tar.gz.sha1 for CHROMIUM_NODE_MODULES_HASH @@ -107,6 +108,7 @@ GN_ARGS+= clang_use_chrome_plugins=false \ use_system_libjpeg=true \ extra_cxxflags="${CXXFLAGS}" \ extra_ldflags="${LDFLAGS}" +GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild --skip-generate-buildfiles ALL_TARGET= electron MAKE_ARGS= -C out/${BUILDTYPE} @@ -157,7 +159,7 @@ TEST_ALL_TARGET+= third_party/electron_node:headers POST_BUILD_TARGETS= licenses version POST_BUILD_DIST_TARGETS= dist.zip chromedriver.zip mksnapshot.zip -NPM_TIMESTAMP= 1565176036 +NPM_TIMESTAMP= 1573298347 PLIST_SUB= ELECTRON_VER=${ELECTRON_VER} @@ -196,6 +198,9 @@ pre-fetch: post-extract: ${MV} ${WRKDIR}/${PORTNAME}-${ELECTRON_VER}/chromium-${CHROMIUM_VER} ${WRKSRC} + ${RM} -r ${WRKSRC}/tools/gn + ${MV} ${WRKDIR}/${PORTNAME}-${ELECTRON_VER}/chromium-${CHROMIUM_OFFICIAL_VER}/tools/gn \ + ${WRKSRC}/tools/gn ${MV} ${WRKDIR}/${PORTNAME}-${ELECTRON_VER}/${PORTNAME}-${ELECTRON_VER} ${WRKSRC}/electron ${MV} ${WRKDIR}/${PORTNAME}-${ELECTRON_VER}/${GH_PROJECT_node}-${GH_TAGNAME_node} \ ${WRKSRC}/third_party/${GH_ACCOUNT_node}_${GH_PROJECT_node} @@ -233,7 +238,11 @@ pre-configure: libxslt openh264 opus snappy yasm || ${FALSE} do-configure: - cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} gn gen out/${BUILDTYPE} \ + # GN generator bootstrapping and generating ninja files + cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ + READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ + ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} + cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn gen out/${BUILDTYPE} \ --args='import("//electron/build/args/${BUILDTYPE:tl}.gn") ${GN_ARGS}' # Setup nodejs dependency ${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd-x64/bin Modified: head/devel/electron4/distinfo ============================================================================== --- head/devel/electron4/distinfo Wed Nov 13 21:36:10 2019 (r517387) +++ head/devel/electron4/distinfo Wed Nov 13 21:40:56 2019 (r517388) @@ -1,13 +1,15 @@ -TIMESTAMP = 1565176191 +TIMESTAMP = 1573298479 SHA256 (electron/chromium-69.0.3497.128.tar.xz) = af2b0ee2d16255fd28c3ef23a1481eebe58d6604f238b154594072e17ac643ed SIZE (electron/chromium-69.0.3497.128.tar.xz) = 1363607512 +SHA256 (electron/chromium-76.0.3809.132.tar.xz) = d54e4640b5e399d170dffbc5bcff65157eb1b29314b94b5d808f727d9ce45241 +SIZE (electron/chromium-76.0.3809.132.tar.xz) = 728899912 SHA256 (electron/050c85d20f7cedd7f5c39533c1ba89dcdfa56a08) = d2e12fe5e144628f70536d1fea30fa817b7639f067e69f6a9e926f7311c9ec00 SIZE (electron/050c85d20f7cedd7f5c39533c1ba89dcdfa56a08) = 4535767 -SHA256 (electron/electron-npm-modules-4.2.9.tar.xz) = dc06738638b00fec4f04254ea212f0ce292193f9e0077e5064859589dc63bf68 -SIZE (electron/electron-npm-modules-4.2.9.tar.xz) = 15033460 +SHA256 (electron/electron-npm-modules-4.2.12.tar.xz) = b738e5394f47902a5a3f37303c32e838541707b38e4cdb8d29691c582280b809 +SIZE (electron/electron-npm-modules-4.2.12.tar.xz) = 15031340 SHA256 (electron/a22de844e32a3f720d219e3911c3da3478039f89) = 6e331676d098a57c53c1250821dc47ed84c47f823901bf30c4704df90d8a34be SIZE (electron/a22de844e32a3f720d219e3911c3da3478039f89) = 17469927 -SHA256 (electron/electron-electron-v4.2.9_GH0.tar.gz) = a710da8d07aa330d9982a2dba061c0245531bbf1eabd28a1c28259e8865c320b -SIZE (electron/electron-electron-v4.2.9_GH0.tar.gz) = 6531752 +SHA256 (electron/electron-electron-v4.2.12_GH0.tar.gz) = cb8f69579f0db819756d931f2d1dc4fedc6469a5496ff7684d1bd699534618a9 +SIZE (electron/electron-electron-v4.2.12_GH0.tar.gz) = 6531419 SHA256 (electron/electron-node-8bc5d171a0873c0ba49f9433798bc8b67399788c_GH0.tar.gz) = bc94083d3904643f17181c83db83a1c7d6557044e957185d0d73d88e82472b90 SIZE (electron/electron-node-8bc5d171a0873c0ba49f9433798bc8b67399788c_GH0.tar.gz) = 56885474 Modified: head/devel/electron4/files/package-lock.json ============================================================================== --- head/devel/electron4/files/package-lock.json Wed Nov 13 21:36:10 2019 (r517387) +++ head/devel/electron4/files/package-lock.json Wed Nov 13 21:40:56 2019 (r517388) @@ -1,6 +1,6 @@ { "name": "electron", - "version": "4.2.9", + "version": "4.2.12", "lockfileVersion": 1, "requires": true, "dependencies": { Modified: head/devel/electron4/files/package.json ============================================================================== --- head/devel/electron4/files/package.json Wed Nov 13 21:36:10 2019 (r517387) +++ head/devel/electron4/files/package.json Wed Nov 13 21:40:56 2019 (r517388) @@ -1,6 +1,6 @@ { "name": "electron", - "version": "4.2.9", + "version": "4.2.12", "repository": "https://github.com/electron/electron", "description": "Build cross platform desktop apps with JavaScript, HTML, and CSS", "devDependencies": { Added: head/devel/electron4/files/patch-tools_gn_base_files_file__posix.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/electron4/files/patch-tools_gn_base_files_file__posix.cc Wed Nov 13 21:40:56 2019 (r517388) @@ -0,0 +1,11 @@ +--- tools/gn/base/files/file_posix.cc.orig 2019-08-26 19:07:16 UTC ++++ tools/gn/base/files/file_posix.cc +@@ -414,7 +414,7 @@ void File::DoInitialize(const FilePath& path, uint32_t + bool File::Flush() { + DCHECK(IsValid()); + +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_BSD) + return !HANDLE_EINTR(fdatasync(file_.get())); + #else + return !HANDLE_EINTR(fsync(file_.get())); Added: head/devel/electron4/files/patch-tools_gn_base_files_file__util.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/electron4/files/patch-tools_gn_base_files_file__util.h Wed Nov 13 21:40:56 2019 (r517388) @@ -0,0 +1,11 @@ +--- tools/gn/base/files/file_util.h.orig 2019-08-26 19:07:16 UTC ++++ tools/gn/base/files/file_util.h +@@ -361,7 +361,7 @@ bool VerifyPathControlledByAdmin(const base::FilePath& + // the directory |path|, in the number of FilePath::CharType, or -1 on failure. + int GetMaximumPathComponentLength(const base::FilePath& path); + +-#if defined(OS_LINUX) || defined(OS_AIX) ++#if defined(OS_LINUX) || defined(OS_AIX) || defined(OS_BSD) + // Broad categories of file systems as returned by statfs() on Linux. + enum FileSystemType { + FILE_SYSTEM_UNKNOWN, // statfs failed. Added: head/devel/electron4/files/patch-tools_gn_base_files_file__util__posix.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/electron4/files/patch-tools_gn_base_files_file__util__posix.cc Wed Nov 13 21:40:56 2019 (r517388) @@ -0,0 +1,11 @@ +--- tools/gn/base/files/file_util_posix.cc.orig 2019-08-26 19:07:16 UTC ++++ tools/gn/base/files/file_util_posix.cc +@@ -254,7 +254,7 @@ bool ReplaceFile(const FilePath& from_path, + #endif // !defined(OS_NACL_NONSFI) + + bool CreateLocalNonBlockingPipe(int fds[2]) { +-#if defined(OS_LINUX) ++#if defined(OS_LINUX) || defined(OS_BSD) + return pipe2(fds, O_CLOEXEC | O_NONBLOCK) == 0; + #else + int raw_fds[2]; Added: head/devel/electron4/files/patch-tools_gn_base_files_scoped__file.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/electron4/files/patch-tools_gn_base_files_scoped__file.cc Wed Nov 13 21:40:56 2019 (r517388) @@ -0,0 +1,11 @@ +--- tools/gn/base/files/scoped_file.cc.orig 2019-08-26 19:07:16 UTC ++++ tools/gn/base/files/scoped_file.cc +@@ -30,7 +30,7 @@ void ScopedFDCloseTraits::Free(int fd) { + // a single open directory would bypass the entire security model. + int ret = IGNORE_EINTR(close(fd)); + +-#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_FUCHSIA) || \ ++#if defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_FUCHSIA) || defined(OS_BSD) || \ + defined(OS_ANDROID) + // NB: Some file descriptors can return errors from close() e.g. network + // filesystems such as NFS and Linux input devices. On Linux, macOS, and Added: head/devel/electron4/files/patch-tools_gn_build_gen.py ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/electron4/files/patch-tools_gn_build_gen.py Wed Nov 13 21:40:56 2019 (r517388) @@ -0,0 +1,33 @@ +--- tools/gn/build/gen.py.orig 2019-08-26 19:07:16 UTC ++++ tools/gn/build/gen.py +@@ -46,7 +46,7 @@ class Platform(object): + + @staticmethod + def known_platforms(): +- return ['linux', 'darwin', 'msvc', 'aix', 'fuchsia', 'openbsd'] ++ return ['linux', 'darwin', 'msvc', 'aix', 'fuchsia', 'openbsd', 'freebsd'] + + def platform(self): + return self._platform +@@ -69,6 +69,9 @@ class Platform(object): + def is_aix(self): + return self._platform == 'aix' + ++ def is_freebsd(self): ++ return self._platform == 'freebsd' ++ + def is_posix(self): + return self._platform in ['linux', 'freebsd', 'darwin', 'aix', 'openbsd'] + +@@ -335,6 +338,11 @@ def WriteGNNinja(path, platform, host, options): + elif platform.is_aix(): + cflags_cc.append('-maix64') + ldflags.append('-maix64') ++ elif platform.is_freebsd(): ++ cflags.extend(['-Wno-deprecated-register', '-Wno-parentheses-equality']) ++ ldflags.extend(['-pthread']) ++ libs.extend(['-lexecinfo', '-lkvm', '-lutil']) ++ include_dirs += ['/usr/local/include'] + + if platform.is_posix(): + ldflags.append('-pthread') Added: head/devel/electron4/files/patch-tools_gn_tools_gn_exec__process.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/electron4/files/patch-tools_gn_tools_gn_exec__process.cc Wed Nov 13 21:40:56 2019 (r517388) @@ -0,0 +1,13 @@ +--- tools/gn/tools/gn/exec_process.cc.orig 2019-08-26 19:07:16 UTC ++++ tools/gn/tools/gn/exec_process.cc +@@ -29,6 +29,10 @@ + #include "base/posix/file_descriptor_shuffle.h" + #endif + ++#if defined(OS_BSD) ++#include <signal.h> ++#endif ++ + namespace internal { + + #if defined(OS_WIN) Added: head/devel/electron4/files/patch-tools_gn_util_sys__info.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/electron4/files/patch-tools_gn_util_sys__info.cc Wed Nov 13 21:40:56 2019 (r517388) @@ -0,0 +1,11 @@ +--- tools/gn/util/sys_info.cc.orig 2019-08-26 19:07:16 UTC ++++ tools/gn/util/sys_info.cc +@@ -28,6 +28,8 @@ std::string OperatingSystemArchitecture() { + arch = "x86"; + } else if (arch == "amd64") { + arch = "x86_64"; ++ } else if (arch == "arm64") { ++ arch = "aarch64"; + } else if (std::string(info.sysname) == "AIX") { + arch = "ppc64"; + }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201911132140.xADLev5L067579>