Skip to content

Commit 1d2c09d

Browse files
committed
Support building C extensions in benchmarks
1 parent 2727751 commit 1d2c09d

File tree

4 files changed

+7
-2
lines changed

4 files changed

+7
-2
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
# Created by setup.py sdist
1111
build/
1212
dist/
13-
pyperformance.egg-info/
13+
*.egg-info/
1414

1515
# Created by the pyperformance script
1616
venv/

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,6 @@ include pyperformance/data-files/benchmarks/MANIFEST
1515
include pyperformance/data-files/benchmarks/bm_*/*.toml
1616
include pyperformance/data-files/benchmarks/bm_*/*.py
1717
include pyperformance/data-files/benchmarks/bm_*/requirements.txt
18+
include pyperformance/data-files/benchmarks/bm_*/*.c
1819
recursive-include pyperformance/data-files/benchmarks/bm_*/data *
1920
recursive-exclude pyperformance/tests *

pyperformance/_pip.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ def install_requirements(reqs, *extra,
150150
if upgrade:
151151
args.append('-U') # --upgrade
152152
for reqs in [reqs, *extra]:
153-
if os.path.exists(reqs):
153+
if os.path.isfile(reqs):
154154
args.append('-r') # --requirement
155155
args.append(reqs)
156156
return run_pip('install', *args, **kwargs)

pyperformance/venv.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,10 @@ def ensure_reqs(self, requirements=None):
241241
bench = requirements
242242
requirements = Requirements.from_benchmarks([bench])
243243

244+
benchmark_dir = os.path.dirname(bench.metafile)
245+
if os.path.isfile(os.path.join(benchmark_dir, "setup.py")):
246+
requirements._add(benchmark_dir)
247+
244248
# Every benchmark must depend on pyperf.
245249
if bench is not None and not requirements.get('pyperf'):
246250
basereqs = Requirements.from_file(REQUIREMENTS_FILE)

0 commit comments

Comments
 (0)