From 626033a4b8ec8240eb5c7b9629fbfceed68ffdff Mon Sep 17 00:00:00 2001 From: CHUNSEOK LEE Date: Wed, 30 Aug 2017 20:11:57 +0900 Subject: [PATCH] Revert "Enable Tizen Toolchain paths detection" This reverts commit 45b029e7f54b290f3427a517a8c2bd94b8e1eb3c. Change-Id: Id54b300ef17e03bee0c3b064ee41c0977298aae3 Signed-off-by: CHUNSEOK LEE --- packaging/driver_patch | 24 ------------------ packaging/libstdcxx_path_patch | 10 -------- packaging/llvm.spec | 57 ++++++++++++++++-------------------------- 3 files changed, 22 insertions(+), 69 deletions(-) delete mode 100644 packaging/driver_patch delete mode 100644 packaging/libstdcxx_path_patch diff --git a/packaging/driver_patch b/packaging/driver_patch deleted file mode 100644 index 0a92afa..0000000 --- a/packaging/driver_patch +++ /dev/null @@ -1,24 +0,0 @@ ---- tools/clang/lib/Driver/Driver.cpp 2017-03-16 16:12:19.870312677 +0300 -+++ tools/clang/lib/Driver/Driver.cpp 2017-03-17 11:21:40.124870280 +0300 -@@ -64,6 +64,11 @@ - if (!this->VFS) - this->VFS = vfs::getRealFileSystem(); - -+ // Skip /emul if we work in accelerated environment -+#define QEMU_ACCEL_DIR "/emul" -+ if (ClangExecutable.substr(0, sizeof(QEMU_ACCEL_DIR) - 1) == QEMU_ACCEL_DIR) -+ ClangExecutable = ClangExecutable.drop_front(sizeof(QEMU_ACCEL_DIR) - 1); -+ - Name = llvm::sys::path::filename(ClangExecutable); - Dir = llvm::sys::path::parent_path(ClangExecutable); - InstalledDir = Dir; // Provide a sensible default installed dir. -@@ -74,7 +79,8 @@ - if (ClangResourceDir != "") { - llvm::sys::path::append(P, ClangResourceDir); - } else { -- StringRef ClangLibdirSuffix(CLANG_LIBDIR_SUFFIX); -+ const char* NO_LIBDIR_SUFFIX = std::getenv("CLANG_NO_LIBDIR_SUFFIX"); -+ StringRef ClangLibdirSuffix(NO_LIBDIR_SUFFIX?"":CLANG_LIBDIR_SUFFIX); - llvm::sys::path::append(P, "..", Twine("lib") + ClangLibdirSuffix, "clang", - CLANG_VERSION_STRING); - } diff --git a/packaging/libstdcxx_path_patch b/packaging/libstdcxx_path_patch deleted file mode 100644 index 8e199a2..0000000 --- a/packaging/libstdcxx_path_patch +++ /dev/null @@ -1,10 +0,0 @@ ---- tools/clang/lib/Driver/ToolChains.cpp 2016-02-16 22:56:48.000000000 +0300 -+++ tools/clang/lib/Driver/ToolChains.cpp 2017-03-16 12:32:25.743632003 +0300 -@@ -4111,6 +4111,7 @@ - // Freescale SDK C++ headers are directly in /usr/include/c++, - // without a subdirectory corresponding to the gcc version. - LibDir.str() + "/../include/c++", -+ InstallDir.str() + "/include/c++", - }; - - for (const auto &IncludePath : LibStdCXXIncludePathCandidates) { diff --git a/packaging/llvm.spec b/packaging/llvm.spec index 79e01f4..f7f6d33 100644 --- a/packaging/llvm.spec +++ b/packaging/llvm.spec @@ -9,16 +9,13 @@ Source1: clang.tar.gz Source2: lldb.tar.gz Source1001: llvm.manifest -Source1002: libstdcxx_path_patch -Source1003: driver_patch - BuildRequires: cmake BuildRequires: python BuildRequires: python-devel #BuildRequires: swig Requires: libllvm = %{version}-%{release} -%define install_prefix /usr/ +%define install_prefix /usr/local %define sdk_install_prefix /home/owner/share/tmp/sdk_tools/lldb %define sdk_bin_dir %{sdk_install_prefix}/bin @@ -32,24 +29,6 @@ Requires: libllvm = %{version}-%{release} %define system_lib_dir /usr/lib %endif -%ifarch armv7l -%define ARCH armv7l -%define ABI eabi -%endif -%ifarch armv7hl -%define ARCH armv7hl -%define ABI eabihf -%endif -%ifarch %ix86 -%define ARCH i586 -%endif -%ifarch x86_64 -%define ARCH x86_64 -%endif -%ifarch aarch64 -%define ARCH aarch64 -%endif -%define host_arch %{ARCH}-tizen-linux-gnu%{?ABI} %description LLVM is a compiler infrastructure designed for compile-time, link-time, runtime, @@ -58,7 +37,7 @@ LLVM is written in C++ and has been developed since 2000 at the University of Illinois and Apple. It currently supports compilation of C and C++ programs, using front-ends derived from GCC 4.0.1. A new front-end for the C family of languages is in development. The compiler infrastructure -includes mirror sets of programming tools as well as libraries with equivalent +includes mirror sets of programming tools as well as libraries with equivalent functionality. %package devel @@ -134,9 +113,6 @@ gzip -dc %{SOURCE1} | tar -xf - gzip -dc %{SOURCE2} | tar -xf - %endif pwd -# Enable Tizen Toolchain libraries search for Clang -patch -p1 < %{SOURCE1002} -patch -p1 < %{SOURCE1003} #cd lldb #%patch2001 -p0 #cd ../.. @@ -146,6 +122,7 @@ patch -p1 < %{SOURCE1003} mkdir build cd build +%ifnarch aarch64 cmake \ -DCMAKE_C_COMPILER=/usr/bin/gcc \ -DCMAKE_CXX_COMPILER=/usr/bin/g++ \ @@ -156,26 +133,37 @@ cmake \ -DLLVM_BUILD_LLVM_DYLIB=1 \ -DLLDB_DISABLE_LIBEDIT=1 \ -DLLDB_DISABLE_PYTHON=1 \ - -DLLVM_TARGET_ARCH=%{ARCH} \ - -DLLVM_HOST_TRIPLE=%{host_arch} \ - -DLLDB_DISABLE_CURSES=1 \ -%ifarch x86_64 aarch64 +%ifarch x86_64 -DLLVM_LIBDIR_SUFFIX=64 \ %endif %ifarch %ix86 - -DCMAKE_C_FLAGS="-m32" \ - -DCMAKE_CXX_FLAGS="-m32" \ + -DCMAKE_LIBRARY_ARCHITECTURE=i386-linux-gnu \ + -DLLVM_TARGET_ARCH=X86 \ + -DLLVM_HOST_TRIPLE=i386-linux-gnu \ + -DCMAKE_C_FLAGS="-m32" \ + -DCMAKE_CXX_FLAGS="-m32" \ %endif + -DLLDB_DISABLE_CURSES=1 \ .. +%else +cmake \ + -DCMAKE_C_COMPILER=/usr/bin/gcc \ + -DCMAKE_CXX_COMPILER=/usr/bin/g++ \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=%{install_prefix} \ + -DLLVM_ENABLE_ASSERTIONS=No \ + -DLLVM_TARGETS_TO_BUILD='X86;ARM;AArch64' \ + -DLLVM_BUILD_LLVM_DYLIB=1 \ + -DLLVM_LIBDIR_SUFFIX=64 \ + .. +%endif make %{?jobs:-j%jobs} %install cd build %make_install -ln -sf %{install_prefix}/bin/clang++ %{buildroot}%{install_prefix}/bin/clang++-3.8 -mkdir -p %{buildroot}%{bindir} # copy lldb for sdk mkdir -p %{buildroot}%{sdk_bin_dir} mkdir -p %{buildroot}%{sdk_lib_dir} @@ -288,7 +276,6 @@ echo Cleaning %{buildroot} %{install_prefix}/bin/clang %{install_prefix}/bin/clang++ %{install_prefix}/bin/clang-3.8 -%{install_prefix}/bin/clang++-3.8 %{install_prefix}/bin/clang-check %{install_prefix}/bin/clang-cl %{install_prefix}/bin/clang-format -- 2.7.4