Git Product home page Git Product logo

Comments (8)

yokofly avatar yokofly commented on May 18, 2024

must porting:

  1. contrib/curl: ClickHouse/ClickHouse#53487
  2. contrib/azure: ClickHouse/azure-sdk-for-cpp#10
  3. contrib/v8-cmake:
click me
diff --git a/v8/src/trap-handler/handler-inside-posix.cc b/v8/src/trap-handler/handler-inside-posix.cc
index dba47ec7..3427315c 100644
--- a/v8/src/trap-handler/handler-inside-posix.cc
+++ b/v8/src/trap-handler/handler-inside-posix.cc
@@ -47,7 +47,11 @@ namespace v8 {
 namespace internal {
 namespace trap_handler {
 
-#if V8_OS_LINUX
+#if V8_OS_LINUX && V8_HOST_ARCH_ARM64
+#define CONTEXT_PC() &uc->uc_mcontext.pc
+#elif V8_OS_DARWIN && V8_HOST_ARCH_ARM64
+#define CONTEXT_PC() &uc->uc_mcontext->__ss.__pc
+#elif V8_OS_LINUX
 #define CONTEXT_REG(reg, REG) &uc->uc_mcontext.gregs[REG_##REG]
 #elif V8_OS_DARWIN
 #define CONTEXT_REG(reg, REG) &uc->uc_mcontext->__ss.__##reg
@@ -125,7 +129,7 @@ bool TryHandleSignal(int signum, siginfo_t* info, void* context) {
 #if V8_HOST_ARCH_X64
     auto* context_ip = CONTEXT_REG(rip, RIP);
 #elif V8_HOST_ARCH_ARM64
-    auto* context_ip = &uc->uc_mcontext.pc;
+    auto* context_ip = CONTEXT_PC();
 #else
 #error "Unsupported architecture."
 #endif
  1. Fix system.licenses on mac: ClickHouse/ClickHouse#38294
  2. Disable ThinLTO on non-Linux: ClickHouse/ClickHouse#51897
  3. ClickHouse/ClickHouse#43466

from proton.

yokofly avatar yokofly commented on May 18, 2024

more

from proton.

yokofly avatar yokofly commented on May 18, 2024

take 1: #157

from proton.

yokofly avatar yokofly commented on May 18, 2024

I’m currently working on this and making steady progress. If you’d like to give it a try, please use the latest commit from the develop branch. Follow the steps below. Note: Building on an older Intel Mac may take an additional hour. but for mac m1/m2 still WIP. this issue intends to enable cmake .. to simplify the below verbose cmake commands.

  1. Install Dependencies Using Homebrew

(We aim to support the homebrew version of llvm/clang.)

brew install ccache cmake ninja libtool gettext llvm@16 gcc binutils grep findutils libiconv
  1. Configure the Build with the Specific Compiler Version:
export CC=$(brew --prefix llvm@16)/bin/clang
export CXX=$(brew --prefix llvm@16)/bin/clang++
export PATH=$(brew --prefix llvm@16)/bin:$PATH
cd proton
mkdir build && cd build
  1. Use the Following CMake Commands:
cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_COMPILER=`which clang++` -DCMAKE_C_COMPILER=`which clang` -DENABLE_PROTON_ALL=OFF -DENABLE_PROTON_SERVER=ON -DENABLE_PROTON_CLIENT=ON -DENABLE_PROTON_FORMAT=ON -DENABLE_PROTON_INSTALL=OFF -DENABLE_PROTON_METASTORE=ON -DUSE_STATIC_LIBRARIES=ON -DUSE_UNWIND=OFF -DUSE_DEBUG_HELPERS=ON -DENABLE_LIBRARIES=OFF -DENABLE_KAFKA=ON -DENABLE_GRPC=ON -DENABLE_NURAFT=ON -DENABLE_RAPIDJSON=ON -DENABLE_YAML_CPP=ON -DENABLE_SIMDJSON=ON -DENABLE_ROCKSDB=ON -DENABLE_REPLXX=ON -DENABLE_JEMALLOC=OFF -DENABLE_SSL=ON -DENABLE_BZIP2=ON -DENABLE_PROTOBUF=ON -DENABLE_URING=ON -DENABLE_UTILS=OFF -DENABLE_THINLTO=OFF -DENABLE_CLANG_TIDY=OFF -DENABLE_TESTS=ON -DSTRIP_DEBUG_SYMBOLS_FUNCTIONS=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DENABLE_CCACHE=ON -DENABLE_BUILD_PATH_MAPPING=OFF -DENABLE_CYRUS_SASL=ON -DENABLE_KRB5=ON -DENABLE_HIGH_ORDER_ARRAY_FUNCS=ON -DENABLE_MATH_FUNCS=ON -DENABLE_GEO_FUNCS=ON -DENABLE_PARQUET=ON -DENABLE_THRIFT=ON -DENABLE_EMBEDDED_COMPILER=ON -DENABLE_MISC_FUNCS=ON -DENABLE_HASH_FUNCS=ON -DENABLE_INTROSPECTION_FUNCS=ON -DENABLE_BROTLI=ON

from proton.

yokofly avatar yokofly commented on May 18, 2024

take 2: #178

from proton.

yokofly avatar yokofly commented on May 18, 2024

status:
current in my local(Mac m2) works well, but the PR(#123 #186 ) has not been merged.
if you wanna take a trial, I strongly recommend using release binary.
https://github.com/timeplus-io/proton/releases

or you personally merge the 2 PRs in your local and use llvm@16 from home brew to build proton.(make takes one hour).
if you are working in a newer MACOS SYSTEM(14 or later): you need to update to xcode 15.1.beta, then use llvm@16 to build proton.

from proton.

yokofly avatar yokofly commented on May 18, 2024

take 3 #186
take 4 #123

from proton.

jovezhong avatar jovezhong commented on May 18, 2024

(Jove Github Bot) assuming it is not done, deferred this ticket to the next sprint.

from proton.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.