diff --git a/COMPILE_RUN.md b/COMPILE_RUN.md index 7e9025b9..4e52aa9b 100644 --- a/COMPILE_RUN.md +++ b/COMPILE_RUN.md @@ -12,11 +12,11 @@ The script to create the dependencies file (aka `build.ninja`) is `create_ninja_ ## Compilation Flag -You need to specify all the flag useful for the compilation: like the optimization one, the mkl one .``$QPACKAGE_ROOT/config`` contains ``ifort.cfg`` and ``gfortran.cfg`` files which have the compiler flags that will be used to compile the code. You can edit these files to modify the compiling option. Put the file path when calling `create_ninja_build.py` +You need to specify all the flag useful for the compilation: like the optimization one, the mkl one .``$QP_ROOT/config`` contains ``ifort.cfg`` and ``gfortran.cfg`` files which have the compiler flags that will be used to compile the code. You can edit these files to modify the compiling option. Put the file path when calling `create_ninja_build.py` ## Example to create the Ninja file -`create_ninja_build.py --production $QPACKAGE_ROOT/config/ifort.cfg` +`create_ninja_build.py --production $QP_ROOT/config/ifort.cfg` # WARNING @@ -24,8 +24,8 @@ For now reload this command if you add a `IRP.f90` or `EZFIO.cfg` file or modify ## Compile -Just type `ninja` if you are in `$QPACKAGE_ROOT` (or `ninja -f $QPACKAGE_ROOT/build.ninja` elsewhere). The compilation will take approximately 3 min. +Just type `ninja` if you are in `$QP_ROOT` (or `ninja -f $QP_ROOT/build.ninja` elsewhere). The compilation will take approximately 3 min. If you have set the `--developement` flag in a specific module you can go in the corresponding IRPF90_temp and run `ninja` to only make the module and submodule binaries. (You can use the `-f` option too) -Now go in `$QPACKAGE_ROOT/ocaml` and type `make` \ No newline at end of file +Now go in `$QP_ROOT/ocaml` and type `make` diff --git a/data/Makefile b/data/Makefile deleted file mode 100644 index d02ec62b..00000000 --- a/data/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -all: executables - -.PHONY: executables - -executables: - cd $(QPACKAGE_ROOT)/src ; $(MAKE) executables - mv $(QPACKAGE_ROOT)/src/executables . diff --git a/doc/code_architecture/Script.md b/doc/code_architecture/Script.md index c348aca5..6c5ff34a 100644 --- a/doc/code_architecture/Script.md +++ b/doc/code_architecture/Script.md @@ -1,17 +1,17 @@ # `ei_handler.py` -This script in located in `$QPACKAGE_ROOT/scripts/ezfio_interface/`. +This script in located in `$QP_ROOT/scripts/ezfio_interface/`. It provide all the resource need to deal with the `EZFIO.cfg` files : - - The creation of `$MODULE_LOWER_ezfio_config` in `$QPACKAGE_ROOT/ezfio/config` + - The creation of `$MODULE_LOWER_ezfio_config` in `$QP_ROOT/ezfio/config` - The `ezfio_interface.irp.f` who containt all the provider associate (in `$MODULE/`) - - The `$MODULE_LOWER_ezfio_defaults` in `$QPACKAGE_ROOT/data/` + - The `$MODULE_LOWER_ezfio_defaults` in `$QP_ROOT/data/` - The `Input_$MODULE_LOWER.ml` for the *qp_edit* For more information you can type `ei_handler.py -h` # `module_handler.py` -This script in located in `$QPACKAGE_ROOT/scripts/module/`. +This script in located in `$QP_ROOT/scripts/module/`. It provide all the resource related to the tree dependancy of the modules. If more useful as a librairy than a cli. @@ -31,13 +31,13 @@ In the cli mode: # `qp_install_module.py` -This script is located in `$QPACKAGE_ROOT/scripts/module/`. +This script is located in `$QP_ROOT/scripts/module/`. It is usefull when you need to install a new module. (From the soon to come repo or from scratch). # `qp_create_ninja.py` -This script is located in `$QPACKAGE_ROOT/scripts/compilation/`. +This script is located in `$QP_ROOT/scripts/compilation/`. It will create the `build.ninja` file. It will use intersifly the `module_handler.py` module. To read all the flag for the compilation the module `read_compilation_cfg.py` is used. diff --git a/install/scripts/install_ocaml.sh b/install/scripts/install_ocaml.sh index b0092659..34410c62 100755 --- a/install/scripts/install_ocaml.sh +++ b/install/scripts/install_ocaml.sh @@ -4,19 +4,6 @@ cd .. QP_ROOT=$PWD cd - -# Fast installation -if [[ "$1" == "--fast" && ! -d ${HOME}/.opam ]] -then - MEGA_DL="${QP_ROOT}/bin/mega-dl.sh" - wget 'https://gist.githubusercontent.com/scemama/b9debaed0b76321229a5/raw/d06ca00e6ad7f3703ff4738b210f6f913c1bd8d5/mega-dl.sh' -O ${MEGA_DL} - chmod +x ${MEGA_DL} - url='https://mega.co.nz/#!ykh32ajD!2aeqh87c53tL-Z4W1msQvem-TrmRN3ftlZ_QdhKo3c4' - ${MEGA_DL} $url /tmp/opam.tgz - cd $HOME - tar -zxf /tmp/opam.tgz - cd - -fi - # Normal installation PACKAGES="core cryptokit ocamlfind sexplib" diff --git a/install/scripts/install_zlib.sh b/install/scripts/install_zlib.sh index 8e1b3d8b..26139f5c 100755 --- a/install/scripts/install_zlib.sh +++ b/install/scripts/install_zlib.sh @@ -12,7 +12,8 @@ function _install() cd ${BUILD} ./configure && make || exit 1 make install prefix=$QP_ROOT/install/${TARGET} || exit 1 - ln -f $QP_ROOT/install/${TARGET}/lib/libz.so $QP_ROOT/lib || exit 1 + ln -s -f $QP_ROOT/install/${TARGET}/lib/libz.so $QP_ROOT/lib || exit 1 + ln -s -f $QP_ROOT/install/${TARGET}/lib/libz.a $QP_ROOT/lib || exit 1 } -source scripts/build.sh \ No newline at end of file +source scripts/build.sh diff --git a/scripts/compilation/qp_create_ninja.py b/scripts/compilation/qp_create_ninja.py index 7534d61f..620c5f1b 100755 --- a/scripts/compilation/qp_create_ninja.py +++ b/scripts/compilation/qp_create_ninja.py @@ -223,7 +223,7 @@ def ninja_ezfio_rule(): for flag in ["FC", "FCFLAGS", "IRPF90"]] l_cmd = ["cd {0}".format(QP_ROOT_EZFIO) - ] + l_flag + ["make && ln -f {0} {1}".format(join(QP_ROOT, 'install', 'EZFIO',"lib","libezfio.a"), + ] + l_flag + ["ninja && ln -f {0} {1}".format(join(QP_ROOT, 'install', 'EZFIO',"lib","libezfio.a"), EZFIO_LIB)] l_string = ["rule build_ezfio", @@ -399,7 +399,7 @@ def ninja_irpf90_make_build(path_module, l_needed_molule, d_irp): l_creation = [join(path_module.abs, i) for i in ["irpf90.make", "irpf90_entities", "tags", - "IRPF90_temp/build.ninja"]] + "build.ninja"]] str_creation = " ".join(l_creation) # ~#~#~#~#~#~#~#~#~#~ # @@ -532,7 +532,7 @@ def ninja_binaries_rule(): # c m d # # ~#~#~ # - l_cmd = ["cd $module/IRPF90_temp", "ninja"] + l_cmd = ["cd $module", "ninja"] # ~#~#~#~#~#~ # # s t r i n g # @@ -554,7 +554,7 @@ def ninja_binaries_build(path_module, l_children, d_binaries): # c m d # # ~#~#~ # - ninja_module_path = join(path_module.abs, "IRPF90_temp", "build.ninja") + ninja_module_path = join(path_module.abs, "build.ninja") l_abs_bin = [binary.abs for binary in d_binaries[path_module]] # ~#~#~#~#~#~ # diff --git a/scripts/ezfio_interface/qp_convert_output_to_ezfio.py b/scripts/ezfio_interface/qp_convert_output_to_ezfio.py index 4cf96ca6..ff7ad225 100755 --- a/scripts/ezfio_interface/qp_convert_output_to_ezfio.py +++ b/scripts/ezfio_interface/qp_convert_output_to_ezfio.py @@ -1,6 +1,6 @@ #!/usr/bin/env python """ -This function acceep +convert output of gamess/GAU$$IAN to ezfio Usage: qp_convert_output_to_ezfio.py [--ezfio=] @@ -29,7 +29,7 @@ except: print "Error: QP_ROOT environment variable not found." sys.exit(1) else: - sys.path = [QP_ROOT + "/EZFIO/Python", + sys.path = [QP_ROOT + "/install/EZFIO/Python", QP_ROOT + "/resultsFile", QP_ROOT + "/scripts"] + sys.path diff --git a/setup_environment.py b/setup_environment.py index 2c682493..9a6f2a37 100755 --- a/setup_environment.py +++ b/setup_environment.py @@ -65,7 +65,7 @@ path = Info( default_path=join(QP_ROOT_BIN, "patch")) irpf90 = Info( - url='{head}/scemama/irpf90/archive/v1.6.5.tar.gz'.format(**path_github), + url='{head}/scemama/irpf90/archive/v1.6.6.tar.gz'.format(**path_github), description=' irpf90', default_path=join(QP_ROOT_BIN, "irpf90")) @@ -143,16 +143,11 @@ def check_python(): def check_avabiliy(binary): - if binary == "zlib": - binary_name = "zlib-flate" - else: - binary_name = binary - if binary == "python": check_python() try: - return check_output(["which", binary_name]) + return check_output(["which", binary]) except subprocess.CalledProcessError: default_path = d_info[binary].default_path if os.path.exists(default_path): @@ -209,7 +204,12 @@ print """ """ print "You have already installed :" -pprint.pprint(l_installed) +def f( (a1,a2), (key,value) ): + return tuple(max(x,len(y)) for (x,y) in [(a1,key), (a2,value)] ) +fmt_tuple =reduce(f, l_installed.iteritems(), (0,0)) +for k,v in l_installed.iteritems(): + fmt = "{0:<%d} : {1:<%d}"%fmt_tuple + print fmt.format( k, v ) print """ ___