.PHONY: default .SECONDARY: symlink ezfio_interface default: all .gitignore # Include the user's config include $(QPACKAGE_ROOT)/src/Makefile.config # Create the NEEDED_CHILDREN_MODULES variable, needed for IRPF90 NEEDED_CHILDREN_MODULES=$(shell module_handler.py print_genealogy) # Define the Makefile common variables EZFIO_DIR=$(QPACKAGE_ROOT)/EZFIO EZFIO=$(EZFIO_DIR)/lib/libezfio_irp.a INCLUDE_DIRS=$(NEEDED_CHILDREN_MODULES) include clean_links: rm -f $(INCLUDE_DIRS) $$(basename $$PWD) LIB+=$(EZFIO) $(MKL) IRPF90+=$(patsubst %, -I %, $(INCLUDE_DIRS)) $(IRPF90_FLAGS) # Update Makefile.depend Makefile.depend: $(wildcard */Makefile) ${QPACKAGE_ROOT}/scripts/module/module_handler.py save_makefile_depend # Create symlink symlink: $(wildcard $(QPACKAGE_ROOT)/src/*/NEEDED_CHILDREN_MODULES) ${QPACKAGE_ROOT}/scripts/module/module_handler.py create_symlink # Define the EZFIO rules $(EZFIO): $(wildcard $(QPACKAGE_ROOT)/src/*/*.ezfio_config) $(wildcard $(QPACKAGE_ROOT)/src/*/EZFIO.cfg) $(QPACKAGE_ROOT)/scripts/ezfio_interface/prepare_ezfio.sh cd $(EZFIO_DIR);\ export FC="$(FC)" ; export FCFLAGS="$(FCFLAGS)" ; export IRPF90="$(IRPF90)" ;\ $(MAKE) ;\ $(MAKE) Python # Update EZFIO interface (create the irp.f90 and the ocaml) ezfio_interface: symlink $(wildcard $(QPACKAGE_ROOT)/src/*/EZFIO.cfg) ${QPACKAGE_ROOT}/scripts/ezfio_interface/ei_handler.py --irpf90 --ocaml --recursif irpf90.make: $(filter-out IRPF90_temp/%, $(wildcard */*.irp.f)) $(wildcard *.irp.f) $(wildcard .inc.f) Makefile.depend Makefile $(EZFIO) $(wildcard *.py) symlink ezfio_interface echo $(IRPF90) include Makefile.depend include irpf90.make # Need NEEDED_CHILDREN_MODULES and IRPMAN README.rst: NEEDED_CHILDREN_MODULES irpf90.make ${QPACKAGE_ROOT}/scripts/module/update_README.py tree_dependancy.png: NEEDED_CHILDREN_MODULES ${QPACKAGE_ROOT}/scripts/module/module_handler.py create_png #Need all the executable .gitignore: irpf90.make ${QPACKAGE_ROOT}/scripts/module/create_gitignore.sh # # # # Frequent typos # clena: clean # veryclena: roger # vercylean: roger