[PATCH 1/2] Don't differentiate between openSUSE versions.
Rafael Ávila De Espíndola
rafael.espindola at gmail.com
Tue Jul 2 17:08:46 PDT 2013
It needs a test case for the second patch.
Sent from my iPhone
On 2013-06-29, at 15:21, İsmail Dönmez <ismail at donmez.ws> wrote:
> With my openSUSE maintainer hat on.
>
> This is OK. Can someone please apply it?
>
>
> On Tue, Jun 25, 2013 at 6:05 PM, Johannes Obermayr <johannesobermayr at gmx.de> wrote:
>> ---
>> See: https://build.opensuse.org/package/view_file?expand=1&file=assume-opensuse.patch&package=llvm&project=devel:tools:compiler
>> ---
>> lib/Driver/ToolChains.cpp | 30 +++++++++++-------------------
>> 1 file changed, 11 insertions(+), 19 deletions(-)
>>
>> diff --git a/lib/Driver/ToolChains.cpp b/lib/Driver/ToolChains.cpp
>> index a78370f..1bbdf2b 100644
>> --- a/lib/Driver/ToolChains.cpp
>> +++ b/lib/Driver/ToolChains.cpp
>> @@ -1958,10 +1958,7 @@ enum Distro {
>> Fedora15,
>> Fedora16,
>> FedoraRawhide,
>> - OpenSuse11_3,
>> - OpenSuse11_4,
>> - OpenSuse12_1,
>> - OpenSuse12_2,
>> + OpenSUSE,
>> UbuntuHardy,
>> UbuntuIntrepid,
>> UbuntuJaunty,
>> @@ -1982,8 +1979,8 @@ static bool IsRedhat(enum Distro Distro) {
>> (Distro >= RHEL4 && Distro <= RHEL6);
>> }
>>
>> -static bool IsOpenSuse(enum Distro Distro) {
>> - return Distro >= OpenSuse11_3 && Distro <= OpenSuse12_2;
>> +static bool IsOpenSUSE(enum Distro Distro) {
>> + return Distro == OpenSUSE;
>> }
>>
>> static bool IsDebian(enum Distro Distro) {
>> @@ -2060,13 +2057,8 @@ static Distro DetectDistro(llvm::Triple::ArchType Arch) {
>> return UnknownDistro;
>> }
>>
>> - if (!llvm::MemoryBuffer::getFile("/etc/SuSE-release", File))
>> - return llvm::StringSwitch<Distro>(File.get()->getBuffer())
>> - .StartsWith("openSUSE 11.3", OpenSuse11_3)
>> - .StartsWith("openSUSE 11.4", OpenSuse11_4)
>> - .StartsWith("openSUSE 12.1", OpenSuse12_1)
>> - .StartsWith("openSUSE 12.2", OpenSuse12_2)
>> - .Default(UnknownDistro);
>> + if (llvm::sys::fs::exists("/etc/SuSE-release"))
>> + return OpenSUSE;
>>
>> if (llvm::sys::fs::exists("/etc/exherbo-release"))
>> return Exherbo;
>> @@ -2180,7 +2172,7 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
>> llvm::Triple::ArchType Arch = Triple.getArch();
>> std::string SysRoot = computeSysRoot(Args);
>>
>> - // Cross-compiling binutils and GCC installations (vanilla and OpenSuse at
>> + // Cross-compiling binutils and GCC installations (vanilla and openSUSE at
>> // least) put various tools in a triple-prefixed directory off of the parent
>> // of the GCC installation. We use the GCC triple here to ensure that we end
>> // up with tools that support the same amount of cross compiling as the
>> @@ -2196,7 +2188,7 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
>>
>> Distro Distro = DetectDistro(Arch);
>>
>> - if (IsOpenSuse(Distro) || IsUbuntu(Distro)) {
>> + if (IsOpenSUSE(Distro) || IsUbuntu(Distro)) {
>> ExtraOpts.push_back("-z");
>> ExtraOpts.push_back("relro");
>> }
>> @@ -2216,11 +2208,11 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
>> // ABI requires a mapping between the GOT and the symbol table.
>> // Android loader does not support .gnu.hash.
>> if (!IsMips && !IsAndroid) {
>> - if (IsRedhat(Distro) || IsOpenSuse(Distro) ||
>> + if (IsRedhat(Distro) || IsOpenSUSE(Distro) ||
>> (IsUbuntu(Distro) && Distro >= UbuntuMaverick))
>> ExtraOpts.push_back("--hash-style=gnu");
>>
>> - if (IsDebian(Distro) || IsOpenSuse(Distro) || Distro == UbuntuLucid ||
>> + if (IsDebian(Distro) || IsOpenSUSE(Distro) || Distro == UbuntuLucid ||
>> Distro == UbuntuJaunty || Distro == UbuntuKarmic)
>> ExtraOpts.push_back("--hash-style=both");
>> }
>> @@ -2229,12 +2221,12 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
>> ExtraOpts.push_back("--no-add-needed");
>>
>> if (Distro == DebianSqueeze || Distro == DebianWheezy ||
>> - Distro == DebianJessie || IsOpenSuse(Distro) ||
>> + Distro == DebianJessie || IsOpenSUSE(Distro) ||
>> (IsRedhat(Distro) && Distro != RHEL4 && Distro != RHEL5) ||
>> (IsUbuntu(Distro) && Distro >= UbuntuKarmic))
>> ExtraOpts.push_back("--build-id");
>>
>> - if (IsOpenSuse(Distro))
>> + if (IsOpenSUSE(Distro))
>> ExtraOpts.push_back("--enable-new-dtags");
>>
>> // The selection of paths to try here is designed to match the patterns which
>> --
>> 1.8.1.4
>>
>> _______________________________________________
>> cfe-commits mailing list
>> cfe-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130702/081962f6/attachment.html>
More information about the cfe-commits
mailing list