lukedg97 commented on issue #45642:
URL: https://github.com/apache/arrow/issues/45642#issuecomment-2762791055

   I was able to get a working build using the sh script at the bottom of this 
message. It works at runtime. I will report back on if it passes apple beta app 
review or not.
   
   Thanks everyone for the help so far!
   
   ```
   #!/bin/bash
   set -e
   
   
   # venv_name="pyarrow-dev"
   
   # if [ ! -d "$venv_name" ]; then
   #   echo "Creating virtual environment: $venv_name"
   #   python3.13 -m venv "$venv_name"
   # else
   #   echo "Virtual environment '$venv_name' already exists."
   # fi
   
   # source "$venv_name/bin/activate"
   
   python3.13 -m pip install -r arrow/python/requirements-wheel-build.txt
   
   python3.13 -m pip install cibuildwheel
   
   pushd arrow
   git clean -Xfd .
   git reset --hard origin/main
   git pull
   popd
   
   rm -rf dist
   mkdir dist
   
   export ARROW_HOME=$(pwd)/dist
   export LD_LIBRARY_PATH=$(pwd)/dist/lib:$LD_LIBRARY_PATH
   export REPAIR_LIBRARY_PATH=$LD_LIBRARY_PATH
   export CMAKE_PREFIX_PATH=$ARROW_HOME:$CMAKE_PREFIX_PATH
   export ARROW_BUILD_TYPE=release
   export CIBW_BUILD=cp313-macosx_arm64
   export MACOSX_DEPLOYMENT_TARGET=15.0
   
   cmake \
       -S arrow/cpp \
       -B arrow/cpp/build \
       -GNinja \
       -DCMAKE_BUILD_TYPE=Release \
       -DCMAKE_INSTALL_PREFIX=$ARROW_HOME \
       -DARROW_BUILD_STATIC=ON \
       -DARROW_BUILD_SHARED=ON \
       -DARROW_DEPENDENCY_SOURCE=BUNDLED \
       -DARROW_DEPENDENCY_USE_SHARED=OFF \
       -DARROW_CUDA=OFF \
       -DARROW_FLIGHT=ON \
       -DARROW_PARQUET=ON \
       -DARROW_CSV=ON \
       -DARROW_JSON=ON \
       -DARROW_FILESYSTEM=ON \
       -DARROW_MIMALLOC=OFF \
       -DARROW_COMPUTE=ON \
       -DPARQUET_REQUIRE_ENCRYPTION=OFF
   
   cmake --build arrow/cpp/build --target install
   
   pushd arrow
   cp LICENSE.txt python/ 
   cp NOTICE.txt python/ 
   
   sed -i '' 's|\.\./LICENSE.txt|LICENSE.txt|' python/setup.cfg
   sed -i '' 's|\.\./NOTICE.txt|NOTICE.txt|' python/setup.cfg
   
   sed -i '' 's|\.\./LICENSE.txt|LICENSE.txt|' python/MANIFEST.in
   sed -i '' 's|\.\./NOTICE.txt|NOTICE.txt|' python/MANIFEST.in
   popd
   
   # 
https://cibuildwheel.pypa.io/en/stable/faq/#macos-passing-dyld_library_path-to-delocate
   # https://cibuildwheel.pypa.io/en/stable/options/#repair-wheel-command
   export 
CIBW_REPAIR_WHEEL_COMMAND_MACOS="DYLD_LIBRARY_PATH=$REPAIR_LIBRARY_PATH 
delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}"
   
   pushd arrow/python
   
   # copy liscense and notice files down, change setup.cfg and manifest.in
   python3.13 -m cibuildwheel 
   
   popd
   
   # export PYARROW_PARALLEL=4
   # python3.13 setup.py build_ext --build-type=$ARROW_BUILD_TYPE \
   #          --bundle-arrow-cpp bdist_wheel
   # popd
   
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to