mirror of
https://github.com/netbirdio/FreeBSD-ports.git
synced 2026-05-22 18:42:42 -07:00
science/py-tensorflow: Update 1.15.5 -> 2.9.1
Big thank you to Anthony Donnelly for updating this difficult port. PR: 266303
This commit is contained in:
committed by
Brad Davis
parent
7c66c88480
commit
c3f4399342
+119
-61
@@ -1,7 +1,6 @@
|
||||
PORTNAME= tensorflow
|
||||
DISTVERSIONPREFIX= v
|
||||
DISTVERSION= 1.15.5
|
||||
PORTREVISION= 7
|
||||
DISTVERSION= 2.9.1
|
||||
CATEGORIES= science python
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
DIST_SUBDIR= ${PORTNAME}
|
||||
@@ -14,18 +13,20 @@ WWW= https://www.tensorflow.org
|
||||
LICENSE= APACHE20
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
BROKEN= does not build: candidate function template not viable: requires 3 arguments, but 2 were provided
|
||||
|
||||
ONLY_FOR_ARCHS= amd64 powerpc64 powerpc64le
|
||||
ONLY_FOR_ARCHS= amd64
|
||||
|
||||
BUILD_DEPENDS= ${RUN_DEPENDS} \
|
||||
${PYTHON_PKGNAMEPREFIX}grpcio-tools>=1.22.0:devel/py-grpcio-tools@${PY_FLAVOR} \
|
||||
bash:shells/bash \
|
||||
cython:lang/cython \
|
||||
swig:devel/swig \
|
||||
bazel:devel/bazel029 \
|
||||
git:devel/git
|
||||
LIB_DEPENDS= libsnappy.so:archivers/snappy \
|
||||
bazel:devel/bazel \
|
||||
git:devel/git \
|
||||
clang-devel:devel/llvm-devel
|
||||
LIB_DEPENDS= libnsync.so:devel/nsync \
|
||||
libgpr.so:devel/grpc \
|
||||
libpng.so:graphics/png \
|
||||
libsnappy.so:archivers/snappy \
|
||||
liblmdb.so:databases/lmdb \
|
||||
libsqlite3.so:databases/sqlite3 \
|
||||
libicuio.so:devel/icu \
|
||||
@@ -36,27 +37,31 @@ LIB_DEPENDS= libsnappy.so:archivers/snappy \
|
||||
libprotobuf-c.so:devel/protobuf-c \
|
||||
libre2.so:devel/re2 \
|
||||
libgif.so:graphics/giflib \
|
||||
libpng.so:graphics/png \
|
||||
libgpr.so:devel/grpc \
|
||||
libcurl.so:ftp/curl \
|
||||
libgoogle_cloud_cpp_common.so:devel/google-cloud-cpp117 \
|
||||
libflatbuffers.so:devel/flatbuffers \
|
||||
libdouble-conversion.so:devel/double-conversion
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}absl>=0.7.0:devel/py-absl@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}astor>=0.5:devel/py-astor@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}gast>=0.2.2:devel/py-gast@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}numpy>=1.11.2:math/py-numpy@${PY_FLAVOR} \
|
||||
RUN_DEPENDS= pybind11>=2.6.2:devel/pybind11 \
|
||||
${PYTHON_PKGNAMEPREFIX}absl-py>=1.0.0:devel/py-absl-py \
|
||||
${PYTHON_PKGNAMEPREFIX}astunparse>=1.6.3:devel/py-astunparse@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.3.0:devel/py-typing-extensions@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}h5py>=2.9.0:science/py-h5py@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}flatbuffers>=2.0:devel/py-flatbuffers@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}gast>=0.5.3:devel/py-gast@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}numpy>=1.20.0:math/py-numpy@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}google-pasta>=0.1.7:devel/py-google-pasta@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}protobuf>=3.7.1:devel/py-protobuf@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}six>=1.10.0:devel/py-six@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}termcolor>=1.1.0:devel/py-termcolor@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}grpcio>=1.22.0:devel/py-grpcio@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}keras>=2.2.4:math/py-keras@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}wrapt>=1.11.2:devel/py-wrapt@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}wheel>=0.30.0:devel/py-wheel@${PY_FLAVOR}
|
||||
${PYTHON_PKGNAMEPREFIX}keras-preprocessing>=1.1.1:math/py-keras-preprocessing@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}wrapt>=1.14.1:devel/py-wrapt@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}wheel>=0.30.0:devel/py-wheel@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}opt-einsum>=3.3.0:math/py-opt-einsum@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}packaging>=21.3:devel/py-packaging@${PY_FLAVOR} \
|
||||
pybind11>=2.6.2:devel/pybind11
|
||||
|
||||
USES= cpe python:3.7+ shebangfix jpeg ssl compiler:c++17-lang
|
||||
CPE_VENDOR= google
|
||||
USES= python:3.7+ shebangfix jpeg ssl
|
||||
USE_CXXSTD= c++17
|
||||
SHEBANG_GLOB= *.py
|
||||
USE_GITHUB= yes
|
||||
USE_PYTHON= distutils
|
||||
@@ -65,11 +70,26 @@ BAZEL_BOOT= --output_user_root=${WRKDIR}/bazel_out
|
||||
|
||||
PLIST_SUB= TF_PORT_VERSION=${PORTVERSION}
|
||||
|
||||
OPTIONS_DEFINE= CPU_OPTS
|
||||
OPTIONS_DEFINE= CPU_OPTS XLA
|
||||
OPTIONS_RADIO= PARALLEL_JOBS
|
||||
OPTIONS_RADIO_PARALLEL_JOBS= JOBS_1 JOBS_HALF JOBS_ALL
|
||||
PARALLEL_JOBS_DESC= How many jobs to run during build?
|
||||
OPTIONS_DEFAULT= JOBS_1
|
||||
|
||||
CPU_OPTS_DESC= Enable optimisations using features available on your CPU
|
||||
CPU_OPTS_VARS= CPU_TARGET=native BAZEL_COPT="-c opt --copt=-march=native --copt=-mfpmath=sse"
|
||||
CPU_OPTS_VARS_OFF= CPU_TARGET=x86-64
|
||||
JOBS_1_DESC= Run one job
|
||||
JOBS_1_VARS= TF_JOBS_NUMBER=1
|
||||
JOBS_HALF_DESC= Run half jobs
|
||||
JOBS_HALF_VARS= TF_JOBS_NUMBER="`expr \( ${MAKE_JOBS_NUMBER} + 1 \) / 2`"
|
||||
JOBS_ALL_DESC= Run all jobs
|
||||
JOBS_ALL_VARS= TF_JOBS_NUMBER=${MAKE_JOBS_NUMBER}
|
||||
|
||||
CPU_OPTS_DESC= Enable optimisations using features available on your CPU
|
||||
CPU_OPTS_VARS= CPU_TARGET=native BAZEL_COPT="-c opt --copt=-march=native --copt=-mfpmath=sse"
|
||||
CPU_OPTS_VARS_OFF= CPU_TARGET=x86-64
|
||||
|
||||
XLA_DESC= Accelerated Linear Algebra
|
||||
XLA_VARS= XLA_OPT="1"
|
||||
XLA_VARS_OFF= XLA_OPT="0"
|
||||
|
||||
.include "Makefile.MASTER_SITES"
|
||||
|
||||
@@ -78,46 +98,62 @@ post-patch:
|
||||
# This prevents bazel downloading the files without modifying
|
||||
# the bzl files.
|
||||
@${MKDIR} ${WRKDIR}/bazel-cache
|
||||
@${MKDIR} ${WRKDIR}/bazel-distdir
|
||||
@${CP} ${FILESDIR}/extra-patch-absl_base_internal_unscaledcycleclock.cc ${WRKSRC}/third_party/
|
||||
@${MKDIR} ${WRKDIR}/bazel-dist
|
||||
@${MKDIR} ${WRKDIR}/.bin
|
||||
|
||||
.for file in ${DISTFILES:C/\:(.*)//}
|
||||
@${ECHO} "Moving ${file} to ${WRKDIR}/bazel-cache"
|
||||
@${CP} ${DISTDIR}/${DIST_SUBDIR}/${file} ${WRKDIR}/bazel-distdir
|
||||
@${ECHO} "Moving ${file} to ${WRKDIR}/bazel-dist"
|
||||
@${CP} ${DISTDIR}/${DIST_SUBDIR}/${file} ${WRKDIR}/bazel-dist
|
||||
.endfor
|
||||
|
||||
@${CP} ${PATCHDIR}/bazelrc ${WRKDIR}/bazelrc
|
||||
@${CP} -R ${PATCHDIR}/bazel/* \
|
||||
${WRKSRC}/third_party/
|
||||
|
||||
@${LN} -s ${PYTHON_CMD} ${WRKDIR}/.bin/python3
|
||||
|
||||
@cd ${WRKSRC} && \
|
||||
${REINPLACE_CMD} "s#--batch#${BAZEL_BOOT}\', \'--batch#" \
|
||||
configure.py
|
||||
|
||||
@${CP} ${PATCHDIR}/bazelrc ${WRKDIR}/bazelrc
|
||||
${REINPLACE_CMD} "s#%%PYTHON%%#${PYTHON_VERSION}#" ${WRKSRC}/configure \
|
||||
${WRKSRC}/third_party/freebsd_python_fix.patch \
|
||||
${WRKSRC}/tensorflow/compiler/mlir/quantization/tensorflow/BUILD
|
||||
|
||||
@${REINPLACE_CMD} "s#%%BAZEL_DIR%%#${WRKDIR}#" ${WRKDIR}/bazelrc
|
||||
@${REINPLACE_CMD} "s#%%BAZEL_DIST%%#${WRKDIR}#" ${WRKDIR}/bazelrc
|
||||
@${REINPLACE_CMD} "s#%%MLIR_LLVM_PATCH%%#/${WRKSRC}/bazel/bazel_llvm-raw_utils_bazel_configure.bzl#" \
|
||||
${WRKSRC}/tensorflow/compiler/mlir/hlo/WORKSPACE
|
||||
|
||||
# use system pybind11, but use sed to fix includes, too many to maintain with patches
|
||||
@${FIND} ${WRKSRC} -type f -name '*.cc' | ${XARGS} ${REINPLACE_CMD} "s#include\/pybind11#pybind11#"
|
||||
|
||||
|
||||
# copy the toolchain over
|
||||
@${CP} -R ${PATCHDIR}/freebsd \
|
||||
${WRKSRC}/
|
||||
|
||||
@${REINPLACE_CMD} "s#%%PATH%%#${PATH}#" ${WRKDIR}/bazelrc
|
||||
|
||||
@${REINPLACE_CMD} "s#%%PYTHON%%#${PYTHON_CMD}#" ${WRKSRC}/.bazelrc
|
||||
|
||||
@${REINPLACE_CMD} "s#%%LOCALBASE%%#${LOCALBASE}#" ${WRKDIR}/bazelrc \
|
||||
${WRKSRC}/tensorflow/tensorflow.bzl ${WRKSRC}/.bazelrc \
|
||||
${WRKSRC}/third_party/absl/system.absl.strings.BUILD \
|
||||
${WRKSRC}/freebsd/cc_toolchain_config.bzl \
|
||||
${WRKSRC}/.bazelrc \
|
||||
${WRKSRC}/tensorflow/tools/proto_text/BUILD \
|
||||
${WRKSRC}/tensorflow/BUILD \
|
||||
${WRKSRC}/tensorflow/core/BUILD \
|
||||
${WRKSRC}/third_party/systemlibs/protobuf.bzl \
|
||||
${WRKSRC}/tensorflow/core/profiler/rpc/client/BUILD \
|
||||
${WRKSRC}/WORKSPACE \
|
||||
${WRKSRC}/tensorflow/core/profiler/internal/BUILD \
|
||||
${WRKSRC}/tensorflow/contrib/ffmpeg/default/BUILD \
|
||||
${WRKSRC}/third_party/flatbuffers/BUILD.system
|
||||
${WRKSRC}/third_party/systemlibs/protobuf.BUILD
|
||||
|
||||
|
||||
do-configure:
|
||||
@cd ${WRKSRC} && ${SETENV} \
|
||||
BAZEL_CXXOPTS="-std=c++1z" \
|
||||
PYTHON_BIN_PATH=${PYTHON_CMD} \
|
||||
PYTHON_LIB_PATH="${PYTHON_SITELIBDIR}" \
|
||||
TF_NEED_JEMALLOC=0 \
|
||||
TF_NEED_KAFKA=0 \
|
||||
KERAS_HOME="${WRKDIR}/.keras" \
|
||||
TF_NEED_OPENCL_SYCL=0 \
|
||||
TF_NEED_AWS=0 \
|
||||
TF_NEED_GCP=0 \
|
||||
TF_NEED_HDFS=0 \
|
||||
TF_NEED_S3=0 \
|
||||
TF_ENABLE_XLA=0 \
|
||||
TF_NEED_GDR=0 \
|
||||
TF_NEED_VERBS=0 \
|
||||
TF_ENABLE_XLA=${XLA_OPT} \
|
||||
TF_NEED_OPENCL=0 \
|
||||
TF_NEED_MPI=0 \
|
||||
TF_NEED_TENSORRT=0 \
|
||||
@@ -128,39 +164,61 @@ do-configure:
|
||||
TF_SET_ANDROID_WORKSPACE=0 \
|
||||
TF_DOWNLOAD_CLANG=0 \
|
||||
TF_NEED_NCCL=0 \
|
||||
TF_NEED_OPENCL=0 \
|
||||
TF_IGNORE_MAX_BAZEL_VERSION=1 \
|
||||
CC_OPT_FLAGS="-march=${CPU_TARGET} -I${LOCALBASE}/include" \
|
||||
PREFIX="${LOCALBASE}" \
|
||||
TF_SYSTEM_LIBS="absl_py astor_archive boringssl com_github_googleapis_googleapis com_github_googlecloudplatform_google_cloud_cpp com_google_protobuf com_googlesource_code_re2 \
|
||||
curl cython double_conversion enum34_archive flatbuffers functools32_archive gast_archive gif_archive grpc hwloc icu jpeg jsoncpp_git keras_applications_archive \
|
||||
lmdb nasm nsync opt_einsum_archive org_sqlite pasta pcre png_archive six_archive snappy swig termcolor_archive wrapt zlib_archive" \
|
||||
TF_SYSTEM_LIBS="absl_py astor_archive astunparse_archive boringssl com_github_googlecloudplatform_google_cloud_cpp com_github_grpc_grpc \
|
||||
com_google_absl com_google_protobuf curl cython dill_archive double_conversion functools32_archive gast_archive \
|
||||
gif hwloc icu jsoncpp_git libjpeg_turbo lmdb nasm nsync opt_einsum_archive org_sqlite pasta png pybind11 six_archive snappy \
|
||||
tblib_archive termcolor_archive typing_extensions_archive wrapt zlib" \
|
||||
./configure
|
||||
|
||||
do-build:
|
||||
@cd ${WRKSRC} && \
|
||||
bazel --bazelrc="${WRKDIR}/bazelrc" ${BAZEL_BOOT} build --jobs 16 ${BAZEL_COPT} --host_copt="-I${LOCALBASE}/include" \
|
||||
--host_linkopt="-L${LOCALBASE}/lib" --linkopt="-L${LOCALBASE}/lib" --config=c++17 --copt="-I${LOCALBASE}/include" \
|
||||
--cxxopt="--std=c++1z" --verbose_failures -s \
|
||||
--distdir=${WORKDIR}/bazel-dist \
|
||||
bazel --bazelrc="${WRKDIR}/bazelrc" ${BAZEL_BOOT} build --jobs ${TF_JOBS_NUMBER} ${BAZEL_COPT} --host_copt="-I${LOCALBASE}/include" \
|
||||
--host_linkopt="-L${LOCALBASE}/lib -lexecinfo" --linkopt="-L${LOCALBASE}/lib -lexecinfo" --copt="-I${LOCALBASE}/include" \
|
||||
--verbose_failures -s \
|
||||
--distdir=${WRKDIR}/bazel-dist \
|
||||
//tensorflow:libtensorflow_framework.so \
|
||||
//tensorflow:libtensorflow.so \
|
||||
//tensorflow:libtensorflow_cc.so \
|
||||
//tensorflow:install_headers \
|
||||
//tensorflow/tools/pip_package:build_pip_package
|
||||
|
||||
|
||||
@cd ${WRKSRC} && ${SETENV} TMPDIR=${WRKDIR} \
|
||||
bazel-bin/tensorflow/tools/pip_package/build_pip_package \
|
||||
${WRKDIR}/whl
|
||||
|
||||
do-install:
|
||||
@${MKDIR} ${STAGEDIR}/${PYTHON_SITELIBDIR}
|
||||
@${MKDIR} ${WRKDIR}/tmp
|
||||
@${UNZIP_NATIVE_CMD} -d ${WRKDIR}/tmp ${WRKDIR}/whl/${PORTNAME}-${PORTVERSION}-*.whl
|
||||
@${FIND} ${WRKDIR}/tmp -name "*.so*" | ${XARGS} ${STRIP_CMD}
|
||||
cd ${WRKDIR}/tmp && ${COPYTREE_SHARE} ${PORTNAME}-${PORTVERSION}.dist-info \
|
||||
${STAGEDIR}${PYTHON_SITELIBDIR}
|
||||
cd ${WRKDIR}/tmp/${PORTNAME}-${PORTVERSION}.data/purelib && \
|
||||
${COPYTREE_SHARE} . ${STAGEDIR}${PYTHON_SITELIBDIR}
|
||||
@${MKDIR} ${STAGEDIR}/${LOCALBASE}/include/tensorflow
|
||||
|
||||
@${UNZIP_NATIVE_CMD} -d ${STAGEDIR}/${PYTHON_SITELIBDIR} ${WRKDIR}/whl/${PORTNAME}-${PORTVERSION}-*.whl
|
||||
|
||||
# put headers in the right folder
|
||||
${CP} -R ${WRKSRC}/bazel-bin/tensorflow/include/tensorflow \
|
||||
${STAGEDIR}/${LOCALBASE}/include/
|
||||
|
||||
# pc files and libraries
|
||||
${INSTALL_DATA} ${PATCHDIR}/tensorflow.pc ${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/
|
||||
${INSTALL_DATA} ${PATCHDIR}/tensorflow_cc.pc ${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/
|
||||
|
||||
@${REINPLACE_CMD} "s#%%LOCALBASE%%#${LOCALBASE}#" \
|
||||
${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/tensorflow.pc \
|
||||
${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/tensorflow_cc.pc
|
||||
|
||||
@${REINPLACE_CMD} "s#%%VERSION%%#${PORTVERSION}#" \
|
||||
${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/tensorflow.pc
|
||||
|
||||
#cleanup
|
||||
${RM} ${STAGEDIR}/${LOCALBASE}/libdata/pkgconfig/*.bak
|
||||
|
||||
# install the libraries and strip
|
||||
@${FIND} ${WRKSRC}/bazel-bin/tensorflow/ -depth 1 -name "*.so*" | ${XARGS} -I{} \
|
||||
${INSTALL_LIB} {} ${STAGEDIR}/${LOCALBASE}/lib/
|
||||
|
||||
@${FIND} ${STAGEDIR}/${LOCALBASE}/lib -name "*.so*" | ${XARGS} ${STRIP_CMD}
|
||||
|
||||
post-install: # autoplist: thousands of files, all under ${PYTHON_SITELIBDIR}
|
||||
@cd ${STAGEDIR}${PREFIX} && \
|
||||
|
||||
@@ -1,39 +1,75 @@
|
||||
DISTFILES+= fft2d.tgz:oourafft2d \
|
||||
49177915a14a.tar.gz:eigen \
|
||||
43ef2148c0936ebf7cb4be6b19927a9d9d145b8f.tar.gz:abseil \
|
||||
bazel-skylib.0.8.0.tar.gz:skylib \
|
||||
92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz:toolchain \
|
||||
DISTFILES+= platforms-0.0.2.tar.gz:platforms \
|
||||
apple_support.0.12.1.tar.gz:apple \
|
||||
bazel-skylib-1.0.3.tar.gz:skylib \
|
||||
dfc67056200b674accd08d8f9a21e328098c07e2.tar.gz:toolchain \
|
||||
v0.1.1.zip:buildrules \
|
||||
rules_apple.0.33.0.tar.gz:applerules \
|
||||
081771d4a0e9d7d3aa0eed2ef389fa4700dfb23e.tar.gz:rulescc \
|
||||
308b05b2419edb5c8ee0471b67a40403df940149.tar.gz:closure \
|
||||
0d5f3f2768c6ca2faca0079a997a97ce22997a0c.zip:rulescc \
|
||||
rules_docker-v0.10.0.tar.gz:docker \
|
||||
rules_swift.0.11.1.tar.gz:swift \
|
||||
816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz:farmhash \
|
||||
12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip:gemmlowp \
|
||||
7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip:java \
|
||||
rules_pkg-0.2.5.tar.gz:pkg \
|
||||
11bf7c25e666dd7ddacbcd4d4c4a9de7a25175f8.tar.gz:protolib \
|
||||
rules_python-0.0.1.tar.gz:pythonrules \
|
||||
rules_swift.0.25.0.tar.gz:swift \
|
||||
790d7a083520398268d92d0bd61cf85dfa32ee98.tar.gz:dlpack \
|
||||
0d859a811870d10f53a594927d0d0b97573ad06d.tar.gz:farmhash \
|
||||
e844ffd17118c1e17d94e1ba4354c075a4577b88.zip:gemmlowp \
|
||||
fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz:highwayhash \
|
||||
36dbc057604f00aacfc0288ddad57e3b21cfc1b8.tar.gz:kissfft \
|
||||
94d31935a2c94fe7e7c7379a0f3393e181928ff7.tar.gz:bazel \
|
||||
v2.3.0.tar.gz:pybind \
|
||||
7a7e03f906aada0cf4b749b51213fe5784eeff84.tar.gz:llvm \
|
||||
1200fe90bb174a6224a525ee60148671a786a71f.tar.gz:neon \
|
||||
license.rst.txt:license \
|
||||
backports.weakref-1.0rc1.tar.gz:weakref
|
||||
506cfa4bffd060c06ec338ce50ea3468daa6c814.tar.gz:re2 \
|
||||
e6c1b8dc8a8b00ee74e7268aac8b18d7260ab1ce.zip:ruy \
|
||||
835a7d7b1ee3bc83e575e302a985c66ec4b65249.tar.gz:sobol \
|
||||
openmp-10.0.1.src.tar.xz:llvmorg \
|
||||
36dbc057604f00aacfc0288ddad57e3b21cfc1b8.tar.gz:kiss \
|
||||
v2.6.tar.gz:onednn \
|
||||
v1.0.tar.gz:ooura \
|
||||
5916273f79a21551890fd3d56fc5375a78d1598d.zip:cpuinfo \
|
||||
d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz:cpuinfo2 \
|
||||
093ed77f7d50f75b376f40a71ea86e08cedb8b80.tar.gz:runtime \
|
||||
eigen-008ff3483a8c5604639e1c4d204eae30ad737af6.tar.gz:eigen \
|
||||
11b2812d64e49bab9b6c489f79067fc94e69db9f.zip:xnnpack \
|
||||
b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip:pthread \
|
||||
4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip:fp16 \
|
||||
63058eff77e11aa15bf531df5dd34395ec3017c8.zip:fxdiv \
|
||||
1cb299165c859533e22f2ed05eb2abd5071544df.tar.gz:llvm \
|
||||
541b1ded4abadcc38e8178680b0677f65594ea6f.zip:apis \
|
||||
v1.12.0.tar.gz:flatbuffer \
|
||||
1200fe90bb174a6224a525ee60148671a786a71f.tar.gz:neon
|
||||
|
||||
MASTER_SITES+= http://www.kurims.kyoto-u.ac.jp/~ooura/:oourafft2d \
|
||||
https://storage.googleapis.com/mirror.tensorflow.org/bitbucket.org/eigen/eigen/get/:eigen \
|
||||
https://github.com/abseil/abseil-cpp/archive/:abseil \
|
||||
https://github.com/bazelbuild/bazel-skylib/releases/download/0.8.0/:skylib \
|
||||
MASTER_SITES+= https://github.com/bazelbuild/platforms/releases/download/0.0.2/:platforms \
|
||||
https://github.com/bazelbuild/apple_support/releases/download/0.12.1/:apple \
|
||||
https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/:skylib \
|
||||
https://github.com/bazelbuild/bazel-toolchains/archive/:toolchain \
|
||||
https://github.com/bazelbuild/rules_android/archive/:buildrules \
|
||||
https://github.com/bazelbuild/rules_apple/releases/download/0.33.0/:applerules \
|
||||
https://github.com/bazelbuild/rules_cc/archive/:rulescc \
|
||||
https://github.com/bazelbuild/rules_closure/archive/:closure \
|
||||
https://github.com/bazelbuild/rules_docker/releases/download/v0.10.0/:docker \
|
||||
https://github.com/bazelbuild/rules_swift/releases/download/0.11.1/:swift \
|
||||
https://github.com/bazelbuild/rules_java/archive/:java \
|
||||
https://github.com/bazelbuild/rules_pkg/releases/download/0.2.5/:pkg \
|
||||
https://github.com/bazelbuild/rules_proto/archive/:protolib \
|
||||
https://github.com/bazelbuild/rules_python/releases/download/0.0.1/:pythonrules \
|
||||
https://github.com/bazelbuild/rules_swift/releases/download/0.25.0/:swift \
|
||||
https://github.com/dmlc/dlpack/archive/:dlpack \
|
||||
https://github.com/google/farmhash/archive/:farmhash \
|
||||
https://github.com/google/gemmlowp/archive/:gemmlowp \
|
||||
https://github.com/google/highwayhash/archive/:highwayhash \
|
||||
https://github.com/mborgerding/kissfft/archive/:kissfft \
|
||||
https://github.com/nlopezgi/bazel-toolchains/archive/:bazel \
|
||||
https://github.com/pybind/pybind11/archive/:pybind \
|
||||
https://github.com/llvm-mirror/llvm/archive/:llvm \
|
||||
https://github.com/intel/ARM_NEON_2_x86_SSE/archive/:neon \
|
||||
https://storage.googleapis.com/mirror.tensorflow.org/docs.python.org/2.7/_sources/:license \
|
||||
https://pypi.python.org/packages/bc/cc/3cdb0a02e7e96f6c70bd971bc8a90b8463fda83e264fa9c5c1c98ceabd81/:weakref \
|
||||
https://github.com/bazelbuild/rules_cc/archive/:rulescc
|
||||
https://github.com/google/re2/archive/:re2 \
|
||||
https://github.com/google/ruy/archive/:ruy \
|
||||
https://github.com/joe-kuo/sobol_data/archive/:sobol \
|
||||
https://github.com/llvm/llvm-project/releases/download/llvmorg-10.0.1/:llvmorg \
|
||||
https://github.com/mborgerding/kissfft/archive/:kiss \
|
||||
https://github.com/oneapi-src/oneDNN/archive/refs/tags/:onednn \
|
||||
https://github.com/petewarden/OouraFFT/archive/:ooura \
|
||||
https://github.com/pytorch/cpuinfo/archive/:cpuinfo \
|
||||
https://github.com/pytorch/cpuinfo/archive/:cpuinfo2 \
|
||||
https://github.com/tensorflow/runtime/archive/:runtime \
|
||||
https://gitlab.com/libeigen/eigen/-/archive/008ff3483a8c5604639e1c4d204eae30ad737af6/:eigen \
|
||||
https://github.com/google/XNNPACK/archive/:xnnpack \
|
||||
https://github.com/Maratyszcza/pthreadpool/archive/:pthread \
|
||||
https://github.com/Maratyszcza/FP16/archive/:fp16 \
|
||||
https://github.com/Maratyszcza/FXdiv/archive/:fxdiv \
|
||||
https://storage.googleapis.com/mirror.tensorflow.org/github.com/llvm/llvm-project/archive/:llvm \
|
||||
https://github.com/googleapis/googleapis/archive/:apis \
|
||||
https://storage.googleapis.com/mirror.tensorflow.org/github.com/google/flatbuffers/archive/:flatbuffer \
|
||||
https://github.com/intel/ARM_NEON_2_x86_SSE/archive/:neon
|
||||
|
||||
@@ -1,41 +1,77 @@
|
||||
TIMESTAMP = 1625741393
|
||||
SHA256 (tensorflow/fft2d.tgz) = ada7e99087c4ed477bfdf11413f2ba8db8a840ba9bbf8ac94f4f3972e2a7cec9
|
||||
SIZE (tensorflow/fft2d.tgz) = 54434
|
||||
SHA256 (tensorflow/49177915a14a.tar.gz) = b3e1c3df05377d22bb960f54acce8d7018bc9477f37e8f39f9d3c784f5aaa87f
|
||||
SIZE (tensorflow/49177915a14a.tar.gz) = 2496808
|
||||
SHA256 (tensorflow/43ef2148c0936ebf7cb4be6b19927a9d9d145b8f.tar.gz) = acd93f6baaedc4414ebd08b33bebca7c7a46888916101d8c0b8083573526d070
|
||||
SIZE (tensorflow/43ef2148c0936ebf7cb4be6b19927a9d9d145b8f.tar.gz) = 1281523
|
||||
SHA256 (tensorflow/bazel-skylib.0.8.0.tar.gz) = 2ef429f5d7ce7111263289644d233707dba35e39696377ebab8b0bc701f7818e
|
||||
SIZE (tensorflow/bazel-skylib.0.8.0.tar.gz) = 72941
|
||||
SHA256 (tensorflow/92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz) = 88e818f9f03628eef609c8429c210ecf265ffe46c2af095f36c7ef8b1855fef5
|
||||
SIZE (tensorflow/92dd8a7a518a2fb7ba992d47c8b38299fe0be825.tar.gz) = 660374
|
||||
TIMESTAMP = 1662651809
|
||||
SHA256 (tensorflow/platforms-0.0.2.tar.gz) = 48a2d8d343863989c232843e01afc8a986eb8738766bfd8611420a7db8f6f0c3
|
||||
SIZE (tensorflow/platforms-0.0.2.tar.gz) = 5278
|
||||
SHA256 (tensorflow/apple_support.0.12.1.tar.gz) = c604b75865c07f45828c7fffd5fdbff81415a9e84a68f71a9c1d8e3b2694e547
|
||||
SIZE (tensorflow/apple_support.0.12.1.tar.gz) = 26708
|
||||
SHA256 (tensorflow/bazel-skylib-1.0.3.tar.gz) = 1c531376ac7e5a180e0237938a2536de0c54d93f5c278634818e0efc952dd56c
|
||||
SIZE (tensorflow/bazel-skylib-1.0.3.tar.gz) = 30711
|
||||
SHA256 (tensorflow/dfc67056200b674accd08d8f9a21e328098c07e2.tar.gz) = 77c2c3c562907a1114afde7b358bf3d5cc23dc61b3f2fd619bf167af0c9582a3
|
||||
SIZE (tensorflow/dfc67056200b674accd08d8f9a21e328098c07e2.tar.gz) = 1056209
|
||||
SHA256 (tensorflow/v0.1.1.zip) = cd06d15dd8bb59926e4d65f9003bfc20f9da4b2519985c27e190cddc8b7a7806
|
||||
SIZE (tensorflow/v0.1.1.zip) = 14654
|
||||
SHA256 (tensorflow/rules_apple.0.33.0.tar.gz) = a5f00fd89eff67291f6cd3efdc8fad30f4727e6ebb90718f3f05bbf3c3dd5ed7
|
||||
SIZE (tensorflow/rules_apple.0.33.0.tar.gz) = 2168079
|
||||
SHA256 (tensorflow/081771d4a0e9d7d3aa0eed2ef389fa4700dfb23e.tar.gz) = ff7876d80cd3f6b8c7a064bd9aa42a78e02096544cca2b22a9cf390a4397a53e
|
||||
SIZE (tensorflow/081771d4a0e9d7d3aa0eed2ef389fa4700dfb23e.tar.gz) = 130803
|
||||
SHA256 (tensorflow/308b05b2419edb5c8ee0471b67a40403df940149.tar.gz) = 5b00383d08dd71f28503736db0500b6fb4dda47489ff5fc6bed42557c07c6ba9
|
||||
SIZE (tensorflow/308b05b2419edb5c8ee0471b67a40403df940149.tar.gz) = 464906
|
||||
SHA256 (tensorflow/0d5f3f2768c6ca2faca0079a997a97ce22997a0c.zip) = 36fa66d4d49debd71d05fba55c1353b522e8caef4a20f8080a3d17cdda001d89
|
||||
SIZE (tensorflow/0d5f3f2768c6ca2faca0079a997a97ce22997a0c.zip) = 72534
|
||||
SHA256 (tensorflow/rules_docker-v0.10.0.tar.gz) = 7d453450e1eb70e238eea6b31f4115607ec1200e91afea01c25f9804f37e39c8
|
||||
SIZE (tensorflow/rules_docker-v0.10.0.tar.gz) = 549649
|
||||
SHA256 (tensorflow/rules_swift.0.11.1.tar.gz) = 96a86afcbdab215f8363e65a10cf023b752e90b23abf02272c4fc668fcb70311
|
||||
SIZE (tensorflow/rules_swift.0.11.1.tar.gz) = 107453
|
||||
SHA256 (tensorflow/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz) = 6560547c63e4af82b0f202cb710ceabb3f21347a4b996db565a411da5b17aba0
|
||||
SIZE (tensorflow/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz) = 467122
|
||||
SHA256 (tensorflow/12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip) = 6678b484d929f2d0d3229d8ac4e3b815a950c86bb9f17851471d143f6d4f7834
|
||||
SIZE (tensorflow/12fed0cd7cfcd9e169bf1925bc3a7a58725fdcc3.zip) = 935628
|
||||
SHA256 (tensorflow/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip) = bc81f1ba47ef5cc68ad32225c3d0e70b8c6f6077663835438da8d5733f917598
|
||||
SIZE (tensorflow/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip) = 9422
|
||||
SHA256 (tensorflow/rules_pkg-0.2.5.tar.gz) = 352c090cc3d3f9a6b4e676cf42a6047c16824959b438895a76c2989c6d7c246a
|
||||
SIZE (tensorflow/rules_pkg-0.2.5.tar.gz) = 29857
|
||||
SHA256 (tensorflow/11bf7c25e666dd7ddacbcd4d4c4a9de7a25175f8.tar.gz) = 20b240eba17a36be4b0b22635aca63053913d5c1ee36e16be36499d167a2f533
|
||||
SIZE (tensorflow/11bf7c25e666dd7ddacbcd4d4c4a9de7a25175f8.tar.gz) = 14304
|
||||
SHA256 (tensorflow/rules_python-0.0.1.tar.gz) = aa96a691d3a8177f3215b14b0edc9641787abaaa30363a080165d06ab65e1161
|
||||
SIZE (tensorflow/rules_python-0.0.1.tar.gz) = 2302092
|
||||
SHA256 (tensorflow/rules_swift.0.25.0.tar.gz) = 8a49da750560b185804a4bc95c82d3f9cc4c2caf788960b0e21945759155fdd9
|
||||
SIZE (tensorflow/rules_swift.0.25.0.tar.gz) = 184783
|
||||
SHA256 (tensorflow/790d7a083520398268d92d0bd61cf85dfa32ee98.tar.gz) = 147cc89904375dcd0b0d664a2b72dfadbb02058800ad8cba84516094bc406208
|
||||
SIZE (tensorflow/790d7a083520398268d92d0bd61cf85dfa32ee98.tar.gz) = 45837
|
||||
SHA256 (tensorflow/0d859a811870d10f53a594927d0d0b97573ad06d.tar.gz) = 18392cf0736e1d62ecbb8d695c31496b6507859e8c75541d7ad0ba092dc52115
|
||||
SIZE (tensorflow/0d859a811870d10f53a594927d0d0b97573ad06d.tar.gz) = 467251
|
||||
SHA256 (tensorflow/e844ffd17118c1e17d94e1ba4354c075a4577b88.zip) = 522b7a82d920ebd0c4408a5365866a40b81d1c0d60b2369011d315cca03c6476
|
||||
SIZE (tensorflow/e844ffd17118c1e17d94e1ba4354c075a4577b88.zip) = 940590
|
||||
SHA256 (tensorflow/fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz) = 9c3e0e87d581feeb0c18d814d98f170ff23e62967a2bd6855847f0b2fe598a37
|
||||
SIZE (tensorflow/fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz) = 138574
|
||||
SHA256 (tensorflow/506cfa4bffd060c06ec338ce50ea3468daa6c814.tar.gz) = d070e2ffc5476c496a6a872a6f246bfddce8e7797d6ba605a7c8d72866743bf9
|
||||
SIZE (tensorflow/506cfa4bffd060c06ec338ce50ea3468daa6c814.tar.gz) = 316237
|
||||
SHA256 (tensorflow/e6c1b8dc8a8b00ee74e7268aac8b18d7260ab1ce.zip) = fa9a0b9041095817bc3533f7b125c3b4044570c0b3ee6c436d2d29dae001c06b
|
||||
SIZE (tensorflow/e6c1b8dc8a8b00ee74e7268aac8b18d7260ab1ce.zip) = 375516
|
||||
SHA256 (tensorflow/835a7d7b1ee3bc83e575e302a985c66ec4b65249.tar.gz) = 583d7b975e506c076fc579d9139530596906b9195b203d42361417e9aad79b73
|
||||
SIZE (tensorflow/835a7d7b1ee3bc83e575e302a985c66ec4b65249.tar.gz) = 2569603
|
||||
SHA256 (tensorflow/openmp-10.0.1.src.tar.xz) = d19f728c8e04fb1e94566c8d76aef50ec926cd2f95ef3bf1e0a5de4909b28b44
|
||||
SIZE (tensorflow/openmp-10.0.1.src.tar.xz) = 955492
|
||||
SHA256 (tensorflow/36dbc057604f00aacfc0288ddad57e3b21cfc1b8.tar.gz) = 42b7ef406d5aa2d57a7b3b56fc44e8ad3011581692458a69958a911071efdcf2
|
||||
SIZE (tensorflow/36dbc057604f00aacfc0288ddad57e3b21cfc1b8.tar.gz) = 44744
|
||||
SHA256 (tensorflow/94d31935a2c94fe7e7c7379a0f3393e181928ff7.tar.gz) = 109a99384f9d08f9e75136d218ebaebc68cc810c56897aea2224c57932052d30
|
||||
SIZE (tensorflow/94d31935a2c94fe7e7c7379a0f3393e181928ff7.tar.gz) = 505681
|
||||
SHA256 (tensorflow/v2.3.0.tar.gz) = 0f34838f2c8024a6765168227ba587b3687729ebf03dc912f88ff75c7aa9cfe8
|
||||
SIZE (tensorflow/v2.3.0.tar.gz) = 564520
|
||||
SHA256 (tensorflow/7a7e03f906aada0cf4b749b51213fe5784eeff84.tar.gz) = 599b89411df88b9e2be40b019e7ab0f7c9c10dd5ab1c948cd22e678cc8f8f352
|
||||
SIZE (tensorflow/7a7e03f906aada0cf4b749b51213fe5784eeff84.tar.gz) = 50144723
|
||||
SHA256 (tensorflow/v2.6.tar.gz) = 9695640f55acd833ddcef4776af15e03446c4655f9296e5074b1b178dd7a4fb2
|
||||
SIZE (tensorflow/v2.6.tar.gz) = 5840464
|
||||
SHA256 (tensorflow/v1.0.tar.gz) = 5f4dabc2ae21e1f537425d58a49cdca1c49ea11db0d6271e2a4b27e9697548eb
|
||||
SIZE (tensorflow/v1.0.tar.gz) = 110531
|
||||
SHA256 (tensorflow/5916273f79a21551890fd3d56fc5375a78d1598d.zip) = 2a160c527d3c58085ce260f34f9e2b161adc009b34186a2baf24e74376e89e6d
|
||||
SIZE (tensorflow/5916273f79a21551890fd3d56fc5375a78d1598d.zip) = 3787933
|
||||
SHA256 (tensorflow/d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz) = 3f2dc1970f397a0e59db72f9fca6ff144b216895c1d606f6c94a507c1e53a025
|
||||
SIZE (tensorflow/d5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz) = 3489028
|
||||
SHA256 (tensorflow/093ed77f7d50f75b376f40a71ea86e08cedb8b80.tar.gz) = fce593c95eb508092c4a1752130868b6d2eae0fd4a5363b9d96195fd85b7cfec
|
||||
SIZE (tensorflow/093ed77f7d50f75b376f40a71ea86e08cedb8b80.tar.gz) = 15323415
|
||||
SHA256 (tensorflow/eigen-008ff3483a8c5604639e1c4d204eae30ad737af6.tar.gz) = e1dd31ce174c3d26fbe38388f64b09d2adbd7557a59e90e6f545a288cc1755fc
|
||||
SIZE (tensorflow/eigen-008ff3483a8c5604639e1c4d204eae30ad737af6.tar.gz) = 2733792
|
||||
SHA256 (tensorflow/11b2812d64e49bab9b6c489f79067fc94e69db9f.zip) = 7e9ad45391e5158fd00e816022bda21d54a6180788af7c455c864a78cee252c6
|
||||
SIZE (tensorflow/11b2812d64e49bab9b6c489f79067fc94e69db9f.zip) = 17103217
|
||||
SHA256 (tensorflow/b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip) = b96413b10dd8edaa4f6c0a60c6cf5ef55eebeef78164d5d69294c8173457f0ec
|
||||
SIZE (tensorflow/b8374f80e42010941bda6c85b0e3f1a1bd77a1e0.zip) = 61524
|
||||
SHA256 (tensorflow/4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip) = d973501a40c55126b31accc2d9f08d931ec3cc190c0430309a5e341d3c0ce32a
|
||||
SIZE (tensorflow/4dfe081cf6bcd15db339cf2680b9281b8451eeb3.zip) = 91462
|
||||
SHA256 (tensorflow/63058eff77e11aa15bf531df5dd34395ec3017c8.zip) = 3d7b0e9c4c658a84376a1086126be02f9b7f753caa95e009d9ac38d11da444db
|
||||
SIZE (tensorflow/63058eff77e11aa15bf531df5dd34395ec3017c8.zip) = 16646
|
||||
SHA256 (tensorflow/1cb299165c859533e22f2ed05eb2abd5071544df.tar.gz) = 5a19ab6de4b0089fff456c0bc406b37ba5f95c76026e6bec294ec28dc28e4cb9
|
||||
SIZE (tensorflow/1cb299165c859533e22f2ed05eb2abd5071544df.tar.gz) = 162307281
|
||||
SHA256 (tensorflow/541b1ded4abadcc38e8178680b0677f65594ea6f.zip) = 7ebab01b06c555f4b6514453dc3e1667f810ef91d1d4d2d3aa29bb9fcb40a900
|
||||
SIZE (tensorflow/541b1ded4abadcc38e8178680b0677f65594ea6f.zip) = 5498751
|
||||
SHA256 (tensorflow/v1.12.0.tar.gz) = 62f2223fb9181d1d6338451375628975775f7522185266cd5296571ac152bc45
|
||||
SIZE (tensorflow/v1.12.0.tar.gz) = 1145348
|
||||
SHA256 (tensorflow/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz) = 213733991310b904b11b053ac224fee2d4e0179e46b52fe7f8735b8831e04dcc
|
||||
SIZE (tensorflow/1200fe90bb174a6224a525ee60148671a786a71f.tar.gz) = 100612
|
||||
SHA256 (tensorflow/license.rst.txt) = e76cacdf0bdd265ff074ccca03671c33126f597f39d0ed97bc3e5673d9170cf6
|
||||
SIZE (tensorflow/license.rst.txt) = 45132
|
||||
SHA256 (tensorflow/backports.weakref-1.0rc1.tar.gz) = 8813bf712a66b3d8b85dc289e1104ed220f1878cf981e2fe756dfaabe9a82892
|
||||
SIZE (tensorflow/backports.weakref-1.0rc1.tar.gz) = 7761
|
||||
SHA256 (tensorflow/tensorflow-tensorflow-v1.15.5_GH0.tar.gz) = 4c4d23e311093ded2d2e287b18d7c45b07b5984ab88a1d2f91f8f13c886123db
|
||||
SIZE (tensorflow/tensorflow-tensorflow-v1.15.5_GH0.tar.gz) = 46212258
|
||||
SHA256 (tensorflow/tensorflow-tensorflow-v2.9.1_GH0.tar.gz) = 6eaf86ead73e23988fe192da1db68f4d3828bcdd0f3a9dc195935e339c95dbdc
|
||||
SIZE (tensorflow/tensorflow-tensorflow-v2.9.1_GH0.tar.gz) = 66654318
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
--- a/build_defs.bzl 2022-08-28 12:18:33.375130000 +0100
|
||||
+++ b/build_defs.bzl 2022-08-28 12:21:40.701070000 +0100
|
||||
@@ -173,7 +173,7 @@
|
||||
":emscripten_wasm": wasm_srcs,
|
||||
":emscripten_wasmsimd": wasmsimd_srcs,
|
||||
":emscripten_wasmrelaxedsimd": wasmrelaxedsimd_srcs,
|
||||
- "//conditions:default": [],
|
||||
+ "//conditions:default": x86_srcs,
|
||||
}),
|
||||
copts = [
|
||||
"-Iinclude",
|
||||
@@ -210,7 +210,7 @@
|
||||
":emscripten_wasm": wasm_copts,
|
||||
":emscripten_wasmsimd": wasmsimd_copts,
|
||||
":emscripten_wasmrelaxedsimd": wasmrelaxedsimd_copts,
|
||||
- "//conditions:default": [],
|
||||
+ "//conditions:default": [opt for opt in gcc_x86_copts],
|
||||
}) + select({
|
||||
":windows_x86_64_clang": ["/clang:" + opt for opt in gcc_copts],
|
||||
":windows_x86_64_mingw": gcc_copts,
|
||||
@@ -233,7 +233,7 @@
|
||||
":linux_armv7a": ["-lpthread"],
|
||||
":linux_arm64": ["-lpthread"],
|
||||
":android": ["-lm"],
|
||||
- "//conditions:default": [],
|
||||
+ "//conditions:default": ["-lpthread"],
|
||||
}),
|
||||
textual_hdrs = hdrs,
|
||||
visibility = visibility,
|
||||
@@ -304,6 +304,7 @@
|
||||
":emscripten_wasm": wasm_deps,
|
||||
":emscripten_wasmsimd": wasmsimd_deps,
|
||||
":emscripten_wasmrelaxedsimd": wasmrelaxedsimd_deps,
|
||||
+ "//conditions:default": x86_deps,
|
||||
}),
|
||||
)
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
--- a/llvm/lib/Support/Unix/Program.inc 2022-09-06 21:14:28.808580000 +0100
|
||||
+++ b/llvm/lib/Support/Unix/Program.inc 2022-09-06 21:16:15.007790000 +0100
|
||||
@@ -54,10 +54,8 @@
|
||||
#define USE_NSGETENVIRON 0
|
||||
#endif
|
||||
|
||||
-#if !USE_NSGETENVIRON
|
||||
+#if USE_NSGETENVIRON
|
||||
extern char **environ;
|
||||
-#else
|
||||
-#include <crt_externs.h> // _NSGetEnviron
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -240,14 +238,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
- if (!Envp)
|
||||
-#if !USE_NSGETENVIRON
|
||||
- Envp = const_cast<const char **>(environ);
|
||||
-#else
|
||||
- // environ is missing in dylibs.
|
||||
- Envp = const_cast<const char **>(*_NSGetEnviron());
|
||||
-#endif
|
||||
-
|
||||
constexpr int maxRetries = 8;
|
||||
int retries = 0;
|
||||
pid_t PID;
|
||||
@@ -308,11 +298,7 @@
|
||||
|
||||
// Execute!
|
||||
std::string PathStr = std::string(Program);
|
||||
- if (Envp != nullptr)
|
||||
- execve(PathStr.c_str(), const_cast<char **>(Argv),
|
||||
- const_cast<char **>(Envp));
|
||||
- else
|
||||
- execv(PathStr.c_str(), const_cast<char **>(Argv));
|
||||
+ execv(PathStr.c_str(), const_cast<char **>(Argv));
|
||||
// If the execve() failed, we should exit. Follow Unix protocol and
|
||||
// return 127 if the executable was not found, and 126 otherwise.
|
||||
// Use _exit rather than exit so that atexit functions and static
|
||||
@@ -0,0 +1,80 @@
|
||||
--- a/src/mach/topology.c 2022-09-01 12:09:36.036365000 +0100
|
||||
+++ b/src/mach/topology.c 2022-09-01 12:09:07.146529000 +0100
|
||||
@@ -1,5 +1,4 @@
|
||||
#include <string.h>
|
||||
-#include <alloca.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
@@ -8,38 +7,27 @@
|
||||
#include <cpuinfo/log.h>
|
||||
#include <mach/api.h>
|
||||
|
||||
-#include <TargetConditionals.h>
|
||||
|
||||
-
|
||||
struct cpuinfo_mach_topology cpuinfo_mach_detect_topology(void) {
|
||||
int cores = 1;
|
||||
size_t sizeof_cores = sizeof(cores);
|
||||
- if (sysctlbyname("hw.physicalcpu_max", &cores, &sizeof_cores, NULL, 0) != 0) {
|
||||
- cpuinfo_log_error("sysctlbyname(\"hw.physicalcpu_max\") failed: %s", strerror(errno));
|
||||
+ if (sysctlbyname("hw.ncpu", &cores, &sizeof_cores, NULL, 0) != 0) {
|
||||
+ cpuinfo_log_error("sysctlbyname(\"hw.ncpu\") failed: %s", strerror(errno));
|
||||
} else if (cores <= 0) {
|
||||
- cpuinfo_log_error("sysctlbyname(\"hw.physicalcpu_max\") returned invalid value %d", cores);
|
||||
+ cpuinfo_log_error("sysctlbyname(\"hw.ncpu\") returned invalid value %d", cores);
|
||||
cores = 1;
|
||||
}
|
||||
|
||||
int threads = 1;
|
||||
size_t sizeof_threads = sizeof(threads);
|
||||
- if (sysctlbyname("hw.logicalcpu_max", &threads, &sizeof_threads, NULL, 0) != 0) {
|
||||
- cpuinfo_log_error("sysctlbyname(\"hw.logicalcpu_max\") failed: %s", strerror(errno));
|
||||
+ if (sysctlbyname("hw.ncpu", &threads, &sizeof_threads, NULL, 0) != 0) {
|
||||
+ cpuinfo_log_error("sysctlbyname(\"ncpu\") failed: %s", strerror(errno));
|
||||
} else if (threads <= 0) {
|
||||
- cpuinfo_log_error("sysctlbyname(\"hw.logicalcpu_max\") returned invalid value %d", threads);
|
||||
+ cpuinfo_log_error("sysctlbyname(\"ncpu\") returned invalid value %d", threads);
|
||||
threads = cores;
|
||||
}
|
||||
|
||||
int packages = 1;
|
||||
-#if !TARGET_OS_IPHONE
|
||||
- size_t sizeof_packages = sizeof(packages);
|
||||
- if (sysctlbyname("hw.packages", &packages, &sizeof_packages, NULL, 0) != 0) {
|
||||
- cpuinfo_log_error("sysctlbyname(\"hw.packages\") failed: %s", strerror(errno));
|
||||
- } else if (packages <= 0) {
|
||||
- cpuinfo_log_error("sysctlbyname(\"hw.packages\") returned invalid value %d", packages);
|
||||
- packages = 1;
|
||||
- }
|
||||
-#endif
|
||||
|
||||
cpuinfo_log_debug("mach topology: packages = %d, cores = %d, threads = %d", packages, (int) cores, (int) threads);
|
||||
struct cpuinfo_mach_topology topology = {
|
||||
@@ -48,26 +36,5 @@
|
||||
.threads = (uint32_t) threads
|
||||
};
|
||||
|
||||
-#if !TARGET_OS_IPHONE
|
||||
- size_t cacheconfig_size = 0;
|
||||
- if (sysctlbyname("hw.cacheconfig", NULL, &cacheconfig_size, NULL, 0) != 0) {
|
||||
- cpuinfo_log_error("sysctlbyname(\"hw.cacheconfig\") failed: %s", strerror(errno));
|
||||
- } else {
|
||||
- uint64_t* cacheconfig = alloca(cacheconfig_size);
|
||||
- if (sysctlbyname("hw.cacheconfig", cacheconfig, &cacheconfig_size, NULL, 0) != 0) {
|
||||
- cpuinfo_log_error("sysctlbyname(\"hw.cacheconfig\") failed: %s", strerror(errno));
|
||||
- } else {
|
||||
- size_t cache_configs = cacheconfig_size / sizeof(uint64_t);
|
||||
- cpuinfo_log_debug("mach hw.cacheconfig count: %zu", cache_configs);
|
||||
- if (cache_configs > CPUINFO_MACH_MAX_CACHE_LEVELS) {
|
||||
- cache_configs = CPUINFO_MACH_MAX_CACHE_LEVELS;
|
||||
- }
|
||||
- for (size_t i = 0; i < cache_configs; i++) {
|
||||
- cpuinfo_log_debug("mach hw.cacheconfig[%zu]: %"PRIu64, i, cacheconfig[i]);
|
||||
- topology.threads_per_cache[i] = cacheconfig[i];
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
-#endif
|
||||
return topology;
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
--- a/utils/bazel/configure.bzl 2022-08-27 19:11:41.138993000 +0100
|
||||
+++ b/utils/bazel/configure.bzl 2022-08-27 19:12:07.525186000 +0100
|
||||
@@ -37,7 +37,7 @@
|
||||
overlay_path = bazel_path.get_child("llvm-project-overlay")
|
||||
script_path = bazel_path.get_child("overlay_directories.py")
|
||||
|
||||
- python_bin = repository_ctx.which("python3")
|
||||
+ python_bin = repository_ctx.which("%%PYTHON%%")
|
||||
if not python_bin:
|
||||
# Windows typically just defines "python" as python3. The script itself
|
||||
# contains a check to ensure python3.
|
||||
@@ -0,0 +1,11 @@
|
||||
--- a/cc/private/toolchain/freebsd_cc_toolchain_config.bzl 2022-08-28 16:31:59.271838000 +0100
|
||||
+++ b/cc/private/toolchain/freebsd_cc_toolchain_config.bzl 2022-08-28 16:32:10.096301000 +0100
|
||||
@@ -159,7 +159,7 @@
|
||||
),
|
||||
flag_set(
|
||||
actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend],
|
||||
- flag_groups = [flag_group(flags = ["-std=c++0x"])],
|
||||
+ flag_groups = [flag_group(flags = ["-std=c++17"])],
|
||||
),
|
||||
],
|
||||
)
|
||||
@@ -8,12 +8,28 @@ build --spawn_strategy=local --genrule_strategy=local
|
||||
test --spawn_strategy=local --genrule_strategy=local
|
||||
|
||||
# make bazel only fetch distfiles from the cache
|
||||
fetch --repository_cache="%%BAZEL_DIR%%/bazel-cache/" --distdir="%%BAZEL_DIST%%/bazel-distdir/"
|
||||
build --repository_cache="%%BAZEL_DIR%%/bazel-cache/" --distdir="%%BAZEL_DIST%%/bazel-distdir/"
|
||||
fetch --repository_cache="%%BAZEL_DIR%%/bazel-cache/" --distdir="%%BAZEL_DIST%%/bazel-dist/"
|
||||
build --repository_cache="%%BAZEL_DIR%%/bazel-cache/" --distdir="%%BAZEL_DIST%%/bazel-dist/"
|
||||
|
||||
build --define=PREFIX=%%LOCALBASE%%
|
||||
build --define=LIBDIR=%%LOCALBASE%%/lib
|
||||
build --define=INCLUDEDIR=%%LOCALBASE%%/include
|
||||
build --define=PROTOBUF_INCLUDE_PATH=%%LOCALBASE%%/include
|
||||
|
||||
build --config=noaws --config=nohdfs --config=noignite --config=nokafka
|
||||
build --config=noaws --config=nohdfs
|
||||
build --define tensorflow_mkldnn_contraction_kernel=0
|
||||
build --incompatible_no_support_tools_in_action_inputs=false
|
||||
|
||||
build --action_env=BAZEL_CXXOPTS="-std=c++17"
|
||||
build --incompatible_enable_cc_toolchain_resolution
|
||||
|
||||
build --extra_toolchains=//freebsd:cc-toolchain-freebsd
|
||||
build --linkopt="-lexecinfo" --toolchain_resolution_debug=//freebsd:freebsd_clang
|
||||
|
||||
# for python
|
||||
build --action_env=PATH=%%PATH%%
|
||||
build --host_action_env=PATH=%%PATH%%
|
||||
|
||||
build --action_env=KERAS_HOME="%%BAZEL_DIST%%/.keras"
|
||||
build --host_action_env=KERAS_HOME="%%BAZEL_DIST%%/.keras"
|
||||
|
||||
build --config=freebsd
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
--- a/absl/base/internal/unscaledcycleclock.cc.orig 2021-10-11 21:53:31.946215000 +0200
|
||||
+++ b/absl/base/internal/unscaledcycleclock.cc 2021-10-11 21:57:54.536557000 +0200
|
||||
@@ -21,8 +21,15 @@
|
||||
#endif
|
||||
|
||||
#if defined(__powerpc__) || defined(__ppc__)
|
||||
+#ifdef __linux__
|
||||
#include <sys/platform/ppc.h>
|
||||
+#else
|
||||
+#include "absl/base/call_once.h"
|
||||
+#include <sys/types.h>
|
||||
+#include <sys/sysctl.h>
|
||||
+#include <threads.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#include "absl/base/internal/sysinfo.h"
|
||||
|
||||
@@ -56,11 +63,28 @@
|
||||
#elif defined(__powerpc__) || defined(__ppc__)
|
||||
|
||||
int64_t UnscaledCycleClock::Now() {
|
||||
+#ifdef __linux__
|
||||
return __ppc_get_timebase();
|
||||
+#else
|
||||
+ int64_t tbr;
|
||||
+ asm volatile("mfspr %0, 268" : "=r"(tbr));
|
||||
+ return tbr;
|
||||
+#endif
|
||||
}
|
||||
|
||||
double UnscaledCycleClock::Frequency() {
|
||||
+#ifdef __linux__
|
||||
return __ppc_get_timebase_freq();
|
||||
+#else
|
||||
+ static once_flag init_timebase_frequency_once;
|
||||
+ static double timebase_frequency = 0.0;
|
||||
+ base_internal::LowLevelCallOnce(&init_timebase_frequency_once, [&]() {
|
||||
+ size_t length = sizeof(timebase_frequency);
|
||||
+ sysctlbyname("kern.timecounter.tc.timebase.frequency", &timebase_frequency,
|
||||
+ &length, nullptr, 0);
|
||||
+ });
|
||||
+ return timebase_frequency;
|
||||
+#endif
|
||||
}
|
||||
|
||||
#elif defined(__aarch64__)
|
||||
@@ -0,0 +1,88 @@
|
||||
# Copyright 2018 The Bazel Authors. All rights reserved.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
# This becomes the BUILD file for @local_config_cc// under FreeBSD and OpenBSD.
|
||||
load(":cc_toolchain_config.bzl", "cc_toolchain_config")
|
||||
load("@rules_cc//cc:defs.bzl", "cc_library", "cc_toolchain", "cc_toolchain_suite")
|
||||
load("@bazel_tools//tools/python:toolchain.bzl", "py_runtime_pair")
|
||||
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
cc_library(
|
||||
name = "malloc",
|
||||
)
|
||||
filegroup(
|
||||
name = "empty",
|
||||
srcs = [],
|
||||
)
|
||||
|
||||
# Hardcoded toolchain, legacy behaviour.
|
||||
cc_toolchain_suite(
|
||||
name = "freebsd_clang",
|
||||
toolchains = {
|
||||
"k8": ":cc-compiler-freebsd",
|
||||
"freebsd": ":cc-compiler-freebsd",
|
||||
},
|
||||
)
|
||||
|
||||
cc_toolchain(
|
||||
name = "cc-compiler-freebsd",
|
||||
all_files = ":empty",
|
||||
ar_files = ":empty",
|
||||
as_files = ":empty",
|
||||
compiler_files = ":empty",
|
||||
dwp_files = ":empty",
|
||||
linker_files = ":empty",
|
||||
objcopy_files = ":empty",
|
||||
strip_files = ":empty",
|
||||
supports_param_files = 0,
|
||||
toolchain_config = ":local_freebsd",
|
||||
toolchain_identifier = "local_freebsd",
|
||||
)
|
||||
cc_toolchain_config(
|
||||
name = "local_freebsd",
|
||||
cpu = "k8",
|
||||
)
|
||||
|
||||
toolchain(
|
||||
name = "cc-toolchain-freebsd",
|
||||
exec_compatible_with = [
|
||||
"@platforms//cpu:x86_64",
|
||||
"@platforms//os:freebsd",
|
||||
],
|
||||
target_compatible_with = [
|
||||
"@platforms//cpu:x86_64",
|
||||
"@platforms//os:freebsd",
|
||||
],
|
||||
toolchain = ":cc-compiler-freebsd",
|
||||
toolchain_type = "@bazel_tools//tools/cpp:toolchain_type",
|
||||
)
|
||||
|
||||
py_runtime(
|
||||
name = "freebsd_python",
|
||||
interpreter_path = "/usr/local/bin/python3.9",
|
||||
python_version = "PY3",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
py_runtime_pair(
|
||||
name = "bsd_py_runtime_pair",
|
||||
py2_runtime = None,
|
||||
py3_runtime = ":freebsd_python",
|
||||
)
|
||||
|
||||
toolchain(
|
||||
name = "freebsd_py_toolchain",
|
||||
toolchain = ":bsd_py_runtime_pair",
|
||||
toolchain_type = "@bazel_tools//tools/python:toolchain_type",
|
||||
)
|
||||
|
||||
@@ -0,0 +1,287 @@
|
||||
# Copyright 2019 The Bazel Authors. All rights reserved.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
"""A Starlark cc_toolchain configuration rule for FreeBSD and OpenBSD."""
|
||||
load(
|
||||
"@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl",
|
||||
"action_config",
|
||||
"feature",
|
||||
"flag_group",
|
||||
"flag_set",
|
||||
"tool",
|
||||
"tool_path",
|
||||
"with_feature_set",
|
||||
)
|
||||
|
||||
load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES")
|
||||
all_compile_actions = [
|
||||
ACTION_NAMES.c_compile,
|
||||
ACTION_NAMES.cpp_compile,
|
||||
ACTION_NAMES.linkstamp_compile,
|
||||
ACTION_NAMES.assemble,
|
||||
ACTION_NAMES.preprocess_assemble,
|
||||
ACTION_NAMES.cpp_header_parsing,
|
||||
ACTION_NAMES.cpp_module_compile,
|
||||
ACTION_NAMES.cpp_module_codegen,
|
||||
ACTION_NAMES.clif_match,
|
||||
ACTION_NAMES.lto_backend,
|
||||
]
|
||||
all_cpp_compile_actions = [
|
||||
ACTION_NAMES.cpp_compile,
|
||||
ACTION_NAMES.linkstamp_compile,
|
||||
ACTION_NAMES.cpp_header_parsing,
|
||||
ACTION_NAMES.cpp_module_compile,
|
||||
ACTION_NAMES.cpp_module_codegen,
|
||||
ACTION_NAMES.clif_match,
|
||||
]
|
||||
all_link_actions = [
|
||||
ACTION_NAMES.cpp_link_executable,
|
||||
ACTION_NAMES.cpp_link_dynamic_library,
|
||||
ACTION_NAMES.cpp_link_nodeps_dynamic_library,
|
||||
]
|
||||
def _impl(ctx):
|
||||
cpu = ctx.attr.cpu
|
||||
is_bsd = cpu == "k8" or cpu == "freebsd" or cpu == "openbsd"
|
||||
compiler = "compiler"
|
||||
toolchain_identifier = "local_freebsd"
|
||||
host_system_name = "local" if is_bsd else "armeabi-v7a"
|
||||
target_system_name = "local" if is_bsd else "armeabi-v7a"
|
||||
target_libc = "local" if is_bsd else "armeabi-v7a"
|
||||
abi_version = "local" if is_bsd else "armeabi-v7a"
|
||||
abi_libc_version = "local" if is_bsd else "armeabi-v7a"
|
||||
objcopy_embed_data_action = action_config(
|
||||
action_name = "objcopy_embed_data",
|
||||
enabled = True,
|
||||
tools = [tool(path = "/usr/bin/objcopy")],
|
||||
)
|
||||
action_configs = [objcopy_embed_data_action] if is_bsd else []
|
||||
default_link_flags_feature = feature(
|
||||
name = "default_link_flags",
|
||||
enabled = True,
|
||||
flag_sets = [
|
||||
flag_set(
|
||||
actions = all_link_actions,
|
||||
flag_groups = [
|
||||
flag_group(
|
||||
flags = [
|
||||
"-Wl,-undefined,dynamic_lookup",
|
||||
"-lc++",
|
||||
"-Wl,-z,relro,-z,now",
|
||||
"-no-canonical-prefixes",
|
||||
"-L%%LOCALBASE%%/lib",
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
flag_set(
|
||||
actions = all_link_actions,
|
||||
flag_groups = [flag_group(flags = ["-Wl,--gc-sections"])],
|
||||
with_features = [with_feature_set(features = ["opt"])],
|
||||
),
|
||||
],
|
||||
)
|
||||
unfiltered_compile_flags_feature = feature(
|
||||
name = "unfiltered_compile_flags",
|
||||
enabled = True,
|
||||
flag_sets = [
|
||||
flag_set(
|
||||
actions = all_compile_actions,
|
||||
flag_groups = [
|
||||
flag_group(
|
||||
flags = [
|
||||
"-no-canonical-prefixes",
|
||||
"-Wno-builtin-macro-redefined",
|
||||
"-D__DATE__=\"redacted\"",
|
||||
"-D__TIMESTAMP__=\"redacted\"",
|
||||
"-D__TIME__=\"redacted\"",
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
)
|
||||
supports_pic_feature = feature(name = "supports_pic", enabled = True)
|
||||
default_compile_flags_feature = feature(
|
||||
name = "default_compile_flags",
|
||||
enabled = True,
|
||||
flag_sets = [
|
||||
flag_set(
|
||||
actions = all_compile_actions,
|
||||
flag_groups = [
|
||||
flag_group(
|
||||
flags = [
|
||||
"-U_FORTIFY_SOURCE",
|
||||
"-D_FORTIFY_SOURCE=1",
|
||||
"-fstack-protector",
|
||||
"-Wall",
|
||||
"-fno-omit-frame-pointer",
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
flag_set(
|
||||
actions = all_compile_actions,
|
||||
flag_groups = [flag_group(flags = ["-g"])],
|
||||
with_features = [with_feature_set(features = ["dbg"])],
|
||||
),
|
||||
flag_set(
|
||||
actions = all_compile_actions,
|
||||
flag_groups = [
|
||||
flag_group(
|
||||
flags = [
|
||||
"-g0",
|
||||
"-O2",
|
||||
"-DNDEBUG",
|
||||
"-ffunction-sections",
|
||||
"-fdata-sections",
|
||||
],
|
||||
),
|
||||
],
|
||||
with_features = [with_feature_set(features = ["opt"])],
|
||||
),
|
||||
flag_set(
|
||||
actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend],
|
||||
flag_groups = [flag_group(flags = ["-std=c++17"])],
|
||||
),
|
||||
],
|
||||
)
|
||||
opt_feature = feature(name = "opt")
|
||||
supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True)
|
||||
objcopy_embed_flags_feature = feature(
|
||||
name = "objcopy_embed_flags",
|
||||
enabled = True,
|
||||
flag_sets = [
|
||||
flag_set(
|
||||
actions = ["objcopy_embed_data"],
|
||||
flag_groups = [flag_group(flags = ["-I", "binary"])],
|
||||
),
|
||||
],
|
||||
)
|
||||
dbg_feature = feature(name = "dbg")
|
||||
user_compile_flags_feature = feature(
|
||||
name = "user_compile_flags",
|
||||
enabled = True,
|
||||
flag_sets = [
|
||||
flag_set(
|
||||
actions = all_compile_actions,
|
||||
flag_groups = [
|
||||
flag_group(
|
||||
flags = ["%{user_compile_flags}"],
|
||||
iterate_over = "user_compile_flags",
|
||||
expand_if_available = "user_compile_flags",
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
)
|
||||
sysroot_feature = feature(
|
||||
name = "sysroot",
|
||||
enabled = True,
|
||||
flag_sets = [
|
||||
flag_set(
|
||||
actions = [
|
||||
ACTION_NAMES.c_compile,
|
||||
ACTION_NAMES.cpp_compile,
|
||||
ACTION_NAMES.linkstamp_compile,
|
||||
ACTION_NAMES.preprocess_assemble,
|
||||
ACTION_NAMES.cpp_header_parsing,
|
||||
ACTION_NAMES.cpp_module_compile,
|
||||
ACTION_NAMES.cpp_module_codegen,
|
||||
ACTION_NAMES.clif_match,
|
||||
ACTION_NAMES.lto_backend,
|
||||
] + all_link_actions,
|
||||
flag_groups = [
|
||||
flag_group(
|
||||
flags = ["--sysroot=%{sysroot}"],
|
||||
expand_if_available = "sysroot",
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
)
|
||||
if is_bsd:
|
||||
features = [
|
||||
default_compile_flags_feature,
|
||||
default_link_flags_feature,
|
||||
supports_dynamic_linker_feature,
|
||||
supports_pic_feature,
|
||||
objcopy_embed_flags_feature,
|
||||
opt_feature,
|
||||
dbg_feature,
|
||||
user_compile_flags_feature,
|
||||
sysroot_feature,
|
||||
unfiltered_compile_flags_feature,
|
||||
]
|
||||
else:
|
||||
features = [supports_dynamic_linker_feature, supports_pic_feature]
|
||||
if (is_bsd):
|
||||
cxx_builtin_include_directories = ["/usr/local/llvm-devel/lib/clang/16.0.0", "/usr/include/c++/v1", "/usr/local/include", "/usr/include"]
|
||||
else:
|
||||
cxx_builtin_include_directories = []
|
||||
if is_bsd:
|
||||
tool_paths = [
|
||||
tool_path(name = "ar", path = "/usr/bin/ar"),
|
||||
tool_path(name = "cpp", path = "/usr/local/llvm-devel/bin/clang-cpp"),
|
||||
tool_path(name = "dwp", path = "/usr/bin/dwp"),
|
||||
tool_path(name = "gcc", path = "/usr/local/llvm-devel/bin/clang-16"),
|
||||
tool_path(name = "gcov", path = "/usr/bin/gcov"),
|
||||
tool_path(name = "ld", path = "/usr/local/llvm-devel/bin/ld"),
|
||||
tool_path(name = "nm", path = "/usr/bin/nm"),
|
||||
tool_path(name = "objcopy", path = "/usr/bin/objcopy"),
|
||||
tool_path(name = "objdump", path = "/usr/bin/objdump"),
|
||||
tool_path(name = "strip", path = "/usr/bin/strip"),
|
||||
]
|
||||
else:
|
||||
tool_paths = [
|
||||
tool_path(name = "ar", path = "/bin/false"),
|
||||
tool_path(name = "cpp", path = "/bin/false"),
|
||||
tool_path(name = "dwp", path = "/bin/false"),
|
||||
tool_path(name = "gcc", path = "/bin/false"),
|
||||
tool_path(name = "gcov", path = "/bin/false"),
|
||||
tool_path(name = "ld", path = "/bin/false"),
|
||||
tool_path(name = "nm", path = "/bin/false"),
|
||||
tool_path(name = "objcopy", path = "/bin/false"),
|
||||
tool_path(name = "objdump", path = "/bin/false"),
|
||||
tool_path(name = "strip", path = "/bin/false"),
|
||||
]
|
||||
out = ctx.actions.declare_file(ctx.label.name)
|
||||
ctx.actions.write(out, "Fake executable")
|
||||
return [
|
||||
cc_common.create_cc_toolchain_config_info(
|
||||
ctx = ctx,
|
||||
features = features,
|
||||
action_configs = action_configs,
|
||||
cxx_builtin_include_directories = cxx_builtin_include_directories,
|
||||
toolchain_identifier = toolchain_identifier,
|
||||
host_system_name = host_system_name,
|
||||
target_system_name = target_system_name,
|
||||
target_cpu = cpu,
|
||||
target_libc = target_libc,
|
||||
compiler = compiler,
|
||||
abi_version = abi_version,
|
||||
abi_libc_version = abi_libc_version,
|
||||
tool_paths = tool_paths,
|
||||
),
|
||||
DefaultInfo(
|
||||
executable = out,
|
||||
),
|
||||
]
|
||||
|
||||
cc_toolchain_config = rule(
|
||||
implementation = _impl,
|
||||
attrs = {
|
||||
"cpu": attr.string(mandatory = True),
|
||||
},
|
||||
provides = [CcToolchainConfigInfo],
|
||||
executable = True,
|
||||
)
|
||||
@@ -0,0 +1,22 @@
|
||||
--- .bazelrc.orig 2022-05-22 22:28:22 UTC
|
||||
+++ .bazelrc
|
||||
@@ -151,6 +151,19 @@ build --experimental_cc_shared_library
|
||||
|
||||
# Default options should come above this line.
|
||||
|
||||
+# Use our custom-configured c++ toolchain.
|
||||
+# Use --cpu as a differentiator.
|
||||
+build:freebsd --cpu=k8
|
||||
+
|
||||
+# Use the default Bazel C++ toolchain to build the tools used during the
|
||||
+# build.
|
||||
+build:freebsd --crosstool_top=//freebsd:freebsd_clang
|
||||
+build:freebsd --linkopt=-L%%LOCALBASE%%/lib
|
||||
+
|
||||
+build:freebsd --python_path="%%PYTHON%%"
|
||||
+build:freebsd --define force_libcpp=enabled
|
||||
+build:freebsd --action_env=CXXFLAGS=-stdlib=libc++
|
||||
+
|
||||
# Allow builds using libc++ as a linker library
|
||||
# This is mostly for OSSFuzz, so we also pass in the flags from environment to clean build file
|
||||
build:libc++ --action_env=CC
|
||||
@@ -1,9 +1,10 @@
|
||||
--- WORKSPACE.orig 2021-01-04 20:18:42 UTC
|
||||
--- WORKSPACE.orig 2022-05-22 22:28:22 UTC
|
||||
+++ WORKSPACE
|
||||
@@ -12,6 +12,15 @@ http_archive(
|
||||
],
|
||||
)
|
||||
|
||||
@@ -1,4 +1,15 @@
|
||||
workspace(name = "org_tensorflow")
|
||||
+register_toolchains("//freebsd:freebsd_py_toolchain")
|
||||
+
|
||||
+load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
||||
+http_archive(
|
||||
+ name = "io_bazel_rules_docker",
|
||||
+ sha256 = "7d453450e1eb70e238eea6b31f4115607ec1200e91afea01c25f9804f37e39c8",
|
||||
@@ -12,50 +13,6 @@
|
||||
+ "https://github.com/bazelbuild/rules_docker/releases/download/v0.10.0/rules_docker-v0.10.0.tar.gz",
|
||||
+ ],
|
||||
+)
|
||||
+
|
||||
# Load tf_repositories() before loading dependencies for other repository so
|
||||
# that dependencies like com_google_protobuf won't be overridden.
|
||||
load("//tensorflow:workspace.bzl", "tf_repositories")
|
||||
@@ -78,6 +87,42 @@ http_file(
|
||||
executable = 1,
|
||||
urls = ["https://github.com/google/xctestrunner/releases/download/0.2.7/ios_test_runner.par"],
|
||||
) # https://github.com/google/xctestrunner/releases
|
||||
+
|
||||
+new_local_repository(
|
||||
+ name = "jsonHeaders",
|
||||
+ path = "%%LOCALBASE%%/include/json",
|
||||
+ build_file_content = """
|
||||
+
|
||||
+package(
|
||||
+ default_visibility = [
|
||||
+ "//visibility:public",
|
||||
+ ],
|
||||
+)
|
||||
+
|
||||
+cc_library(
|
||||
+ name = "headers",
|
||||
+ srcs = glob(["*.h"]),
|
||||
+)
|
||||
+""",
|
||||
+)
|
||||
+
|
||||
+new_local_repository(
|
||||
+ name = "absl_Headers",
|
||||
+ path = "%%LOCALBASE%%/include/absl",
|
||||
+ build_file_content = """
|
||||
+
|
||||
+package(
|
||||
+ default_visibility = [
|
||||
+ "//visibility:public",
|
||||
+ ],
|
||||
+)
|
||||
+cc_library(
|
||||
+ name = "abslHeaders",
|
||||
+ srcs = glob(["*/*.h", "*/*/*.h", "*/*/*/*/*/*.h"]),
|
||||
+)
|
||||
+
|
||||
+""",
|
||||
+)
|
||||
# Use `swift_rules_dependencies` to fetch the toolchains. With the
|
||||
# `git_repository` rules above, the following call will skip redefining them.
|
||||
load("@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies")
|
||||
|
||||
# Initialize the TensorFlow repository and all dependencies.
|
||||
#
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
--- .bazelrc.orig 2019-07-13 21:45:36.138413000 +0100
|
||||
+++ .bazelrc 2019-07-13 21:46:25.898491000 +0100
|
||||
@@ -101,7 +101,7 @@
|
||||
build:c++1z --cxxopt=-stdlib=libc++
|
||||
|
||||
# Default paths for TF_SYSTEM_LIBS
|
||||
-build --define=PREFIX=/usr
|
||||
+build --define=PREFIX=%%LOCALBASE%%
|
||||
build --define=LIBDIR=$(PREFIX)/lib
|
||||
build --define=INCLUDEDIR=$(PREFIX)/include
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
--- configure.orig 2022-05-22 22:28:22 UTC
|
||||
+++ configure
|
||||
@@ -4,7 +4,7 @@ set -e
|
||||
set -o pipefail
|
||||
|
||||
if [ -z "$PYTHON_BIN_PATH" ]; then
|
||||
- PYTHON_BIN_PATH=$(which python3 || which python || true)
|
||||
+ PYTHON_BIN_PATH=$(which %%PYTHON%% || which python || true)
|
||||
fi
|
||||
|
||||
# Set all env variables
|
||||
@@ -1,22 +0,0 @@
|
||||
--- tensorflow/core/kernels/example_parsing_ops.cc.orig 2021-01-04 20:18:42 UTC
|
||||
+++ tensorflow/core/kernels/example_parsing_ops.cc
|
||||
@@ -859,7 +859,7 @@ class DecodeJSONExampleOp : public OpKernel {
|
||||
json_example, &binary_examples->flat<string>()(i));
|
||||
OP_REQUIRES(ctx, status.ok(),
|
||||
errors::InvalidArgument("Error while parsing JSON: ",
|
||||
- string(status.error_message())));
|
||||
+ string(status.message())));
|
||||
}
|
||||
}
|
||||
|
||||
--- tensorflow/core/profiler/rpc/client/dump_tpu_profile.cc.orig 2021-01-04 20:18:42 UTC
|
||||
+++ tensorflow/core/profiler/rpc/client/dump_tpu_profile.cc
|
||||
@@ -102,7 +102,7 @@ Status DumpOpProfileToLogDirectory(StringPiece run_dir
|
||||
if (!status.ok()) {
|
||||
return errors::Internal(
|
||||
"Failed to convert op profile to json. Skipping... ",
|
||||
- string(status.error_message()));
|
||||
+ string(status.message()));
|
||||
}
|
||||
TF_RETURN_IF_ERROR(WriteStringToFile(Env::Default(), path, json));
|
||||
if (os) {
|
||||
@@ -0,0 +1,22 @@
|
||||
--- tensorflow/BUILD.orig 2022-05-22 22:28:22 UTC
|
||||
+++ tensorflow/BUILD
|
||||
@@ -938,8 +938,10 @@ tf_cc_shared_object(
|
||||
],
|
||||
"//tensorflow:windows": [],
|
||||
"//tensorflow:freebsd": [
|
||||
+ "-Wl,--unresolved-symbols=ignore-all",
|
||||
"-Wl,--version-script,$(location //tensorflow:tf_framework_version_script.lds)",
|
||||
"-lexecinfo",
|
||||
+ "-L/usr/local/lib",
|
||||
],
|
||||
"//conditions:default": [
|
||||
"-Wl,--version-script,$(location //tensorflow:tf_framework_version_script.lds)",
|
||||
@@ -1021,7 +1023,7 @@ tf_cc_shared_object(
|
||||
# copybara:uncomment_end
|
||||
"//conditions:default": [
|
||||
"-z defs",
|
||||
- "-Wl,--version-script,$(location //tensorflow/c:version_script.lds)",
|
||||
+ "-L/lib,-L/usr/lib,--unresolved-symbols=ignore-all,-Wl,--version-script,$(location //tensorflow/c:version_script.lds)",
|
||||
],
|
||||
}),
|
||||
per_os_targets = True,
|
||||
@@ -0,0 +1,11 @@
|
||||
--- tensorflow/compiler/mlir/hlo/WORKSPACE.orig 2022-05-22 22:28:22 UTC
|
||||
+++ tensorflow/compiler/mlir/hlo/WORKSPACE
|
||||
@@ -34,6 +34,8 @@ http_archive(
|
||||
name = "llvm-raw",
|
||||
build_file_content = "# empty",
|
||||
sha256 = LLVM_SHA256,
|
||||
+ patch_args = ["-p0"],
|
||||
+ patches = ["@%%MLIR_LLVM_PATCH%%"],
|
||||
strip_prefix = "llvm-project-" + LLVM_COMMIT,
|
||||
urls = ["https://github.com/llvm/llvm-project/archive/{commit}.tar.gz".format(commit = LLVM_COMMIT)],
|
||||
)
|
||||
@@ -1,10 +0,0 @@
|
||||
--- tensorflow/compiler/mlir/lite/BUILD.orig 2021-07-06 22:08:16 UTC
|
||||
+++ tensorflow/compiler/mlir/lite/BUILD
|
||||
@@ -318,6 +318,7 @@ tf_native_cc_binary(
|
||||
srcs = [
|
||||
"operator_writer_gen.cc",
|
||||
],
|
||||
+ linkopts = ["-lexecinfo"],
|
||||
deps = [
|
||||
"@llvm//:support",
|
||||
"@llvm//:tablegen",
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user