@@ -59,24 +59,71 @@ if [ -n "${CONDA_PREFIX}" ]; then
5959 conda list
6060fi
6161
62- export PYARROW_CMAKE_GENERATOR=${CMAKE_GENERATOR:- Ninja}
63- export PYARROW_BUILD_TYPE=${CMAKE_BUILD_TYPE:- debug}
64-
65- export PYARROW_WITH_ACERO=${ARROW_ACERO:- OFF}
66- export PYARROW_WITH_AZURE=${ARROW_AZURE:- OFF}
67- export PYARROW_WITH_CUDA=${ARROW_CUDA:- OFF}
68- export PYARROW_WITH_DATASET=${ARROW_DATASET:- ON}
69- export PYARROW_WITH_FLIGHT=${ARROW_FLIGHT:- OFF}
70- export PYARROW_WITH_GANDIVA=${ARROW_GANDIVA:- OFF}
71- export PYARROW_WITH_GCS=${ARROW_GCS:- OFF}
72- export PYARROW_WITH_HDFS=${ARROW_HDFS:- ON}
73- export PYARROW_WITH_ORC=${ARROW_ORC:- OFF}
74- export PYARROW_WITH_PARQUET=${ARROW_PARQUET:- OFF}
75- export PYARROW_WITH_PARQUET_ENCRYPTION=${PARQUET_REQUIRE_ENCRYPTION:- ON}
76- export PYARROW_WITH_S3=${ARROW_S3:- OFF}
77- export PYARROW_WITH_SUBSTRAIT=${ARROW_SUBSTRAIT:- OFF}
78-
79- export PYARROW_PARALLEL=${n_jobs}
62+ PYARROW_WITH_ACERO=$( case " $ARROW_ACERO " in
63+ ON) echo " enabled" ;;
64+ OFF) echo " disabled" ;;
65+ * ) echo " auto" ;;
66+ esac)
67+ PYARROW_WITH_AZURE=$( case " $ARROW_AZURE " in
68+ ON) echo " enabled" ;;
69+ OFF) echo " disabled" ;;
70+ * ) echo " auto" ;;
71+ esac)
72+ PYARROW_WITH_CUDA=$( case " $ARROW_CUDA " in
73+ ON) echo " enabled" ;;
74+ OFF) echo " disabled" ;;
75+ * ) echo " auto" ;;
76+ esac)
77+ PYARROW_WITH_DATASET=$( case " $ARROW_DATASET " in
78+ ON) echo " enabled" ;;
79+ OFF) echo " disabled" ;;
80+ * ) echo " enabled" ;;
81+ esac)
82+ PYARROW_WITH_FLIGHT=$( case " $ARROW_FLIGHT " in
83+ ON) echo " enabled" ;;
84+ OFF) echo " disabled" ;;
85+ * ) echo " auto" ;;
86+ esac)
87+ PYARROW_WITH_GANDIVA=$( case " $ARROW_GANDIVA " in
88+ ON) echo " enabled" ;;
89+ OFF) echo " disabled" ;;
90+ * ) echo " auto" ;;
91+ esac)
92+ PYARROW_WITH_GCS=$( case " $ARROW_GCS " in
93+ ON) echo " enabled" ;;
94+ OFF) echo " disabled" ;;
95+ * ) echo " auto" ;;
96+ esac)
97+ PYARROW_WITH_HDFS=$( case " $ARROW_HDFS " in
98+ ON) echo " enabled" ;;
99+ OFF) echo " disabled" ;;
100+ * ) echo " enabled" ;;
101+ esac)
102+ PYARROW_WITH_ORC=$( case " $ARROW_ORC " in
103+ ON) echo " enabled" ;;
104+ OFF) echo " disabled" ;;
105+ * ) echo " auto" ;;
106+ esac)
107+ PYARROW_WITH_PARQUET=$( case " $ARROW_PARQUET " in
108+ ON) echo " enabled" ;;
109+ OFF) echo " disabled" ;;
110+ * ) echo " auto" ;;
111+ esac)
112+ PYARROW_WITH_PARQUET_ENCRYPTION=$( case " $PARQUET_REQUIRE_ENCRYPTION " in
113+ ON) echo " enabled" ;;
114+ OFF) echo " disabled" ;;
115+ * ) echo " enabled" ;;
116+ esac)
117+ PYARROW_WITH_S3=$( case " $ARROW_S3 " in
118+ ON) echo " enabled" ;;
119+ OFF) echo " disabled" ;;
120+ * ) echo " auto" ;;
121+ esac)
122+ PYARROW_WITH_SUBSTRAIT=$( case " $ARROW_SUBSTRAIT " in
123+ ON) echo " enabled" ;;
124+ OFF) echo " disabled" ;;
125+ * ) echo " auto" ;;
126+ esac)
80127
81128: " ${CMAKE_PREFIX_PATH:= ${ARROW_HOME} } "
82129export CMAKE_PREFIX_PATH
@@ -93,7 +140,40 @@ pushd "${python_build_dir}"
93140# on Debian/Ubuntu (ARROW-15243).
94141# - Cannot use build isolation as we want to use specific dependency versions
95142# (e.g. Numpy, Pandas) on some CI jobs.
96- ${PYTHON:- python} -m pip install --no-deps --no-build-isolation -vv .
143+
144+ # The conda compilers package may mess with C{XX}_FLAGS in a way that interferes
145+ # with the compiler
146+ OLD_CFLAGS=$CFLAGS
147+ OLD_CPPFLAGS=$CPPFLAGS
148+ OLD_CXXFLAGS=$CXXFLAGS
149+ export CFLAGS=
150+ export CPPFLAGS=
151+ export CXXFLAGS=
152+
153+ BUILD_TYPE=${CMAKE_BUILD_TYPE:- debug}
154+ BUILD_TYPE=${BUILD_TYPE,,} # Meson requires lowercase values
155+
156+ ${PYTHON:- python} -m pip install --no-deps --no-build-isolation -vv . \
157+ -Csetup-args=" -Dbuildtype=${BUILD_TYPE} " \
158+ -Csetup-args=" -Dacero=${PYARROW_WITH_ACERO} " \
159+ -Csetup-args=" -Dazure=${PYARROW_WITH_AZURE} " \
160+ -Csetup-args=" -Dcuda=${PYARROW_WITH_CUDA} " \
161+ -Csetup-args=" -Ddataset=${PYARROW_WITH_DATASET} " \
162+ -Csetup-args=" -Dflight=${PYARROW_WITH_FLIGHT} " \
163+ -Csetup-args=" -Dgandiva=${PYARROW_WITH_GANDIVA} " \
164+ -Csetup-args=" -Dgcs=${PYARROW_WITH_GCS} " \
165+ -Csetup-args=" -Dhdfs=${PYARROW_WITH_HDFS} " \
166+ -Csetup-args=" -Dorc=${PYARROW_WITH_ORC} " \
167+ -Csetup-args=" -Dparquet=${PYARROW_WITH_PARQUET} " \
168+ -Csetup-args=" -Dparquet_require_encryption=${PYARROW_WITH_PARQUET_ENCRYPTION} " \
169+ -Csetup-args=" -Ds3=${PYARROW_WITH_S3} " \
170+ -Csetup-args=" -Dsubstrait=${PYARROW_WITH_SUBSTRAIT} " \
171+ -Ccompile-args=" -v" \
172+ -Csetup-args=" --pkg-config-path=${ARROW_HOME} /lib/pkgconfig"
173+
174+ export CFLAGS=$OLD_CFLAGS
175+ export CPPFLAGS=$OLD_CPPFLAGS
176+ export CXXFLAGS=$OLD_CXXFLAGS
97177popd
98178
99179if [ " ${BUILD_DOCS_PYTHON} " == " ON" ]; then
0 commit comments