summaryrefslogtreecommitdiff
path: root/python-hhcm-forest.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-hhcm-forest.spec')
-rw-r--r--python-hhcm-forest.spec350
1 files changed, 350 insertions, 0 deletions
diff --git a/python-hhcm-forest.spec b/python-hhcm-forest.spec
new file mode 100644
index 0000000..5068de1
--- /dev/null
+++ b/python-hhcm-forest.spec
@@ -0,0 +1,350 @@
+%global _empty_manifest_terminate_build 0
+Name: python-hhcm-forest
+Version: 1.1.8
+Release: 1
+Summary: A minimalistic tool to automate source code cloning and building
+License: MIT License
+URL: https://none
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/1a/b9/9dd0dcf137d50dcbdadfe512e24f3b64783fc563ca598434d18d5eb87089/hhcm_forest-1.1.8.tar.gz
+BuildArch: noarch
+
+Requires: python3-argcomplete
+Requires: python3-parse
+Requires: python3-pyyaml
+Requires: python3-psutil
+Requires: python3-progressbar
+
+%description
+# forest [![Build Status](https://app.travis-ci.com/ADVRHumanoids/forest.svg?branch=master)](https://app.travis-ci.com/ADVRHumanoids/forest)
+The forest project aims at automatizing the clone and build process for open source software. Differently from other systems such as [Conda](https://docs.conda.io/en/latest/), or [Conan](https://conan.io/), it is a non-intrusive system which does not aim at environment management.
+
+## Quickstart
+Setup a new workspace and add new recipes. Optional arguments are surrounded by [square brackets].
+ - `[sudo] pip3 install hhcm-forest`
+ - `mkdir my_ws && cd my_ws`
+ - `forest init`
+ - `source setup.bash`
+ - `forest add-recipes git@github.com:advrhumanoids/multidof_recipes.git [--tag master]`
+
+ Install the `xbot2_examples` recipe with its dependencies.
+ - `forest grow xbot2_examples [-j8] [--clone-protocol https]`
+
+## Command line interface
+Forest's CLI is divided into three main *verbs*, i.e. `init`, `add-recipes`, and `grow`.
+
+### forest init
+Initialize the current folder as a forest workspace, i.e. it creates
+ - a `src` folder that will contain source code
+ - a `recipes` folder that will contain forest's recipe files (more on this later)
+ - a `build` folder to carry out compilation and store build artifacts
+ - an `install` folder
+ - a `setup.bash` file which makes installed items visible to the system
+
+ ### forest add-recipes
+ Adds recipes from a remote.
+
+ ```bash
+ usage: forest add-recipes [-h] [--tag TAG] [--verbose] url
+
+positional arguments:
+ url url of the remote (e.g. git@github.com:<username>/<reponame>.git
+ or https://github.com/<username>/<reponame>.git)
+
+optional arguments:
+ -h, --help show this help message and exit
+ --tag TAG, -t TAG
+ --verbose, -v print additional information
+
+```
+
+ ### forest grow
+ Builds a project according to the given recipe name, alongside its dependencies.
+
+ ```bash
+ usage: forest grow [-h] [--jobs JOBS] [--mode MODE [MODE ...]]
+ [--config CONFIG [CONFIG ...]]
+ [--default-build-type {None,RelWithDebInfo,Release,Debug}]
+ [--force-reconfigure] [--list-eval-locals]
+ [--clone-protocol {ssh,https}] [--clone-depth CLONE_DEPTH]
+ [--cmake-args CMAKE_ARGS [CMAKE_ARGS ...]] [--no-deps]
+ [--uninstall] [--clean] [--pwd PWD] [--verbose]
+ [RECIPE]
+
+positional arguments:
+ RECIPE name of recipe with fetch and build information
+
+optional arguments:
+ -h, --help show this help message and exit
+ --jobs JOBS, -j JOBS parallel jobs for building
+ --mode MODE [MODE ...], -m MODE [MODE ...]
+ specify modes that are used to set conditional
+ compilation flags (e.g., cmake args)
+ --config CONFIG [CONFIG ...], -c CONFIG [CONFIG ...]
+ specify configuration variables that can be used
+ inside recipes
+ --default-build-type {None,RelWithDebInfo,Release,Debug}, -t {None,RelWithDebInfo,Release,Debug}
+ build type for cmake, it is overridden by recipe
+ --force-reconfigure force calling cmake before building with args from the
+ recipe
+ --list-eval-locals print available attributes when using conditional
+ build args
+ --clone-protocol {ssh,https}
+ override clone protocol
+ --clone-depth CLONE_DEPTH
+ set maximum history depth to save bandwidth
+ --cmake-args CMAKE_ARGS [CMAKE_ARGS ...]
+ specify additional cmake args to be appended to each
+ recipe (leading -D must be omitted)
+ --no-deps, -n skip dependency fetch and build step
+ --uninstall uninstall recipe
+ --clean uninstall recipe and remove build
+ --pwd PWD, -p PWD user password to be used when sudo permission is
+ required (if empty, user is prompted for password);
+ note: to be used with care, as exposing your password
+ might be harmful!
+ --verbose, -v print additional information
+```
+
+
+
+
+%package -n python3-hhcm-forest
+Summary: A minimalistic tool to automate source code cloning and building
+Provides: python-hhcm-forest
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-hhcm-forest
+# forest [![Build Status](https://app.travis-ci.com/ADVRHumanoids/forest.svg?branch=master)](https://app.travis-ci.com/ADVRHumanoids/forest)
+The forest project aims at automatizing the clone and build process for open source software. Differently from other systems such as [Conda](https://docs.conda.io/en/latest/), or [Conan](https://conan.io/), it is a non-intrusive system which does not aim at environment management.
+
+## Quickstart
+Setup a new workspace and add new recipes. Optional arguments are surrounded by [square brackets].
+ - `[sudo] pip3 install hhcm-forest`
+ - `mkdir my_ws && cd my_ws`
+ - `forest init`
+ - `source setup.bash`
+ - `forest add-recipes git@github.com:advrhumanoids/multidof_recipes.git [--tag master]`
+
+ Install the `xbot2_examples` recipe with its dependencies.
+ - `forest grow xbot2_examples [-j8] [--clone-protocol https]`
+
+## Command line interface
+Forest's CLI is divided into three main *verbs*, i.e. `init`, `add-recipes`, and `grow`.
+
+### forest init
+Initialize the current folder as a forest workspace, i.e. it creates
+ - a `src` folder that will contain source code
+ - a `recipes` folder that will contain forest's recipe files (more on this later)
+ - a `build` folder to carry out compilation and store build artifacts
+ - an `install` folder
+ - a `setup.bash` file which makes installed items visible to the system
+
+ ### forest add-recipes
+ Adds recipes from a remote.
+
+ ```bash
+ usage: forest add-recipes [-h] [--tag TAG] [--verbose] url
+
+positional arguments:
+ url url of the remote (e.g. git@github.com:<username>/<reponame>.git
+ or https://github.com/<username>/<reponame>.git)
+
+optional arguments:
+ -h, --help show this help message and exit
+ --tag TAG, -t TAG
+ --verbose, -v print additional information
+
+```
+
+ ### forest grow
+ Builds a project according to the given recipe name, alongside its dependencies.
+
+ ```bash
+ usage: forest grow [-h] [--jobs JOBS] [--mode MODE [MODE ...]]
+ [--config CONFIG [CONFIG ...]]
+ [--default-build-type {None,RelWithDebInfo,Release,Debug}]
+ [--force-reconfigure] [--list-eval-locals]
+ [--clone-protocol {ssh,https}] [--clone-depth CLONE_DEPTH]
+ [--cmake-args CMAKE_ARGS [CMAKE_ARGS ...]] [--no-deps]
+ [--uninstall] [--clean] [--pwd PWD] [--verbose]
+ [RECIPE]
+
+positional arguments:
+ RECIPE name of recipe with fetch and build information
+
+optional arguments:
+ -h, --help show this help message and exit
+ --jobs JOBS, -j JOBS parallel jobs for building
+ --mode MODE [MODE ...], -m MODE [MODE ...]
+ specify modes that are used to set conditional
+ compilation flags (e.g., cmake args)
+ --config CONFIG [CONFIG ...], -c CONFIG [CONFIG ...]
+ specify configuration variables that can be used
+ inside recipes
+ --default-build-type {None,RelWithDebInfo,Release,Debug}, -t {None,RelWithDebInfo,Release,Debug}
+ build type for cmake, it is overridden by recipe
+ --force-reconfigure force calling cmake before building with args from the
+ recipe
+ --list-eval-locals print available attributes when using conditional
+ build args
+ --clone-protocol {ssh,https}
+ override clone protocol
+ --clone-depth CLONE_DEPTH
+ set maximum history depth to save bandwidth
+ --cmake-args CMAKE_ARGS [CMAKE_ARGS ...]
+ specify additional cmake args to be appended to each
+ recipe (leading -D must be omitted)
+ --no-deps, -n skip dependency fetch and build step
+ --uninstall uninstall recipe
+ --clean uninstall recipe and remove build
+ --pwd PWD, -p PWD user password to be used when sudo permission is
+ required (if empty, user is prompted for password);
+ note: to be used with care, as exposing your password
+ might be harmful!
+ --verbose, -v print additional information
+```
+
+
+
+
+%package help
+Summary: Development documents and examples for hhcm-forest
+Provides: python3-hhcm-forest-doc
+%description help
+# forest [![Build Status](https://app.travis-ci.com/ADVRHumanoids/forest.svg?branch=master)](https://app.travis-ci.com/ADVRHumanoids/forest)
+The forest project aims at automatizing the clone and build process for open source software. Differently from other systems such as [Conda](https://docs.conda.io/en/latest/), or [Conan](https://conan.io/), it is a non-intrusive system which does not aim at environment management.
+
+## Quickstart
+Setup a new workspace and add new recipes. Optional arguments are surrounded by [square brackets].
+ - `[sudo] pip3 install hhcm-forest`
+ - `mkdir my_ws && cd my_ws`
+ - `forest init`
+ - `source setup.bash`
+ - `forest add-recipes git@github.com:advrhumanoids/multidof_recipes.git [--tag master]`
+
+ Install the `xbot2_examples` recipe with its dependencies.
+ - `forest grow xbot2_examples [-j8] [--clone-protocol https]`
+
+## Command line interface
+Forest's CLI is divided into three main *verbs*, i.e. `init`, `add-recipes`, and `grow`.
+
+### forest init
+Initialize the current folder as a forest workspace, i.e. it creates
+ - a `src` folder that will contain source code
+ - a `recipes` folder that will contain forest's recipe files (more on this later)
+ - a `build` folder to carry out compilation and store build artifacts
+ - an `install` folder
+ - a `setup.bash` file which makes installed items visible to the system
+
+ ### forest add-recipes
+ Adds recipes from a remote.
+
+ ```bash
+ usage: forest add-recipes [-h] [--tag TAG] [--verbose] url
+
+positional arguments:
+ url url of the remote (e.g. git@github.com:<username>/<reponame>.git
+ or https://github.com/<username>/<reponame>.git)
+
+optional arguments:
+ -h, --help show this help message and exit
+ --tag TAG, -t TAG
+ --verbose, -v print additional information
+
+```
+
+ ### forest grow
+ Builds a project according to the given recipe name, alongside its dependencies.
+
+ ```bash
+ usage: forest grow [-h] [--jobs JOBS] [--mode MODE [MODE ...]]
+ [--config CONFIG [CONFIG ...]]
+ [--default-build-type {None,RelWithDebInfo,Release,Debug}]
+ [--force-reconfigure] [--list-eval-locals]
+ [--clone-protocol {ssh,https}] [--clone-depth CLONE_DEPTH]
+ [--cmake-args CMAKE_ARGS [CMAKE_ARGS ...]] [--no-deps]
+ [--uninstall] [--clean] [--pwd PWD] [--verbose]
+ [RECIPE]
+
+positional arguments:
+ RECIPE name of recipe with fetch and build information
+
+optional arguments:
+ -h, --help show this help message and exit
+ --jobs JOBS, -j JOBS parallel jobs for building
+ --mode MODE [MODE ...], -m MODE [MODE ...]
+ specify modes that are used to set conditional
+ compilation flags (e.g., cmake args)
+ --config CONFIG [CONFIG ...], -c CONFIG [CONFIG ...]
+ specify configuration variables that can be used
+ inside recipes
+ --default-build-type {None,RelWithDebInfo,Release,Debug}, -t {None,RelWithDebInfo,Release,Debug}
+ build type for cmake, it is overridden by recipe
+ --force-reconfigure force calling cmake before building with args from the
+ recipe
+ --list-eval-locals print available attributes when using conditional
+ build args
+ --clone-protocol {ssh,https}
+ override clone protocol
+ --clone-depth CLONE_DEPTH
+ set maximum history depth to save bandwidth
+ --cmake-args CMAKE_ARGS [CMAKE_ARGS ...]
+ specify additional cmake args to be appended to each
+ recipe (leading -D must be omitted)
+ --no-deps, -n skip dependency fetch and build step
+ --uninstall uninstall recipe
+ --clean uninstall recipe and remove build
+ --pwd PWD, -p PWD user password to be used when sudo permission is
+ required (if empty, user is prompted for password);
+ note: to be used with care, as exposing your password
+ might be harmful!
+ --verbose, -v print additional information
+```
+
+
+
+
+%prep
+%autosetup -n hhcm-forest-1.1.8
+
+%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-hhcm-forest -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 1.1.8-1
+- Package Spec generated