AUX clang-2.6-fixdoc.patch 1885 RMD160 40512b1dcbb245c959b77408bcb7c02a590ac7d9 SHA1 67be72160a5733c251bcf9cead453353e0359394 SHA256 b0f5bf5de8af96ea92ee39701feb5131e7c98a21ccf52be53650cce63d1af052
+AUX clang-2.7-fixdoc.patch 1977 RMD160 62f52e5580baa396d93c56735c0039c8691b43b6 SHA1 351c1d2cf86b6da75a6ed19083d7a857333f007c SHA256 36c2214e575ed3fd78938279739e82c4f750f8726f8387e1414c18532501314a
AUX llvm-2.6-cflags.patch 1177 RMD160 9c9061834d87357930d3ea1ef9f56a355885acb9 SHA1 4472b00a4d22b29e690e69fa0c2a365858634484 SHA256 f666995873ab6fe987229c941efb168de2bf9353115248ae37942a2d30d67182
DIST clang-2.6.tar.gz 3857138 RMD160 b7e44abbf28902ff8e3fd4578a5ff9dd34f40817 SHA1 188f29ad3b2c64fcdc791aa34b323ed06452d7ae SHA256 98e22f4f5877fb3c73abb9ddcb3065ba9c94a21146387da7f905e6fd559d39ea
+DIST clang-2.7.tgz 4953739 RMD160 177fdcf59be4a60c37cf0dfb058535c9cdbbad4e SHA1 4d8326bfe2308a7355a5e4ca2eb172bffd761e1e SHA256 fb349471947f155c1cda1c8a4a3bbc7fa437b86f6875d9978f86c915dfed623a
DIST llvm-2.6.tar.gz 7790380 RMD160 24d58cb052ab5879aae59eaf4885ec41186ee22a SHA1 547471147cbf6d3e49539e01196ffada2c79c250 SHA256 4cd9257350c5ff8b9b139d19497e2396c0604eef0e5d6504f5c1463b09bf2d84
-EBUILD clang-2.6-r2.ebuild 3918 RMD160 f30347c7512806c87fc64abd6e67a429d083d8d8 SHA1 25db8c502f95726c4544c22ff2ed4c498fdf834d SHA256 02d59e2da34283b08ef03d9d56fcdb4f916d42cf367b49e8067e356615de4c98
+DIST llvm-2.7.tgz 8374297 RMD160 0fa2f362dd6a45efec35ce8fa0f8d36d98f32c8f SHA1 059fc21b0ec1b649c4a3dec81756e5f92aa131a2 SHA256 99664bdc8503a306038166af33f28eb426d99e297575a59d74a1a0dcbddbbca5
EBUILD clang-2.6-r3.ebuild 4015 RMD160 333fa2955e6107c2ede5b6e3e9f1dd858fa91cbe SHA1 90df79453f19d3b93f3fa771c7a71e2991688492 SHA256 d3930b82440df0623ff0a42b3077978dac7bc4d1937142a16b46e7e2b1f81f41
-MISC ChangeLog 1986 RMD160 ffea9c49010d2fd29d815d8ddceb373fbbc1aa87 SHA1 a86819da86a701bebaeb20ec580ee3de8bc3766e SHA256 c82668e59ff9a7ca823563cc02669ba32731d34af1d203060eefab96442d2dfd
+EBUILD clang-2.7.ebuild 3957 RMD160 58ee1b5fee888f1140fe531b69e1384daff924b2 SHA1 8c93df183c694fa262f6d471065c7cb52eae9e24 SHA256 c80168384d384bd7ce1a790b67bdb17b6268e862b12b7e78f4d6883ce0a67dff
+MISC ChangeLog 2178 RMD160 833ff4a2d43d53b03a1f213cdd31bc0c6a0fffbe SHA1 ef5e18a108a115661b247ceb8eca536c8531ef72 SHA256 2ad90d5540261dc10a3a0c3fafe2798c690b64eb4f171689f77fab5ddd51c127
MISC metadata.xml 1098 RMD160 472ed702bea452e68447b59908bc9279bbb890dd SHA1 ef26faea642b17778814391ccd3016f933ec8e12 SHA256 2d18687396a420ad6aa7179f1104b90962514d2fcf94e3838ce82cd109b359c0
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/clang-2.6-r2.ebuild,v 1.1 2010/03/18 21:33:10 voyageur Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/clang-2.7.ebuild,v 1.1 2010/04/27 12:08:55 voyageur Exp $
EAPI=2
+
+RESTRICT_PYTHON_ABIS="3.*"
+SUPPORT_PYTHON_ABIS="1"
+
inherit eutils python
DESCRIPTION="C language family frontend for LLVM"
HOMEPAGE="http://clang.llvm.org/"
# Fetching LLVM as well: see http://llvm.org/bugs/show_bug.cgi?id=4840
-SRC_URI="http://llvm.org/releases/${PV}/llvm-${PV}.tar.gz
- http://llvm.org/releases/${PV}/${P}.tar.gz"
+SRC_URI="http://llvm.org/releases/${PV}/llvm-${PV}.tgz
+ http://llvm.org/releases/${PV}/${P}.tgz"
LICENSE="UoI-NCSA"
SLOT="0"
test? ( dev-util/dejagnu )"
RDEPEND="~sys-devel/llvm-${PV}"
-S="${WORKDIR}/llvm-2.6"
+S="${WORKDIR}/llvm-2.7"
src_prepare() {
- mv "${WORKDIR}"/clang-2.6 "${S}"/tools/clang || die "clang source directory not found"
+ mv "${WORKDIR}"/clang-2.7 "${S}"/tools/clang || die "clang source directory not found"
# Same as llvm doc patches
- epatch "${FILESDIR}"/${PN}-2.6-fixdoc.patch
+ epatch "${FILESDIR}"/${PN}-2.7-fixdoc.patch
# multilib-strict
- sed -e "/PROJ_headers/s#lib/clang/1.0#$(get_libdir)/clang/1.0#" \
+ sed -e "/PROJ_headers/s#lib/clang#$(get_libdir)/clang#" \
-i tools/clang/lib/Headers/Makefile \
|| die "clang Makefile failed"
# fix the static analyzer for in-tree install
-i tools/clang/tools/scan-view/scan-view \
|| die "scan-view sed failed"
sed -e "/scanview.css\|sorttable.js/s#\$RealBin#/usr/share/${PN}#" \
- -i tools/clang/utils/scan-build \
+ -i tools/clang/tools/scan-build/scan-build \
|| die "scan-build sed failed"
- # Broken test in 2.6, http://llvm.org/bugs/show_bug.cgi?id=5111
- rm tools/clang/test/Analysis/retain-release.m
+ # Specify python version
+ python_convert_shebangs 2 tools/clang/tools/scan-view/scan-view
# From llvm src_prepare
einfo "Fixing install dirs"
- sed -e 's,^PROJ_docsdir.*,PROJ_docsdir := $(DESTDIR)$(PROJ_prefix)/share/doc/'${PF}, \
- -e 's,^PROJ_etcdir.*,PROJ_etcdir := $(DESTDIR)/etc/llvm,' \
- -e 's,^PROJ_libdir.*,PROJ_libdir := $(DESTDIR)/usr/'$(get_libdir), \
+ sed -e 's,^PROJ_docsdir.*,PROJ_docsdir := $(PROJ_prefix)/share/doc/'${PF}, \
+ -e 's,^PROJ_etcdir.*,PROJ_etcdir := /etc/llvm,' \
+ -e 's,^PROJ_libdir.*,PROJ_libdir := $(PROJ_prefix)/'$(get_libdir), \
-i Makefile.config.in || die "Makefile.config sed failed"
einfo "Fixing rpath"
sed -e 's/\$(RPATH) -Wl,\$(\(ToolDir\|LibDir\))//g' -i Makefile.rules \
|| die "rpath sed failed"
-
- # Do not force -O3 -fomit-frame-pointer on users, from llvm ebuild
- epatch "${FILESDIR}"/llvm-2.6-cflags.patch
}
src_configure() {
}
src_compile() {
- emake VERBOSE=1 KEEP_SYMBOLS=1 clang-only || die "emake failed"
+ emake VERBOSE=1 KEEP_SYMBOLS=1 REQUIRES_RTTI=1 clang-only || die "emake failed"
}
src_test() {
+ cd "${S}"/test || die "cd failed"
+ emake site.exp || die "updating llvm site.exp failed"
+
cd "${S}"/tools/clang || die "cd clang failed"
echo ">>> Test phase [test]: ${CATEGORY}/${PF}"
emake KEEP_SYMBOLS=1 DESTDIR="${D}" install || die "install failed"
if use static-analyzer ; then
- dobin utils/ccc-analyzer
- dobin utils/scan-build
+ dobin tools/scan-build/ccc-analyzer
+ dosym ccc-analyzer /usr/bin/c++-analyzer
+ dobin tools/scan-build/scan-build
insinto /usr/share/${PN}
- doins utils/scanview.css
- doins utils/sorttable.js
+ doins tools/scan-build/scanview.css
+ doins tools/scan-build/sorttable.js
cd tools/scan-view || die "cd scan-view failed"
dobin scan-view
- python_version
- insinto /usr/$(get_libdir)/python${PYVER}/site-packages/clang
- doins Reporter.py Resources ScanView.py startfile.py
- touch "${D}"/usr/$(get_libdir)/python${PYVER}/site-packages/clang/__init__.py
+ install-scan-view() {
+ insinto "$(python_get_sitedir)"/clang
+ doins Reporter.py Resources ScanView.py startfile.py
+ touch "${D}"/"$(python_get_sitedir)"/clang/__init__.py
+ }
+ python_execute_function install-scan-view
fi
}
pkg_postinst() {
- python_version
- python_mod_optimize /usr/$(get_libdir)/python${PYVER}/site-packages/clang
+ python_mod_optimize clang
}
pkg_postrm() {
- python_mod_cleanup
+ python_mod_cleanup clang
}
--- /dev/null
+diff -Naur llvm-2.7.orig//tools/clang/docs/Makefile llvm-2.7/tools/clang/docs/Makefile
+--- llvm-2.7.orig//tools/clang/docs/Makefile 2010-04-26 18:38:45.000000000 +0200
++++ llvm-2.7/tools/clang/docs/Makefile 2010-04-26 18:41:08.000000000 +0200
+@@ -46,13 +46,12 @@
+ # 'make generated BUILD_FOR_WEBSITE=1'
+ generated:: doxygen
+
+-install-html: $(PROJ_OBJ_DIR)/html.tar.gz
++install-html:
+ $(Echo) Installing HTML documentation
+ $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html
+ $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/img
+ $(Verb) $(DataInstall) $(HTML) $(DESTDIR)$(PROJ_docsdir)/html
+ # $(Verb) $(DataInstall) $(IMAGES) $(DESTDIR)$(PROJ_docsdir)/html/img
+- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/html.tar.gz $(DESTDIR)$(PROJ_docsdir)
+
+ $(PROJ_OBJ_DIR)/html.tar.gz: $(HTML)
+ $(Echo) Packaging HTML documentation
+@@ -64,12 +63,11 @@
+ install-doxygen: doxygen
+ $(Echo) Installing doxygen documentation
+ $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/doxygen
+- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/doxygen.tar.gz $(DESTDIR)$(PROJ_docsdir)
+ $(Verb) cd $(PROJ_OBJ_DIR)/doxygen && \
+ $(FIND) . -type f -exec \
+ $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/html/doxygen \;
+
+-doxygen: regendoc $(PROJ_OBJ_DIR)/doxygen.tar.gz
++doxygen: regendoc
+
+ regendoc:
+ $(Echo) Building doxygen documentation
+diff -Naur llvm-2.7.orig//tools/clang/docs/tools/Makefile llvm-2.7/tools/clang/docs/tools/Makefile
+--- llvm-2.7.orig//tools/clang/docs/tools/Makefile 2010-04-26 18:38:45.000000000 +0200
++++ llvm-2.7/tools/clang/docs/tools/Makefile 2010-04-26 18:41:29.000000000 +0200
+@@ -24,7 +24,7 @@
+ CLANG_VERSION := trunk
+
+ # If we are in BUILD_FOR_WEBSITE mode, default to the all target.
+-all:: html man ps
++all:: html man
+
+ clean:
+ rm -f pod2htm*.*~~ $(HTML) $(MAN) $(PS)
+@@ -58,7 +58,7 @@
+ ifdef ONLY_MAN_DOCS
+ INSTALL_TARGETS := install-man
+ else
+-INSTALL_TARGETS := install-html install-man install-ps
++INSTALL_TARGETS := install-html install-man
+ endif
+
+ .SUFFIXES: