Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Oct 2019 19:07:23 +0000 (UTC)
From:      Brooks Davis <brooks@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r515213 - in head/devel/llvm90: . files/ppc64-elfv2
Message-ID:  <201910221907.x9MJ7NLM060223@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: brooks
Date: Tue Oct 22 19:07:22 2019
New Revision: 515213
URL: https://svnweb.freebsd.org/changeset/ports/515213

Log:
  Fix build without CLANG enabled. [0]
  
  Fix LLD build where PREFIX != LOCALBASE. [1]
  
  powerpc64: add configure option to select ELFv2 ABI [2]
  
  In preparation for compiler+ABI change in PowerPC64, this change adds a
  configure option to select ELFv2 as default powerpc64 ABI when compiling
  llvm90.
  
  The new option automatically set when ELFv2 environment is detected
  (when PPC_ABI=ELFv2)
  
  PR:		241400 [1], 241410 [0]
  Submitted by:	Alfredo Dal'Ava JĂșnior [2]
  Differential Revision:	https://reviews.freebsd.org/D22100 [2]

Added:
  head/devel/llvm90/files/ppc64-elfv2/
     - copied from r515154, head/devel/llvm-devel/files/ppc64-elfv2/
Modified:
  head/devel/llvm90/Makefile
  head/devel/llvm90/pkg-plist

Modified: head/devel/llvm90/Makefile
==============================================================================
--- head/devel/llvm90/Makefile	Tue Oct 22 18:59:38 2019	(r515212)
+++ head/devel/llvm90/Makefile	Tue Oct 22 19:07:22 2019	(r515213)
@@ -2,7 +2,7 @@
 
 PORTNAME=	llvm
 DISTVERSION=	9.0.0
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	devel lang
 .if ${DISTVERSION:M*rc*}
 MASTER_SITES=  https://prereleases.llvm.org/${LLVM_RELEASE}/${RCDIR}
@@ -66,7 +66,7 @@ CMAKE_ARGS+=	-DPYTHON_EXECUTABLE=${PYTHON_CMD} \
 CFLAGS+=	-DNDEBUG
 CXXFLAGS+=	-DNDEBUG
 
-OPTIONS_DEFINE=	BE_AMDGPU CLANG DOCS EXTRAS LIT LLD LLD_LINK LLDB PYCLANG
+OPTIONS_DEFINE=	BE_AMDGPU CLANG DOCS ELFV2 EXTRAS LIT LLD LLD_LINK LLDB PYCLANG
 OPTIONS_DEFINE_amd64=	COMPILER_RT GOLD OPENMP
 OPTIONS_DEFINE_i386=	COMPILER_RT OPENMP
 OPTIONS_DEFINE_powerpc64=	OPENMP
@@ -106,6 +106,9 @@ DOCS_CMAKE_ON=		-DLLVM_ENABLE_SPHINX=ON \
 			-DSPHINX_WARNINGS_AS_ERRORS=OFF \
 			-DLLVM_BUILD_DOCS=ON
 DOCS_PLIST_FILES=	${MAN1SRCS:S|^|man/man1/|:S|.1$|${LLVM_SUFFIX}.1.gz|}
+ELFV2_DESC=		[PowerPC64] Use OpenPOWER ELF ABI v2 by default
+ELFV2_EXTRA_PATCHES=	${PATCHDIR}/ppc64-elfv2
+ELFV2_IMPLIES=		CLANG
 EXTRAS_DESC=		Extra clang tools
 EXTRAS_EXTRA_PATCHES=	${PATCHDIR}/extras
 EXTRAS_IMPLIES=		CLANG
@@ -217,6 +220,11 @@ EXTRAS_PATTERN=	${EXTRAS_COMMANDS:tW:C/  */|/g}|${EXTR
 
 .include <bsd.port.options.mk>
 
+# PPC_ABI variable is only defined after including bsd.port.options.mk
+.if defined(PPC_ABI) && ${PPC_ABI} == ELFv2
+OPTIONS_DEFAULT_powerpc64=	ELFV2
+.endif
+
 # keep in sync with /usr/src/lib/clang/clang.build.mk
 # ----------- start of sync block ------------------
 # Armv6 and armv7 uses hard float abi, unless the CPUTYPE has soft in it.
@@ -238,7 +246,7 @@ COMMANDS+=	${CLANG_COMMANDS}
 MAN1SRCS+=	clang.1 \
 		diagtool.1 \
 		scan-build.1
-CLANG_PATTERN=	(c-index-test|clang|diagtool|hmaptool|scan-|Reporter.py|ScanView.py|scanview.css|sorttable.js|startfile.py|-analyzer)
+CLANG_PATTERN=	(c-index-test|clang|diagtool|hmaptool|scan-|Reporter.py|ScanView.py|scanview.css|sorttable.js|startfile.py|-analyzer|AnalyzerPlugin.so)
 SHEBANG_FILES+=	tools/clang/tools/scan-view/bin/scan-view \
 		tools/clang/tools/clang-format/clang-format-diff.py \
 		tools/clang/tools/clang-format/git-clang-format \
@@ -536,7 +544,7 @@ post-install-LIT-on:
 	    ${STAGEDIR}${PREFIX}/bin/FileCheck${LLVM_SUFFIX}
 
 post-install-LLD_LINK-on:
-	${LN} -s ld.lld ${STAGEDIR}${LOCALBASE}/llvm${LLVM_SUFFIX}/bin/ld
+	${LN} -s ld.lld ${STAGEDIR}${LLVM_PREFIX}/bin/ld
 
 TEST_CMD=	'(cd ${WRKSRC}/test; ${SETENV} ${MAKE_ENV} LD_LIBRARY_PATH=${WRKSRC}/Release/lib ${MAKE_CMD} check-local-lit)'
 do-test:

Modified: head/devel/llvm90/pkg-plist
==============================================================================
--- head/devel/llvm90/pkg-plist	Tue Oct 22 18:59:38 2019	(r515212)
+++ head/devel/llvm90/pkg-plist	Tue Oct 22 19:07:22 2019	(r515213)
@@ -2729,10 +2729,10 @@ llvm%%LLVM_SUFFIX%%/include/llvm/XRay/YAMLXRayRecord.h
 %%COMPILER_RT%%llvm%%LLVM_SUFFIX%%/include/xray/xray_interface.h
 %%COMPILER_RT%%llvm%%LLVM_SUFFIX%%/include/xray/xray_log_interface.h
 %%COMPILER_RT%%llvm%%LLVM_SUFFIX%%/include/xray/xray_records.h
-llvm%%LLVM_SUFFIX%%/lib/CheckerDependencyHandlingAnalyzerPlugin.so
-llvm%%LLVM_SUFFIX%%/lib/CheckerOptionHandlingAnalyzerPlugin.so
+%%CLANG%%llvm%%LLVM_SUFFIX%%/lib/CheckerDependencyHandlingAnalyzerPlugin.so
+%%CLANG%%llvm%%LLVM_SUFFIX%%/lib/CheckerOptionHandlingAnalyzerPlugin.so
 %%GOLD%%llvm%%LLVM_SUFFIX%%/lib/LLVMgold.so
-llvm%%LLVM_SUFFIX%%/lib/SampleAnalyzerPlugin.so
+%%CLANG%%llvm%%LLVM_SUFFIX%%/lib/SampleAnalyzerPlugin.so
 %%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_RELEASE%%/include/__clang_cuda_builtin_vars.h
 %%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_RELEASE%%/include/__clang_cuda_cmath.h
 %%CLANG%%%%OPENMP%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_RELEASE%%/include/__clang_cuda_complex_builtins.h



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201910221907.x9MJ7NLM060223>