2015-05-15 16:30:43 +02:00
|
|
|
.PHONY: default
|
|
|
|
.SECONDARY: symlink ezfio_interface
|
2014-04-01 18:37:27 +02:00
|
|
|
|
2015-03-25 23:03:51 +01:00
|
|
|
default: all .gitignore
|
2014-04-04 00:41:43 +02:00
|
|
|
|
|
|
|
# Include the user's config
|
|
|
|
include $(QPACKAGE_ROOT)/src/Makefile.config
|
|
|
|
|
2015-04-30 17:36:36 +02:00
|
|
|
# Create the NEEDED_CHILDREN_MODULES variable, needed for IRPF90
|
2015-05-04 15:03:53 +02:00
|
|
|
NEEDED_CHILDREN_MODULES=$(shell module_handler.py print_genealogy)
|
2014-04-11 01:53:15 +02:00
|
|
|
|
2014-11-04 01:03:50 +01:00
|
|
|
# Define the Makefile common variables
|
2014-04-03 01:50:22 +02:00
|
|
|
EZFIO_DIR=$(QPACKAGE_ROOT)/EZFIO
|
2014-04-01 18:37:27 +02:00
|
|
|
EZFIO=$(EZFIO_DIR)/lib/libezfio_irp.a
|
2015-04-30 17:36:36 +02:00
|
|
|
INCLUDE_DIRS=$(NEEDED_CHILDREN_MODULES) include
|
2014-04-01 18:37:27 +02:00
|
|
|
|
|
|
|
clean_links:
|
2014-04-03 11:19:41 +02:00
|
|
|
rm -f $(INCLUDE_DIRS) $$(basename $$PWD)
|
2014-04-01 18:37:27 +02:00
|
|
|
|
|
|
|
LIB+=$(EZFIO) $(MKL)
|
2014-04-24 12:31:15 +02:00
|
|
|
IRPF90+=$(patsubst %, -I %, $(INCLUDE_DIRS)) $(IRPF90_FLAGS)
|
2014-04-01 18:37:27 +02:00
|
|
|
|
2015-05-13 18:15:01 +02:00
|
|
|
# Update Makefile.depend
|
2015-05-15 16:30:43 +02:00
|
|
|
Makefile.depend: $(wildcard */Makefile)
|
2015-05-13 18:15:01 +02:00
|
|
|
${QPACKAGE_ROOT}/scripts/module/module_handler.py save_makefile_depend
|
|
|
|
|
2015-05-15 16:30:43 +02:00
|
|
|
# Check and update dependencies
|
|
|
|
include 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
|
|
|
|
$(IRPF90)
|
2014-04-03 11:28:54 +02:00
|
|
|
|
|
|
|
include irpf90.make
|
|
|
|
|
2015-05-15 16:30:43 +02:00
|
|
|
# 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
|
2015-01-15 13:59:12 +01:00
|
|
|
|
2015-05-15 16:30:43 +02:00
|
|
|
#Need all the executable
|
|
|
|
.gitignore: irpf90.make
|
|
|
|
${QPACKAGE_ROOT}/scripts/module/create_gitignore.sh
|
2015-01-15 13:59:12 +01:00
|
|
|
|
2015-05-15 16:30:43 +02:00
|
|
|
#
|
|
|
|
#
|
|
|
|
# # Frequent typos
|
|
|
|
# clena: clean
|
|
|
|
# veryclena: roger
|
|
|
|
# vercylean: roger
|