blob: a3ec059102f8660af5ef738fbcedc8f794e3fa33 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
PORTNAME= onnxruntime
DISTVERSIONPREFIX= v
DISTVERSION= 1.27.0
PORTREVISION= 3
CATEGORIES= misc # machine-learning
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
DIST_SUBDIR= ${PORTNAME}
MAINTAINER= yuri@FreeBSD.org
COMMENT= Cross-platform, high performance ML inferencing & training accelerator
WWW= https://onnxruntime.ai/ \
https://github.com/microsoft/onnxruntime
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= cmake:devel/cmake-core \
${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}numpy>=1.21.6:math/py-numpy@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>=1.21.6:math/py-numpy@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}protobuf>=4.25.8:devel/py-protobuf@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}flatbuffers>=0:devel/py-flatbuffers@${PY_FLAVOR}
USES= compiler:c++17-lang python
USE_PYTHON= pep517 autoplist concurrent
# Build using the official build.py script
PEP517_BUILD_DEPEND=
MAKE_ENV+= ORT_DIST_DIR=${WRKSRC}/dist
do-build:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
${PYTHON_CMD} tools/ci_build/build.py \
--build_dir ${WRKDIR}/build \
--config Release \
--parallel \
--skip_tests \
--skip_submodule_sync \
--allow_running_as_root \
--enable_pybind \
--build_wheel \
--cmake_extra_defines CMAKE_INSTALL_PREFIX=${PREFIX} \
--cmake_extra_defines onnxruntime_BUILD_UNIT_TESTS=OFF \
--cmake_extra_defines ONNXRUNTIME_NUMPY_INCLUDE_DIR=${PYTHONPREFIX_SITELIBDIR}/numpy/_core/include
USE_GITHUB= yes
GH_ACCOUNT= microsoft
GH_TUPLE= emscripten-core:emsdk:0742117:emsdk/cmake/external/emsdk \
google:libprotobuf-mutator:7a2ed51a6b682a83e345ff49fc4cfd7ca47550db:libprotobuf_mutator/cmake/external/libprotobuf-mutator \
onnx:onnx:b8baa8446686496da4cc8fda09f2b6fe65c2a02c:onnx/cmake/external/onnx
CXXFLAGS+= -Wno-array-bounds # workaround for https://github.com/microsoft/onnxruntime/issues/23410
CXXFLAGS+= -I${WRKSRC}/include/onnxruntime/core/common/logging # otherwise logging.h isn't found
CXXFLAGS_powerpc64le= -Wno-error=deprecated-declarations
DEPS_FILE= ${WRKSRC}/cmake/deps.txt
CONFLICTS_BUILD= abseil benchmark nsync googletest dlpack flatbuffers gsl mimalloc \
nlohmann-json onnx protobuf psimd pthreadpool pybind11 re2
dev-update-deps-in-makefiles: extract # this should be run when the port is updated
@${FILESDIR}/convert-deps.sh ${DEPS_FILE}
post-patch:
@${FIND} ${WRKSRC}/cmake/external -name "*.cmake" -exec ${REINPLACE_CMD} -e 's|--binary ||g' {} +
pre-configure:
@${REINPLACE_CMD} -E 's|;(https://.*)/([^/]+\.zip);|;file://${DISTDIR}/${DIST_SUBDIR}/\2;|' ${DEPS_FILE}
.include <Makefile.MASTER_SITES>
.include <Makefile.DISTFILES>
.include <bsd.port.mk>
|