mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-12 15:36:58 +02:00
Clang: remove v2.8 clang.
As suggested by Mike Frysinger, this ancient clang is not used, so we can delete it now. TEST=None BUG=None Change-Id: Iad4b8f6db35141ad142f5a3742ada0c0bb32f4a6 Reviewed-on: https://gerrit.chromium.org/gerrit/40462 Reviewed-by: Han Shen <shenhan@google.com> Reviewed-by: Denis Glotov <glotov@chromium.org> Commit-Queue: Guozhi Wei <carrot@google.com> Tested-by: Guozhi Wei <carrot@google.com> Reviewed-by: Han Shen <shenhan@chromium.org>
This commit is contained in:
parent
43267f56d3
commit
f55caafa57
@ -1,2 +0,0 @@
|
||||
DIST clang-2.8.tgz 5666777 RMD160 f00956b6de29cc09f3992aeabd140f2189c6cf39 SHA1 94977c84ce136307dbbeade95e67bfe3c25161ff SHA256 ed83481553e6a39a8a2953e89630d881d87833506f096a90f18d93ec2bdee0c1
|
||||
DIST llvm-2.8-r1.tgz 9112527 RMD160 3f5a71d07e105a7cf46eafc7a9006a927035012c SHA1 6d49fe039d28e8664de25491c775cb2c599e30c1 SHA256 25addb742f1c6cc12877ed0ee924dda962d848368ee095be8e48342ae613d43b
|
@ -1,201 +0,0 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/clang-2.8-r3.ebuild,v 1.4 2011/07/08 10:10:59 ssuominen Exp $
|
||||
|
||||
EAPI=3
|
||||
|
||||
RESTRICT_PYTHON_ABIS="3.*"
|
||||
SUPPORT_PYTHON_ABIS="1"
|
||||
|
||||
inherit eutils multilib 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
|
||||
# Drop the -> on 2.9
|
||||
SRC_URI="http://llvm.org/releases/${PV}/llvm-${PV}.tgz -> llvm-${PV}-r1.tgz
|
||||
http://llvm.org/releases/${PV}/${P}.tgz"
|
||||
|
||||
LICENSE="UoI-NCSA"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
IUSE="alltargets debug +static-analyzer system-cxx-headers test"
|
||||
|
||||
# Note: for LTO support, clang will depend on binutils with gold plugins, and LLVM built after that - http://llvm.org/docs/GoldPlugin.html
|
||||
DEPEND="static-analyzer? ( dev-lang/perl )"
|
||||
RDEPEND="~sys-devel/llvm-${PV}[alltargets=]"
|
||||
|
||||
S="${WORKDIR}/llvm-${PV}"
|
||||
|
||||
src_prepare() {
|
||||
mv "${WORKDIR}"/clang-${PV} "${S}"/tools/clang || die "clang source directory not found"
|
||||
|
||||
# Same as llvm doc patches
|
||||
epatch "${FILESDIR}"/${PN}-2.7-fixdoc.patch
|
||||
|
||||
# Upstream backport, r117774 and r117775
|
||||
epatch "${FILESDIR}"/${P}-alignof.patch
|
||||
# Upstream backport, r119348
|
||||
epatch "${FILESDIR}"/${P}-gcc-4.4.4.patch
|
||||
|
||||
# Fix toolchain lookup for Darwin/Prefix.
|
||||
epatch "${FILESDIR}"/${PN}-2.8-darwin-prefix.patch
|
||||
sed -e "s|@GENTOO_PORTAGE_CHOST_ARCH@|${CHOST%%-darwin*}-darwin|g" \
|
||||
-e "s|@GENTOO_PORTAGE_CHOST@|${CHOST}|g" \
|
||||
-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}|g" \
|
||||
-i tools/clang/lib/Driver/ToolChains.cpp \
|
||||
|| die "fixing toolchain lookup"
|
||||
|
||||
# multilib-strict
|
||||
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
|
||||
sed -e 's/import ScanView/from clang \0/' \
|
||||
-i tools/clang/tools/scan-view/scan-view \
|
||||
|| die "scan-view sed failed"
|
||||
sed -e "/scanview.css\|sorttable.js/s#\$RealBin#${EPREFIX}/usr/share/${PN}#" \
|
||||
-i tools/clang/tools/scan-build/scan-build \
|
||||
|| die "scan-build sed failed"
|
||||
# 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 := $(PROJ_prefix)/share/doc/'${PF}, \
|
||||
-e 's,^PROJ_etcdir.*,PROJ_etcdir := '"${EPREFIX}"'/etc/llvm,' \
|
||||
-e 's,^PROJ_libdir.*,PROJ_libdir := $(PROJ_prefix)/'$(get_libdir)/llvm, \
|
||||
-i Makefile.config.in || die "Makefile.config sed failed"
|
||||
|
||||
einfo "Fixing rpath"
|
||||
sed -e 's,\$(RPATH) -Wl\,\$(\(ToolDir\|LibDir\)),$(RPATH) -Wl\,'"${EPREFIX}"/usr/$(get_libdir)/llvm, \
|
||||
-i Makefile.rules || die "rpath sed failed"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local CONF_FLAGS="--enable-shared"
|
||||
|
||||
if use debug; then
|
||||
CONF_FLAGS="${CONF_FLAGS} --disable-optimized"
|
||||
einfo "Note: Compiling LLVM in debug mode will create huge and slow binaries"
|
||||
# ...and you probably shouldn't use tmpfs, unless it can hold 900MB
|
||||
else
|
||||
CONF_FLAGS="${CONF_FLAGS} \
|
||||
--enable-optimized \
|
||||
--disable-assertions \
|
||||
--disable-expensive-checks"
|
||||
fi
|
||||
|
||||
# Setup the search path to include the Prefix includes
|
||||
if use prefix ; then
|
||||
CONF_FLAGS="${CONF_FLAGS} \
|
||||
--with-c-include-dirs=${EPREFIX}/usr/include:/usr/include"
|
||||
fi
|
||||
|
||||
if use alltargets; then
|
||||
CONF_FLAGS="${CONF_FLAGS} --enable-targets=all"
|
||||
else
|
||||
CONF_FLAGS="${CONF_FLAGS} --enable-targets=host-only"
|
||||
fi
|
||||
|
||||
if use amd64; then
|
||||
CONF_FLAGS="${CONF_FLAGS} --enable-pic"
|
||||
fi
|
||||
|
||||
# Skip llvm-gcc parts even if installed
|
||||
CONF_FLAGS="${CONF_FLAGS} --with-llvmgccdir=/dev/null"
|
||||
|
||||
if use system-cxx-headers; then
|
||||
# Try to get current gcc headers path
|
||||
local CXX_PATH=$(gcc-config -X| cut -d: -f1 | sed 's,/include/g++-v4$,,')
|
||||
CONF_FLAGS="${CONF_FLAGS} --with-c-include-dirs=/usr/include:${CXX_PATH}/include"
|
||||
CONF_FLAGS="${CONF_FLAGS} --with-cxx-include-root=${CXX_PATH}/include/g++-v4"
|
||||
CONF_FLAGS="${CONF_FLAGS} --with-cxx-include-arch=$CHOST"
|
||||
if has_multilib_profile; then
|
||||
CONF_FLAGS="${CONF_FLAGS} --with-cxx-include-32bit-dir=32"
|
||||
fi
|
||||
fi
|
||||
|
||||
econf ${CONF_FLAGS} || die "econf failed"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
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}"
|
||||
if ! emake -j1 VERBOSE=1 test; then
|
||||
has test $FEATURES && die "Make test failed. See above for details."
|
||||
has test $FEATURES || eerror "Make test failed. See above for details."
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cd "${S}"/tools/clang || die "cd clang failed"
|
||||
emake KEEP_SYMBOLS=1 DESTDIR="${D}" install || die "install failed"
|
||||
|
||||
if use static-analyzer ; then
|
||||
dobin tools/scan-build/ccc-analyzer
|
||||
dosym ccc-analyzer /usr/bin/c++-analyzer
|
||||
dobin tools/scan-build/scan-build
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins tools/scan-build/scanview.css
|
||||
doins tools/scan-build/sorttable.js
|
||||
|
||||
cd tools/scan-view || die "cd scan-view failed"
|
||||
dobin scan-view
|
||||
install-scan-view() {
|
||||
insinto "$(python_get_sitedir)"/clang
|
||||
doins Reporter.py Resources ScanView.py startfile.py
|
||||
touch "${ED}"/"$(python_get_sitedir)"/clang/__init__.py
|
||||
}
|
||||
python_execute_function install-scan-view
|
||||
fi
|
||||
|
||||
# Fix install_names on Darwin. The build system is too complicated
|
||||
# to just fix this, so we correct it post-install
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
for lib in libclang.dylib ; do
|
||||
ebegin "fixing install_name of $lib"
|
||||
install_name_tool -id "${EPREFIX}"/usr/lib/llvm/${lib} \
|
||||
"${ED}"/usr/lib/llvm/${lib}
|
||||
eend $?
|
||||
done
|
||||
for f in usr/bin/{c-index-test,clang} usr/lib/llvm/libclang.dylib ; do
|
||||
ebegin "fixing references in ${f##*/}"
|
||||
install_name_tool \
|
||||
-change "@rpath/libclang.dylib" \
|
||||
"${EPREFIX}"/usr/lib/llvm/libclang.dylib \
|
||||
-change "${S}"/Release/lib/libLLVM-${PV}.dylib \
|
||||
"${EPREFIX}"/usr/lib/llvm/libLLVM-${PV}.dylib \
|
||||
-change "${S}"/Release/lib/libclang.dylib \
|
||||
"${EPREFIX}"/usr/lib/llvm/libclang.dylib \
|
||||
"${ED}"/$f
|
||||
eend $?
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
python_mod_optimize clang
|
||||
if use system-cxx-headers; then
|
||||
elog "C++ headers search path is hardcoded to the active gcc profile one"
|
||||
elog "If you change the active gcc profile, or update gcc to a new version,"
|
||||
elog "you will have to remerge this package to update the search path"
|
||||
else
|
||||
elog "If clang++ fails to find C++ headers on your system,"
|
||||
elog "you can remerge clang with USE=system-cxx-headers to use C++ headers"
|
||||
elog "from the active gcc profile"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
python_mod_cleanup clang
|
||||
}
|
@ -1,53 +0,0 @@
|
||||
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:
|
@ -1,258 +0,0 @@
|
||||
Index: include/llvm/ADT/StringMap.h
|
||||
===================================================================
|
||||
--- include/llvm/ADT/StringMap.h (révision 117773)
|
||||
+++ include/llvm/ADT/StringMap.h (révision 117774)
|
||||
@@ -167,7 +167,7 @@
|
||||
|
||||
unsigned AllocSize = static_cast<unsigned>(sizeof(StringMapEntry))+
|
||||
KeyLength+1;
|
||||
- unsigned Alignment = alignof<StringMapEntry>();
|
||||
+ unsigned Alignment = alignOf<StringMapEntry>();
|
||||
|
||||
StringMapEntry *NewItem =
|
||||
static_cast<StringMapEntry*>(Allocator.Allocate(AllocSize,Alignment));
|
||||
Index: include/llvm/Support/AlignOf.h
|
||||
===================================================================
|
||||
--- include/llvm/Support/AlignOf.h (révision 117773)
|
||||
+++ include/llvm/Support/AlignOf.h (révision 117774)
|
||||
@@ -49,12 +49,12 @@
|
||||
|
||||
};
|
||||
|
||||
-/// alignof - A templated function that returns the mininum alignment of
|
||||
+/// alignOf - A templated function that returns the mininum alignment of
|
||||
/// of a type. This provides no extra functionality beyond the AlignOf
|
||||
/// class besides some cosmetic cleanliness. Example usage:
|
||||
-/// alignof<int>() returns the alignment of an int.
|
||||
+/// alignOf<int>() returns the alignment of an int.
|
||||
template <typename T>
|
||||
-static inline unsigned alignof() { return AlignOf<T>::Alignment; }
|
||||
+static inline unsigned alignOf() { return AlignOf<T>::Alignment; }
|
||||
|
||||
} // end namespace llvm
|
||||
#endif
|
||||
Index: include/llvm/Support/Allocator.h
|
||||
===================================================================
|
||||
--- include/llvm/Support/Allocator.h (révision 117773)
|
||||
+++ include/llvm/Support/Allocator.h (révision 117774)
|
||||
@@ -201,7 +201,7 @@
|
||||
char *End = Slab == Allocator.CurSlab ? Allocator.CurPtr :
|
||||
(char *)Slab + Slab->Size;
|
||||
for (char *Ptr = (char*)(Slab+1); Ptr < End; Ptr += sizeof(T)) {
|
||||
- Ptr = Allocator.AlignPtr(Ptr, alignof<T>());
|
||||
+ Ptr = Allocator.AlignPtr(Ptr, alignOf<T>());
|
||||
if (Ptr + sizeof(T) <= End)
|
||||
reinterpret_cast<T*>(Ptr)->~T();
|
||||
}
|
||||
Index: include/llvm/CodeGen/SlotIndexes.h
|
||||
===================================================================
|
||||
--- include/llvm/CodeGen/SlotIndexes.h (révision 117773)
|
||||
+++ include/llvm/CodeGen/SlotIndexes.h (révision 117774)
|
||||
@@ -393,7 +393,7 @@
|
||||
IndexListEntry *entry =
|
||||
static_cast<IndexListEntry*>(
|
||||
ileAllocator.Allocate(sizeof(IndexListEntry),
|
||||
- alignof<IndexListEntry>()));
|
||||
+ alignOf<IndexListEntry>()));
|
||||
|
||||
new (entry) IndexListEntry(mi, index);
|
||||
|
||||
Index: tools/clang/lib/Basic/IdentifierTable.cpp
|
||||
===================================================================
|
||||
--- tools/clang/lib/Basic/IdentifierTable.cpp (révision 117774)
|
||||
+++ tools/clang/lib/Basic/IdentifierTable.cpp (révision 117775)
|
||||
@@ -390,7 +390,7 @@
|
||||
unsigned Size = sizeof(MultiKeywordSelector) + nKeys*sizeof(IdentifierInfo *);
|
||||
MultiKeywordSelector *SI =
|
||||
(MultiKeywordSelector*)SelTabImpl.Allocator.Allocate(Size,
|
||||
- llvm::alignof<MultiKeywordSelector>());
|
||||
+ llvm::alignOf<MultiKeywordSelector>());
|
||||
new (SI) MultiKeywordSelector(nKeys, IIV);
|
||||
SelTabImpl.Table.InsertNode(SI, InsertPos);
|
||||
return Selector(SI);
|
||||
Index: tools/clang/lib/AST/ExprCXX.cpp
|
||||
===================================================================
|
||||
--- tools/clang/lib/AST/ExprCXX.cpp (révision 117774)
|
||||
+++ tools/clang/lib/AST/ExprCXX.cpp (révision 117775)
|
||||
@@ -233,7 +233,7 @@
|
||||
if (NumTemplateArgs != 0)
|
||||
size += ExplicitTemplateArgumentList::sizeFor(NumTemplateArgs);
|
||||
|
||||
- void *Mem = C.Allocate(size, llvm::alignof<UnresolvedLookupExpr>());
|
||||
+ void *Mem = C.Allocate(size, llvm::alignOf<UnresolvedLookupExpr>());
|
||||
UnresolvedLookupExpr *E = new (Mem) UnresolvedLookupExpr(EmptyShell());
|
||||
E->HasExplicitTemplateArgs = NumTemplateArgs != 0;
|
||||
return E;
|
||||
@@ -261,7 +261,7 @@
|
||||
if (NumResults) {
|
||||
Results = static_cast<DeclAccessPair *>(
|
||||
C.Allocate(sizeof(DeclAccessPair) * NumResults,
|
||||
- llvm::alignof<DeclAccessPair>()));
|
||||
+ llvm::alignOf<DeclAccessPair>()));
|
||||
memcpy(Results, &*Begin.getIterator(),
|
||||
NumResults * sizeof(DeclAccessPair));
|
||||
}
|
||||
@@ -737,7 +737,7 @@
|
||||
if (TemplateArgs)
|
||||
size += ExplicitTemplateArgumentList::sizeFor(*TemplateArgs);
|
||||
|
||||
- void *Mem = C.Allocate(size, llvm::alignof<CXXDependentScopeMemberExpr>());
|
||||
+ void *Mem = C.Allocate(size, llvm::alignOf<CXXDependentScopeMemberExpr>());
|
||||
return new (Mem) CXXDependentScopeMemberExpr(C, Base, BaseType,
|
||||
IsArrow, OperatorLoc,
|
||||
Qualifier, QualifierRange,
|
||||
@@ -756,7 +756,7 @@
|
||||
|
||||
std::size_t size = sizeof(CXXDependentScopeMemberExpr) +
|
||||
ExplicitTemplateArgumentList::sizeFor(NumTemplateArgs);
|
||||
- void *Mem = C.Allocate(size, llvm::alignof<CXXDependentScopeMemberExpr>());
|
||||
+ void *Mem = C.Allocate(size, llvm::alignOf<CXXDependentScopeMemberExpr>());
|
||||
CXXDependentScopeMemberExpr *E
|
||||
= new (Mem) CXXDependentScopeMemberExpr(C, 0, QualType(),
|
||||
0, SourceLocation(), 0,
|
||||
@@ -812,7 +812,7 @@
|
||||
if (TemplateArgs)
|
||||
size += ExplicitTemplateArgumentList::sizeFor(*TemplateArgs);
|
||||
|
||||
- void *Mem = C.Allocate(size, llvm::alignof<UnresolvedMemberExpr>());
|
||||
+ void *Mem = C.Allocate(size, llvm::alignOf<UnresolvedMemberExpr>());
|
||||
return new (Mem) UnresolvedMemberExpr(C,
|
||||
Dependent ? C.DependentTy : C.OverloadTy,
|
||||
Dependent, HasUnresolvedUsing, Base, BaseType,
|
||||
@@ -826,7 +826,7 @@
|
||||
if (NumTemplateArgs != 0)
|
||||
size += ExplicitTemplateArgumentList::sizeFor(NumTemplateArgs);
|
||||
|
||||
- void *Mem = C.Allocate(size, llvm::alignof<UnresolvedMemberExpr>());
|
||||
+ void *Mem = C.Allocate(size, llvm::alignOf<UnresolvedMemberExpr>());
|
||||
UnresolvedMemberExpr *E = new (Mem) UnresolvedMemberExpr(EmptyShell());
|
||||
E->HasExplicitTemplateArgs = NumTemplateArgs != 0;
|
||||
return E;
|
||||
Index: tools/clang/lib/AST/DeclObjC.cpp
|
||||
===================================================================
|
||||
--- tools/clang/lib/AST/DeclObjC.cpp (révision 117774)
|
||||
+++ tools/clang/lib/AST/DeclObjC.cpp (révision 117775)
|
||||
@@ -711,7 +711,7 @@
|
||||
void ObjCClassDecl::setClassList(ASTContext &C, ObjCInterfaceDecl*const*List,
|
||||
const SourceLocation *Locs, unsigned Num) {
|
||||
ForwardDecls = (ObjCClassRef*) C.Allocate(sizeof(ObjCClassRef)*Num,
|
||||
- llvm::alignof<ObjCClassRef>());
|
||||
+ llvm::alignOf<ObjCClassRef>());
|
||||
for (unsigned i = 0; i < Num; ++i)
|
||||
new (&ForwardDecls[i]) ObjCClassRef(List[i], Locs[i]);
|
||||
|
||||
Index: tools/clang/lib/AST/Stmt.cpp
|
||||
===================================================================
|
||||
--- tools/clang/lib/AST/Stmt.cpp (révision 117774)
|
||||
+++ tools/clang/lib/AST/Stmt.cpp (révision 117775)
|
||||
@@ -416,7 +416,7 @@
|
||||
Stmt *atFinallyStmt) {
|
||||
unsigned Size = sizeof(ObjCAtTryStmt) +
|
||||
(1 + NumCatchStmts + (atFinallyStmt != 0)) * sizeof(Stmt *);
|
||||
- void *Mem = Context.Allocate(Size, llvm::alignof<ObjCAtTryStmt>());
|
||||
+ void *Mem = Context.Allocate(Size, llvm::alignOf<ObjCAtTryStmt>());
|
||||
return new (Mem) ObjCAtTryStmt(atTryLoc, atTryStmt, CatchStmts, NumCatchStmts,
|
||||
atFinallyStmt);
|
||||
}
|
||||
@@ -426,7 +426,7 @@
|
||||
bool HasFinally) {
|
||||
unsigned Size = sizeof(ObjCAtTryStmt) +
|
||||
(1 + NumCatchStmts + HasFinally) * sizeof(Stmt *);
|
||||
- void *Mem = Context.Allocate(Size, llvm::alignof<ObjCAtTryStmt>());
|
||||
+ void *Mem = Context.Allocate(Size, llvm::alignOf<ObjCAtTryStmt>());
|
||||
return new (Mem) ObjCAtTryStmt(EmptyShell(), NumCatchStmts, HasFinally);
|
||||
}
|
||||
|
||||
@@ -448,7 +448,7 @@
|
||||
std::size_t Size = sizeof(CXXTryStmt);
|
||||
Size += ((numHandlers + 1) * sizeof(Stmt));
|
||||
|
||||
- void *Mem = C.Allocate(Size, llvm::alignof<CXXTryStmt>());
|
||||
+ void *Mem = C.Allocate(Size, llvm::alignOf<CXXTryStmt>());
|
||||
return new (Mem) CXXTryStmt(tryLoc, tryBlock, handlers, numHandlers);
|
||||
}
|
||||
|
||||
@@ -457,7 +457,7 @@
|
||||
std::size_t Size = sizeof(CXXTryStmt);
|
||||
Size += ((numHandlers + 1) * sizeof(Stmt));
|
||||
|
||||
- void *Mem = C.Allocate(Size, llvm::alignof<CXXTryStmt>());
|
||||
+ void *Mem = C.Allocate(Size, llvm::alignOf<CXXTryStmt>());
|
||||
return new (Mem) CXXTryStmt(Empty, numHandlers);
|
||||
}
|
||||
|
||||
Index: tools/clang/lib/AST/Expr.cpp
|
||||
===================================================================
|
||||
--- tools/clang/lib/AST/Expr.cpp (révision 117774)
|
||||
+++ tools/clang/lib/AST/Expr.cpp (révision 117775)
|
||||
@@ -257,7 +257,7 @@
|
||||
if (TemplateArgs)
|
||||
Size += ExplicitTemplateArgumentList::sizeFor(*TemplateArgs);
|
||||
|
||||
- void *Mem = Context.Allocate(Size, llvm::alignof<DeclRefExpr>());
|
||||
+ void *Mem = Context.Allocate(Size, llvm::alignOf<DeclRefExpr>());
|
||||
return new (Mem) DeclRefExpr(Qualifier, QualifierRange, D, NameInfo,
|
||||
TemplateArgs, T);
|
||||
}
|
||||
@@ -271,7 +271,7 @@
|
||||
if (NumTemplateArgs)
|
||||
Size += ExplicitTemplateArgumentList::sizeFor(NumTemplateArgs);
|
||||
|
||||
- void *Mem = Context.Allocate(Size, llvm::alignof<DeclRefExpr>());
|
||||
+ void *Mem = Context.Allocate(Size, llvm::alignOf<DeclRefExpr>());
|
||||
return new (Mem) DeclRefExpr(EmptyShell());
|
||||
}
|
||||
|
||||
@@ -432,7 +432,7 @@
|
||||
// any concatenated string tokens.
|
||||
void *Mem = C.Allocate(sizeof(StringLiteral)+
|
||||
sizeof(SourceLocation)*(NumStrs-1),
|
||||
- llvm::alignof<StringLiteral>());
|
||||
+ llvm::alignOf<StringLiteral>());
|
||||
StringLiteral *SL = new (Mem) StringLiteral(Ty);
|
||||
|
||||
// OPTIMIZE: could allocate this appended to the StringLiteral.
|
||||
@@ -452,7 +452,7 @@
|
||||
StringLiteral *StringLiteral::CreateEmpty(ASTContext &C, unsigned NumStrs) {
|
||||
void *Mem = C.Allocate(sizeof(StringLiteral)+
|
||||
sizeof(SourceLocation)*(NumStrs-1),
|
||||
- llvm::alignof<StringLiteral>());
|
||||
+ llvm::alignOf<StringLiteral>());
|
||||
StringLiteral *SL = new (Mem) StringLiteral(QualType());
|
||||
SL->StrData = 0;
|
||||
SL->ByteLength = 0;
|
||||
@@ -714,7 +714,7 @@
|
||||
if (targs)
|
||||
Size += ExplicitTemplateArgumentList::sizeFor(*targs);
|
||||
|
||||
- void *Mem = C.Allocate(Size, llvm::alignof<MemberExpr>());
|
||||
+ void *Mem = C.Allocate(Size, llvm::alignOf<MemberExpr>());
|
||||
MemberExpr *E = new (Mem) MemberExpr(base, isarrow, memberdecl, nameinfo, ty);
|
||||
|
||||
if (hasQualOrFound) {
|
||||
Index: tools/clang/lib/AST/DeclCXX.cpp
|
||||
===================================================================
|
||||
--- tools/clang/lib/AST/DeclCXX.cpp (révision 117774)
|
||||
+++ tools/clang/lib/AST/DeclCXX.cpp (révision 117775)
|
||||
@@ -1057,7 +1057,7 @@
|
||||
unsigned NumIndices) {
|
||||
void *Mem = Context.Allocate(sizeof(CXXBaseOrMemberInitializer) +
|
||||
sizeof(VarDecl *) * NumIndices,
|
||||
- llvm::alignof<CXXBaseOrMemberInitializer>());
|
||||
+ llvm::alignOf<CXXBaseOrMemberInitializer>());
|
||||
return new (Mem) CXXBaseOrMemberInitializer(Context, Member, MemberLoc,
|
||||
L, Init, R, Indices, NumIndices);
|
||||
}
|
||||
Index: tools/clang/lib/Lex/TokenLexer.cpp
|
||||
===================================================================
|
||||
--- tools/clang/lib/Lex/TokenLexer.cpp (révision 117774)
|
||||
+++ tools/clang/lib/Lex/TokenLexer.cpp (révision 117775)
|
||||
@@ -287,7 +287,7 @@
|
||||
llvm::BumpPtrAllocator &Alloc = PP.getPreprocessorAllocator();
|
||||
Token *Res =
|
||||
static_cast<Token *>(Alloc.Allocate(sizeof(Token)*ResultToks.size(),
|
||||
- llvm::alignof<Token>()));
|
||||
+ llvm::alignOf<Token>()));
|
||||
if (NumTokens)
|
||||
memcpy(Res, &ResultToks[0], NumTokens*sizeof(Token));
|
||||
Tokens = Res;
|
@ -1,127 +0,0 @@
|
||||
This code looks as if it is written by Apple, lots of assumptions that
|
||||
only hold for them and their scenario.
|
||||
|
||||
--- tools/clang/lib/Driver/ToolChains.cpp
|
||||
+++ tools/clang/lib/Driver/ToolChains.cpp
|
||||
@@ -131,7 +131,7 @@
|
||||
GCCVersion[2] = 1;
|
||||
|
||||
// Set up the tool chain paths to match gcc.
|
||||
- ToolChainDir = "i686-apple-darwin";
|
||||
+ ToolChainDir = "@GENTOO_PORTAGE_CHOST@";
|
||||
ToolChainDir += llvm::utostr(DarwinVersion[0]);
|
||||
ToolChainDir += "/";
|
||||
ToolChainDir += llvm::utostr(GCCVersion[0]);
|
||||
@@ -141,9 +141,9 @@
|
||||
ToolChainDir += llvm::utostr(GCCVersion[2]);
|
||||
|
||||
// Try the next major version if that tool chain dir is invalid.
|
||||
- std::string Tmp = "/usr/lib/gcc/" + ToolChainDir;
|
||||
+ std::string Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir;
|
||||
if (!llvm::sys::Path(Tmp).exists()) {
|
||||
- std::string Next = "i686-apple-darwin";
|
||||
+ std::string Next = "@GENTOO_PORTAGE_CHOST_ARCH@";
|
||||
Next += llvm::utostr(DarwinVersion[0] + 1);
|
||||
Next += "/";
|
||||
Next += llvm::utostr(GCCVersion[0]);
|
||||
@@ -155,7 +155,7 @@
|
||||
// Use that if it exists, otherwise hope the user isn't linking.
|
||||
//
|
||||
// FIXME: Drop dependency on gcc's tool chain.
|
||||
- Tmp = "/usr/lib/gcc/" + Next;
|
||||
+ Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + Next;
|
||||
if (llvm::sys::Path(Tmp).exists())
|
||||
ToolChainDir = Next;
|
||||
}
|
||||
@@ -168,7 +168,7 @@
|
||||
Path += "/x86_64";
|
||||
getFilePaths().push_back(Path);
|
||||
|
||||
- Path = "/usr/lib/gcc/";
|
||||
+ Path = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/";
|
||||
Path += ToolChainDir;
|
||||
Path += "/x86_64";
|
||||
getFilePaths().push_back(Path);
|
||||
@@ -179,7 +179,7 @@
|
||||
Path += ToolChainDir;
|
||||
getFilePaths().push_back(Path);
|
||||
|
||||
- Path = "/usr/lib/gcc/";
|
||||
+ Path = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/";
|
||||
Path += ToolChainDir;
|
||||
getFilePaths().push_back(Path);
|
||||
|
||||
@@ -188,7 +188,7 @@
|
||||
Path += ToolChainDir;
|
||||
getProgramPaths().push_back(Path);
|
||||
|
||||
- Path = "/usr/libexec/gcc/";
|
||||
+ Path = "@GENTOO_PORTAGE_EPREFIX@/usr/libexec/gcc/";
|
||||
Path += ToolChainDir;
|
||||
getProgramPaths().push_back(Path);
|
||||
|
||||
@@ -291,14 +291,14 @@
|
||||
|
||||
// FIXME: Derive these correctly.
|
||||
if (getArchName() == "x86_64") {
|
||||
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir +
|
||||
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir +
|
||||
"/x86_64"));
|
||||
// Intentionally duplicated for (temporary) gcc bug compatibility.
|
||||
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir +
|
||||
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir +
|
||||
"/x86_64"));
|
||||
}
|
||||
|
||||
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/" + ToolChainDir));
|
||||
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/" + ToolChainDir));
|
||||
|
||||
Tmp = getDriver().Dir + "/../lib/gcc/" + ToolChainDir;
|
||||
if (llvm::sys::Path(Tmp).exists())
|
||||
@@ -306,18 +306,18 @@
|
||||
Tmp = getDriver().Dir + "/../lib/gcc";
|
||||
if (llvm::sys::Path(Tmp).exists())
|
||||
CmdArgs.push_back(Args.MakeArgString("-L" + Tmp));
|
||||
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir));
|
||||
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir));
|
||||
// Intentionally duplicated for (temporary) gcc bug compatibility.
|
||||
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir));
|
||||
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir));
|
||||
Tmp = getDriver().Dir + "/../lib/" + ToolChainDir;
|
||||
if (llvm::sys::Path(Tmp).exists())
|
||||
CmdArgs.push_back(Args.MakeArgString("-L" + Tmp));
|
||||
Tmp = getDriver().Dir + "/../lib";
|
||||
if (llvm::sys::Path(Tmp).exists())
|
||||
CmdArgs.push_back(Args.MakeArgString("-L" + Tmp));
|
||||
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir +
|
||||
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir +
|
||||
"/../../../" + ToolChainDir));
|
||||
- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir +
|
||||
+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir +
|
||||
"/../../.."));
|
||||
}
|
||||
|
||||
@@ -386,22 +386,7 @@
|
||||
P.eraseComponent(); // .../usr/bin -> ../usr
|
||||
P.appendComponent("lib");
|
||||
P.appendComponent("gcc");
|
||||
- switch (getTriple().getArch()) {
|
||||
- default:
|
||||
- assert(0 && "Invalid Darwin arch!");
|
||||
- case llvm::Triple::x86:
|
||||
- case llvm::Triple::x86_64:
|
||||
- P.appendComponent("i686-apple-darwin10");
|
||||
- break;
|
||||
- case llvm::Triple::arm:
|
||||
- case llvm::Triple::thumb:
|
||||
- P.appendComponent("arm-apple-darwin10");
|
||||
- break;
|
||||
- case llvm::Triple::ppc:
|
||||
- case llvm::Triple::ppc64:
|
||||
- P.appendComponent("powerpc-apple-darwin10");
|
||||
- break;
|
||||
- }
|
||||
+ P.appendComponent("@GENTOO_PORTAGE_CHOST@");
|
||||
P.appendComponent("4.2.1");
|
||||
|
||||
// Determine the arch specific GCC subdirectory.
|
@ -1,16 +0,0 @@
|
||||
Index: tools/clang/lib/Frontend/InitHeaderSearch.cpp
|
||||
===================================================================
|
||||
--- tools/clang/lib/Frontend/InitHeaderSearch.cpp (révision 119347)
|
||||
+++ tools/clang/lib/Frontend/InitHeaderSearch.cpp (révision 119348)
|
||||
@@ -745,6 +745,11 @@
|
||||
"/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.3/include/g++-v4",
|
||||
"x86_64-pc-linux-gnu", "32", "", triple);
|
||||
|
||||
+ // Gentoo amd64 gcc 4.4.4
|
||||
+ AddGnuCPlusPlusIncludePaths(
|
||||
+ "/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.4/include/g++-v4",
|
||||
+ "x86_64-pc-linux-gnu", "32", "", triple);
|
||||
+
|
||||
// Gentoo amd64 llvm-gcc trunk
|
||||
AddGnuCPlusPlusIncludePaths(
|
||||
"/usr/lib/llvm-gcc-4.2-9999/include/c++/4.2.1",
|
Loading…
Reference in New Issue
Block a user