mirror of https://gitlab.com/QEF/q-e.git
118 lines
3.4 KiB
Plaintext
118 lines
3.4 KiB
Plaintext
|
|
#===============================
|
|
# espresso
|
|
#===============================
|
|
#
|
|
include ../make.inc
|
|
|
|
#
|
|
# MAIN target
|
|
#
|
|
all:
|
|
$(MAKE) libblas_$(BLAS_LIBS_SWITCH)
|
|
$(MAKE) liblapack_$(LAPACK_LIBS_SWITCH)
|
|
$(MAKE) libelpa_internal
|
|
$(MAKE) libiotk
|
|
|
|
# BLAS
|
|
libblas : libblas_$(BLAS_LIBS_SWITCH)
|
|
|
|
libblas_external : fake_blas_external
|
|
|
|
fake_blas_external :
|
|
touch fake_libblas.a
|
|
-rm fake_libblas.a
|
|
|
|
libblas_internal:
|
|
if test ! -d ../BLAS; then \
|
|
( gzip -dc ../archive/blas-1.tar.gz |(cd ../; tar -xvf -)); fi
|
|
if test -e make_blas.inc; then \
|
|
(cp make_blas.inc ../BLAS/make.inc; \
|
|
cd ../BLAS; $(MAKE) $(BLASLIB)); else \
|
|
(echo "no configuration file found for blas"; \
|
|
echo "run configure from main QE dir"); fi
|
|
|
|
# LAPACK
|
|
liblapack : liblapack_$(LAPACK_LIBS_SWITCH)
|
|
|
|
liblapack_external : fake_lapack_external
|
|
|
|
fake_lapack_external :
|
|
touch fake_liblapack.a
|
|
-rm fake_liblapack.a
|
|
|
|
liblapack_internal:
|
|
if test ! -d ../lapack-3.2; then \
|
|
( gzip -dc ../archive/lapack-3.2.tar.gz | (cd ../; tar -xvf -)); fi
|
|
if test -e make_lapack.inc; then \
|
|
(cp make_lapack.inc ../lapack-3.2/make.inc; \
|
|
cp Makefile_lapack ../lapack-3.2/SRC/Makefile; \
|
|
cp Makefile_lapack_testing_lin ../lapack-3.2/TESTING/LIN/Makefile; \
|
|
cd ../lapack-3.2; $(MAKE) lapacklib); else \
|
|
(echo "no configuration file found for lapack"; \
|
|
echo "run configure from main QE dir"); fi
|
|
libiotk:
|
|
if test ! -d ../S3DE; then \
|
|
(gzip -dc ../archive/iotk-1.2.beta.tar.gz | (cd ../; tar -xvf -)) ; \
|
|
if test -e Makefile_iotk; then \
|
|
(cp Makefile_iotk ../S3DE/iotk/src/Makefile); fi; \
|
|
if test -e iotk_config.h; then \
|
|
(cp iotk_config.h ../S3DE/iotk/include/iotk_config.h); fi; fi
|
|
cd ../S3DE/iotk/src; $(MAKE) lib+util;
|
|
cd ../bin; ln -fs ../S3DE/iotk/tools/iotk .; \
|
|
ln -fs ../S3DE/iotk/src/iotk.x .; \
|
|
ln -fs ../S3DE/iotk/src/iotk_print_kinds.x .; \
|
|
cd ../; ln -fs S3DE/iotk iotk
|
|
|
|
# ELPA
|
|
libelpa : libelpa_$(ELPA_LIBS_SWITCH)
|
|
|
|
libelpa_ : fake_elpa_external
|
|
libelpa_disabled : fake_elpa_external
|
|
|
|
fake_elpa_external :
|
|
touch fake_libelpa.a
|
|
-rm fake_libelpa.a
|
|
|
|
libelpa_enabled:
|
|
if test ! -d ../ELPA; then \
|
|
( gzip -dc ../archive/ELPA-0.3.tar.gz |(cd ../; tar -xvf -)); fi
|
|
cd ../ELPA; $(MAKE)
|
|
|
|
###################################
|
|
# cleaning
|
|
###################################
|
|
# each lib independently
|
|
blas_clean:
|
|
if test -d ../BLAS; then (cd ../BLAS; $(MAKE) clean); fi
|
|
blas_veryclean:
|
|
if test -d ../BLAS; then (rm -R -f ../BLAS); fi
|
|
lapack_clean:
|
|
if test -d ../lapack-3.2; then (cd ../lapack-3.2; $(MAKE) clean); fi
|
|
lapack_veryclean:
|
|
if test -d ../lapack-3.2; then (rm -R -f ../lapack-3.2); fi
|
|
elpa_clean:
|
|
if test -d ../ELPA; then (cd ../ELPA; $(MAKE) clean); fi
|
|
elpa_veryclean:
|
|
if test -d ../ELPA; then (rm -R -f ../ELPA); fi
|
|
iotk_clean:
|
|
if test -d ../S3DE; then (cd ../S3DE; $(MAKE) clean); fi
|
|
if test -d ../iotk; then (rm -R -f ../iotk); fi
|
|
if test -e ../S3DE/iotk/src/iotk.x; then \
|
|
rm -f ../S3DE/iotk/src/iotk.x; fi
|
|
(rm -f ../bin/iotk; \
|
|
rm -f ../bin/iotk.x; \
|
|
rm -f ../bin/iotk_print_kinds.x)
|
|
iotk_veryclean:
|
|
if test -d ../S3DE; then (rm -R -f ../S3DE); fi
|
|
if test -d ../iotk; then (rm -R -f ../iotk); fi
|
|
if test -e ../S3DE/iotk/src/iotk.x; then (rm -f ../S3DE/iotk/src/iotk.x); fi
|
|
rm -f ../bin/iotk; \
|
|
rm -f ../bin/iotk.x; \
|
|
rm -f ../bin/iotk_print_kinds.x; \
|
|
rm -f ../iotk
|
|
|
|
# general cleaning
|
|
clean: blas_clean lapack_clean elpa_clean iotk_clean
|
|
veryclean: blas_veryclean lapack_veryclean elpa_veryclean iotk_veryclean
|