mirror of https://github.com/abinit/abinit.git
70 lines
2.2 KiB
Bash
70 lines
2.2 KiB
Bash
#!/bin/bash
|
|
|
|
# Init
|
|
Fallbacks="bigdft atompaw wannier90 libpsml xmlf90 libxc hdf5 netcdf4 netcdf4_fortran"
|
|
|
|
Disabled="--disable-bigdft --disable-atompaw --disable-wannier90 --disable-libpsml --disable-xmlf90 --disable-libxc --disable-hdf5 --disable-netcdf4 --disable-netcdf4_fortran"
|
|
|
|
Optional_fbks="--disable-bigdft --disable-atompaw --disable-wannier90 --disable-libpsml --disable-xmlf90"
|
|
|
|
if [[ -z $1 ]]; then
|
|
Disabled=$Optional_fbks
|
|
fi
|
|
|
|
while [[ "$#" -gt 0 ]]; do
|
|
if [ ! "`echo -n $Fallbacks | grep -Fo ${1}`" ]; then
|
|
echo "Unknown parameter: $1";
|
|
exit 1
|
|
fi
|
|
Disabled=`echo $Disabled | sed "s/--disable-${1}//"`
|
|
shift
|
|
done
|
|
|
|
# Init
|
|
fallbacks_prefix="@abinit_builddir@/fallbacks/install_fb/@abi_fc_vendor@/@abi_fc_version@"
|
|
|
|
# Find and Unpack tarball
|
|
tarfile=`basename $(ls @abinit_srcdir@/fallbacks/*.tar.gz)`
|
|
source=${tarfile%.tar.gz}
|
|
|
|
mkdir -p $source && tar -xzf @abinit_srcdir@/fallbacks/$tarfile -C $source --strip-components=1
|
|
cd $source
|
|
|
|
# Configure
|
|
./configure \
|
|
--prefix="${fallbacks_prefix}" \
|
|
--with-tardir="${HOME}/.abinit/tarballs" \
|
|
--with-linalg-incs="@sd_linalg_fcflags@" \
|
|
--with-linalg-libs="@sd_linalg_libs@" \
|
|
--with-fc-vendor="@abi_fc_vendor@" \
|
|
--with-fc-version="@abi_fc_version@" \
|
|
`echo $Disabled` \
|
|
LIBS_NETCDF4_FORTRAN="-ldl -lm -lz" \
|
|
CC="@CC@" \
|
|
CXX="@CXX@" \
|
|
FC="@FC@"
|
|
|
|
make -j 4 install
|
|
rc=`echo $?`
|
|
|
|
if test "$rc" = "0"; then
|
|
printf "$(tput bold)----------------------------------------------------------------------$(tput sgr0)\n\n"
|
|
echo "The fallbacks are now ready to use."; \
|
|
echo "You can link these fallbacks with Abinit by copying the following options to your ac9 file.";
|
|
|
|
list_of_fbks=( libxc hdf5 netcdf4 netcdf4_fortran linalg xmlf90 libpsml wannier90 )
|
|
for i in "${list_of_fbks[@]}"; do
|
|
if test "`${fallbacks_prefix}/bin/abinit-fallbacks-config --enabled ${i}`" = "yes"; then
|
|
Prefix=`${fallbacks_prefix}/bin/abinit-fallbacks-config --libs ${i}`
|
|
printf "\n$(tput bold)"
|
|
echo "with_${i}=${Prefix}" | sed '-e s/-L//; s/\/lib //; s/netcdf4/netcdf/; s/-l.*$//'
|
|
printf "$(tput sgr0)"
|
|
fi
|
|
done
|
|
printf "\n"
|
|
else
|
|
printf "We have detected a problem while generating fallbacks : contact Abinit's team\n"
|
|
fi
|
|
|
|
exit
|