mirror of
https://git.FreeBSD.org/ports.git
synced 2025-02-01 10:59:55 +00:00
Upgrade the llvm development ports to r193887. We're about two weeks
from the LLVM 3.4 branch starting. Apply the clang portion of r255321 from base switching the default C++ library to libc++ on 10+. Correct clang's notion of the underlying type of (u)intmax_t on MIPS64.
This commit is contained in:
parent
4c549c5f51
commit
544d2a5976
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=332935
@ -11,13 +11,20 @@ PKGNAMESUFFIX= -devel
|
||||
MAINTAINER= brooks@FreeBSD.org
|
||||
COMMENT= Low Level Virtual Machine
|
||||
|
||||
CONFLICTS= llvm-2* llvm-3.[012]* llvm31-[3]*
|
||||
LLVM_SUFFIX= -devel
|
||||
LLVM_PREFIX= ${PREFIX}/llvm${LLVM_SUFFIX}
|
||||
DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${LLVM_SUFFIX}
|
||||
DATADIR= ${PREFIX}/share/${PORTNAME}${LLVM_SUFFIX}
|
||||
UNIQUENAME= ${PORTNAME}${LLVM_SUFFIX}
|
||||
|
||||
USES= gmake perl5
|
||||
GNU_CONFIGURE= yes
|
||||
USE_BZIP2= yes
|
||||
USE_LDCONFIG= yes
|
||||
USE_PYTHON= yes
|
||||
GNU_CONFIGURE_PREFIX= ${LLVM_PREFIX}
|
||||
USE_LDCONFIG= ${LLVM_PREFIX}/lib
|
||||
|
||||
SUB_FILES= llvm-wrapper.sh
|
||||
SUB_LIST= LLVM_PREFIX="${LLVM_PREFIX}" LLVM_SUFFIX="${LLVM_SUFFIX}"
|
||||
|
||||
# Suggested tweaks from http://llvm.org/docs/Packaging.html
|
||||
CONFIGURE_ARGS+= --enable-shared
|
||||
@ -27,23 +34,60 @@ LIBNAME= libLLVM-${DISTVERSION:C/\.r[0-9]*//}svn.so
|
||||
CONFIGURE_ARGS+= --enable-bindings=none
|
||||
CONFIGURE_ARGS+= --enable-optimized
|
||||
|
||||
OPTIONS_DEFINE= ASSERTS CMAKE DOCS LTOPLUGIN MANPAGES
|
||||
OPTIONS_DEFINE= ASSERTS CMAKE DOCS LIT LTOPLUGIN MANPAGES
|
||||
|
||||
ASSERTS_DESC= Enable assertions (thread unsafe)
|
||||
CMAKE_DESC= Build cmake support files
|
||||
LIT_DESC= Install lit and FileCheck test tools (requires python)
|
||||
LTOPLUGIN_DESC= Build LTO plugin (requires gold)
|
||||
|
||||
OPTIONS_DEFAULT= CMAKE MANPAGES
|
||||
OPTIONS_DEFAULT= CMAKE LIT MANPAGES
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
LLVM_RELEASE= ${PORTVERSION:C/\.r[0-9]*//}
|
||||
PLIST_SUB+= LLVM_RELEASE=${LLVM_RELEASE}
|
||||
|
||||
COMMANDS= bugpoint \
|
||||
llc \
|
||||
lli \
|
||||
llvm-ar \
|
||||
llvm-as \
|
||||
llvm-bcanalyzer \
|
||||
llvm-config \
|
||||
llvm-cov \
|
||||
llvm-diff \
|
||||
llvm-dis \
|
||||
llvm-dwarfdump \
|
||||
llvm-extract \
|
||||
llvm-link \
|
||||
llvm-mc \
|
||||
llvm-mcmarkup \
|
||||
llvm-nm \
|
||||
llvm-objdump \
|
||||
llvm-ranlib \
|
||||
llvm-readobj \
|
||||
llvm-rtdyld \
|
||||
llvm-size \
|
||||
llvm-stress \
|
||||
llvm-symbolizer \
|
||||
llvm-tblgen \
|
||||
macho-dump \
|
||||
opt
|
||||
FIRST_COMMAND= ${COMMANDS:C/^/XXXX/1:MXXXX*:C/^XXXX//}
|
||||
|
||||
STRIP_LIBS= BugpointPasses.so \
|
||||
LLVMHello.so \
|
||||
${LIBNAME}.0 \
|
||||
libLTO.so
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MASSERTS}
|
||||
CONFIGURE_ARGS+= --enable-assertions
|
||||
RELEASE_TYPE= Release+Asserts
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-assertions
|
||||
RELEASE_TYPE= Release
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MCMAKE}
|
||||
@ -61,19 +105,27 @@ CONFIGURE_ARGS+= --enable-docs
|
||||
CONFIGURE_ARGS+= --disable-docs
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MLIT}
|
||||
MAN1SRCS+= lit.1
|
||||
USE_PYTHON= yes
|
||||
LIT_COMMANDS= lit llvm-lit FileCheck
|
||||
.else
|
||||
USE_PYTHON_BUILD= yes
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MLTOPLUGIN}
|
||||
BUILD_DEPENDS+= ld.gold:${PORTSDIR}/devel/binutils
|
||||
RUN_DEPENDS+= ld.gold:${PORTSDIR}/devel/binutils
|
||||
CONFIGURE_ARGS+= --with-binutils-include=${LOCALBASE}/include
|
||||
PLIST_FILES+= lib/LLVMgold.so
|
||||
PLIST_FILES+= llvm${LLVM_SUFFIX}/lib/LLVMgold.so
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MMANPAGES}
|
||||
_MAN1= bugpoint.1 lit.1 llc.1 lli.1 llvm-ar.1 llvm-as.1 \
|
||||
MAN1SRCS+= bugpoint.1 llc.1 lli.1 llvm-ar.1 llvm-as.1 \
|
||||
llvm-bcanalyzer.1 llvm-config.1 llvm-cov.1 llvm-diff.1 \
|
||||
llvm-dis.1 llvm-extract.1 llvm-link.1 llvm-nm.1 \
|
||||
llvm-prof.1 llvm-stress.1 opt.1 tblgen.1
|
||||
PLIST_FILES+= man/man1/llvm-lit.1.gz ${_MAN1:S|^|man/man1/|:S|$|.gz|}
|
||||
PLIST_FILES+= ${MAN1SRCS:S|^|man/man1/|:S|.1$|${LLVM_SUFFIX}.1.gz|}
|
||||
.endif
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
@ -87,9 +139,8 @@ SVN_REV!= svn info http://llvm.org/svn/llvm-project/ | ${GREP} Revision | cut -d
|
||||
.endif
|
||||
.endif
|
||||
|
||||
.if ${ARCH} == "sparc64"
|
||||
BROKEN= does not compile on sparc64
|
||||
.endif
|
||||
# NB: I don't re-test arches I don't use so this may be dated
|
||||
BROKEN_sparc64= YES
|
||||
|
||||
.if ${ARCH} == "amd64" || ${ARCH} == "ia64"
|
||||
CONFIGURE_ARGS+= --enable-pic --with-pic
|
||||
@ -119,13 +170,17 @@ post-patch:
|
||||
${WRKSRC}/Makefile.config.in
|
||||
${REINPLACE_CMD} -e 's|\(PROJ_mandir.*:=\).*$$|\1${MANPREFIX}/man|g' \
|
||||
${WRKSRC}/Makefile.config.in
|
||||
${REINPLACE_CMD} -e 's|import lit|import lit${LLVM_SUFFIX}|' \
|
||||
-e 's|from lit|from lit${LLVM_SUFFIX}|' \
|
||||
-e 's|lit\.|lit${LLVM_SUFFIX}.|' \
|
||||
${WRKSRC}/utils/lit/lit.py ${WRKSRC}/utils/lit/lit/*.py
|
||||
|
||||
.if ${PORT_OPTIONS:MCMAKE}
|
||||
post-configure:
|
||||
${MKDIR} ${WRKDIR}/cmake
|
||||
cd ${WRKDIR}/cmake && cmake -G "Unix Makefiles" ${WRKSRC}
|
||||
${REINPLACE_CMD} -e 's|${WRKDIR}/cmake|${PREFIX}|' \
|
||||
-e 's|${WRKSRC}|${DATADIR}|' \
|
||||
${REINPLACE_CMD} -e 's|${WRKDIR}/cmake|${LLVM_PREFIX}|' \
|
||||
-e 's|${WRKSRC}/cmake/modules|${DATADIR}/cmake|' \
|
||||
${WRKDIR}/cmake/share/llvm/cmake/LLVMConfig.cmake
|
||||
.endif
|
||||
|
||||
@ -138,13 +193,17 @@ post-build:
|
||||
.endif
|
||||
|
||||
post-install:
|
||||
${MV} ${STAGEDIR}${PREFIX}/lib/${LIBNAME} ${STAGEDIR}${PREFIX}/lib/${LIBNAME}.0
|
||||
${LN} -sf ${LIBNAME}.0 ${STAGEDIR}${PREFIX}/lib/${LIBNAME}
|
||||
${INSTALL_SCRIPT} ${WRKSRC}/utils/lit/lit.py ${STAGEDIR}${PREFIX}/bin/lit
|
||||
${LN} -sf lit ${STAGEDIR}${PREFIX}/bin/llvm-lit
|
||||
${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/lit
|
||||
${INSTALL_DATA} ${WRKSRC}/utils/lit/lit/*.py ${STAGEDIR}${PYTHON_SITELIBDIR}/lit
|
||||
${INSTALL_PROGRAM} ${WRKSRC}/Release/bin/FileCheck ${STAGEDIR}${PREFIX}/bin/
|
||||
${MV} ${STAGEDIR}${LLVM_PREFIX}/lib/${LIBNAME} \
|
||||
${STAGEDIR}${LLVM_PREFIX}/lib/${LIBNAME}.0
|
||||
${LN} -sf ${LIBNAME}.0 ${STAGEDIR}${LLVM_PREFIX}/lib/${LIBNAME}
|
||||
${STRIP_CMD} ${STRIP_LIBS:S|^|${STAGEDIR}${LLVM_PREFIX}/lib/|}
|
||||
${INSTALL_SCRIPT} ${WRKDIR}/llvm-wrapper.sh \
|
||||
${STAGEDIR}${PREFIX}/bin/${FIRST_COMMAND}${LLVM_SUFFIX}
|
||||
.for command in ${COMMANDS:C/^/XXXX/1:NXXXX*}
|
||||
test -e ${STAGEDIR}${LLVM_PREFIX}/bin/${command}
|
||||
${LN} -f ${STAGEDIR}${PREFIX}/bin/${FIRST_COMMAND}${LLVM_SUFFIX} \
|
||||
${STAGEDIR}${PREFIX}/bin/${command}${LLVM_SUFFIX}
|
||||
.endfor
|
||||
.if ${PORT_OPTIONS:MCMAKE}
|
||||
${MKDIR} ${STAGEDIR}${DATADIR}/cmake
|
||||
${INSTALL_DATA} ${WRKSRC}/cmake/modules/*.cmake \
|
||||
@ -156,12 +215,28 @@ post-install:
|
||||
${FIND} ${WRKSRC}/docs/_build/html -type f | \
|
||||
${XARGS} -I _DOC_ ${INSTALL_DATA} _DOC_ ${STAGEDIR}${DOCSDIR}/html/
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLIT}
|
||||
${INSTALL_SCRIPT} ${WRKSRC}/utils/lit/lit.py \
|
||||
${STAGEDIR}${LLVM_PREFIX}/bin/lit
|
||||
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/lit \
|
||||
${STAGEDIR}${LLVM_PREFIX}/bin/llvm-lit
|
||||
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/lit \
|
||||
${STAGEDIR}${PREFIX}/bin/lit${LLVM_SUFFIX}
|
||||
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/lit \
|
||||
${STAGEDIR}${PREFIX}/bin/llvm-lit${LLVM_SUFFIX}
|
||||
${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/lit${LLVM_SUFFIX}
|
||||
${INSTALL_DATA} ${WRKSRC}/utils/lit/lit/*.py \
|
||||
${STAGEDIR}${PYTHON_SITELIBDIR}/lit${LLVM_SUFFIX}
|
||||
${INSTALL_PROGRAM} ${WRKSRC}/${RELEASE_TYPE}/bin/FileCheck \
|
||||
${STAGEDIR}${LLVM_PREFIX}/bin/
|
||||
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/FileCheck \
|
||||
${STAGEDIR}${PREFIX}/bin/FileCheck${LLVM_SUFFIX}
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MMANPAGES}
|
||||
.for man in ${_MAN1}
|
||||
@${INSTALL_MAN} ${WRKSRC}/docs/_build/man/${man} \
|
||||
${STAGEDIR}${MANPREFIX}/man/man1/
|
||||
.endfor
|
||||
${LN} -sf ${STAGEDIR}${MANPREFIX}/man/man1/lit.1 ${STAGEDIR}${MANPREFIX}/man/man1/llvm-lit.1
|
||||
for man in ${MAN1SRCS}; do \
|
||||
${INSTALL_MAN} ${WRKSRC}/docs/_build/man/$${man} \
|
||||
${STAGEDIR}${MANPREFIX}/man/man1/$${man%.1}${LLVM_SUFFIX}.1 ; \
|
||||
done
|
||||
.endif
|
||||
|
||||
TEST_CMD= '(cd ${WRKSRC}/test; ${SETENV} ${MAKE_ENV} LD_LIBRARY_PATH=${WRKSRC}/Release/lib ${GMAKE} check-local-lit)'
|
||||
@ -173,60 +248,32 @@ regression-test: ${BUILD_COOKIE}
|
||||
${SH} -c ${TEST_CMD}; \
|
||||
fi
|
||||
|
||||
PLIST_FILE_LIST= bin/FileCheck \
|
||||
bin/bugpoint \
|
||||
bin/lit \
|
||||
bin/llc \
|
||||
bin/lli \
|
||||
bin/lli-child-target \
|
||||
bin/llvm-ar \
|
||||
bin/llvm-as \
|
||||
bin/llvm-bcanalyzer \
|
||||
bin/llvm-config \
|
||||
bin/llvm-cov \
|
||||
bin/llvm-diff \
|
||||
bin/llvm-dis \
|
||||
bin/llvm-dwarfdump \
|
||||
bin/llvm-extract \
|
||||
bin/llvm-link \
|
||||
bin/llvm-lit \
|
||||
bin/llvm-mc \
|
||||
bin/llvm-mcmarkup \
|
||||
bin/llvm-nm \
|
||||
bin/llvm-objdump \
|
||||
bin/llvm-ranlib \
|
||||
bin/llvm-readobj \
|
||||
bin/llvm-rtdyld \
|
||||
bin/llvm-size \
|
||||
bin/llvm-stress \
|
||||
bin/llvm-symbolizer \
|
||||
bin/llvm-tblgen \
|
||||
bin/macho-dump \
|
||||
bin/opt \
|
||||
lib/BugpointPasses.so \
|
||||
lib/LLVMHello.so \
|
||||
lib/libLTO.* \
|
||||
lib/libLLVM*
|
||||
PLIST_DIR_LIST= include/llvm-c \
|
||||
include/llvm \
|
||||
${PYTHON_SITELIBDIR:S;${PYTHONBASE}/;;}/lit
|
||||
build-plist:
|
||||
${RM} -f ${PLIST}
|
||||
cd ${PREFIX} && \
|
||||
(ls ${PLIST_FILE_LIST}; \
|
||||
${FIND} ${PLIST_DIR_LIST} -type f -o -type l) | \
|
||||
${SED} -e 's|${LLVM_RELEASE}|%%LLVM_RELEASE%%|' \
|
||||
-e 's|${PYTHON_SITELIBDIR:S;${PYTHONBASE}/;;}|%%PYTHON_SITELIBDIR%%|' | \
|
||||
.for command in ${COMMANDS}
|
||||
${ECHO_CMD} bin/${command}${LLVM_SUFFIX} >> ${PLIST}
|
||||
.endfor
|
||||
.for command in ${LIT_COMMANDS}
|
||||
${ECHO_CMD} %%LIT%%bin/${command}${LLVM_SUFFIX} >> ${PLIST}
|
||||
${ECHO_CMD} %%LIT%%${LLVM_PREFIX:S|${PREFIX}/||}/bin/${command} >> ${PLIST}
|
||||
.endfor
|
||||
${FIND} ${STAGEDIR}${LLVM_PREFIX} -type f -o -type l | \
|
||||
${GREP} -v 'lit$$' | ${GREP} -v 'FileCheck$$' | \
|
||||
${GREP} -v man/man1 | ${SED} -e 's|${STAGEDIR}${PREFIX}/||' \
|
||||
-e 's|${PORTVERSION}|%%PORTVERSION%%|' | \
|
||||
${SORT} >> ${PLIST}
|
||||
${FIND} ${DOCSDIR} -type f | \
|
||||
${SED} -e 's|${DOCSDIR}|%%PORTDOCS%%%%DOCSDIR%%|' | \
|
||||
${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR}/lit${LLVM_SUFFIX} -type f | \
|
||||
${SED} -e 's|${STAGEDIR}${PYTHON_SITELIBDIR}|%%LIT%%%%PYTHON_SITELIBDIR%%|' | \
|
||||
${SORT} >> ${PLIST}
|
||||
cd ${PREFIX} && \
|
||||
${FIND} ${PLIST_DIR_LIST} -type d | \
|
||||
${SED} -e 's|${PYTHON_SITELIBDIR:S;${PYTHONBASE}/;;}|%%PYTHON_SITELIBDIR%%|' | \
|
||||
${FIND} ${STAGEDIR}${DOCSDIR} -type f | \
|
||||
${SED} -e 's|${STAGEDIR}${DOCSDIR}|%%PORTDOCS%%%%DOCSDIR%%|' | \
|
||||
${SORT} >> ${PLIST}
|
||||
${FIND} ${STAGEDIR}${LLVM_PREFIX} -type d | \
|
||||
${SED} -e 's|${STAGEDIR}${PREFIX}/||' | \
|
||||
${SORT} -r | ${SED} -e 's|^|@dirrm |' >> ${PLIST}
|
||||
${FIND} ${DOCSDIR} -type d | ${SORT} -r | \
|
||||
${SED} -e 's|${DOCSDIR}|%%DOCSDIR%%|' \
|
||||
-e 's|^|%%PORTDOCS%%@dirrm |' >> ${PLIST}
|
||||
echo "%%LIT%%@dirrm %%PYTHON_SITELIBDIR%%/lit${LLVM_SUFFIX}" >> ${PLIST}
|
||||
${FIND} ${STAGEDIR}${DOCSDIR} -type d | \
|
||||
${SED} -e 's|${STAGEDIR}${DOCSDIR}|%%PORTDOCS%%@dirrm %%DOCSDIR%%|' | \
|
||||
${SORT} -r >> ${PLIST}
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
@ -1 +1 @@
|
||||
SVN_REV= 191854
|
||||
SVN_REV= 193887
|
||||
|
@ -1,2 +1,2 @@
|
||||
SHA256 (llvm-3.4.r191854.tar.bz2) = 215e2f864549ea6299aa1b003c987f9a5d1a61ea2ad41b3445d2df109bb2c099
|
||||
SIZE (llvm-3.4.r191854.tar.bz2) = 11667946
|
||||
SHA256 (llvm-3.4.r193887.tar.bz2) = 175e3034a0f19c0ca9ce2fc75ccdc796f3c3bfd29b69f595aa4fc857f53db955
|
||||
SIZE (llvm-3.4.r193887.tar.bz2) = 11845136
|
||||
|
10
devel/llvm-devel/files/llvm-wrapper.sh.in
Normal file
10
devel/llvm-devel/files/llvm-wrapper.sh.in
Normal file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
# $FreeBSD$
|
||||
|
||||
LLVM_PREFIX="%%LLVM_PREFIX%%"
|
||||
LLVM_SUFFIX="%%LLVM_SUFFIX%%"
|
||||
|
||||
tool=$(basename $0)
|
||||
tool="${LLVM_PREFIX}/bin/${tool%${LLVM_SUFFIX}}"
|
||||
LD_LIBRARY_PATH="${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${LLVM_PREFIX}/lib" \
|
||||
"${tool}" "${@}"
|
File diff suppressed because it is too large
Load Diff
@ -7,17 +7,14 @@ CATEGORIES= lang devel
|
||||
MASTER_SITES= ${MASTER_SITE_LOCAL}
|
||||
MASTER_SITE_SUBDIR= brooks
|
||||
PKGNAMESUFFIX= -devel
|
||||
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
|
||||
DISTFILES= ${CLANG_SOURCE} \
|
||||
${LLVM_SOURCE}
|
||||
EXTRACT_ONLY= ${LLVM_SOURCE}
|
||||
|
||||
MAINTAINER= brooks@FreeBSD.org
|
||||
COMMENT= C, Objective-C, and C++ compiler
|
||||
|
||||
CONFLICTS= clang-3.[012]* clang31-*
|
||||
|
||||
CLANG_NAME= clang-${PORTVERSION}
|
||||
CLANG_RELEASE= ${PORTVERSION:C/\.r[0-9]*//}
|
||||
CLANG_RELEASE= ${PORTVERSION:C/\.r[0-9]*//}svn
|
||||
CLANG_SOURCE= ${CLANG_NAME}${EXTRACT_SUFX}
|
||||
LLVM_NAME= llvm-${PORTVERSION}
|
||||
LLVM_SOURCE= ${LLVM_NAME}${EXTRACT_SUFX}
|
||||
@ -26,32 +23,54 @@ WRKSRC= ${WRKDIR}/${LLVM_NAME}
|
||||
BUILD_WRKSRC= ${WRKSRC}/tools/clang
|
||||
INSTALL_WRKSRC= ${WRKSRC}/tools/clang
|
||||
|
||||
BUILD_DEPENDS+= llvm-devel>=${PORTVERSION}:${PORTSDIR}/devel/llvm-devel
|
||||
RUN_DEPENDS+= llvm-devel>=${PORTVERSION}:${PORTSDIR}/devel/llvm-devel
|
||||
.if defined(PACKAGE_BUILDING)
|
||||
BUILD_DEPENDS+= runtest:${PORTSDIR}/misc/dejagnu
|
||||
.endif
|
||||
BUILD_DEPENDS+= llvm-config${LLVM_SUFFIX}:${PORTSDIR}/devel/llvm-devel
|
||||
RUN_DEPENDS+= llvm-config${LLVM_SUFFIX}:${PORTSDIR}/devel/llvm-devel
|
||||
|
||||
LLVM_SUFFIX= -devel
|
||||
LLVM_PREFIX= ${PREFIX}/llvm${LLVM_SUFFIX}
|
||||
DATADIR= ${PREFIX}/share/${PORTNAME}${LLVM_SUFFIX}
|
||||
DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${LLVM_SUFFIX}
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
GNU_CONFIGURE_PREFIX= ${LLVM_PREFIX}
|
||||
USES= gmake perl5
|
||||
USE_BZIP2= yes
|
||||
USE_LDCONFIG= yes
|
||||
USE_PYTHON= yes
|
||||
|
||||
MAKE_ARGS= CLANG_TBLGEN=${WRKSRC}/${RELTYPE}/bin/clang-tblgen \
|
||||
LLVMIncDir=${LOCALBASE}/include \
|
||||
LLVMToolDir=${LOCALBASE}/bin \
|
||||
LLVMLibDir=${LOCALBASE}/lib
|
||||
LLVMIncDir=${LLVM_PREFIX}/include \
|
||||
LLVMToolDir=${LLVM_PREFIX}/bin \
|
||||
LLVMLibDir=${LLVM_PREFIX}/lib
|
||||
|
||||
OPTIONS_DEFINE= ASSERTS DOCS MIPS_FPHACK
|
||||
SUB_FILES= llvm-wrapper.sh
|
||||
SUB_LIST= LLVM_PREFIX="${LLVM_PREFIX}" LLVM_SUFFIX="${LLVM_SUFFIX}"
|
||||
|
||||
OPTIONS_DEFINE= ASSERTS DOCS
|
||||
|
||||
ASSERTS_DESC= Enable assertions (thread unsafe)
|
||||
MIPS_FPHACK_DESC= MIPS long double hack (breaks ABI)
|
||||
|
||||
CONFIGURE_ARGS+= --enable-optimized
|
||||
CONFIGURE_ARGS+= --enable-optimized --enable-shared
|
||||
# Build some docs manually later
|
||||
CONFIGURE_ARGS+= --disable-docs
|
||||
|
||||
PLIST_SUB+= CLANG_RELEASE=${CLANG_RELEASE}
|
||||
|
||||
COMMANDS= c-index-test \
|
||||
clang \
|
||||
clang++ \
|
||||
clang-check \
|
||||
clang-cpp \
|
||||
clang-format \
|
||||
clang-tblgen \
|
||||
ccc-analyzer \
|
||||
c++-analyzer \
|
||||
scan-build \
|
||||
scan-view
|
||||
FIRST_COMMAND= ${COMMANDS:C/^/XXXX/1:MXXXX*:C/^XXXX//}
|
||||
|
||||
PORTDATA= scanview.css \
|
||||
sorttable.js
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MASSERTS}
|
||||
@ -62,26 +81,22 @@ CONFIGURE_ARGS+= --disable-assertions
|
||||
RELTYPE= Release
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MDOCS}
|
||||
CONFIGURE_ARGS+= --enable-docs
|
||||
.else
|
||||
CONFIGURE_ARGS+= --disable-docs
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MMIPS_FPHACK}
|
||||
EXTRA_PATCHES= ${FILESDIR}/mips-long-double-hack.diff
|
||||
.endif
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.include "${.CURDIR}/../../devel/llvm-devel/Makefile.svn_rev"
|
||||
|
||||
.if ${ARCH} == "sparc64"
|
||||
BROKEN= Does not compile on sparc64
|
||||
.endif
|
||||
# NB: I don't test arches I don't use so this may be out of date.
|
||||
BROKEN_sparc64= YES
|
||||
|
||||
.if ${OSVERSION} < 900033
|
||||
RUN_DEPENDS+= ${LOCALBASE}/bin/ld:${PORTSDIR}/devel/binutils
|
||||
.if ${PORT_OPTIONS:MASSERTS}
|
||||
pre-fetch:
|
||||
@if [ "`llvm-config${LLVM_SUFFIX} --build-mode`" != ${RELTYPE} ]; then \
|
||||
${ECHO_MSG} ;\
|
||||
${ECHO_MSG} ASSERTS option enabled, but devel/llvm${LLVM_SUFFIX} was compiled without ASSERTS. ;\
|
||||
${ECHO_MSG} Correct options mismatch to proceed. ;\
|
||||
${ECHO_MSG} ;\
|
||||
false ;\
|
||||
fi
|
||||
.endif
|
||||
|
||||
.if defined(BOOTSTRAP) || defined(SVN_FETCH)
|
||||
@ -99,15 +114,16 @@ do-fetch:
|
||||
.endif
|
||||
|
||||
post-extract:
|
||||
cd ${WRKSRC}/tools && \
|
||||
tar xf ${DISTDIR}/${CLANG_SOURCE} && \
|
||||
${MV} ${CLANG_NAME} clang
|
||||
${RM} -f ${BUILD_WRKSRC}
|
||||
${MV} ${WRKDIR}/${CLANG_NAME} ${BUILD_WRKSRC}
|
||||
|
||||
post-patch:
|
||||
${REINPLACE_CMD} -e 's|\(PROJ_docsdir.*:=\).*$$|\1${DOCSDIR}|g' \
|
||||
${WRKSRC}/Makefile.config.in
|
||||
${REINPLACE_CMD} -e 's|\(PROJ_mandir.*:=\).*$$|\1${MANPREFIX}/man|g' \
|
||||
${WRKSRC}/Makefile.config.in
|
||||
${REINPLACE_CMD} -e 's|/usr/local/|${LOCALBASE}/|g' \
|
||||
${WRKSRC}/tools/clang/lib/Frontend/InitHeaderSearch.cpp
|
||||
${REINPLACE_CMD} -e 's|/usr/bin/env perl|${PERL}|' \
|
||||
-e 's|%%DATADIR%%|${DATADIR}|' \
|
||||
${WRKSRC}/tools/clang/tools/scan-build/ccc-analyzer \
|
||||
@ -117,58 +133,51 @@ post-patch:
|
||||
${WRKSRC}/tools/clang/tools/scan-view/scan-view
|
||||
|
||||
pre-build:
|
||||
${LN} -sf ${LOCALBASE}/include/llvm/IR/Intrinsics.gen \
|
||||
${LN} -sf ${LLVM_PREFIX}/include/llvm/IR/Intrinsics.gen \
|
||||
${WRKSRC}/include/llvm/IR/
|
||||
${MKDIR} ${WRKSRC}/${RELTYPE}/lib
|
||||
${LN} -sf ${LOCALBASE}/lib/libLLVMTableGen.a ${WRKSRC}/${RELTYPE}/lib/
|
||||
${LN} -sf ${LOCALBASE}/lib/libLLVMSupport.a ${WRKSRC}/${RELTYPE}/lib/
|
||||
${LN} -sf ${LLVM_PREFIX}/lib/libLLVM-${CLANG_RELEASE}.so \
|
||||
${WRKSRC}/${RELTYPE}/lib/
|
||||
${LN} -sf ${LLVM_PREFIX}/lib/libLLVMTableGen.a ${WRKSRC}/${RELTYPE}/lib/
|
||||
${LN} -sf ${LLVM_PREFIX}/lib/libLLVMSupport.a ${WRKSRC}/${RELTYPE}/lib/
|
||||
cd ${WRKSRC}/utils/unittest && ${GMAKE}
|
||||
|
||||
post-build:
|
||||
@cd ${WRKSRC}/tools/clang/docs/tools && ${GMAKE} clang.1
|
||||
@cd ${WRKSRC}/tools/clang/docs/tools && ${GMAKE} man html ps
|
||||
|
||||
post-install:
|
||||
@${LN} -sf clang ${STAGEDIR}${PREFIX}/bin/clang-cpp
|
||||
@${INSTALL_SCRIPT} ${WRKSRC}/tools/clang/tools/scan-build/ccc-analyzer \
|
||||
${WRKSRC}/tools/clang/tools/scan-build/c++-analyzer \
|
||||
${WRKSRC}/tools/clang/tools/scan-build/scan-build \
|
||||
${WRKSRC}/tools/clang/tools/scan-view/scan-view \
|
||||
${STAGEDIR}${PREFIX}/bin
|
||||
@${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
|
||||
@${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/Resources
|
||||
@${INSTALL_SCRIPT} ${WRKSRC}/tools/clang/tools/scan-view/*.py \
|
||||
${STRIP_CMD} ${STAGEDIR}${LLVM_PREFIX}/lib/libclang.so
|
||||
${LN} -f ${STAGEDIR}${LLVM_PREFIX}/bin/clang \
|
||||
${STAGEDIR}${LLVM_PREFIX}/bin/clang-cpp
|
||||
${INSTALL_SCRIPT} ${WRKSRC}/tools/clang/tools/scan-build/ccc-analyzer \
|
||||
${WRKSRC}/tools/clang/tools/scan-build/c++-analyzer \
|
||||
${WRKSRC}/tools/clang/tools/scan-build/scan-build \
|
||||
${WRKSRC}/tools/clang/tools/scan-view/scan-view \
|
||||
${STAGEDIR}${LLVM_PREFIX}/bin
|
||||
${INSTALL_SCRIPT} ${WRKDIR}/llvm-wrapper.sh \
|
||||
${STAGEDIR}${PREFIX}/bin/${FIRST_COMMAND}${LLVM_SUFFIX}
|
||||
.for command in ${COMMANDS:C/^/XXXX/1:NXXXX*}
|
||||
test -e ${STAGEDIR}${LLVM_PREFIX}/bin/${command}
|
||||
${LN} -f ${STAGEDIR}${PREFIX}/bin/${FIRST_COMMAND}${LLVM_SUFFIX} \
|
||||
${STAGEDIR}${PREFIX}/bin/${command}${LLVM_SUFFIX}
|
||||
.endfor
|
||||
${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
|
||||
${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/Resources
|
||||
${INSTALL_SCRIPT} ${WRKSRC}/tools/clang/tools/scan-view/*.py \
|
||||
${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
|
||||
@${INSTALL_SCRIPT} ${WRKSRC}/tools/clang/tools/scan-view/Resources/* \
|
||||
${INSTALL_SCRIPT} ${WRKSRC}/tools/clang/tools/scan-view/Resources/* \
|
||||
${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/Resources
|
||||
@${MKDIR} ${STAGEDIR}${DATADIR}
|
||||
@${INSTALL_DATA} ${WRKSRC}/tools/clang/tools/scan-build/scanview.css \
|
||||
${MKDIR} ${STAGEDIR}${DATADIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/tools/clang/tools/scan-build/scanview.css \
|
||||
${WRKSRC}/tools/clang/tools/scan-build/sorttable.js \
|
||||
${STAGEDIR}${DATADIR}
|
||||
@${INSTALL_MAN} ${WRKSRC}/tools/clang/docs/tools/clang.1 \
|
||||
${STAGEDIR}${MANPREFIX}/man/man1/
|
||||
cd ${WRKSRC}/tools/clang/docs/tools && \
|
||||
${GMAKE} DESTDIR=${STAGEDIR}/ install-html install-ps
|
||||
${INSTALL_MAN} ${WRKSRC}/tools/clang/docs/tools/clang.1 \
|
||||
${STAGEDIR}${MANPREFIX}/man/man1/clang${LLVM_SUFFIX}.1
|
||||
|
||||
TEST_CMD= '(cd ${WRKSRC}/test; ${SETENV} ${MAKE_ENV} ${GMAKE} check)'
|
||||
regression-test: ${BUILD_COOKIE}
|
||||
if [ `${ID} -u` = 0 ]; then \
|
||||
${CHOWN} -R nobody ${WRKSRC}/test; \
|
||||
su -m nobody -c ${TEST_CMD}; \
|
||||
else \
|
||||
${SH} -c ${TEST_CMD}; \
|
||||
fi
|
||||
|
||||
PLIST_FILE_LIST= bin/ccc-analyzer \
|
||||
bin/c++-analyzer \
|
||||
bin/c-index-test \
|
||||
bin/clang \
|
||||
bin/clang++ \
|
||||
bin/clang-check \
|
||||
bin/clang-cpp \
|
||||
bin/clang-format \
|
||||
bin/clang-tblgen \
|
||||
bin/scan-build \
|
||||
bin/scan-view \
|
||||
lib/libclang* \
|
||||
man/man1/clang.1.gz
|
||||
PLIST_FILE_LIST= ${COMMANDS:S|^|bin/|} \
|
||||
lib/libclang*
|
||||
PLIST_DIR_LIST= include/clang \
|
||||
include/clang-c \
|
||||
lib/clang
|
||||
@ -180,27 +189,27 @@ PLIST_PYDIR_LIST= Resources
|
||||
|
||||
build-plist:
|
||||
${RM} -f ${PLIST}
|
||||
cd ${PREFIX} && \
|
||||
(ls ${PLIST_FILE_LIST}; ${FIND} ${PLIST_DIR_LIST} -type f) | \
|
||||
${SED} -e 's|${CLANG_RELEASE}|%%CLANG_RELEASE%%|' | \
|
||||
.for command in ${COMMANDS}
|
||||
${ECHO_CMD} bin/${command}${LLVM_SUFFIX} >> ${PLIST}
|
||||
.endfor
|
||||
(ls ${PLIST_FILE_LIST:S|^|${STAGEDIR}${LLVM_PREFIX}/|}; \
|
||||
${FIND} ${PLIST_DIR_LIST:S|^|${STAGEDIR}${LLVM_PREFIX}/|} -type f) \
|
||||
| ${SED} -e 's|${STAGEDIR}${PREFIX}/||' | ${SORT} >> ${PLIST}
|
||||
echo man/man1/clang${LLVM_SUFFIX}.1.gz >> ${PLIST}
|
||||
${FIND} ${STAGEDIR}${DOCSDIR} -type f | \
|
||||
${SED} -e 's|${STAGEDIR}${DOCSDIR}|%%PORTDOCS%%%%DOCSDIR%%|' | \
|
||||
${SORT} >> ${PLIST}
|
||||
${FIND} ${DATADIR} ${DOCSDIR} -type f | \
|
||||
${SED} -e 's|${DATADIR}|%%DATADIR%%|' \
|
||||
-e 's|${DOCSDIR}|%%PORTDOCS%%%%DOCSDIR%%|' | ${SORT} >> ${PLIST}
|
||||
cd ${PYTHONPREFIX_SITELIBDIR} && \
|
||||
${FIND} ${PLIST_DIR_LIST:S|^|${STAGEDIR}${LLVM_PREFIX}/|} -type d | \
|
||||
${SED} -e 's|${STAGEDIR}${PREFIX}/|@dirrm |' | \
|
||||
${SORT} -r >> ${PLIST}
|
||||
${FIND} ${STAGEDIR}${DOCSDIR} -type d | ${SORT} -r | \
|
||||
${SED} -e 's|${STAGEDIR}${DOCSDIR}|%%PORTDOCS%%@dirrm %%DOCSDIR%%|' \
|
||||
>> ${PLIST}
|
||||
cd ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} && \
|
||||
ls ${PLIST_PYFILE_LIST} | ${SORT} | \
|
||||
${SED} -e 's|^|%%PYTHON_SITELIBDIR%%/|' >> ${PLIST}
|
||||
cd ${PREFIX} && \
|
||||
${FIND} ${PLIST_DIR_LIST} -type d | \
|
||||
${SED} -e 's|${CLANG_RELEASE}|%%CLANG_RELEASE%%|' | \
|
||||
${SORT} -r | ${SED} -e 's|^|@dirrm |' >> ${PLIST}
|
||||
cd ${PYTHONPREFIX_SITELIBDIR} && \
|
||||
cd ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} && \
|
||||
${FIND} ${PLIST_PYDIR_LIST} -type d | ${SORT} -r | \
|
||||
${SED} -e 's|^|@dirrm %%PYTHON_SITELIBDIR%%/|' >> ${PLIST}
|
||||
echo "@dirrmtry %%PYTHON_SITELIBDIR%%" >> ${PLIST}
|
||||
echo "@dirrmtry %%PYTHON_LIBDIR%%" >> ${PLIST}
|
||||
${FIND} ${DATADIR} ${DOCSDIR} -type d | ${SORT} -r | \
|
||||
${SED} -e 's|${DATADIR}|@dirrm %%DATADIR%%|' \
|
||||
-e 's|${DOCSDIR}|%%PORTDOCS%%@dirrm %%DOCSDIR%%|' >> ${PLIST}
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
@ -1,4 +1,4 @@
|
||||
SHA256 (clang-3.4.r191854.tar.bz2) = 37e9a613adcbdf556abff68d3df68e8a49e77d7110dce29e046702ed59fdff34
|
||||
SIZE (clang-3.4.r191854.tar.bz2) = 8163904
|
||||
SHA256 (llvm-3.4.r191854.tar.bz2) = 215e2f864549ea6299aa1b003c987f9a5d1a61ea2ad41b3445d2df109bb2c099
|
||||
SIZE (llvm-3.4.r191854.tar.bz2) = 11667946
|
||||
SHA256 (clang-3.4.r193887.tar.bz2) = ce034154e6ef98321b26c4c3fa82a1066fdfb49bd193e71767797c11eaea3f9c
|
||||
SIZE (clang-3.4.r193887.tar.bz2) = 8275346
|
||||
SHA256 (llvm-3.4.r193887.tar.bz2) = 175e3034a0f19c0ca9ce2fc75ccdc796f3c3bfd29b69f595aa4fc857f53db955
|
||||
SIZE (llvm-3.4.r193887.tar.bz2) = 11845136
|
||||
|
10
lang/clang-devel/files/llvm-wrapper.sh.in
Normal file
10
lang/clang-devel/files/llvm-wrapper.sh.in
Normal file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
# $FreeBSD$
|
||||
|
||||
LLVM_PREFIX="%%LLVM_PREFIX%%"
|
||||
LLVM_SUFFIX="%%LLVM_SUFFIX%%"
|
||||
|
||||
tool=$(basename $0)
|
||||
tool="${LLVM_PREFIX}/bin/${tool%${LLVM_SUFFIX}}"
|
||||
LD_LIBRARY_PATH="${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${LLVM_PREFIX}/lib" \
|
||||
"${tool}" "${@}"
|
@ -1,15 +0,0 @@
|
||||
|
||||
$FreeBSD$
|
||||
|
||||
--- tools/clang/lib/Basic/Targets.cpp.orig
|
||||
+++ tools/clang/lib/Basic/Targets.cpp
|
||||
@@ -3957,6 +3957,9 @@
|
||||
PointerWidth = PointerAlign = 64;
|
||||
LongDoubleWidth = LongDoubleAlign = 128;
|
||||
LongDoubleFormat = &llvm::APFloat::IEEEquad;
|
||||
+ // FIXME: Ugly ABI-Breaking hack until the back end supports 128-bit floats
|
||||
+ LongDoubleWidth = LongDoubleAlign = 64;
|
||||
+ LongDoubleFormat = &llvm::APFloat::IEEEdouble;
|
||||
SuitableAlign = 128;
|
||||
}
|
||||
virtual bool setABI(const std::string &Name) {
|
@ -0,0 +1,14 @@
|
||||
|
||||
$FreeBSD$
|
||||
|
||||
--- tools/clang/lib/Basic/Targets.cpp.orig
|
||||
+++ tools/clang/lib/Basic/Targets.cpp
|
||||
@@ -4981,6 +4981,8 @@
|
||||
LongDoubleWidth = LongDoubleAlign = 128;
|
||||
LongDoubleFormat = &llvm::APFloat::IEEEquad;
|
||||
if (getTriple().getOS() == llvm::Triple::FreeBSD) {
|
||||
+ IntMaxType = SignedLong;
|
||||
+ UIntMaxType = UnsignedLong;
|
||||
LongDoubleWidth = LongDoubleAlign = 64;
|
||||
LongDoubleFormat = &llvm::APFloat::IEEEdouble;
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
|
||||
$FreeBSD$
|
||||
|
||||
--- tools/clang/lib/Driver/ToolChains.cpp.orig
|
||||
+++ tools/clang/lib/Driver/ToolChains.cpp
|
||||
@@ -1950,6 +1950,38 @@
|
||||
}
|
||||
}
|
||||
|
||||
+ToolChain::CXXStdlibType
|
||||
+FreeBSD::GetCXXStdlibType(const ArgList &Args) const {
|
||||
+ if (Arg *A = Args.getLastArg(options::OPT_stdlib_EQ)) {
|
||||
+ StringRef Value = A->getValue();
|
||||
+ if (Value == "libc++")
|
||||
+ return ToolChain::CST_Libcxx;
|
||||
+ if (Value == "libstdc++")
|
||||
+ return ToolChain::CST_Libstdcxx;
|
||||
+ getDriver().Diag(diag::err_drv_invalid_stdlib_name)
|
||||
+ << A->getAsString(Args);
|
||||
+ }
|
||||
+
|
||||
+ return getTriple().getOSMajorVersion() >= 10 ? ToolChain::CST_Libcxx :
|
||||
+ ToolChain::CST_Libstdcxx;
|
||||
+}
|
||||
+
|
||||
+void FreeBSD::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs,
|
||||
+ ArgStringList &CC1Args) const {
|
||||
+ if (DriverArgs.hasArg(options::OPT_nostdlibinc) ||
|
||||
+ DriverArgs.hasArg(options::OPT_nostdincxx))
|
||||
+ return;
|
||||
+
|
||||
+ if (GetCXXStdlibType(DriverArgs) == ToolChain::CST_Libcxx)
|
||||
+ addSystemInclude(DriverArgs, CC1Args,
|
||||
+ getDriver().SysRoot + "/usr/include/c++/v1");
|
||||
+ else
|
||||
+ addSystemInclude(DriverArgs, CC1Args,
|
||||
+ getDriver().SysRoot + "/usr/include/c++/4.2");
|
||||
+ return;
|
||||
+
|
||||
+}
|
||||
+
|
||||
/// NetBSD - NetBSD tool chain which can call as(1) and ld(1) directly.
|
||||
|
||||
NetBSD::NetBSD(const Driver &D, const llvm::Triple& Triple, const ArgList &Args)
|
@ -0,0 +1,20 @@
|
||||
|
||||
$FreeBSD$
|
||||
|
||||
--- tools/clang/lib/Driver/ToolChains.h.orig
|
||||
+++ tools/clang/lib/Driver/ToolChains.h
|
||||
@@ -515,9 +515,14 @@
|
||||
FreeBSD(const Driver &D, const llvm::Triple &Triple,
|
||||
const llvm::opt::ArgList &Args);
|
||||
|
||||
+ virtual CXXStdlibType GetCXXStdlibType(const llvm::opt::ArgList &Args) const;
|
||||
+
|
||||
virtual bool IsMathErrnoDefault() const { return false; }
|
||||
virtual bool IsObjCNonFragileABIDefault() const { return true; }
|
||||
|
||||
+ virtual void AddClangCXXStdlibIncludeArgs(const llvm::opt::ArgList &DriverArgs,
|
||||
+ llvm::opt::ArgStringList &CC1Args) const;
|
||||
+
|
||||
virtual bool UseSjLjExceptions() const;
|
||||
protected:
|
||||
virtual Tool *buildAssembler() const;
|
File diff suppressed because it is too large
Load Diff
@ -12,27 +12,28 @@ DISTNAME= dragonegg-${PORTVERSION}
|
||||
MAINTAINER= brooks@FreeBSD.org
|
||||
COMMENT= GCC plugin to use the LLVM backend
|
||||
|
||||
CONFLICTS+= dragonegg46-3*
|
||||
BUILD_DEPENDS+= llvm-config${LLVM_SUFFIX}:${PORTSDIR}/devel/llvm-devel
|
||||
RUN_DEPENDS+= llvm-config${LLVM_SUFFIX}:${PORTSDIR}/devel/llvm-devel
|
||||
|
||||
# XXX: not entierly sure if llvm-devel is a depend
|
||||
BUILD_DEPENDS+= llvm-devel>=${PORTVERSION}:${PORTSDIR}/devel/llvm-devel
|
||||
RUN_DEPENDS+= llvm-devel>=${PORTVERSION}:${PORTSDIR}/devel/llvm-devel
|
||||
LLVM_SUFFIX= -devel
|
||||
|
||||
OPTIONS_DEFINE= DOCS
|
||||
|
||||
USES= compiler:features
|
||||
USES= compiler:features gmake
|
||||
USE_BZIP2= yes
|
||||
USE_GCC= 4.6
|
||||
USE_GMAKE= yes
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
DRAGONEGG_RELEASE= ${PORTVERSION:C/\.r[0-9]*//}
|
||||
DOCSDIR= ${PREFIX}/share/doc/${UNIQUENAME}
|
||||
UNIQUENAME= ${PORTNAME}${PKGNAMESUFFIX}
|
||||
|
||||
DRAGONEGG_RELEASE= ${PORTVERSION:C/\.r[0-9]*//}svn
|
||||
DRAGONEGG_SO= dragonegg-${DRAGONEGG_RELEASE}.so
|
||||
DRAGONEGG_PATH= ${GCC_LIBDIR}/${DRAGONEGG_SO}
|
||||
GCC_LIBDIR= lib/${CC}
|
||||
|
||||
ALL_TARGET=
|
||||
MAKE_ARGS= GCC=${LOCALBASE}/bin/${CC} VERBOSE=1
|
||||
MAKE_ARGS= GCC=${LOCALBASE}/bin/${CC} LLVM_CONFIG=llvm-config${LLVM_SUFFIX}
|
||||
|
||||
.include "${.CURDIR}/../../devel/llvm-devel/Makefile.svn_rev"
|
||||
|
||||
@ -40,9 +41,7 @@ PLIST_FILES= ${GCC_LIBDIR}/${DRAGONEGG_SO}
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${PORT_OPTIONS:MDOCS}
|
||||
PORTDOCS= README
|
||||
.endif
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
@ -72,12 +71,10 @@ post-patch:
|
||||
${WRKSRC}/README
|
||||
|
||||
do-install:
|
||||
mkdir -p ${STAGEDIR}${LOCALBASE}/${GCC_LIBDIR}
|
||||
@${MKDIR} ${STAGEDIR}${LOCALBASE}/${GCC_LIBDIR}
|
||||
${INSTALL_LIB} ${WRKSRC}/dragonegg.so \
|
||||
${STAGEDIR}${LOCALBASE}/${GCC_LIBDIR}/${DRAGONEGG_SO}
|
||||
.if ${PORT_OPTIONS:MDOCS}
|
||||
${MKDIR} ${STAGEDIR}${DOCSDIR}
|
||||
@${MKDIR} ${STAGEDIR}${DOCSDIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/README ${STAGEDIR}${DOCSDIR}
|
||||
.endif
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
@ -1,2 +1,2 @@
|
||||
SHA256 (dragonegg-3.4.r191854.tar.bz2) = 2e58f68293e492ffeb8da3c828bc30c83939a9610f2e5d1efa75b078938bea42
|
||||
SIZE (dragonegg-3.4.r191854.tar.bz2) = 398552
|
||||
SHA256 (dragonegg-3.4.r193887.tar.bz2) = 39db454a93a2b865a3322a6460551201224e091f204792548ef851c145db367d
|
||||
SIZE (dragonegg-3.4.r193887.tar.bz2) = 398941
|
||||
|
Loading…
Reference in New Issue
Block a user