| 1 |
# Created by: Hye-Shik Chang |
| 2 |
# $FreeBSD$ |
| 3 |
|
| 4 |
PORTNAME= llvm |
| 5 |
PORTVERSION= ${LLVM_MAJOR}.d${SNAPDATE} |
| 6 |
CATEGORIES= devel lang |
| 7 |
PKGNAMESUFFIX= -devel |
| 8 |
|
| 9 |
MAINTAINER= brooks@FreeBSD.org |
| 10 |
COMMENT= LLVM and Clang |
| 11 |
|
| 12 |
BROKEN_powerpc64= Does not build |
| 13 |
|
| 14 |
LLVM_SUFFIX= -devel |
| 15 |
LLVM_PREFIX= ${PREFIX}/llvm${LLVM_SUFFIX} |
| 16 |
DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${LLVM_SUFFIX} |
| 17 |
DATADIR= ${PREFIX}/share/${PORTNAME}${LLVM_SUFFIX} |
| 18 |
|
| 19 |
USES= cmake:outsource compiler:c++11-lib libedit ninja perl5 |
| 20 |
USE_LDCONFIG= ${LLVM_PREFIX}/lib |
| 21 |
_USES_PYTHON?= python:build |
| 22 |
USES+= ${_USES_PYTHON} |
| 23 |
|
| 24 |
SUB_FILES= llvm-wrapper.sh |
| 25 |
SUB_LIST= LLVM_PREFIX="${LLVM_PREFIX}" LLVM_SUFFIX="${LLVM_SUFFIX}" |
| 26 |
|
| 27 |
CMAKE_INSTALL_PREFIX= ${LLVM_PREFIX} |
| 28 |
CMAKE_ARGS= -DLLVM_BUILD_LLVM_DYLIB=ON |
| 29 |
# Following commit https://github.com/kitware/cmake/commit/956054 |
| 30 |
# we need to either change the whole man-shuffle below, or simply |
| 31 |
# redefine CMAKE_INSTALL_MANDIR |
| 32 |
CMAKE_ARGS+= -DCMAKE_INSTALL_MANDIR:PATH="share/man" |
| 33 |
|
| 34 |
USE_GITHUB= yes |
| 35 |
GH_ACCOUNT= llvm-mirror |
| 36 |
GH_TAGNAME= ${LLVM_COMMIT} |
| 37 |
|
| 38 |
.include "Makefile.snapshot" |
| 39 |
|
| 40 |
OPTIONS_DEFINE= CLANG DOCS EXTRAS LIT LLD LLDB |
| 41 |
OPTIONS_DEFINE_amd64= COMPILER_RT GOLD OPENMP |
| 42 |
OPTIONS_DEFINE_i386= COMPILER_RT |
| 43 |
OPTIONS_DEFAULT= CLANG EXTRAS LIT LLD LLDB |
| 44 |
OPTIONS_DEFAULT_amd64= COMPILER_RT GOLD OPENMP |
| 45 |
OPTIONS_DEFAULT_i386= COMPILER_RT |
| 46 |
OPTIONS_SUB= yes |
| 47 |
|
| 48 |
PLIST_FILES= |
| 49 |
|
| 50 |
CLANG_DESC= Build clang |
| 51 |
CLANG_EXTRA_PATCHES= \ |
| 52 |
${PATCHDIR}/clang-patch-fformat_extensions.diff \ |
| 53 |
${PATCHDIR}/clang-patch-fopenmp.diff \ |
| 54 |
${PATCHDIR}/clang-patch-tools_clang_lib_Headers_CMakeLists.txt |
| 55 |
CLANG_CONFLICTS_INSTALL= clang-devel-3.[1234567]* |
| 56 |
CLANG_GH_PROJECT= clang:clang |
| 57 |
CLANG_GH_SUBDIR= tools/clang:clang |
| 58 |
CLANG_GH_TAGNAME= ${CLANG_COMMIT}:clang |
| 59 |
CLANG_CMAKE_ON= -DCLANG_DEFAULT_OPENMP_RUNTIME=libomp |
| 60 |
CLANG_PORTDOCS= clang |
| 61 |
CLANG_USE= GNOME=libxml2 |
| 62 |
COMPILER_RT_DESC= Sanitizer libraries |
| 63 |
COMPILER_RT_IMPLIES= CLANG |
| 64 |
COMPILER_RT_GH_PROJECT= compiler-rt:compiler_rt |
| 65 |
COMPILER_RT_GH_TAGNAME= ${COMPILER_RT_COMMIT}:compiler_rt |
| 66 |
COMPILER_RT_PLIST_FILES=${_COMPILER_RT_LIBS:S|^|${_CRTLIBDIR}/|} |
| 67 |
DOCS_PORTDOCS= llvm |
| 68 |
DOCS_CMAKE_ON= -DLLVM_ENABLE_SPHINX=ON \ |
| 69 |
-DSPHINX_WARNINGS_AS_ERRORS=OFF \ |
| 70 |
-DLLVM_BUILD_DOCS=ON |
| 71 |
DOCS_PLIST_FILES= ${MAN1SRCS:S|^|man/man1/|:S|.1$|${LLVM_SUFFIX}.1.gz|} |
| 72 |
EXTRAS_DESC= Extra clang tools |
| 73 |
EXTRAS_IMPLIES= CLANG |
| 74 |
EXTRAS_GH_PROJECT= clang-tools-extra:extras |
| 75 |
EXTRAS_GH_SUBDIR= tools/clang/tools/extra:extras |
| 76 |
EXTRAS_GH_TAGNAME= ${EXTRAS_COMMIT}:extras |
| 77 |
LIT_DESC= Install lit and FileCheck test tools |
| 78 |
LLDB_VARS= _USES_PYTHON=python |
| 79 |
LLD_DESC= Install lld, the LLVM linker |
| 80 |
LLD_GH_PROJECT= lld:lld |
| 81 |
LLD_GH_SUBDIR= tools/lld:lld |
| 82 |
LLD_GH_TAGNAME= ${LLD_COMMIT}:lld |
| 83 |
LLDB_DESC= Install lldb, the LLVM debugger (ignored on 9.x) |
| 84 |
LLDB_BUILD_DEPENDS= swig:devel/swig13 |
| 85 |
LLDB_GH_PROJECT= lldb:lldb |
| 86 |
LLDB_GH_SUBDIR= tools/lldb:lldb |
| 87 |
LLDB_GH_TAGNAME= ${LLDB_COMMIT}:lldb |
| 88 |
LLDB_USES= execinfo |
| 89 |
LLDB_VARS= _USES_PYTHON=python |
| 90 |
OPENMP_DESC= Install libomp, the LLVM OpenMP runtime library |
| 91 |
OPENMP_CONFLICTS_INSTALL= libiomp5-devel-* |
| 92 |
OPENMP_GH_PROJECT= openmp:openmp |
| 93 |
OPENMP_GH_SUBDIR= tools/openmp:openmp |
| 94 |
OPENMP_GH_TAGNAME= ${OPENMP_COMMIT}:openmp |
| 95 |
GOLD_DESC= Build the LLVM Gold plugin for LTO |
| 96 |
GOLD_CMAKE_ON= -DLLVM_BINUTILS_INCDIR=${LOCALBASE}/include |
| 97 |
GOLD_BUILD_DEPENDS= ${LOCALBASE}/bin/ld.gold:devel/binutils |
| 98 |
|
| 99 |
OPTIONS_SUB= yes |
| 100 |
|
| 101 |
DOCS_BUILD_DEPENDS= sphinx-build:textproc/py-sphinx |
| 102 |
|
| 103 |
PLIST_SUB+= LLVM_MAJOR=${LLVM_MAJOR} LLVM_RELEASE=${LLVM_RELEASE} |
| 104 |
|
| 105 |
COMMANDS= bugpoint \ |
| 106 |
llc \ |
| 107 |
lli \ |
| 108 |
llvm-ar \ |
| 109 |
llvm-as \ |
| 110 |
llvm-bcanalyzer \ |
| 111 |
llvm-cat \ |
| 112 |
llvm-config \ |
| 113 |
llvm-cov \ |
| 114 |
llvm-diff \ |
| 115 |
llvm-dis \ |
| 116 |
llvm-dwarfdump \ |
| 117 |
llvm-dwp \ |
| 118 |
llvm-extract \ |
| 119 |
llvm-link \ |
| 120 |
llvm-mc \ |
| 121 |
llvm-mcmarkup \ |
| 122 |
llvm-modextract \ |
| 123 |
llvm-nm \ |
| 124 |
llvm-objdump \ |
| 125 |
llvm-opt-report \ |
| 126 |
llvm-profdata \ |
| 127 |
llvm-ranlib \ |
| 128 |
llvm-readobj \ |
| 129 |
llvm-rtdyld \ |
| 130 |
llvm-size \ |
| 131 |
llvm-split \ |
| 132 |
llvm-stress \ |
| 133 |
llvm-strings \ |
| 134 |
llvm-symbolizer \ |
| 135 |
llvm-tblgen \ |
| 136 |
macho-dump \ |
| 137 |
opt \ |
| 138 |
sancov |
| 139 |
FIRST_COMMAND= ${COMMANDS:C/^/XXXX/1:MXXXX*:C/^XXXX//} |
| 140 |
|
| 141 |
STRIP_LIBS= BugpointPasses.so \ |
| 142 |
LLVMHello.so \ |
| 143 |
${LIBNAME}.0 \ |
| 144 |
libLTO.so |
| 145 |
|
| 146 |
EXTRAS_COMMANDS= \ |
| 147 |
clang-apply-replacements \ |
| 148 |
clang-change-namespace \ |
| 149 |
clang-include-fixer \ |
| 150 |
clang-modernize \ |
| 151 |
clang-query \ |
| 152 |
clang-rename \ |
| 153 |
clang-reorder-fields \ |
| 154 |
clang-tidy \ |
| 155 |
find-all-symbols \ |
| 156 |
modularize |
| 157 |
EXTRAS_LIBS= \ |
| 158 |
libclangApplyReplacements \ |
| 159 |
libclangIncludeFixer \ |
| 160 |
libclangRename \ |
| 161 |
libclangQuery \ |
| 162 |
libclangTidy \ |
| 163 |
libclangTidyGoogleModule \ |
| 164 |
libclangTidyLLVMModule \ |
| 165 |
libclangTidyMiscModule \ |
| 166 |
libclangTidyReadabilityModule \ |
| 167 |
libclangTidyUtils \ |
| 168 |
libfindAllSymbols \ |
| 169 |
libmodernizeCore |
| 170 |
EXTRAS_PATTERN= ${EXTRAS_COMMANDS:tW:C/ */|/g}|${EXTRAS_LIBS:tW:C/ */|/g} |
| 171 |
|
| 172 |
.include <bsd.port.options.mk> |
| 173 |
|
| 174 |
.if ${PORT_OPTIONS:MCLANG} |
| 175 |
COMMANDS+= c-index-test \ |
| 176 |
clang \ |
| 177 |
clang++ \ |
| 178 |
clang-check \ |
| 179 |
clang-cpp \ |
| 180 |
clang-format \ |
| 181 |
clang-offload-bundler \ |
| 182 |
scan-build \ |
| 183 |
scan-view |
| 184 |
MAN1SRCS+= clang.1 \ |
| 185 |
scan-build.1 |
| 186 |
CLANG_PATTERN= (c-index-test|clang|scan-|Reporter.py|ScanView.py|scanview.css|sorttable.js|startfile.py|-analyzer) |
| 187 |
.endif |
| 188 |
|
| 189 |
.if ${PORT_OPTIONS:MCOMPILER_RT} |
| 190 |
COMPILER_RT_PATTERN= (asan_blacklist.txt|sanitizer|xray_interface.h) |
| 191 |
.endif |
| 192 |
|
| 193 |
.if ${PORT_OPTIONS:MLIT} |
| 194 |
MAN1SRCS+= lit.1 FileCheck.1 |
| 195 |
LIT_COMMANDS= lit llvm-lit FileCheck |
| 196 |
.endif |
| 197 |
|
| 198 |
.if ${PORT_OPTIONS:MLLD} |
| 199 |
COMMANDS+= ld.lld |
| 200 |
.endif |
| 201 |
|
| 202 |
.if ${PORT_OPTIONS:MLLDB} |
| 203 |
COMMANDS+= lldb \ |
| 204 |
lldb-argdumper \ |
| 205 |
lldb-mi \ |
| 206 |
lldb-server |
| 207 |
.endif |
| 208 |
|
| 209 |
.if ! ${OPTIONS_DEFINE:MCOMPILER_RT} |
| 210 |
# Hack to disable COMPILER_RT in plist of unsupported architectures |
| 211 |
PLIST_SUB+= COMPILER_RT="@comment " |
| 212 |
.else |
| 213 |
.endif |
| 214 |
|
| 215 |
.if ! ${OPTIONS_DEFINE:MGOLD} |
| 216 |
# Hack to disable GOLD in plist of unsupported architectures |
| 217 |
PLIST_SUB+= GOLD="@comment " |
| 218 |
.else |
| 219 |
.endif |
| 220 |
|
| 221 |
.if ! ${OPTIONS_DEFINE:MOPENMP} |
| 222 |
# Hack to disable OPENMP in plist of unsupported architectures |
| 223 |
PLIST_SUB+= OPENMP="@comment " |
| 224 |
.else |
| 225 |
.endif |
| 226 |
|
| 227 |
MAN1SRCS+= bugpoint.1 llc.1 lli.1 llvm-ar.1 llvm-as.1 \ |
| 228 |
llvm-bcanalyzer.1 llvm-build.1 llvm-config.1 llvm-cov.1 \ |
| 229 |
llvm-diff.1 llvm-dis.1 llvm-dwarfdump.1 \ |
| 230 |
llvm-extract.1 llvm-lib.1 llvm-link.1 llvm-nm.1 \ |
| 231 |
llvm-profdata.1 llvm-readobj.1 llvm-stress.1 llvm-symbolizer.1 \ |
| 232 |
opt.1 tblgen.1 |
| 233 |
|
| 234 |
NOT_FOR_ARCH= ia64 |
| 235 |
|
| 236 |
.include <bsd.port.pre.mk> |
| 237 |
|
| 238 |
_CRTLIBDIR= ${LLVM_PREFIX:S|${PREFIX}/||}/lib/freebsd |
| 239 |
.if ${ARCH} == "amd64" |
| 240 |
_COMPILER_RT_LIBS= \ |
| 241 |
libclang_rt.asan-preinit-x86_64.a \ |
| 242 |
libclang_rt.asan-x86_64.a \ |
| 243 |
libclang_rt.asan-x86_64.a.syms \ |
| 244 |
libclang_rt.asan-x86_64.so \ |
| 245 |
libclang_rt.asan_cxx-x86_64.a \ |
| 246 |
libclang_rt.asan_cxx-x86_64.a.syms \ |
| 247 |
libclang_rt.builtins-x86_64.a \ |
| 248 |
libclang_rt.dd-x86_64.a \ |
| 249 |
libclang_rt.dyndd-x86_64.so \ |
| 250 |
libclang_rt.lsan-x86_64.a \ |
| 251 |
libclang_rt.profile-x86_64.a \ |
| 252 |
libclang_rt.safestack-x86_64.a \ |
| 253 |
libclang_rt.stats-x86_64.a \ |
| 254 |
libclang_rt.stats_client-x86_64.a \ |
| 255 |
libclang_rt.tsan-x86_64.a \ |
| 256 |
libclang_rt.tsan-x86_64.a.syms \ |
| 257 |
libclang_rt.tsan_cxx-x86_64.a \ |
| 258 |
libclang_rt.tsan_cxx-x86_64.a.syms \ |
| 259 |
libclang_rt.ubsan_standalone-x86_64.a \ |
| 260 |
libclang_rt.ubsan_standalone-x86_64.a.syms \ |
| 261 |
libclang_rt.ubsan_standalone_cxx-x86_64.a \ |
| 262 |
libclang_rt.ubsan_standalone_cxx-x86_64.a.syms |
| 263 |
.endif |
| 264 |
.if ${ARCH} == "i386" |
| 265 |
_COMPILER_RT_LIBS+= \ |
| 266 |
libclang_rt.asan-i386.a \ |
| 267 |
libclang_rt.asan-i386.so \ |
| 268 |
libclang_rt.asan-preinit-i386.a \ |
| 269 |
libclang_rt.asan_cxx-i386.a \ |
| 270 |
libclang_rt.builtins-i386.a \ |
| 271 |
libclang_rt.profile-i386.a \ |
| 272 |
libclang_rt.safestack-i386.a \ |
| 273 |
libclang_rt.stats-i386.a \ |
| 274 |
libclang_rt.stats_client-i386.a \ |
| 275 |
libclang_rt.ubsan_standalone-i386.a \ |
| 276 |
libclang_rt.ubsan_standalone_cxx-i386.a |
| 277 |
.endif |
| 278 |
|
| 279 |
.if ${PORT_OPTIONS:MEXTRAS} |
| 280 |
COMMANDS+= ${EXTRAS_COMMANDS} |
| 281 |
MAN1SRCS+= extraclangtools.1 |
| 282 |
PORTDOCS+= clang-tools |
| 283 |
.endif |
| 284 |
|
| 285 |
.if ${PORT_OPTIONS:MLLD} |
| 286 |
COMMANDS+= lld \ |
| 287 |
lld-link |
| 288 |
PORTDOCS+= lld |
| 289 |
.endif |
| 290 |
|
| 291 |
.if ${OPSYS} == "FreeBSD" && ${COMPILER_TYPE} != clang |
| 292 |
BROKEN= Working C++11 compiler and library required |
| 293 |
.endif |
| 294 |
|
| 295 |
.if ${PORT_OPTIONS:MLLDB} && ${PYTHON_REL} >= 3000 |
| 296 |
BROKEN= LLDB does not build with Python 3 |
| 297 |
.endif |
| 298 |
|
| 299 |
post-patch: |
| 300 |
${REINPLACE_CMD} -e 's|import lit|import lit${LLVM_SUFFIX}|' \ |
| 301 |
-e 's|from lit|from lit${LLVM_SUFFIX}|' \ |
| 302 |
-e 's|lit\.|lit${LLVM_SUFFIX}.|' \ |
| 303 |
${WRKSRC}/utils/lit/lit.py ${WRKSRC}/utils/lit/lit/*.py |
| 304 |
|
| 305 |
post-build-COMPILER_RT-on: |
| 306 |
${MKDIR} ${WRKDIR}/compiler-rt-build |
| 307 |
cd ${WRKDIR}/compiler-rt-build && \ |
| 308 |
${CMAKE_BIN} ${CMAKE_ARGS} \ |
| 309 |
-DLLVM_CONFIG_PATH=${CONFIGURE_WRKSRC}/bin/llvm-config \ |
| 310 |
${WRKSRC_compiler_rt} && \ |
| 311 |
${MAKE_ENV} ${MAKE_CMD} |
| 312 |
|
| 313 |
post-install: |
| 314 |
${INSTALL_SCRIPT} ${WRKDIR}/llvm-wrapper.sh \ |
| 315 |
${STAGEDIR}${PREFIX}/bin/${FIRST_COMMAND}${LLVM_SUFFIX} |
| 316 |
.for command in ${COMMANDS:C/^/XXXX/1:NXXXX*} |
| 317 |
${LN} -f ${STAGEDIR}${PREFIX}/bin/${FIRST_COMMAND}${LLVM_SUFFIX} \ |
| 318 |
${STAGEDIR}${PREFIX}/bin/${command}${LLVM_SUFFIX} |
| 319 |
.endfor |
| 320 |
|
| 321 |
post-install-DOCS-on: |
| 322 |
${MV} ${STAGEDIR}${LLVM_PREFIX}/share/doc ${STAGEDIR}${DOCSDIR} |
| 323 |
.for _man in ${MAN1SRCS} |
| 324 |
${MV} ${STAGEDIR}${LLVM_PREFIX}/share/man/man1/${_man} \ |
| 325 |
${STAGEDIR}${MANPREFIX}/man/man1/${_man:R}${LLVM_SUFFIX}.1 |
| 326 |
.endfor |
| 327 |
.if ! ${PORT_OPTIONS:MLIT} |
| 328 |
${RM} ${STAGEDIR}${LLVM_PREFIX}/share/man/man1/lit.1 |
| 329 |
${RM} ${STAGEDIR}${LLVM_PREFIX}/share/man/man1/FileCheck.1 |
| 330 |
.endif |
| 331 |
${RMDIR} ${STAGEDIR}${LLVM_PREFIX}/share/man/man1/ |
| 332 |
${RMDIR} ${STAGEDIR}${LLVM_PREFIX}/share/man/ |
| 333 |
|
| 334 |
.if ${PORT_OPTIONS:MCLANG} |
| 335 |
post-install-DOCS-off: |
| 336 |
${RM} ${STAGEDIR}${LLVM_PREFIX}/share/man/man1/scan-build.1 |
| 337 |
${RMDIR} ${STAGEDIR}${LLVM_PREFIX}/share/man/man1/ |
| 338 |
${RMDIR} ${STAGEDIR}${LLVM_PREFIX}/share/man/ |
| 339 |
.endif |
| 340 |
|
| 341 |
post-install-CLANG-on: |
| 342 |
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/clang \ |
| 343 |
${STAGEDIR}${LLVM_PREFIX}/bin/clang-cpp |
| 344 |
|
| 345 |
post-install-COMPILER_RT-on: |
| 346 |
cd ${WRKDIR}/compiler-rt-build && \ |
| 347 |
${MAKE_ENV} ${MAKE_CMD} ${INSTALL_TARGET} |
| 348 |
.if ${ARCH} == "amd64" |
| 349 |
${RM} ${STAGEDIR}${LLVM_PREFIX}/lib/freebsd/libclang_rt*i386* |
| 350 |
.endif |
| 351 |
|
| 352 |
post-install-LIT-on: |
| 353 |
${INSTALL_SCRIPT} ${PATCH_WRKSRC}/utils/lit/lit.py \ |
| 354 |
${STAGEDIR}${LLVM_PREFIX}/bin/lit |
| 355 |
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/lit \ |
| 356 |
${STAGEDIR}${LLVM_PREFIX}/bin/llvm-lit |
| 357 |
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/lit \ |
| 358 |
${STAGEDIR}${PREFIX}/bin/lit${LLVM_SUFFIX} |
| 359 |
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/lit \ |
| 360 |
${STAGEDIR}${PREFIX}/bin/llvm-lit${LLVM_SUFFIX} |
| 361 |
${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/lit${LLVM_SUFFIX} |
| 362 |
${INSTALL_DATA} ${WRKSRC}/utils/lit/lit/*.py \ |
| 363 |
${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/lit${LLVM_SUFFIX} |
| 364 |
${INSTALL_PROGRAM} ${WRKDIR}/.build/bin/FileCheck \ |
| 365 |
${STAGEDIR}${LLVM_PREFIX}/bin/ |
| 366 |
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/FileCheck \ |
| 367 |
${STAGEDIR}${PREFIX}/bin/FileCheck${LLVM_SUFFIX} |
| 368 |
|
| 369 |
TEST_CMD= '(cd ${WRKSRC}/test; ${SETENV} ${MAKE_ENV} LD_LIBRARY_PATH=${WRKSRC}/Release/lib ${MAKE_CMD} check-local-lit)' |
| 370 |
regression-test: ${BUILD_COOKIE} |
| 371 |
if [ `${ID} -u` = 0 ]; then \ |
| 372 |
${CHOWN} -R nobody ${WRKSRC}/test; \ |
| 373 |
su -m nobody -c ${TEST_CMD}; \ |
| 374 |
else \ |
| 375 |
${SH} -c ${TEST_CMD}; \ |
| 376 |
fi |
| 377 |
|
| 378 |
build-plist: |
| 379 |
${RM} ${PLIST} ${PLIST}.tmp |
| 380 |
.for command in ${COMMANDS} |
| 381 |
${ECHO_CMD} bin/${command}${LLVM_SUFFIX} >> ${PLIST}.tmp |
| 382 |
.endfor |
| 383 |
.for command in ${LIT_COMMANDS} |
| 384 |
${ECHO_CMD} %%LIT%%bin/${command}${LLVM_SUFFIX} >> ${PLIST}.tmp |
| 385 |
${ECHO_CMD} %%LIT%%${LLVM_PREFIX:S|${PREFIX}/||}/bin/${command} >> ${PLIST}.tmp |
| 386 |
.endfor |
| 387 |
${FIND} ${STAGEDIR}${LLVM_PREFIX} -type f -o -type l | \ |
| 388 |
${GREP} -v '[/-]lit$$' | ${GREP} -v 'FileCheck$$' | \ |
| 389 |
${GREP} -v man/man1 | ${SED} -e 's|${STAGEDIR}${PREFIX}/||' \ |
| 390 |
-e 's|${PORTVERSION}|%%PORTVERSION%%|' \ |
| 391 |
-e 's|release.cmake|%%CMAKE_BUILD_TYPE%%.cmake|' \ |
| 392 |
-e 's|${LLVM_RELEASE:C/\./\\./g}|%%LLVM_RELEASE%%|' \ |
| 393 |
-e 's|${LLVM_MAJOR:C/\./\\./}|%%LLVM_MAJOR%%|' | \ |
| 394 |
${SORT} >> ${PLIST}.tmp |
| 395 |
${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/lit${LLVM_SUFFIX} -type f | \ |
| 396 |
${SED} -e 's|${STAGEDIR}${PYTHON_SITELIBDIR}|%%LIT%%%%PYTHON_SITELIBDIR%%|' \ |
| 397 |
-e 's|${LLVM_RELEASE:C/\./\\./g}|%%LLVM_RELEASE%%|' \ |
| 398 |
-e 's|${LLVM_MAJOR:C/\./\\./}|%%LLVM_MAJOR%%|' | \ |
| 399 |
${SORT} >> ${PLIST}.tmp |
| 400 |
awk '{ \ |
| 401 |
if ($$0 ~ /${CLANG_PATTERN}/ && $$0 !~ /omp.h|${EXTRAS_PATTERN}|libclang_rt/) {printf "%%%%CLANG%%%%"} \ |
| 402 |
if ($$0 ~ /${COMPILER_RT_PATTERN}/) \ |
| 403 |
{printf "%%%%COMPILER_RT%%%%"} \ |
| 404 |
if ($$0 ~ /lld/ && $$0 !~ /lldb/) {printf "%%%%LLD%%%%"} \ |
| 405 |
if ($$0 ~ /(${EXTRAS_PATTERN})/) {printf "%%%%EXTRAS%%%%"} \ |
| 406 |
if ($$0 ~ /(argdumper|lldb|six.py)/) {printf "%%%%LLDB%%%%"} \ |
| 407 |
if ($$0 ~ /lib.*omp/) {printf "%%%%OPENMP%%%%"} \ |
| 408 |
if ($$0 ~ /LLVMgold/) {printf "%%%%GOLD%%%%"} \ |
| 409 |
if ($$0 !~ /libclang_rt/) {print} \ |
| 410 |
}' ${PLIST}.tmp >> ${PLIST} |
| 411 |
${RM} ${PLIST}.tmp |
| 412 |
|
| 413 |
check-commands: |
| 414 |
.for command in ${COMMANDS} |
| 415 |
test -e ${STAGEDIR}${LLVM_PREFIX}/bin/${command} |
| 416 |
.endfor |
| 417 |
|
| 418 |
.include <bsd.port.post.mk> |