Date: Wed, 20 Jun 2018 08:48:19 +0000 (UTC) From: "Carlos J. Puga Medina" <cpm@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r472854 - in head/www/chromium: . files Message-ID: <201806200848.w5K8mJMZ088215@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: cpm Date: Wed Jun 20 08:48:19 2018 New Revision: 472854 URL: https://svnweb.freebsd.org/changeset/ports/472854 Log: - Add patch to build chromium with native LLVM 6.0 on FreeBSD >= 1101513 - Disable use_gold flag. If lld is disabled, chromium uses the gold linker instead of lld of bfd. We do not want this to happen. - Bump PORTREVISION Added: head/www/chromium/files/extra-patch-llvm-base (contents, props changed) head/www/chromium/files/extra-patch-llvm-port (contents, props changed) head/www/chromium/files/patch-build_config_compiler_compiler.gni (contents, props changed) Deleted: head/www/chromium/files/patch-build_toolchain_gcc__toolchain.gni Modified: head/www/chromium/Makefile Modified: head/www/chromium/Makefile ============================================================================== --- head/www/chromium/Makefile Wed Jun 20 08:37:16 2018 (r472853) +++ head/www/chromium/Makefile Wed Jun 20 08:48:19 2018 (r472854) @@ -3,7 +3,7 @@ PORTNAME= chromium PORTVERSION= 65.0.3325.181 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES?= www MASTER_SITES= https://commondatastorage.googleapis.com/chromium-browser-official/ DISTFILES= ${DISTNAME}${EXTRACT_SUFX} @@ -20,7 +20,6 @@ BUILD_DEPENDS= bash:shells/bash \ .if !defined(GN_ONLY) BUILD_DEPENDS+= gperf:devel/gperf \ - clang60:devel/llvm60 \ yasm:devel/yasm \ ffmpeg>=3.2.2,1:multimedia/ffmpeg \ flock:sysutils/flock \ @@ -91,8 +90,6 @@ SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper ALL_TARGET= chrome INSTALLS_ICONS= yes -CC= clang60 -CXX= clang++60 .endif EXTRA_PATCHES+= ${FILESDIR}/extra-patch-clang @@ -205,6 +202,16 @@ TEST_ALL_TARGET= ${TEST_TARGETS} TEST_DISTFILES= ${PORTNAME}-${DISTVERSION}-testdata${EXTRACT_SUFX} .include <bsd.port.options.mk> + +.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1101513 +BUILD_DEPENDS+= clang60:devel/llvm60 +CC= clang60 +CXX= clang++60 +EXTRA_PATCHES+= ${FILESDIR}/extra-patch-llvm-port +.else +BUILD_DEPENDS+= ${LOCALBASE}/bin/ar:devel/binutils +EXTRA_PATCHES+= ${FILESDIR}/extra-patch-llvm-base +.endif # TODO: -isystem, would be just as ugly as this approach, but more reliably # build would fail without C_INCLUDE_PATH/CPLUS_INCLUDE_PATH env var set. Added: head/www/chromium/files/extra-patch-llvm-base ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/chromium/files/extra-patch-llvm-base Wed Jun 20 08:48:19 2018 (r472854) @@ -0,0 +1,45 @@ +--- build/toolchain/gcc_toolchain.gni.orig 2018-03-20 23:05:14.000000000 +0100 ++++ build/toolchain/gcc_toolchain.gni 2018-06-18 20:55:17.080248000 +0200 +@@ -25,6 +25,11 @@ + rebase_path("//build/toolchain/clang_static_analyzer_wrapper.py", + root_build_dir) + " --mode=clang" + ++declare_args() { ++ extra_cxxflags = "" ++ extra_ldflags = "" ++} ++ + # This template defines a toolchain for something that works like gcc + # (including clang). + # +@@ -596,13 +601,23 @@ + } + + gcc_toolchain(target_name) { +- prefix = rebase_path("$clang_base_path/bin", root_build_dir) +- cc = "$prefix/clang" +- cxx = "$prefix/clang++" +- ld = cxx +- readelf = "${toolprefix}readelf" +- ar = "${prefix}/llvm-ar" +- nm = "${toolprefix}nm" ++ if (is_bsd) { ++ prefix = "/usr/local/bin" ++ cc = "cc" ++ cxx = "c++" ++ ld = cxx ++ readelf = "readelf" ++ ar = "${prefix}/ar" ++ nm = "${toolprefix}nm" ++ } else { ++ prefix = rebase_path("$clang_base_path/bin", root_build_dir) ++ cc = "$prefix/clang" ++ cxx = "$prefix/clang++" ++ ld = cxx ++ readelf = "${toolprefix}readelf" ++ ar = "${prefix}/llvm-ar" ++ nm = "${toolprefix}nm" ++ } + + forward_variables_from(invoker, + [ Added: head/www/chromium/files/extra-patch-llvm-port ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/chromium/files/extra-patch-llvm-port Wed Jun 20 08:48:19 2018 (r472854) @@ -0,0 +1,44 @@ +--- build/toolchain/gcc_toolchain.gni.orig 2017-06-05 19:03:01 UTC ++++ build/toolchain/gcc_toolchain.gni +@@ -19,6 +19,11 @@ analyzer_wrapper = + rebase_path("//build/toolchain/clang_static_analyzer_wrapper.py", + root_build_dir) + " --mode=clang" + ++declare_args() { ++ extra_cxxflags = "" ++ extra_ldflags = "" ++} ++ + # This template defines a toolchain for something that works like gcc + # (including clang). + # +@@ -548,13 +553,22 @@ template("clang_toolchain") { + } + + gcc_toolchain(target_name) { +- prefix = rebase_path("$clang_base_path/bin", root_build_dir) +- cc = "$prefix/clang" +- cxx = "$prefix/clang++" +- ld = cxx +- readelf = "${toolprefix}readelf" +- ar = "${prefix}/llvm-ar" +- nm = "${toolprefix}nm" ++ if (is_bsd) { ++ cc = "${toolprefix}clang60" ++ cxx = "${toolprefix}clang++60" ++ ld = cxx ++ readelf = "readelf" ++ ar = "${toolprefix}llvm-ar60" ++ nm = "${toolprefix}llvm-nm60" ++ } else { ++ prefix = rebase_path("$clang_base_path/bin", root_build_dir) ++ cc = "$prefix/clang" ++ cxx = "$prefix/clang++" ++ ld = cxx ++ readelf = "${toolprefix}readelf" ++ ar = "${prefix}/llvm-ar" ++ nm = "${toolprefix}nm" ++ } + + forward_variables_from(invoker, + [ Added: head/www/chromium/files/patch-build_config_compiler_compiler.gni ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/chromium/files/patch-build_config_compiler_compiler.gni Wed Jun 20 08:48:19 2018 (r472854) @@ -0,0 +1,11 @@ +--- build/config/compiler/compiler.gni.orig 2018-06-19 18:20:54.692104000 +0200 ++++ build/config/compiler/compiler.gni 2018-06-19 18:21:18.098165000 +0200 +@@ -164,7 +164,7 @@ + + declare_args() { + # Whether to use the gold linker from binutils instead of lld or bfd. +- use_gold = ++ use_gold = !is_bsd && + (!use_lld && !(is_chromecast && is_linux && + (current_cpu == "arm" || current_cpu == "mipsel")) && + (is_linux && (current_cpu == "x64" || current_cpu == "x86" ||
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201806200848.w5K8mJMZ088215>