mirror of https://gitlab.com/QEF/q-e.git
84 lines
2.6 KiB
Bash
Executable File
84 lines
2.6 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Copyright (C) 2001-2025 Quantum ESPRESSO group
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License
|
|
# as published by the Free Software Foundation; either version 2
|
|
# of the License. See the file `License' in the root directory
|
|
# of the present distribution.
|
|
#
|
|
#
|
|
# This script is a simple wrapper that does the following:
|
|
# - clean old objects and executables with "make veryclean"
|
|
# - regenerate "make.depend" dependency files used by Makefile
|
|
# - call the true autoconf configuration script "install/configure"
|
|
# See the "manual" below for details and options
|
|
#
|
|
# Courtesy of A. Ferretti and G. Bussi
|
|
# Modified by F. Spiga and P. Giannozzi
|
|
#
|
|
#================================================================
|
|
#
|
|
MANUAL="Usage:
|
|
configure [-h | --help]
|
|
configure [--save] [<conf_flags>]
|
|
|
|
-h, --help print this manual
|
|
--save do not clean objects and dependencies
|
|
<conf_flags> flags to be passed to the autoconf configure;
|
|
the content of environment variable
|
|
$ESPRESSO_CONFIG is prepended to <conf_flag>
|
|
|
|
After configuration, the make.inc file will be created in the
|
|
QE home (current) directory
|
|
|
|
Type './install/configure --help' for options of autoconf configure
|
|
"
|
|
#
|
|
#================================================================
|
|
#
|
|
|
|
# run from directory where this script is
|
|
auxdir=`echo $0 | sed 's/\(.*\)\/.*/\1/'` # extract pathname
|
|
if [ "$auxdir" != "configure" ] ; then cd $auxdir ; fi
|
|
|
|
#
|
|
# detect the simplest case
|
|
#
|
|
case $1 in
|
|
("-h" | "--help" ) echo "$MANUAL" ; exit 0 ;;
|
|
esac
|
|
|
|
# NOTE: if you run configure without cleaning everything first,
|
|
# there are chances that something may go wrong. Forcing veryclean.
|
|
|
|
depend="yes"
|
|
if [[ ($1 =~ "--save") ]] ; then
|
|
depend="no"
|
|
shift;
|
|
elif [[ (-e make.inc) && (-e Makefile) ]] ; then
|
|
make -f Makefile veryclean
|
|
fi
|
|
test -e ./install/make.inc && rm ./install/make.inc
|
|
|
|
if [[ ($depend == "yes") ]] ; then
|
|
# compute dependencies (next line avoids bogus errors)
|
|
touch ./include/configure.h
|
|
./install/makedeps.sh
|
|
fi
|
|
|
|
# run the autoconf configure with the given conf_flags
|
|
echo 'Running configure as ./install/configure '$ESPRESSO_CONFIG $@
|
|
./install/configure "$ESPRESSO_CONFIG" "$@"
|
|
|
|
# copy make.inc in the home dir
|
|
# and final clean up
|
|
#
|
|
test -e ./install/make.inc && mv ./install/make.inc .
|
|
test -e config.log && mv config.log ./install/
|
|
test -e config.status && mv config.status ./install/
|
|
test -e configure.msg && mv configure.msg ./install/
|
|
|
|
exit 0
|