@@ -65,7 +65,7 @@ python3 -m pip install cmake wheel setuptools
6565pyver=$( python3 --version 2>&1 | awk ' {print $2}' | sed -e " s#\(.*\)\.\(.*\)\..*#\1.\2#" )
6666
6767# Install build requirements.
68- CC=" ${CC} " CFLAGS=" ${CFLAGS} " python3 -m pip install -v -r " ${scriptdir} /../requirements.txt" scipy_openblas32
68+ CC=" ${CC} " CFLAGS=" ${CFLAGS} " python3 -m pip install -v -r " ${scriptdir} /../requirements.txt" --prefer-binary
6969
7070# Install Openblas
7171
@@ -157,6 +157,7 @@ tar xzf ${gsl_pkg} \
157157 && CC=" ${CC} " CFLAGS=" -O3 -fPIC" ../configure --prefix=" ${PREFIX} " \
158158 && make -j ${MAKEJ} \
159159 && make install \
160+ && popd > /dev/null 2>&1 \
160161 && popd > /dev/null 2>&1
161162
162163# Install boost
@@ -199,6 +200,103 @@ tar xjf ${boost_pkg} \
199200 variant=release threading=multi link=shared runtime-link=shared install \
200201 && popd > /dev/null 2>&1
201202
203+ # Build Eigen
204+
205+ eigen_version=3.4.0
206+ eigen_dir=eigen-${eigen_version}
207+ eigen_pkg=${eigen_dir} .tar.gz
208+
209+ echo " Fetching Eigen..."
210+
211+ if [ ! -e ${eigen_pkg} ]; then
212+ curl -SL " https://gitlab.com/libeigen/eigen/-/archive/${eigen_version} /eigen-${eigen_version} .tar.bz2" -o " ${eigen_pkg} "
213+ fi
214+
215+ echo " Building Eigen..."
216+
217+ rm -rf ${eigen_dir}
218+ tar xjf ${eigen_pkg} \
219+ && pushd ${eigen_dir} > /dev/null 2>&1 \
220+ && mkdir -p build \
221+ && pushd build > /dev/null 2>&1 \
222+ && cmake \
223+ -DCMAKE_INSTALL_PREFIX=" ${PREFIX} " \
224+ .. \
225+ && make install \
226+ && popd > /dev/null 2>&1 \
227+ && popd > /dev/null 2>&1
228+
229+ # Build GLOG
230+
231+ glog_version=0.7.1
232+ glog_dir=glog-${glog_version}
233+ glog_pkg=${glog_dir} .tar.gz
234+
235+ echo " Fetching GLOG..."
236+
237+ if [ ! -e ${glog_pkg} ]; then
238+ curl -SL " https://github.com/google/glog/archive/refs/tags/v${glog_version} .tar.gz" -o " ${glog_pkg} "
239+ fi
240+
241+ echo " Building GLOG..."
242+
243+ rm -rf ${glog_dir}
244+ tar xzf ${glog_pkg} \
245+ && pushd ${glog_dir} > /dev/null 2>&1 \
246+ && mkdir -p build \
247+ && pushd build > /dev/null 2>&1 \
248+ && cmake \
249+ -DCMAKE_BUILD_TYPE=Release \
250+ -DCMAKE_C_COMPILER=" ${CC} " \
251+ -DCMAKE_C_FLAGS=" ${CFLAGS} " \
252+ -DCMAKE_CXX_COMPILER=" ${CXX} " \
253+ -DCMAKE_CXX_FLAGS=" ${CXXFLAGS} " \
254+ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
255+ -DCMAKE_INSTALL_PREFIX=" ${PREFIX} " \
256+ .. \
257+ && make -j ${MAKEJ} install \
258+ && popd > /dev/null 2>&1 \
259+ && popd > /dev/null 2>&1
260+
261+ # Build Ceres
262+
263+ ceres_version=2.2.0
264+ ceres_dir=ceres-solver-${ceres_version}
265+ ceres_pkg=${ceres_dir} .tar.gz
266+
267+ echo " Fetching ceres-solver..."
268+
269+ if [ ! -e ${ceres_pkg} ]; then
270+ curl -SL " http://ceres-solver.org/ceres-solver-${ceres_version} .tar.gz" -o " ${ceres_pkg} "
271+ fi
272+
273+ echo " Building ceres-solver..."
274+
275+ rm -rf ${ceres_dir}
276+ tar xzf ${ceres_pkg} \
277+ && pushd ${ceres_dir} > /dev/null 2>&1 \
278+ && mkdir -p build_dir \
279+ && pushd build_dir > /dev/null 2>&1 \
280+ && cmake \
281+ -DCMAKE_BUILD_TYPE=Release \
282+ -DCMAKE_C_COMPILER=" ${CC} " \
283+ -DCMAKE_C_FLAGS=" ${CFLAGS} " \
284+ -DCMAKE_CXX_COMPILER=" ${CXX} " \
285+ -DCMAKE_CXX_FLAGS=" ${CXXFLAGS} " \
286+ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
287+ -DCMAKE_INSTALL_PREFIX=" ${PREFIX} " \
288+ -DBUILD_EXAMPLES=OFF \
289+ -DBUILD_BENCHMARKS=OFF \
290+ -DBUILD_SHARED_LIBS=ON \
291+ -DBUILD_TESTING=OFF \
292+ -DGFLAGS=OFF \
293+ -DSUITESPARSE=OFF \
294+ -DBLAS_LIBRARIES=' /usr/local/lib/libopenblas.dylib' \
295+ .. \
296+ && make -j ${MAKEJ} install \
297+ && popd > /dev/null 2>&1 \
298+ && popd > /dev/null 2>&1
299+
202300# Astropy caching...
203301
204302echo " Attempting to trigger astropy IERS download..."
0 commit comments