Skip to content

Commit d3ad430

Browse files
committed
build: allow usage of ODM via CLI 'uv run odm ...'
1 parent ce97915 commit d3ad430

File tree

4 files changed

+22
-9
lines changed

4 files changed

+22
-9
lines changed

opendm/context.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
# add opencv,opensfm to python path
1313
python_packages_paths = [os.path.join(superbuild_path, p) for p in [
14-
'install/lib/python3.12/dist-packages',
1514
'install/lib/python3.12/dist-packages',
1615
'install/lib/python3/dist-packages',
1716
'install/bin/opensfm',

pyproject.toml

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,21 @@ dependencies = [
4242
"rawpy==0.25.0",
4343
]
4444

45+
[dependency-groups]
46+
resize = [
47+
"piexif>=1.1.3",
48+
]
49+
50+
[project.scripts]
51+
odm = "run:run"
52+
53+
[build-system]
54+
requires = ["hatchling"]
55+
build-backend = "hatchling.build"
56+
57+
[tool.hatch.build.targets.wheel]
58+
packages = ["opendm"]
59+
4560
[tool.uv]
4661
environments = [
4762
"sys_platform == 'darwin'",
@@ -54,8 +69,3 @@ environments = [
5469
"rasterio" = { url = "https://github.com/OpenDroneMap/windows-deps/releases/download/2.6.0/rasterio-1.4.3-cp312-cp312-win_amd64.whl", marker = "sys_platform == 'win32'" }
5570
# NOTE we are using GDAL 3.11.1 for Windows, but 3.8.4 for Linux/Mac due to underlying system libs
5671
"gdal" = { url = "https://github.com/OpenDroneMap/windows-deps/releases/download/2.6.0/gdal-3.11.1-cp312-cp312-win_amd64.whl", marker = "sys_platform == 'win32'" }
57-
58-
[dependency-groups]
59-
resize = [
60-
"piexif>=1.1.3",
61-
]

run.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ def odm_version():
2424
except:
2525
return "?"
2626

27-
if __name__ == '__main__':
27+
def run():
2828
args = config.config()
2929

3030
log.ODM_INFO('Initializing ODM %s - %s' % (odm_version(), system.now()))
@@ -112,4 +112,8 @@ def odm_version():
112112
log.ODM_INFO('MMMMMMMMMMMMMMMNmmNMMMMMMMNmmmmNMMMMMMMNNMMMMMMMMMNNMMMMMMMMMMMM')
113113
log.ODM_INFO('ODM app finished - %s' % system.now())
114114
else:
115-
exit(retcode)
115+
exit(retcode)
116+
117+
118+
if __name__ == '__main__':
119+
run()

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)