Ravenports generated: 22 Sep 2024 04:10
[ravenports.git] / bucket_B5 / python-e3-core
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               python-e3-core
4 VERSION=                22.6.0
5 KEYWORDS=               python
6 VARIANTS=               v11 v12
7 SDESC[v11]=             Adacore testing and building tools (3.11)
8 SDESC[v12]=             Adacore testing and building tools (3.12)
9 HOMEPAGE=               https://github.com/AdaCore/e3-core
10 CONTACT=                John_Marino[draco@marino.st]
11
12 DOWNLOAD_GROUPS=        main
13 SITES[main]=            GITHUB/AdaCore:e3-core:v22.6.0
14 DISTFILE[1]=            generated:main
15 DF_INDEX=               1
16 SPKGS[v11]=             single
17 SPKGS[v12]=             single
18
19 OPTIONS_AVAILABLE=      PY311 PY312
20 OPTIONS_STANDARD=       none
21 VOPTS[v11]=             PY311=ON PY312=OFF
22 VOPTS[v12]=             PY311=OFF PY312=ON
23
24 BUILD_DEPENDS=          python-wheel:single:python_used
25                         python-pip:single:python_used
26                         python-setuptools:single:python_used
27 BR_DEPS[linux]=         python-distro:single:python_used
28                         python-psutil:single:python_used
29
30 PLIST_SUB=              DIVER=22.6
31                         OPSYS={{OPSYS:tl}}
32 SUB_FILES=              build_rlimit.sh
33 SUB_LIST=               PYCMD="{{PYTHON_CMD}}"
34
35 [PY311].BUILDRUN_DEPENDS_ON=            python-colorama:single:v11
36                                         python-PyYAML:single:v11
37                                         python-python-dateutil:single:v11
38                                         python-requests:single:v11
39                                         python-requests-cache:single:v11
40                                         python-requests-toolbelt:single:v11
41                                         python-tqdm:single:v11
42                                         python-stevedore:single:v11
43                                         python-packaging:single:v11
44 [PY311].USES_ON=                        python:v11
45
46 [PY312].BUILDRUN_DEPENDS_ON=            python-colorama:single:v12
47                                         python-PyYAML:single:v12
48                                         python-python-dateutil:single:v12
49                                         python-requests:single:v12
50                                         python-requests-cache:single:v12
51                                         python-requests-toolbelt:single:v12
52                                         python-tqdm:single:v12
53                                         python-stevedore:single:v12
54                                         python-packaging:single:v12
55 [PY312].USES_ON=                        python:v12
56
57 pre-build:
58         ${MV} ${WRKDIR}/build_rlimit.sh ${WRKSRC}/tools/rlimit
59         (cd ${WRKSRC}/tools/rlimit && ${SETENV} ${MAKE_ENV} ${SH} ./build_rlimit.sh)
60
61 do-build:
62         (cd ${WRKSRC} && pip install --no-build-isolation --verbose .)
63
64 post-extract:
65         # unbelievable.  prebuilt rlimit binaries for like 20 systems.
66         # get rid of it all so we can rebuild
67         ${RM} ${WRKSRC}/src/e3/os/data/rlimit-*
68
69 do-install:
70         whl=$$(find /root/.cache/pip/wheels -name "*.whl");\
71         pip install \
72                 --verbose \
73                 --no-index \
74                 --no-compile \
75                 --force-reinstall \
76                 --progress-bar off \
77                 --root=${STAGEDIR} \
78                 --root-user-action=ignore \
79                 --disable-pip-version-check \
80                 --no-deps $$whl
81         ${FIND} ${STAGEDIR}${PREFIX}/lib -name "rlimit-*" | xargs ${STRIP_CMD}
82
83 [FILE:2913:descriptions/desc.single]
84 The `e3` Project
85 ================
86
87 [Build Status]
88 [Checked with mypy]
89 [Documentation Status]
90 [codecov]
91 [![Code style: black]](https://github.com/psf/black)
92 [CII Best Practices]
93
94 This present project (`e3`) is a Python framework to ease the development
95 of portable automated build systems (compilation, dependencies management,
96 binary code packaging, and automated testing).
97
98 The `e3` framework is split across multiple Python packages named
99 `e3-<name>`
100 and sharing the same namespace: `e3`.
101
102 `e3-core` content
103 =================
104
105 `e3-core` package is organized in several packages and modules:
106
107 - *anod*: build system handling dependencies management and binary code
108   packaging. This includes a driver that can parse `.anod` specification
109   files.
110 - *archive*: support for reading and writing tar and zip archives
111 - *collection*: generic collections, e.g. an implementation of Direct
112 Acyclic
113   Graphs
114 - *cve*: small interface to NVD API to query CVE impacting a CPE
115 - *decorator*: Python decorators, e.g. a memoize decorator
116 - *diff*: functions to compute a diff or apply it
117 - *electrolyt*: support for parsing build plans
118 - *env*: global environment handling
119 - *error*: `e3` exceptions
120 - *event*: interface for notifying external services
121 - *fingerprint*: support for creating a synthetic view of set of
122   conditions and determining whether those conditions have changed
123   or not.
124 - *fs*: high-level file system operations, using globbing, walk,...
125 - *hash*: computation of sha1, md5
126 - *log*: logging helpers
127 - *main*: main program initialization, command line parsing,...
128 - *mainloop*: generic loop for running jobs
129 - *net*: network utilities
130   - *net.http*: helper for sending http requests and downloading files
131   - *net.smtp*: helper for sending emails through smtp
132 - *os*: platform independent interface to Operating System functions
133   - *os.fs*: low-level file system operations, no logging involved
134   - *os.platform*: tools to detect the platform
135   - *os.process*: interface to run process, to control the execution
136 time,...
137   - *os.timezone*: platform independent interface to get the machine
138 timezone
139 - *platform*: generic interface for providing platform information
140 - *platform_db*: knowledge base for computing platform information
141 - *spdx*: simple interface for generating SPDX files
142 - *store*: interface to download and store resources in a store
143 - *sys*: `e3` information, sanity check, ...
144 - *text*: text formatting and transformation
145 - *vcs*: high level interface to VCS repositories
146 - *yaml*: helpers for parsing yaml data
147
148 See [e3-core documentation] for
149 more details.
150
151 Install
152 =======
153
154 requires: Python >=3.9
155
156 e3-core releases are available on PyPI and can be installed by running:
157
158 ```bash
159 pip install e3-core
160 ```
161
162 To install from the source package, run:
163
164 ```bash
165 python setup.py install
166 ```
167
168 All `e3` dependencies will also be installed.
169
170 Contributing
171 ============
172
173 See [CONTRIBUTING.md].
174
175
176 [FILE:108:distinfo]
177 981e8fa6fbac2ef657febf3c25f60e6220807ce9876fcb812658b4fee3f9c8e3       558104 AdaCore-e3-core-22.6.0.tar.gz
178
179
180 [FILE:2139:manifests/plist.single]
181 %%PYTHON_SITELIBDIR%%/e3/
182  archive.py
183  config.py
184  cve.py
185  date.py
186  decorator.py
187  diff.py
188  dsse.py
189  env.py
190  error.py
191  fingerprint.py
192  fs.py
193  hash.py
194  json.py
195  log.py
196  main.py
197  mypy.py
198  platform.py
199  py.typed
200  pytest.py
201  spdx.py
202  sys.py
203  text.py
204  yaml.py
205 %%PYTHON_SITELIBDIR%%/e3/anod/
206  __init__.py
207  buildspace.py
208  checkout.py
209  context.py
210  deps.py
211  driver.py
212  error.py
213  helper.py
214  loader.py
215  package.py
216  qualifiers_manager.py
217  queries.py
218  spec.py
219  status.py
220 %%PYTHON_SITELIBDIR%%/e3/anod/action/__init__.py
221 %%PYTHON_SITELIBDIR%%/e3/anod/sandbox/
222  __init__.py
223  main.py
224  scripts.py
225 %%PYTHON_SITELIBDIR%%/e3/collection/
226  __init__.py
227  dag.py
228  toggleable_bool.py
229  trie.py
230 %%PYTHON_SITELIBDIR%%/e3/electrolyt/
231  __init__.py
232  entry_point.py
233  host.py
234  plan.py
235  run.py
236 %%PYTHON_SITELIBDIR%%/e3/encoding/
237  __init__.py
238  vex.py
239 %%PYTHON_SITELIBDIR%%/e3/event/__init__.py
240 %%PYTHON_SITELIBDIR%%/e3/event/handler/
241  __init__.py
242  file.py
243  logging.py
244  s3.py
245  smtp.py
246 %%PYTHON_SITELIBDIR%%/e3/job/
247  __init__.py
248  scheduler.py
249  walk.py
250 %%PYTHON_SITELIBDIR%%/e3/mock/__init__.py
251 %%PYTHON_SITELIBDIR%%/e3/mock/os/
252  __init__.py
253  process.py
254 %%PYTHON_SITELIBDIR%%/e3/net/
255  __init__.py
256  http.py
257  smtp.py
258  token.py
259 %%PYTHON_SITELIBDIR%%/e3/os/
260  __init__.py
261  fs.py
262  platform.py
263  process.py
264  timezone.py
265 %%PYTHON_SITELIBDIR%%/e3/os/data/rlimit-%%OPSYS%%
266 %%PYTHON_SITELIBDIR%%/e3/os/windows/
267  __init__.py
268  fs.py
269  native_api.py
270  object.py
271  process.py
272 %%PYTHON_SITELIBDIR%%/e3/platform_db/
273  __init__.py
274  knowledge_base.py
275 %%PYTHON_SITELIBDIR%%/e3/python/
276  __init__.py
277  pypi.py
278  pypiscript.py
279  wheel.py
280 %%PYTHON_SITELIBDIR%%/e3/slsa/
281  __init__.py
282  provenance.py
283 %%PYTHON_SITELIBDIR%%/e3/store/__init__.py
284 %%PYTHON_SITELIBDIR%%/e3/store/backends/
285  __init__.py
286  base.py
287  http_simple_store.py
288 %%PYTHON_SITELIBDIR%%/e3/store/cache/__init__.py
289 %%PYTHON_SITELIBDIR%%/e3/store/cache/backends/
290  __init__.py
291  base.py
292  filecache.py
293 %%PYTHON_SITELIBDIR%%/e3/vcs/
294  __init__.py
295  git.py
296  svn.py
297 %%PYTHON_SITELIBDIR%%/e3_core-%%DIVER%%.dist-info/
298  COPYING3
299  INSTALLER
300  METADATA
301  RECORD
302  REQUESTED
303  WHEEL
304  direct_url.json
305  entry_points.txt
306  top_level.txt
307 bin/
308  e3
309  e3-pypi-closure
310  e3-sandbox
311
312
313 [FILE:199:files/build_rlimit.sh.in]
314 #!/bin/sh
315 # This script is expected to be at tools/rlimit
316
317 platform=$(%%PYCMD%% -c "import platform; print (platform.system().lower())")
318
319 cc $CFLAGS -o ../../src/e3/os/data/rlimit-$platform rlimit.c
320