summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <copr-devel@lists.fedorahosted.org>2023-02-24 13:10:56 +0000
committerCoprDistGit <copr-devel@lists.fedorahosted.org>2023-02-24 13:10:56 +0000
commit91b16731f6a74323fc8bc4fe66a6a0b7d49cf120 (patch)
tree1b02d33a6d622427a1fe14c16ba1797f8934cfd5
parent68e2e812170d3b6b629ec4d5270cab9b651193c8 (diff)
automatic import of python3-fyppopeneuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-fypp.spec368
-rw-r--r--sources1
3 files changed, 370 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..fe12037 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/fypp-3.1.tar.gz
diff --git a/python-fypp.spec b/python-fypp.spec
new file mode 100644
index 0000000..202da81
--- /dev/null
+++ b/python-fypp.spec
@@ -0,0 +1,368 @@
+%global _empty_manifest_terminate_build 0
+Name: python-fypp
+Version: 3.1
+Release: 1
+Summary: Python powered Fortran preprocessor
+License: BSD
+URL: https://github.com/aradi/fypp
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/30/ac/a44c1421206d658765393911524ded650e8ae42190b426b27b5b76ef6e1f/fypp-3.1.tar.gz
+BuildArch: noarch
+
+
+%description
+* Definition, evaluation and removal of variables::
+ #:if DEBUG > 0
+ print *, "Some debug information"
+ #:endif
+ #:set LOGLEVEL = 2
+ print *, "LOGLEVEL: ${LOGLEVEL}$"
+ #:del LOGLEVEL
+* Macro definitions and macro calls::
+ #:def ASSERT(cond)
+ #:if DEBUG > 0
+ if (.not. ${cond}$) then
+ print *, "Assert failed in file ${_FILE_}$, line ${_LINE_}$"
+ error stop
+ end if
+ #:endif
+ #:enddef ASSERT
+ ! Invoked via direct call (argument needs no quotation)
+ @:ASSERT(size(myArray) > 0)
+ ! Invoked as Python expression (argument needs quotation)
+ $:ASSERT('size(myArray) > 0')
+* Conditional output::
+ program test
+ #:if defined('WITH_MPI')
+ use mpi
+ #:elif defined('WITH_OPENMP')
+ use openmp
+ #:else
+ use serial
+ #:endif
+* Iterated output (e.g. for generating Fortran templates)::
+ interface myfunc
+ #:for dtype in ['real', 'dreal', 'complex', 'dcomplex']
+ module procedure myfunc_${dtype}$
+ #:endfor
+ end interface myfunc
+* Inline directives::
+ logical, parameter :: hasMpi = #{if defined('MPI')}# .true. #{else}# .false. #{endif}#
+* Insertion of arbitrary Python expressions::
+ character(*), parameter :: comp_date = "${time.strftime('%Y-%m-%d')}$"
+* Inclusion of files during preprocessing::
+ #:include "macrodefs.fypp"
+* Using Fortran-style continutation lines in preprocessor directives::
+ #:if var1 > var2 &
+ & or var2 > var4
+ print *, "Doing something here"
+ #:endif
+* Passing (unquoted) multiline string arguments to callables::
+ #! Callable needs only string argument
+ #:def DEBUG_CODE(code)
+ #:if DEBUG > 0
+ $:code
+ #:endif
+ #:enddef DEBUG_CODE
+ #! Pass code block as first positional argument
+ #:block DEBUG_CODE
+ if (size(array) > 100) then
+ print *, "DEBUG: spuriously large array"
+ end if
+ #:endblock DEBUG_CODE
+ #! Callable needs also non-string argument types
+ #:def REPEAT_CODE(code, repeat)
+ #:for ind in range(repeat)
+ $:code
+ #:endfor
+ #:enddef REPEAT_CODE
+ #! Pass code block as positional argument and 3 as keyword argument "repeat"
+ #:block REPEAT_CODE(repeat=3)
+ this will be repeated 3 times
+ #:endblock REPEAT_CODE
+* Preprocessor comments::
+ #! This will not show up in the output
+ #! Also the newline characters at the end of the lines will be suppressed
+* Suppressing the preprocessor output in selected regions::
+ #! Definitions are read, but no output (e.g. newlines) will be produced
+ #:mute
+ #:include "macrodefs.fypp"
+ #:endmute
+* Explicit request for stopping the preprocessor::
+ #:if DEBUGLEVEL < 0
+ #:stop 'Negative debug level not allowed!'
+ #:endif
+* Easy check for macro parameter sanity::
+ #:def mymacro(RANK)
+ #! Macro only works for RANK 1 and above
+ #:assert RANK > 0
+ #:enddef mymacro
+* Line numbering directives in output::
+ program test
+ #:if defined('MPI')
+ use mpi
+ #:endif
+ transformed to ::
+ # 1 "test.fypp" 1
+ program test
+ # 3 "test.fypp"
+ use mpi
+ # 5 "test.fypp"
+ when variable ``MPI`` is defined and Fypp was instructed to generate line
+ markers.
+* Automatic folding of generated lines exceeding line length limit
+
+%package -n python3-fypp
+Summary: Python powered Fortran preprocessor
+Provides: python-fypp
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+%description -n python3-fypp
+* Definition, evaluation and removal of variables::
+ #:if DEBUG > 0
+ print *, "Some debug information"
+ #:endif
+ #:set LOGLEVEL = 2
+ print *, "LOGLEVEL: ${LOGLEVEL}$"
+ #:del LOGLEVEL
+* Macro definitions and macro calls::
+ #:def ASSERT(cond)
+ #:if DEBUG > 0
+ if (.not. ${cond}$) then
+ print *, "Assert failed in file ${_FILE_}$, line ${_LINE_}$"
+ error stop
+ end if
+ #:endif
+ #:enddef ASSERT
+ ! Invoked via direct call (argument needs no quotation)
+ @:ASSERT(size(myArray) > 0)
+ ! Invoked as Python expression (argument needs quotation)
+ $:ASSERT('size(myArray) > 0')
+* Conditional output::
+ program test
+ #:if defined('WITH_MPI')
+ use mpi
+ #:elif defined('WITH_OPENMP')
+ use openmp
+ #:else
+ use serial
+ #:endif
+* Iterated output (e.g. for generating Fortran templates)::
+ interface myfunc
+ #:for dtype in ['real', 'dreal', 'complex', 'dcomplex']
+ module procedure myfunc_${dtype}$
+ #:endfor
+ end interface myfunc
+* Inline directives::
+ logical, parameter :: hasMpi = #{if defined('MPI')}# .true. #{else}# .false. #{endif}#
+* Insertion of arbitrary Python expressions::
+ character(*), parameter :: comp_date = "${time.strftime('%Y-%m-%d')}$"
+* Inclusion of files during preprocessing::
+ #:include "macrodefs.fypp"
+* Using Fortran-style continutation lines in preprocessor directives::
+ #:if var1 > var2 &
+ & or var2 > var4
+ print *, "Doing something here"
+ #:endif
+* Passing (unquoted) multiline string arguments to callables::
+ #! Callable needs only string argument
+ #:def DEBUG_CODE(code)
+ #:if DEBUG > 0
+ $:code
+ #:endif
+ #:enddef DEBUG_CODE
+ #! Pass code block as first positional argument
+ #:block DEBUG_CODE
+ if (size(array) > 100) then
+ print *, "DEBUG: spuriously large array"
+ end if
+ #:endblock DEBUG_CODE
+ #! Callable needs also non-string argument types
+ #:def REPEAT_CODE(code, repeat)
+ #:for ind in range(repeat)
+ $:code
+ #:endfor
+ #:enddef REPEAT_CODE
+ #! Pass code block as positional argument and 3 as keyword argument "repeat"
+ #:block REPEAT_CODE(repeat=3)
+ this will be repeated 3 times
+ #:endblock REPEAT_CODE
+* Preprocessor comments::
+ #! This will not show up in the output
+ #! Also the newline characters at the end of the lines will be suppressed
+* Suppressing the preprocessor output in selected regions::
+ #! Definitions are read, but no output (e.g. newlines) will be produced
+ #:mute
+ #:include "macrodefs.fypp"
+ #:endmute
+* Explicit request for stopping the preprocessor::
+ #:if DEBUGLEVEL < 0
+ #:stop 'Negative debug level not allowed!'
+ #:endif
+* Easy check for macro parameter sanity::
+ #:def mymacro(RANK)
+ #! Macro only works for RANK 1 and above
+ #:assert RANK > 0
+ #:enddef mymacro
+* Line numbering directives in output::
+ program test
+ #:if defined('MPI')
+ use mpi
+ #:endif
+ transformed to ::
+ # 1 "test.fypp" 1
+ program test
+ # 3 "test.fypp"
+ use mpi
+ # 5 "test.fypp"
+ when variable ``MPI`` is defined and Fypp was instructed to generate line
+ markers.
+* Automatic folding of generated lines exceeding line length limit
+
+%package help
+Summary: Development documents and examples for fypp
+Provides: python3-fypp-doc
+%description help
+* Definition, evaluation and removal of variables::
+ #:if DEBUG > 0
+ print *, "Some debug information"
+ #:endif
+ #:set LOGLEVEL = 2
+ print *, "LOGLEVEL: ${LOGLEVEL}$"
+ #:del LOGLEVEL
+* Macro definitions and macro calls::
+ #:def ASSERT(cond)
+ #:if DEBUG > 0
+ if (.not. ${cond}$) then
+ print *, "Assert failed in file ${_FILE_}$, line ${_LINE_}$"
+ error stop
+ end if
+ #:endif
+ #:enddef ASSERT
+ ! Invoked via direct call (argument needs no quotation)
+ @:ASSERT(size(myArray) > 0)
+ ! Invoked as Python expression (argument needs quotation)
+ $:ASSERT('size(myArray) > 0')
+* Conditional output::
+ program test
+ #:if defined('WITH_MPI')
+ use mpi
+ #:elif defined('WITH_OPENMP')
+ use openmp
+ #:else
+ use serial
+ #:endif
+* Iterated output (e.g. for generating Fortran templates)::
+ interface myfunc
+ #:for dtype in ['real', 'dreal', 'complex', 'dcomplex']
+ module procedure myfunc_${dtype}$
+ #:endfor
+ end interface myfunc
+* Inline directives::
+ logical, parameter :: hasMpi = #{if defined('MPI')}# .true. #{else}# .false. #{endif}#
+* Insertion of arbitrary Python expressions::
+ character(*), parameter :: comp_date = "${time.strftime('%Y-%m-%d')}$"
+* Inclusion of files during preprocessing::
+ #:include "macrodefs.fypp"
+* Using Fortran-style continutation lines in preprocessor directives::
+ #:if var1 > var2 &
+ & or var2 > var4
+ print *, "Doing something here"
+ #:endif
+* Passing (unquoted) multiline string arguments to callables::
+ #! Callable needs only string argument
+ #:def DEBUG_CODE(code)
+ #:if DEBUG > 0
+ $:code
+ #:endif
+ #:enddef DEBUG_CODE
+ #! Pass code block as first positional argument
+ #:block DEBUG_CODE
+ if (size(array) > 100) then
+ print *, "DEBUG: spuriously large array"
+ end if
+ #:endblock DEBUG_CODE
+ #! Callable needs also non-string argument types
+ #:def REPEAT_CODE(code, repeat)
+ #:for ind in range(repeat)
+ $:code
+ #:endfor
+ #:enddef REPEAT_CODE
+ #! Pass code block as positional argument and 3 as keyword argument "repeat"
+ #:block REPEAT_CODE(repeat=3)
+ this will be repeated 3 times
+ #:endblock REPEAT_CODE
+* Preprocessor comments::
+ #! This will not show up in the output
+ #! Also the newline characters at the end of the lines will be suppressed
+* Suppressing the preprocessor output in selected regions::
+ #! Definitions are read, but no output (e.g. newlines) will be produced
+ #:mute
+ #:include "macrodefs.fypp"
+ #:endmute
+* Explicit request for stopping the preprocessor::
+ #:if DEBUGLEVEL < 0
+ #:stop 'Negative debug level not allowed!'
+ #:endif
+* Easy check for macro parameter sanity::
+ #:def mymacro(RANK)
+ #! Macro only works for RANK 1 and above
+ #:assert RANK > 0
+ #:enddef mymacro
+* Line numbering directives in output::
+ program test
+ #:if defined('MPI')
+ use mpi
+ #:endif
+ transformed to ::
+ # 1 "test.fypp" 1
+ program test
+ # 3 "test.fypp"
+ use mpi
+ # 5 "test.fypp"
+ when variable ``MPI`` is defined and Fypp was instructed to generate line
+ markers.
+* Automatic folding of generated lines exceeding line length limit
+
+%prep
+%autosetup -n fypp-3.1
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-fypp -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri Feb 24 2023 Python_Bot <Python_Bot@openeuler.org> - 3.1-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..b78ce2b
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+15d1d33b354123274e434f764f7b6c6f fypp-3.1.tar.gz