diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-10 07:15:35 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-10 07:15:35 +0000 |
commit | 7613e55b1eea7344468d7d5c93331b9e0b67a99b (patch) | |
tree | 686198d7751090d6f9326abb92005e7629b3a023 | |
parent | fa52b797c9e37e31bb9e641634e536228de17f8b (diff) |
automatic import of python-make-var
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-make-var.spec | 255 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 257 insertions, 0 deletions
@@ -0,0 +1 @@ +/make_var-0.4.0.tar.gz diff --git a/python-make-var.spec b/python-make-var.spec new file mode 100644 index 0000000..d43381e --- /dev/null +++ b/python-make-var.spec @@ -0,0 +1,255 @@ +%global _empty_manifest_terminate_build 0 +Name: python-make-var +Version: 0.4.0 +Release: 1 +Summary: Retrieve all variables defined by make command +License: LICENSE.txt +URL: http://github.com/karnigen/make_var +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/d1/09/fa8b35cdc8229d742d6b585274844400860fd3b51464de3da778b317ebd0/make_var-0.4.0.tar.gz +BuildArch: noarch + + +%description +# make_var + +- Retrieve all variables defined by make command by **python** +- Expand make type variables `$(VAR)` in string + +Package allow you to access any symbol defined in *make*. +It might be helpful to transfer your *Makefile* based project +to different one. + +## Installation + +`pip install make_var` + +## Tutorial + +How to use package: + +- just create simple Makefile containing variables H and W +``` +H = hello +W = world +``` + +- next create python file `read_makefile.py` +``` +#!/usr/bin/env python3 +from make_var import * + +M=make_vars(origin=['makefile']) # retrieve only data defined in makefiles +print(M['makefile']['H'], M['makefile']['W']) +``` + +execute it and you get +`hello world` + +- to get all variables that `make` uses just write +``` +M=make_vars(origin=None) # all variables +print(M.keys()) # print all origins +``` +output is +`['environment', "'override'", 'automatic', 'makefile', 'default']` + +## String expansion +Example to replace $(var) by definition from Makefile + - use same Makefile as before + - edit python file + +``` +print(make_expand(M,"$(H) $(W)")) # replaces $(H) with "hello" and $(W) with "word" +``` + +you get +`hello world` + +## Internals + +package is based on GNU make command +`make -pnB` + + + + +%package -n python3-make-var +Summary: Retrieve all variables defined by make command +Provides: python-make-var +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-make-var +# make_var + +- Retrieve all variables defined by make command by **python** +- Expand make type variables `$(VAR)` in string + +Package allow you to access any symbol defined in *make*. +It might be helpful to transfer your *Makefile* based project +to different one. + +## Installation + +`pip install make_var` + +## Tutorial + +How to use package: + +- just create simple Makefile containing variables H and W +``` +H = hello +W = world +``` + +- next create python file `read_makefile.py` +``` +#!/usr/bin/env python3 +from make_var import * + +M=make_vars(origin=['makefile']) # retrieve only data defined in makefiles +print(M['makefile']['H'], M['makefile']['W']) +``` + +execute it and you get +`hello world` + +- to get all variables that `make` uses just write +``` +M=make_vars(origin=None) # all variables +print(M.keys()) # print all origins +``` +output is +`['environment', "'override'", 'automatic', 'makefile', 'default']` + +## String expansion +Example to replace $(var) by definition from Makefile + - use same Makefile as before + - edit python file + +``` +print(make_expand(M,"$(H) $(W)")) # replaces $(H) with "hello" and $(W) with "word" +``` + +you get +`hello world` + +## Internals + +package is based on GNU make command +`make -pnB` + + + + +%package help +Summary: Development documents and examples for make-var +Provides: python3-make-var-doc +%description help +# make_var + +- Retrieve all variables defined by make command by **python** +- Expand make type variables `$(VAR)` in string + +Package allow you to access any symbol defined in *make*. +It might be helpful to transfer your *Makefile* based project +to different one. + +## Installation + +`pip install make_var` + +## Tutorial + +How to use package: + +- just create simple Makefile containing variables H and W +``` +H = hello +W = world +``` + +- next create python file `read_makefile.py` +``` +#!/usr/bin/env python3 +from make_var import * + +M=make_vars(origin=['makefile']) # retrieve only data defined in makefiles +print(M['makefile']['H'], M['makefile']['W']) +``` + +execute it and you get +`hello world` + +- to get all variables that `make` uses just write +``` +M=make_vars(origin=None) # all variables +print(M.keys()) # print all origins +``` +output is +`['environment', "'override'", 'automatic', 'makefile', 'default']` + +## String expansion +Example to replace $(var) by definition from Makefile + - use same Makefile as before + - edit python file + +``` +print(make_expand(M,"$(H) $(W)")) # replaces $(H) with "hello" and $(W) with "word" +``` + +you get +`hello world` + +## Internals + +package is based on GNU make command +`make -pnB` + + + + +%prep +%autosetup -n make-var-0.4.0 + +%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-make-var -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 0.4.0-1 +- Package Spec generated @@ -0,0 +1 @@ +67bed2bfd13f351772dacd438933520e make_var-0.4.0.tar.gz |