Skip to content

Commit

Permalink
Merge branch 'hotfix/0.11.1'
Browse files Browse the repository at this point in the history
* hotfix/0.11.1:
  Version 0.11.1
  fypp: use find_program(fypp) first
  Update fypp to 3.2
  NAG porting fixes. (#34)
  Change PGI version check to 18.7. (#31)
  Fix fckit_tensor.F90
  • Loading branch information
wdeconinck committed Feb 27, 2024
2 parents f869496 + d1fd9cc commit ebdaa45
Show file tree
Hide file tree
Showing 40 changed files with 864 additions and 420 deletions.
17 changes: 14 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -104,9 +104,18 @@ endif()
set( FCKIT_LIBRARIES fckit )

################################################################################################
# find fypp

find_program(FYPP fypp)
if( FYPP )
ecbuild_info("fckit found fypp: ${FYPP}")
endif()

# sources

set( FYPP ${CMAKE_CURRENT_SOURCE_DIR}/tools/fckit-eval.sh ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/tools/fckit-fypp.py )
if( NOT FYPP )
set( FYPP ${CMAKE_CURRENT_SOURCE_DIR}/tools/fckit-eval.sh ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/tools/fckit-fypp.py )
endif()
set( FCTEST_GENERATOR ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/tools/fctest-generate-runner.py )
include( fckit_preprocess_fypp )
include( add_fctest )
Expand All @@ -127,14 +136,16 @@ if( ECBUILD_INSTALL_FORTRAN_MODULES )
endif()
if( NOT PROJECT_NAME STREQUAL CMAKE_PROJECT_NAME )
set( FCTEST_GENERATOR ${FCTEST_GENERATOR} PARENT_SCOPE )
set( FYPP ${FYPP} PARENT_SCOPE )
if( NOT FYPP )
set( FYPP ${FYPP} PARENT_SCOPE )
endif()
endif()
file(READ ${CMAKE_CURRENT_SOURCE_DIR}/cmake/add_fctest.cmake ADD_FCTEST)
file(READ ${CMAKE_CURRENT_SOURCE_DIR}/cmake/fckit_preprocess_fypp.cmake FCKIT_PREPROCESS_FYPP )

set( install_permissions OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE )
install( FILES tools/fctest-generate-runner.py DESTINATION libexec PERMISSIONS ${install_permissions} )
install( FILES tools/fckit-eval.sh DESTINATION libexec PERMISSIONS ${install_permissions} )
install( FILES contrib/fypp-3.0-7895a7e-20200112/bin/fypp DESTINATION libexec RENAME fckit-fypp.py PERMISSIONS ${install_permissions} )
install( FILES contrib/fypp-3.2-b8dd58b-20230822/bin/fypp DESTINATION libexec RENAME fckit-fypp.py PERMISSIONS ${install_permissions} )

ecbuild_install_project( NAME fckit )
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
0.11.0
0.11.1

10 changes: 0 additions & 10 deletions contrib/fypp-3.0-7895a7e-20200112/.gitignore

This file was deleted.

21 changes: 21 additions & 0 deletions contrib/fypp-3.2-b8dd58b-20230822/.readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the version of Python and other tools you might need
build:
os: ubuntu-22.04
tools:
python: "3.10"

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/conf.py

# We recommend specifying your dependencies to enable reproducible builds:
# https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
python:
install:
- requirements: docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
language: python

python:
- "2.7"
- "3.4"
- "3.5"
- "3.6"
- "3.7"
- "3.8"

install: yes
- "3.9"

script: test/runtests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,36 @@ Change Log
==========


Unreleased
==========
3.2
===

Added
-----

* Option ``--file-var-root`` to render file variables (``_FILE_``,
``_THIS_FILE``) as relative paths with respect to a specified root.

Changed
-------

3.1
===

Fixed
Added
-----

* Global variables _SYSTEM_ and _MACHINE_ to query environment.

* Emission of standard (#line pragma styled) line directives.

* Factory method arguments in Fypp constructor: evaluator_factory,
parser_factor, builder_factory and renderer_factory.


Changed
-------

* Support for Python 2.7, 3.3 and 3.4 dropped, support for Python 3.9 added.


3.0
===

Expand All @@ -28,7 +43,7 @@ Added

* Add block / contains / endblock construct as alternative for call / nextarg /
endcall.

* Escaping of preprocessor comments

* Possibility of specifying character encoding for file I/O with UTF-8 as
Expand Down Expand Up @@ -119,7 +134,7 @@ Added
* Python-like consistent global and local scopes and scope lookup rules.

* Predefined variables _THIS_FILE_ and _THIS_LINE_.

* Additional flags in line numbering directives when opening a file or returning
to a previous file.

Expand Down Expand Up @@ -150,7 +165,7 @@ Changed

* Function setvar() accepts arbitrary number of argument pairs.

* Reverse order exception printing, exception first occuring printed as last.
* Reverse order exception printing, exception first occurring printed as last.

* Command line tool formats error messages in GNU-like format.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2016-2020 Bálint Aradi, Universität Bremen
Copyright (c) 2016-2023 Bálint Aradi, Universität Bremen

All rights reserved.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,21 +170,52 @@ Main features
Installing
==========

Fypp needs a working Python interpreter. It is compatible with Python 2 (version
2.6 and above) and Python 3 (all versions).
Fypp needs a working Python 3 interpreter (Python 3.5 or above).

Automatic install
-----------------
When you install Fypp, you obtain the command line tool ``fypp`` and the Python
module ``fypp.py``. Latter you can import if you want to access the
functionality of Fypp directly from within your Python scripts.

Use Pythons command line installer ``pip`` in order to download the stable
release from the `Fypp page on PyPI <http://pypi.python.org/pypi/fypp>`_ and
install it on your system::

pip install fypp
Installing via conda
--------------------

This installs both, the command line tool ``fypp`` and the Python module
``fypp.py``. Latter you can import if you want to access the functionality of
Fypp directly from within your Python scripts.
The last stable release of Fypp can be easily installed as conda package by
issuing ::

conda install -c conda-forge fypp


Installing via pip
------------------

You can also use Pythons command line installer ``pip`` in order to download the
stable release from the `Fypp page on PyPI <http://pypi.python.org/pypi/fypp>`_
and install it on your system.

If you want to install Fypp into the module system of the active Python 3
interpreter (typically the case when you are using a Python virtual
environment), issue ::

pip3 install fypp

Alternatively, you can install Fypp into the user space (under `~/.local`) with
::

pip3 install --user fypp


Installing via MSYS2 pacman
---------------------------

On Windows you can use the `MSYS2 toolchain <https://www.msys2.org/>`_ to install
Fypp in a MinGW terminal. To install Fypp use::

pacman -S mingw-w64-x86_64-python-fypp

Make sure the selected architecture is matching your current MinGW terminal.
For all supporting MinGW architectures visit check the package index
`here <https://packages.msys2.org/base/mingw-w64-python-fypp>`_.


Manual install
Expand Down
Loading

0 comments on commit ebdaa45

Please sign in to comment.