EXTRA_DIST += \
KNOWN_PROBLEMS \
README.ChangeLog \
RELNOTES \
descrip.mms
# Tests
basic_tests:
cd $(top_builddir)/tests && $(MAKE) tests_in
# Let Automake know how to perform basic tests
check-local tests_in:
$(MAKE) basic_tests
test1 :
echo "Running built-in test 1"
cd tests ; $(PERL) ../$(top_srcdir)/tests/Scripts/run-basic-tests.pl built-in 1 $(abinit_srcdir)
test2 :
echo "Running built-in test 2"
cd tests ; $(PERL) ../$(top_srcdir)/tests/Scripts/run-basic-tests.pl built-in 2 $(abinit_srcdir)
test3 :
echo "Running built-in test 3"
cd tests ; $(PERL) ../$(top_srcdir)/tests/Scripts/run-basic-tests.pl built-in 3 $(abinit_srcdir)
test4 :
echo "Running built-in test 4"
cd tests ; $(PERL) ../$(top_srcdir)/tests/Scripts/run-basic-tests.pl built-in 4 $(abinit_srcdir)
test5 :
echo "Running built-in test 5"
cd tests ; $(PERL) ../$(top_srcdir)/tests/Scripts/run-basic-tests.pl built-in 5 $(abinit_srcdir)
# ---------------------------------------------------------------------------- #
# Help
help:
@more $(top_srcdir)/doc/help_make/help_make_top
help_dev dev_help dev:
@more $(top_srcdir)/doc/help_make/help_make_top_dev
# ---------------------------------------------------------------------------- #
# Install Arch hooks for selected developers
arch_hooks:
@$(top_srcdir)/extras/arch_hooks/install-arch-hooks $(top_srcdir)
# ---------------------------------------------------------------------------- #
# robodoc-html-x.x.x.tar contains all html files produced by ROBODOC
robodoc:
rm -rf ,,robodoc robodoc-html && mkdir ,,robodoc
cp -rf src/defs src/[0-9]* src/main ,,robodoc
cp config/robodoc/robodoc-html.rc ,,robodoc/robodoc.rc
rm -fr ,,robodoc/*/.arch-ids
cd ,,robodoc && robodoc > robodoc.log
mv -f ,,robodoc/www/robodoc robodoc-html
tardir=robodoc-html && \
$(am__tar) | GZIP=$(GZIP_ENV) gzip -c >robodoc-html-$(VERSION).tar.gz
rm -rf robodoc-html ,,robodoc
# infos_html-x.x.x.tar contains all html files needed for the Web site
infos_html:
-rm -fr infos_htm* ,infos*
cp -fr doc ,infos-$(VERSION)
cp util/misc/var-file-index.py ,infos-$(VERSION)
cp -fr KNOWN_PROBLEMS ,infos-$(VERSION)/known_problems
mkdir ,infos-$(VERSION)/Tests
mkdir ,infos-$(VERSION)/Tests/Test_fast ,infos-$(VERSION)/Tests/Test_v1 ,infos-$(VERSION)/Tests/Test_v2
mkdir ,infos-$(VERSION)/Tests/Test_v3 ,infos-$(VERSION)/Tests/Test_v4 ,infos-$(VERSION)/Tests/Test_v5
cp -fr tests/fast/Input ,infos-$(VERSION)/Tests/Test_fast
cp -fr tests/v1/Input ,infos-$(VERSION)/Tests/Test_v1
cp -fr tests/v2/Input ,infos-$(VERSION)/Tests/Test_v2
cp -fr tests/v3/Input ,infos-$(VERSION)/Tests/Test_v3
cp -fr tests/v4/Input ,infos-$(VERSION)/Tests/Test_v4
cp -fr tests/v5/Input ,infos-$(VERSION)/Tests/Test_v5
cd ,infos-$(VERSION) ; python var-file-index.py
cp ,infos-$(VERSION)/developers/contributing.html ,infos-$(VERSION)
-rm -f ,infos-$(VERSION)/features/features.html ,infos-$(VERSION)/release_notes/release_notes.html ,infos-$(VERSION)/installation_notes/install.html
cp -fr ,infos-$(VERSION)/features/features_v$(ABINIT_VERSION_MAJOR).$(ABINIT_VERSION_MINOR).html ,infos-$(VERSION)/features/features.html
cp -fr ,infos-$(VERSION)/release_notes/rel*_v$(ABINIT_VERSION_MAJOR).$(ABINIT_VERSION_MINOR).html ,infos-$(VERSION)/release_notes/release_notes.html
cp -fr ,infos-$(VERSION)/inst*_notes/inst*_v$(ABINIT_VERSION_MAJOR).$(ABINIT_VERSION_MINOR).html ,infos-$(VERSION)/install_notes/install.html
-rm -fr ,infos-$(VERSION)/.arch-ids ,infos-$(VERSION)/*/.arch-ids ,infos-$(VERSION)/*/*/.arch-ids ,infos-$(VERSION)/*/*/*/.arch-ids
tar -cvf infos_html-$(VERSION).tar \
,infos-$(VERSION)/Tests \
,infos-$(VERSION)/input_variables ,infos-$(VERSION)/users ,infos-$(VERSION)/tutorial ,infos-$(VERSION)/known_problems \
,infos-$(VERSION)/gallery/Plot1.jpg ,infos-$(VERSION)/gallery/pcpm.gif ,infos-$(VERSION)/gallery/mode.png \
,infos-$(VERSION)/*/*.css \
,infos-$(VERSION)/install_notes/install.html \
,infos-$(VERSION)/release_notes/release_notes.html \
,infos-$(VERSION)/features/features.html \
,infos-$(VERSION)/presentation/presentation.pdf
gzip infos_html-$(VERSION).tar
-rm -fr ,infos-$(VERSION)
# Prepare the theory documents
theory :
cd doc/theory ; \
latex geometry.tex ; latex geometry.tex ; dvips -f geometry.dvi > geometry.ps ; ps2pdf geometry.ps ; \
latex 1WF.tex ; latex 1WF.tex ; dvips -f 1WF.dvi > 1WF.ps ; ps2pdf 1WF.ps ; \
latex set_WFs.tex ; latex set_WFs.tex ; dvips -f set_WFs.dvi > set_WFs.ps ; ps2pdf set_WFs.ps ; \
latex noncol.tex ; latex noncol.tex ; dvips -f noncol.dvi > noncol.ps ; ps2pdf noncol.ps ; \
rm -f *log *aux *dvi *ps
cd doc/macroave ; \
latex macroave.tex ; latex macroave.tex ; dvips -f macroave.dvi > macroave.ps ; ps2pdf macroave.ps ; \
rm -f *log *aux *dvi *ps
# Prepare the presentation document
presentation :
cd doc/presentation ; \
latex presentation.tex ; latex presentation.tex ; dvips -f presentation.dvi > presentation.ps ; ps2pdf presentation.ps ; \
rm -f *log *aux *dvi *ps ; \
gzip presentation.pdf
# For SMP machines. Before starting the -j4 option, one needs some pre-compilation
# to avoid spurious effects.
multi:
cd lib/light ; make &
cd lib/blas ; make &
cd src/defs ; make
cd src/main ; make abinip-abinit.o &
cd src/01managempi ; make &
cd src/08seqpar ; make
make -j4
# For SMP machines that cannot execute "make multi" because of "make -j4". Must be followed by the usual "make".
multi1:
cd src/02nlstrain ; make
multi2:
cd lib/macroav ; make
cd src/01cg ; make
cd src/01managempi ; make
cd src/02parser ; make
cd src/02psp ; make
cd src/03nonlocal ; make
cd src/03ionetcdf ; make
cd src/03iovars ; make
cd src/03paw ; make
cd src/03xc ; make
cd src/04bader ; make
cd src/04occeig ; make
cd src/04rsprc ; make
cd src/05common ; make
cd src/07lwf ; make
cd src/07ddb ; make
cd src/09cut3d ; make
multi3:
cd lib/light ; make
cd src/lib01fftnew ; make
cd src/00basis ; make
cd src/01contract ; make
cd src/01util ; make
cd src/03recipspace ; make
cd src/03xml ; make
cd src/05gw ; make
cd src/06response ; make
cd src/08seqpar ; make
multi4:
cd lib/lapack ; make
cd lib/numeric ; make
cd lib/numericf90 ; make
cd src/02ffts ; make
cd src/02geometry ; make
cd src/02spacepar ; make
cd src/04iowfdenpot ; make
cd src/04wfs ; make
cd src/06geomoptim ; make
cd src/07suscep ; make
cd src/11drive ; make
multi_alt:
cd src/defs ; make
make multi1 &
make multi2 &
make multi3 &
check_list:
@cat $(top_srcdir)/doc/maintainers/check_list.txt
split_dist:
util/maintainers/make-splitted-dist.sh 1
tar -cvf abinitE-$(VERSION).tar abinit-$(VERSION)/tests/v*
rm -fr abinit-$(VERSION)/tests/v*
tar -cvf abinitD-$(VERSION).tar abinit-$(VERSION)/tests/Psps_for_tests
rm -fr abinit-$(VERSION)/tests/Psps_for_tests
tar -cvf abinitC-$(VERSION).tar abinit-$(VERSION)/tests
rm -fr abinit-$(VERSION)/tests
tar -cvf abinitB-$(VERSION).tar abinit-$(VERSION)/src abinit-$(VERSION)/lib
rm -fr abinit-$(VERSION)/src
rm -fr abinit-$(VERSION)/lib
tar -cvf abinitA-$(VERSION).tar abinit-$(VERSION)
rm -fr abinit-$(VERSION)
gzip abinitA-$(VERSION).tar
gzip abinitB-$(VERSION).tar
gzip abinitC-$(VERSION).tar
gzip abinitD-$(VERSION).tar
gzip abinitE-$(VERSION).tar
# ---------------------------------------------------------------------------- #
# Generate binary tarball
abinit_binpkgdir = $(ABINIT_BINARY_PACKAGE)
binary_package:
-rm -rf $(abinit_binpkgdir) $(abinit_binpkgdir).tgz
mkdir -p $(abinit_binpkgdir)
$(MAKE) $(MAKEFLAGS) distdir && \
chmod -R u+w $(distdir) && \
mv $(distdir) $(abinit_binpkgdir)
$(MAKE) $(MAKEFLAGS) install DESTDIR=$(PWD)/$(abinit_binpkgdir)
mkdir -p $(abinit_binpkgdir)/$(abinit_datdir)
cd $(abinit_binpkgdir); \
mv $(distdir)/tests ./$(abinit_datdir); \
mv $(distdir)/util/users ./$(abinit_datdir); \
mv $(distdir)/extras/matlab_data_analysis ./$(abinit_datdir); \
mv $(distdir)/extras/post_processing ./$(abinit_datdir); \
rm -rf $(distdir); \
tardir=. && \
$(am__tar) | GZIP=$(GZIP_ENV) gzip -c >../$(abinit_binpkgdir).tgz
bin_prep:
rm -fr abinitbin-$(VERSION) abinitbin.tar abinitbin_seq-$(VERSION)* abinitbin_seqpar-$(VERSION)*
mkdir abinitbin-$(VERSION)
tar -cvf abinitbin.tar AUTHORS COPYING INSTALL KNOWN_PROBLEMS NEWS README* RELNOTES THANKS bin src \
doc extras util tests/Psps* tests/v*/Input tests/tutorial tests/paral tests/buil* tests/Scripts tests/cpu
mv abinitbin.tar abinitbin-$(VERSION)
cd abinitbin-$(VERSION) ; tar -xvf abinitbin.tar ; \
rm -fr abinitbin.tar ; rm -fr .arch-* ; rm -fr */.arch-* ; \
rm -fr */*/.arch-* ; rm -fr */*/*/.arch-* ; rm -fr */*/*/*/.arch-* ; \
cd src ; rm -fr */*.a ; \
rm -fr 00*/*.F90 ; rm -fr 00*/*.o ; \
rm -fr 01*/*.F90 ; rm -fr 01*/*.o ; \
rm -fr 02*/*.F90 ; rm -fr 02*/*.o ; \
rm -fr 03*/*.F90 ; rm -fr 03*/*.o ; \
rm -fr 04*/*.F90 ; rm -fr 04*/*.o ; \
rm -fr 05*/*.F90 ; rm -fr 05*/*.o ; \
rm -fr 06*/*.F90 ; rm -fr 06*/*.o ; \
rm -fr 07*/*.F90 ; rm -fr 07*/*.o ; \
rm -fr 08*/*.F90 ; rm -fr 08*/*.o ; \
rm -fr 09*/*.F90 ; rm -fr 09*/*.o ; \
rm -fr */*.F90 ; rm -fr */*.o ; \
cd ../tests ; rm -fr */,* ; cd .. ; rm -fr extras/arch_hooks ; \
mkdir opt ; mv src/main/* opt ; rm -fr src ; \
cp ../util/maintainers/Makefile_topdir_binarypack Makefile ; \
cp ../util/maintainers/Makefile_testdir_binarypack tests/Makefile ; \
cp ../util/maintainers/tests.env_bin tests/tests.env
bin_seq: bin_prep
cd abinitbin-$(VERSION) ; rm -fr tests/paral opt/abi*nip
tar -cvf abinitbin_seq-$(VERSION).tar abinitbin-$(VERSION)
chmod 644 abinitbin_seq-$(VERSION).tar
gzip abinitbin_seq-$(VERSION).tar
rm -fr abinitbin-$(VERSION)
bin_seqpar: bin_prep
tar -cvf abinitbin_seqpar-$(VERSION).tar abinitbin-$(VERSION)
chmod 644 abinitbin_seqpar-$(VERSION).tar
gzip abinitbin_seqpar-$(VERSION).tar
cd abinitbin-$(VERSION) ; rm opt/abinip ; rm -fr tests/paral
tar -cvf abinitbin_seq-$(VERSION).tar abinitbin-$(VERSION)
chmod 644 abinitbin_seq-$(VERSION).tar
gzip abinitbin_seq-$(VERSION).tar
rm -fr abinitbin-$(VERSION)
syntax highlighted by Code2HTML, v. 0.9.1