Base Windows CI setup
This commit is contained in:
parent
7d017df80c
commit
7855f0a563
3
.github/actions/numpy_vers/action.yml
vendored
3
.github/actions/numpy_vers/action.yml
vendored
@ -16,6 +16,7 @@ runs:
|
|||||||
steps:
|
steps:
|
||||||
- id: numpy
|
- id: numpy
|
||||||
run: |
|
run: |
|
||||||
|
set -ex
|
||||||
NUMPY_BUILD_VERSION="==1.7.0"
|
NUMPY_BUILD_VERSION="==1.7.0"
|
||||||
NUMPY_DEP_VERSION=">=1.7.0"
|
NUMPY_DEP_VERSION=">=1.7.0"
|
||||||
|
|
||||||
@ -62,7 +63,7 @@ runs:
|
|||||||
;;
|
;;
|
||||||
|
|
||||||
# TODO: 'Windows*' might not be good
|
# TODO: 'Windows*' might not be good
|
||||||
Windows*:x86_64)
|
MSYS_NT-10.0-17763:x86_64)
|
||||||
case "${{ inputs.pyver }}" in
|
case "${{ inputs.pyver }}" in
|
||||||
3.5*)
|
3.5*)
|
||||||
NUMPY_BUILD_VERSION="==1.11.0"
|
NUMPY_BUILD_VERSION="==1.11.0"
|
||||||
|
12
.github/actions/win-install-sox/action.yml
vendored
Normal file
12
.github/actions/win-install-sox/action.yml
vendored
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
name: "Install SoX and add to PATH"
|
||||||
|
description: "Install SoX and add to PATH"
|
||||||
|
runs:
|
||||||
|
using: "composite"
|
||||||
|
steps:
|
||||||
|
- run: |
|
||||||
|
set -ex
|
||||||
|
wget https://sourceforge.net/projects/sox/files/sox/14.4.2/sox-14.4.2-win32.zip/download -O sox-14.4.2-win32.zip
|
||||||
|
"C:/Program Files/7-Zip/7z.exe" x -o`pwd`/bin/ -tzip -aoa sox-14.4.2-win32.zip
|
||||||
|
rm sox-*zip
|
||||||
|
echo "`pwd`/bin/sox-14.4.2/" >> $GITHUB_PATH
|
||||||
|
shell: bash
|
653
.github/workflows/windows-amd64.yml
vendored
Normal file
653
.github/workflows/windows-amd64.yml
vendored
Normal file
@ -0,0 +1,653 @@
|
|||||||
|
name: "Windows amd64"
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
env:
|
||||||
|
TASKCLUSTER_TASK_DIR: ${{ github.workspace }}
|
||||||
|
TASKCLUSTER_ARTIFACTS: ${{ github.workspace }}/artifacts
|
||||||
|
TC_MSYS_VERSION: MSYS_NT-10.0-17763
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
shell: bash
|
||||||
|
jobs:
|
||||||
|
swig_Windows:
|
||||||
|
name: "Build SWIG for Windows"
|
||||||
|
runs-on: windows-2019
|
||||||
|
steps:
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
update: true
|
||||||
|
install: >-
|
||||||
|
autoconf
|
||||||
|
automake
|
||||||
|
bison
|
||||||
|
gcc
|
||||||
|
git
|
||||||
|
make
|
||||||
|
pcre-devel
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
repository: "swig/swig"
|
||||||
|
ref: "90cdbee6a69d13b39d734083b9f91069533b0d7b"
|
||||||
|
- run: |
|
||||||
|
mkdir -p build-static/
|
||||||
|
- run: |
|
||||||
|
sh autogen.sh
|
||||||
|
./configure \
|
||||||
|
--prefix=`pwd`/build-static/ \
|
||||||
|
--program-prefix=ds-
|
||||||
|
- run: |
|
||||||
|
make -j
|
||||||
|
- run: |
|
||||||
|
make install
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.job }}
|
||||||
|
path: ${{ github.workspace }}/build-static/
|
||||||
|
swig_Linux:
|
||||||
|
name: "Build SWIG for Linux"
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
repository: "swig/swig"
|
||||||
|
ref: "90cdbee6a69d13b39d734083b9f91069533b0d7b"
|
||||||
|
- run: |
|
||||||
|
sudo apt-get install -y --no-install-recommends autoconf automake build-essential bison libpcre2-dev
|
||||||
|
- run: |
|
||||||
|
mkdir -p build-static/
|
||||||
|
- run: |
|
||||||
|
sh autogen.sh
|
||||||
|
./configure \
|
||||||
|
--prefix=${{ github.workspace }}/build-static/ \
|
||||||
|
--program-prefix=ds-
|
||||||
|
- run: |
|
||||||
|
make -j
|
||||||
|
- run: |
|
||||||
|
make install
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ github.job }}
|
||||||
|
path: ${{ github.workspace }}/build-static/
|
||||||
|
build-ctc-decoder-windows:
|
||||||
|
name: "Build CTC decoder Windows Python package for testing"
|
||||||
|
needs: [swig_Windows]
|
||||||
|
runs-on: windows-2019
|
||||||
|
steps:
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
path-type: inherit
|
||||||
|
update: true
|
||||||
|
install: >-
|
||||||
|
git
|
||||||
|
make
|
||||||
|
- uses: ilammy/msvc-dev-cmd@v1
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
- uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: 3.7.9
|
||||||
|
- run: |
|
||||||
|
python --version
|
||||||
|
python -m pip --version
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "swig_Windows"
|
||||||
|
path: ${{ github.workspace }}/native_client/ds-swig/
|
||||||
|
- name: Link ds-swig into swig
|
||||||
|
run: |
|
||||||
|
set -ex
|
||||||
|
ls -hal native_client/ds-swig/bin
|
||||||
|
ln -s ds-swig.exe native_client/ds-swig/bin/swig.exe
|
||||||
|
chmod +x native_client/ds-swig/bin/ds-swig.exe native_client/ds-swig/bin/swig.exe
|
||||||
|
- name: Remove /usr/bin/link conflicting with MSVC link.exe
|
||||||
|
run: |
|
||||||
|
rm /usr/bin/link
|
||||||
|
- run: |
|
||||||
|
make -C native_client/ctcdecode/ \
|
||||||
|
NUM_PROCESSES=$(nproc) \
|
||||||
|
bindings
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "ds_ctcdecoder-windows-test.whl"
|
||||||
|
path: ${{ github.workspace }}/native_client/ctcdecode/dist/*.whl
|
||||||
|
- run: |
|
||||||
|
make -C native_client/ctcdecode clean-keep-third-party
|
||||||
|
build-ctc-decoder-linux:
|
||||||
|
name: "Build CTC decoder Linux Python package for testing"
|
||||||
|
needs: [swig_Linux]
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
- uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: 3.6
|
||||||
|
- run: |
|
||||||
|
python --version
|
||||||
|
pip --version
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "swig_Linux"
|
||||||
|
path: ${{ github.workspace }}/native_client/ds-swig/
|
||||||
|
- run: |
|
||||||
|
ls -hal ${{ github.workspace }}/native_client/ds-swig/bin
|
||||||
|
ln -s ds-swig ${{ github.workspace }}/native_client/ds-swig/bin/swig
|
||||||
|
chmod +x ${{ github.workspace }}/native_client/ds-swig/bin/ds-swig ${{ github.workspace }}/native_client/ds-swig/bin/swig
|
||||||
|
- run: |
|
||||||
|
make -C native_client/ctcdecode/ \
|
||||||
|
NUM_PROCESSES=$(nproc) \
|
||||||
|
bindings
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "ds_ctcdecoder-linux-test.whl"
|
||||||
|
path: ${{ github.workspace }}/native_client/ctcdecode/dist/*.whl
|
||||||
|
- run: |
|
||||||
|
make -C native_client/ctcdecode clean-keep-third-party
|
||||||
|
train-test-model:
|
||||||
|
name: "Train a test model"
|
||||||
|
needs: ["build-ctc-decoder-linux"]
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
build-flavor: ["tf", "tflite"]
|
||||||
|
bitrate: ["8k", "16k"]
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 1
|
||||||
|
- uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: 3.6
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "ds_ctcdecoder-linux-test.whl"
|
||||||
|
- run: |
|
||||||
|
python --version
|
||||||
|
pip --version
|
||||||
|
- run: |
|
||||||
|
pip install --upgrade pip==19.3.1 setuptools==45.0.0 wheel==0.33.6
|
||||||
|
- run: |
|
||||||
|
pip install ds_ctcdecoder-*-cp36-cp36m-manylinux1_x86_64.whl
|
||||||
|
DS_NODECODER=y pip install --upgrade .
|
||||||
|
- run: |
|
||||||
|
bits=""
|
||||||
|
if [ "${{ matrix.bitrate }}" = "8k" ]; then
|
||||||
|
bits=8000
|
||||||
|
fi
|
||||||
|
if [ "${{ matrix.bitrate }}" = "16k" ]; then
|
||||||
|
bits=16000
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Easier to rename to that we can exercize the LDC93S1 importer code to
|
||||||
|
# generate the CSV file.
|
||||||
|
echo "Moving ${bits} to LDC93S1.wav"
|
||||||
|
mv data/smoke_test/LDC93S1_pcms16le_1_${bits}.wav data/smoke_test/LDC93S1.wav
|
||||||
|
|
||||||
|
./bin/run-tc-ldc93s1_new.sh 249 ${bits}
|
||||||
|
if [ "${{ matrix.build-flavor }}" = "tflite" ]; then
|
||||||
|
./bin/run-tc-ldc93s1_tflite.sh ${bits}
|
||||||
|
fi
|
||||||
|
- run: |
|
||||||
|
curl -vsSL https://github.com/mozilla/DeepSpeech/releases/download/v0.9.3/linux.amd64.convert_graphdef_memmapped_format.xz | xz -d > /tmp/convert_graphdef_memmapped_format
|
||||||
|
chmod +x /tmp/convert_graphdef_memmapped_format
|
||||||
|
/tmp/convert_graphdef_memmapped_format --in_graph=/tmp/train/output_graph.pb --out_graph=/tmp/train/output_graph.pbmm
|
||||||
|
if: matrix.build-flavor == 'tf'
|
||||||
|
- run: |
|
||||||
|
cp /tmp/train*/output_graph.* /tmp/
|
||||||
|
- run: |
|
||||||
|
tar -cf - \
|
||||||
|
-C /tmp/ckpt/ . \
|
||||||
|
| xz -9 -T0 > /tmp/checkpoint.tar.xz
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "test-model.${{ matrix.build-flavor }}-${{ matrix.bitrate }}.zip"
|
||||||
|
path: /tmp/output_graph.*
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "test-checkpoint.${{ matrix.build-flavor }}-${{ matrix.bitrate }}.zip"
|
||||||
|
path: /tmp/checkpoint.tar.xz
|
||||||
|
tensorflow_opt-Windows:
|
||||||
|
name: "Check cache for TensorFlow"
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
outputs:
|
||||||
|
status: ${{ steps.check_artifact_exists.outputs.status }}
|
||||||
|
cache_key: ${{ steps.get_cache_key.outputs.key }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 1
|
||||||
|
- id: get_cache_key
|
||||||
|
uses: ./.github/actions/get_cache_key
|
||||||
|
with:
|
||||||
|
extras: "7"
|
||||||
|
- id: check_artifact_exists
|
||||||
|
uses: ./.github/actions/check_artifact_exists
|
||||||
|
with:
|
||||||
|
name: ${{ steps.get_cache_key.outputs.key }}
|
||||||
|
build-tensorflow-Windows:
|
||||||
|
name: "Build TensorFlow (opt) for Windows"
|
||||||
|
needs: tensorflow_opt-Windows
|
||||||
|
runs-on: windows-2019
|
||||||
|
steps:
|
||||||
|
- run: true
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'found'
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
path-type: inherit
|
||||||
|
update: true
|
||||||
|
install: >-
|
||||||
|
git
|
||||||
|
patch
|
||||||
|
tar
|
||||||
|
unzip
|
||||||
|
zip
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'missing'
|
||||||
|
- uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: 3.7.9
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'missing'
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
submodules: 'recursive'
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'missing'
|
||||||
|
# It's important that this PATH change only happens *after* the checkout
|
||||||
|
# above, because otherwise the checkout fails when persisisting the
|
||||||
|
# credentials for submodules due to using MSYS2 Git
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'missing'
|
||||||
|
- run: ./ci_scripts/tf-setup.sh
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'missing'
|
||||||
|
- run: ./ci_scripts/tf-build.sh "--windows-cpu"
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'missing'
|
||||||
|
- run: ./ci_scripts/tf-package.sh
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'missing'
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ needs.tensorflow_opt-Windows.outputs.cache_key }}
|
||||||
|
path: ${{ github.workspace }}/artifacts/home.tar.xz
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'missing'
|
||||||
|
build-lib_Windows:
|
||||||
|
name: "Build libdeepspeech.so and deepspeech C++ binary"
|
||||||
|
runs-on: windows-2019
|
||||||
|
needs: [build-tensorflow-Windows, tensorflow_opt-Windows]
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
build-flavor: ["tf", "tflite"]
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
- uses: ilammy/msvc-dev-cmd@v1
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
update: true
|
||||||
|
install: >-
|
||||||
|
git
|
||||||
|
make
|
||||||
|
patch
|
||||||
|
pkg-config
|
||||||
|
tar
|
||||||
|
unzip
|
||||||
|
zip
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: ${{ needs.tensorflow_opt-Windows.outputs.cache_key }}
|
||||||
|
path: ${{ github.workspace }}/
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'missing'
|
||||||
|
- uses: ./.github/actions/check_artifact_exists
|
||||||
|
with:
|
||||||
|
name: ${{ needs.tensorflow_opt-Windows.outputs.cache_key }}
|
||||||
|
path: ${{ github.workspace }}/
|
||||||
|
download: true
|
||||||
|
if: needs.tensorflow_opt-Windows.outputs.status == 'found'
|
||||||
|
- run: |
|
||||||
|
"C:/Program Files/7-Zip/7z.exe" x home.tar.xz -so | "C:/Program Files/7-Zip/7z.exe" x -aos -si -ttar -o`pwd`
|
||||||
|
rm home.tar.xz
|
||||||
|
- run: |
|
||||||
|
git status
|
||||||
|
- run: ./ci_scripts/host-build.sh ${{ matrix.build-flavor }}
|
||||||
|
- run: ./ci_scripts/package.sh
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "native_client.${{ matrix.build-flavor }}.tar.xz"
|
||||||
|
path: ${{ github.workspace }}/artifacts/native_client.tar.xz
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "libdeepspeech.${{ matrix.build-flavor }}.zip"
|
||||||
|
path: ${{ github.workspace }}/artifacts/libdeepspeech.zip
|
||||||
|
build-python-Windows:
|
||||||
|
name: "Build Python bindings for Windows"
|
||||||
|
runs-on: windows-2019
|
||||||
|
needs: [build-lib_Windows, swig_Windows]
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
build-flavor: ["tf", "tflite"]
|
||||||
|
python-version: [3.6.8, 3.7.9, 3.8.8, 3.9.2]
|
||||||
|
steps:
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
path-type: inherit
|
||||||
|
update: true
|
||||||
|
install: >-
|
||||||
|
make
|
||||||
|
- uses: ilammy/msvc-dev-cmd@v1
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 1
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "native_client.${{ matrix.build-flavor }}.tar.xz"
|
||||||
|
path: ${{ github.workspace }}/tensorflow/bazel-bin/native_client/
|
||||||
|
- run: |
|
||||||
|
pushd tensorflow/bazel-bin/native_client/
|
||||||
|
"C:/Program Files/7-Zip/7z.exe" x native_client.tar.xz -so | "C:/Program Files/7-Zip/7z.exe" x -aoa -si -ttar -o`pwd`
|
||||||
|
ls -hal
|
||||||
|
popd
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "swig_Windows"
|
||||||
|
path: ${{ github.workspace }}/native_client/ds-swig/
|
||||||
|
- name: Link ds-swig into swig
|
||||||
|
run: |
|
||||||
|
set -ex
|
||||||
|
ls -hal native_client/ds-swig/bin
|
||||||
|
ln -s ds-swig.exe native_client/ds-swig/bin/swig.exe
|
||||||
|
chmod +x native_client/ds-swig/bin/ds-swig.exe native_client/ds-swig/bin/swig.exe
|
||||||
|
- uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
- name: Remove /usr/bin/link conflicting with MSVC link.exe
|
||||||
|
run: |
|
||||||
|
rm /usr/bin/link
|
||||||
|
- id: get_numpy
|
||||||
|
uses: ./.github/actions/numpy_vers
|
||||||
|
with:
|
||||||
|
pyver: ${{ matrix.python-version }}
|
||||||
|
- uses: ./.github/actions/python-build
|
||||||
|
with:
|
||||||
|
build_flavor: ${{ matrix.build-flavor }}
|
||||||
|
numpy_build: "${{ steps.get_numpy.outputs.build_version }}"
|
||||||
|
numpy_dep: "${{ steps.get_numpy.outputs.dep_version }}"
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "deepspeech-${{ matrix.build-flavor }}-${{ matrix.python-version }}.whl"
|
||||||
|
path: ${{ github.workspace }}/wheels/*.whl
|
||||||
|
build-nodejs-Windows:
|
||||||
|
name: "Build NodeJS/ElectronJS for Windows"
|
||||||
|
runs-on: windows-2019
|
||||||
|
needs: [build-lib_Windows, swig_Windows]
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
build-flavor: ["tf", "tflite"]
|
||||||
|
steps:
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
path-type: inherit
|
||||||
|
update: true
|
||||||
|
install: >-
|
||||||
|
make
|
||||||
|
tar
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 1
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "native_client.${{ matrix.build-flavor }}.tar.xz"
|
||||||
|
path: ${{ github.workspace }}/tensorflow/bazel-bin/native_client/
|
||||||
|
- run: |
|
||||||
|
pushd tensorflow/bazel-bin/native_client/
|
||||||
|
"C:/Program Files/7-Zip/7z.exe" x native_client.tar.xz -so | "C:/Program Files/7-Zip/7z.exe" x -aoa -si -ttar -o`pwd`
|
||||||
|
ls -hal
|
||||||
|
popd
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "swig_Windows"
|
||||||
|
path: ${{ github.workspace }}/native_client/ds-swig/
|
||||||
|
- name: Link ds-swig into swig
|
||||||
|
run: |
|
||||||
|
set -ex
|
||||||
|
ls -hal native_client/ds-swig/bin
|
||||||
|
ln -s ds-swig.exe native_client/ds-swig/bin/swig.exe
|
||||||
|
chmod +x native_client/ds-swig/bin/ds-swig.exe native_client/ds-swig/bin/swig.exe
|
||||||
|
- uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: 12
|
||||||
|
- uses: ./.github/actions/node-build
|
||||||
|
with:
|
||||||
|
nodejs_versions: "10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0"
|
||||||
|
electronjs_versions: "5.0.13 6.0.12 6.1.7 7.0.1 7.1.8 8.0.1 9.0.1 9.1.0 9.2.0 10.0.0 10.1.0 11.0.0 12.0.0"
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "nodewrapper-${{ matrix.build-flavor }}.tar.gz"
|
||||||
|
path: ${{ github.workspace }}/native_client/javascript/wrapper.tar.gz
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "deepspeech-${{ matrix.build-flavor }}.tgz"
|
||||||
|
path: ${{ github.workspace }}/native_client/javascript/deepspeech-*.tgz
|
||||||
|
test-cpp-Windows:
|
||||||
|
name: "Test C++ binary on Windows"
|
||||||
|
runs-on: windows-2019
|
||||||
|
needs: [build-lib_Windows, train-test-model]
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
build-flavor: ["tf", "tflite"]
|
||||||
|
env:
|
||||||
|
TASKCLUSTER_TMP_DIR: tmp/
|
||||||
|
DEEPSPEECH_TEST_MODEL: tmp/output_graph.pb
|
||||||
|
EXPECTED_TENSORFLOW_VERSION: "TensorFlow: v2.3.0-6-g23ad988"
|
||||||
|
steps:
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 1
|
||||||
|
- name: Download native_client.tar.xz
|
||||||
|
uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "native_client.${{ matrix.build-flavor }}.tar.xz"
|
||||||
|
path: ${{ env.TASKCLUSTER_TMP_DIR }}
|
||||||
|
- name: Extract native_client.tar.xz
|
||||||
|
run: |
|
||||||
|
mkdir -p ${{ env.TASKCLUSTER_TMP_DIR }}/ds
|
||||||
|
pushd ${{ env.TASKCLUSTER_TMP_DIR }}/ds
|
||||||
|
"C:/Program Files/7-Zip/7z.exe" x ../native_client.tar.xz -so | "C:/Program Files/7-Zip/7z.exe" x -aoa -si -ttar -o`pwd`
|
||||||
|
popd
|
||||||
|
- name: Download trained test model
|
||||||
|
uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "test-model.${{ matrix.build-flavor }}-16k.zip"
|
||||||
|
path: ${{ env.TASKCLUSTER_TMP_DIR }}
|
||||||
|
- run: |
|
||||||
|
ls -hal ${{ env.TASKCLUSTER_TMP_DIR }}/
|
||||||
|
- uses: ./.github/actions/run-tests
|
||||||
|
with:
|
||||||
|
runtime: "cppwin"
|
||||||
|
build-flavor: ${{ matrix.build-flavor }}
|
||||||
|
bitrate: "16k"
|
||||||
|
model-kind: ""
|
||||||
|
test-py-Windows:
|
||||||
|
name: "Test Python bindings on Windows"
|
||||||
|
runs-on: windows-2019
|
||||||
|
needs: [ build-python-Windows, train-test-model ]
|
||||||
|
if: ${{ github.event_name == 'pull_request' }}
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
python-version: [3.6.8, 3.7.9, 3.8.8, 3.9.2]
|
||||||
|
build-flavor: ["tf", "tflite"]
|
||||||
|
models: ["test", "prod"]
|
||||||
|
bitrate: ["8k", "16k"]
|
||||||
|
env:
|
||||||
|
TASKCLUSTER_TMP_DIR: tmp/
|
||||||
|
DEEPSPEECH_PROD_MODEL: https://github.com/reuben/DeepSpeech/releases/download/v0.7.0-alpha.3/output_graph.pb
|
||||||
|
DEEPSPEECH_PROD_MODEL_MMAP: https://github.com/reuben/DeepSpeech/releases/download/v0.7.0-alpha.3/output_graph.pbmm
|
||||||
|
DEEPSPEECH_TEST_MODEL: tmp/output_graph.pb
|
||||||
|
EXPECTED_TENSORFLOW_VERSION: "TensorFlow: v2.3.0-6-g23ad988"
|
||||||
|
steps:
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
path-type: inherit
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 1
|
||||||
|
- uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
- uses: ./.github/actions/win-install-sox
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "deepspeech-${{ matrix.build-flavor }}-${{ matrix.python-version }}.whl"
|
||||||
|
path: ${{ env.TASKCLUSTER_TMP_DIR }}
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "test-model.${{ matrix.build-flavor }}-${{ matrix.bitrate }}.zip"
|
||||||
|
path: ${{ env.TASKCLUSTER_TMP_DIR }}
|
||||||
|
if: matrix.models == 'test'
|
||||||
|
- run: |
|
||||||
|
ls -hal ${{ env.TASKCLUSTER_TMP_DIR }}/
|
||||||
|
if: matrix.models == 'test'
|
||||||
|
- run: |
|
||||||
|
ls -hal ${{ env.TASKCLUSTER_TMP_DIR }}/
|
||||||
|
python -m pip install --only-binary :all: --upgrade ${{ env.TASKCLUSTER_TMP_DIR }}/deepspeech*.whl
|
||||||
|
- uses: ./.github/actions/run-tests
|
||||||
|
with:
|
||||||
|
runtime: "python"
|
||||||
|
build-flavor: ${{ matrix.build-flavor }}
|
||||||
|
bitrate: ${{ matrix.bitrate }}
|
||||||
|
model-kind: ${{ matrix.models }}
|
||||||
|
test-nodejs-Windows:
|
||||||
|
name: "Test NodeJS bindings on Windows"
|
||||||
|
runs-on: windows-2019
|
||||||
|
needs: [ build-nodejs-Windows, train-test-model ]
|
||||||
|
if: ${{ github.event_name == 'pull_request' }}
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
nodejs-version: [10, 12, 14, 15]
|
||||||
|
build-flavor: ["tf", "tflite"]
|
||||||
|
models: ["test"]
|
||||||
|
bitrate: ["16k"]
|
||||||
|
env:
|
||||||
|
TASKCLUSTER_TMP_DIR: tmp/
|
||||||
|
DEEPSPEECH_PROD_MODEL: https://github.com/reuben/DeepSpeech/releases/download/v0.7.0-alpha.3/output_graph.pb
|
||||||
|
DEEPSPEECH_PROD_MODEL_MMAP: https://github.com/reuben/DeepSpeech/releases/download/v0.7.0-alpha.3/output_graph.pbmm
|
||||||
|
DEEPSPEECH_TEST_MODEL: tmp/output_graph.pb
|
||||||
|
EXPECTED_TENSORFLOW_VERSION: "TensorFlow: v2.3.0-6-g23ad988"
|
||||||
|
steps:
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
path-type: inherit
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 1
|
||||||
|
- uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: ${{ matrix.nodejs-version }}
|
||||||
|
- uses: ./.github/actions/win-install-sox
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "deepspeech-${{ matrix.build-flavor }}.tgz"
|
||||||
|
path: ${{ env.TASKCLUSTER_TMP_DIR }}
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "test-model.${{ matrix.build-flavor }}-${{ matrix.bitrate }}.zip"
|
||||||
|
path: ${{ env.TASKCLUSTER_TMP_DIR }}
|
||||||
|
if: matrix.models == 'test'
|
||||||
|
- run: |
|
||||||
|
ls -hal ${{ env.TASKCLUSTER_TMP_DIR }}/
|
||||||
|
if: matrix.models == 'test'
|
||||||
|
- run: |
|
||||||
|
ls -hal ${{ env.TASKCLUSTER_TMP_DIR }}/
|
||||||
|
npm install ${{ env.TASKCLUSTER_TMP_DIR }}/deepspeech*.tgz
|
||||||
|
- uses: ./.github/actions/run-tests
|
||||||
|
with:
|
||||||
|
runtime: "node"
|
||||||
|
build-flavor: ${{ matrix.build-flavor }}
|
||||||
|
bitrate: ${{ matrix.bitrate }}
|
||||||
|
model-kind: ${{ matrix.models }}
|
||||||
|
test-electronjs-Windows:
|
||||||
|
name: "Test ElectronJS bindings on Windows"
|
||||||
|
runs-on: windows-2019
|
||||||
|
needs: [ build-nodejs-Windows, train-test-model ]
|
||||||
|
if: ${{ github.event_name == 'pull_request' }}
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
electronjs-version: [5.0.13, 6.1.7, 7.1.8, 8.0.1, 9.2.0, 10.1.0, 11.0.0, 12.0.0]
|
||||||
|
build-flavor: ["tf", "tflite"]
|
||||||
|
models: ["test"]
|
||||||
|
bitrate: ["16k"]
|
||||||
|
env:
|
||||||
|
TASKCLUSTER_TMP_DIR: tmp/
|
||||||
|
DEEPSPEECH_PROD_MODEL: https://github.com/reuben/DeepSpeech/releases/download/v0.7.0-alpha.3/output_graph.pb
|
||||||
|
DEEPSPEECH_PROD_MODEL_MMAP: https://github.com/reuben/DeepSpeech/releases/download/v0.7.0-alpha.3/output_graph.pbmm
|
||||||
|
DEEPSPEECH_TEST_MODEL: tmp/output_graph.pb
|
||||||
|
EXPECTED_TENSORFLOW_VERSION: "TensorFlow: v2.3.0-6-g23ad988"
|
||||||
|
steps:
|
||||||
|
- name: Switch git-bash shell to MSYS2 shell by adding MSYS2 path to PATH front
|
||||||
|
run: echo "D:\a\_temp\msys\msys64\usr\bin" >> $GITHUB_PATH
|
||||||
|
- uses: msys2/setup-msys2@v2
|
||||||
|
with:
|
||||||
|
msystem: MSYS
|
||||||
|
path-type: inherit
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 1
|
||||||
|
- uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: 12
|
||||||
|
- uses: ./.github/actions/win-install-sox
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "deepspeech-${{ matrix.build-flavor }}.tgz"
|
||||||
|
path: ${{ env.TASKCLUSTER_TMP_DIR }}
|
||||||
|
- uses: actions/download-artifact@v2
|
||||||
|
with:
|
||||||
|
name: "test-model.${{ matrix.build-flavor }}-${{ matrix.bitrate }}.zip"
|
||||||
|
path: ${{ env.TASKCLUSTER_TMP_DIR }}
|
||||||
|
if: matrix.models == 'test'
|
||||||
|
- run: |
|
||||||
|
ls -hal ${{ env.TASKCLUSTER_TMP_DIR }}/
|
||||||
|
if: matrix.models == 'test'
|
||||||
|
- name: Install deepspeech NodeJS package
|
||||||
|
run: |
|
||||||
|
ls -hal ${{ env.TASKCLUSTER_TMP_DIR }}/
|
||||||
|
npm install ${{ env.TASKCLUSTER_TMP_DIR }}/deepspeech*.tgz
|
||||||
|
- run: |
|
||||||
|
npm install electron@${{ matrix.electronjs-version }}
|
||||||
|
- uses: ./.github/actions/run-tests
|
||||||
|
with:
|
||||||
|
runtime: "electronjs"
|
||||||
|
build-flavor: ${{ matrix.build-flavor }}
|
||||||
|
bitrate: ${{ matrix.bitrate }}
|
||||||
|
model-kind: ${{ matrix.models }}
|
||||||
|
timeout-minutes: 5
|
@ -109,7 +109,14 @@ verify_bazel_rebuild()
|
|||||||
|
|
||||||
symlink_electron()
|
symlink_electron()
|
||||||
{
|
{
|
||||||
ln -s Electron.app/Contents/MacOS/Electron node_modules/electron/dist/node
|
if [ "${OS}" = "Darwin" ]; then
|
||||||
|
ln -s Electron.app/Contents/MacOS/Electron node_modules/electron/dist/node
|
||||||
|
else
|
||||||
|
ln -s electron "node_modules/electron/dist/node"
|
||||||
|
if [ -f "node_modules/electron/dist/chrome-sandbox" ]; then
|
||||||
|
export ELECTRON_DISABLE_SANDBOX=1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
export_node_bin_path()
|
export_node_bin_path()
|
||||||
|
@ -10,6 +10,7 @@ if [ "${OS}" = "Linux" ]; then
|
|||||||
fi;
|
fi;
|
||||||
|
|
||||||
if [ "${OS}" = "${TC_MSYS_VERSION}" ]; then
|
if [ "${OS}" = "${TC_MSYS_VERSION}" ]; then
|
||||||
|
export TASKCLUSTER_TASK_DIR="$(cygpath ${TASKCLUSTER_TASK_DIR})"
|
||||||
export DS_ROOT_TASK=${TASKCLUSTER_TASK_DIR}
|
export DS_ROOT_TASK=${TASKCLUSTER_TASK_DIR}
|
||||||
export PYENV_ROOT="${TASKCLUSTER_TASK_DIR}/pyenv-root"
|
export PYENV_ROOT="${TASKCLUSTER_TASK_DIR}/pyenv-root"
|
||||||
export PLATFORM_EXE_SUFFIX=.exe
|
export PLATFORM_EXE_SUFFIX=.exe
|
||||||
|
23
ci_scripts/cppwin_tflite-tests.sh
Executable file
23
ci_scripts/cppwin_tflite-tests.sh
Executable file
@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -xe
|
||||||
|
|
||||||
|
source $(dirname "$0")/all-vars.sh
|
||||||
|
source $(dirname "$0")/all-utils.sh
|
||||||
|
source $(dirname "$0")/asserts.sh
|
||||||
|
|
||||||
|
bitrate=$1
|
||||||
|
set_ldc_sample_filename "${bitrate}"
|
||||||
|
|
||||||
|
model_source=${DEEPSPEECH_TEST_MODEL//.pb/.tflite}
|
||||||
|
model_name=$(basename "${model_source}")
|
||||||
|
model_name_mmap=$(basename "${model_source}")
|
||||||
|
export DATA_TMP_DIR=${TASKCLUSTER_TMP_DIR}
|
||||||
|
|
||||||
|
download_material "${TASKCLUSTER_TMP_DIR}/ds"
|
||||||
|
|
||||||
|
export PATH=${TASKCLUSTER_TMP_DIR}/ds/:$PATH
|
||||||
|
|
||||||
|
check_versions
|
||||||
|
|
||||||
|
run_basic_inference_tests
|
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
|
set -o pipefail
|
||||||
|
|
||||||
source $(dirname $0)/tf-vars.sh
|
source $(dirname $0)/tf-vars.sh
|
||||||
|
|
||||||
@ -21,7 +22,10 @@ pushd ${DS_ROOT_TASK}/tensorflow/
|
|||||||
fi;
|
fi;
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
"--linux-cpu"|"--darwin-cpu"|"--windows-cpu")
|
"--windows-cpu")
|
||||||
|
echo "" | TF_NEED_CUDA=0 ./configure && ${BAZEL_BUILD} ${OPT_OR_DBG} ${BAZEL_OPT_FLAGS} ${BAZEL_EXTRA_FLAGS} ${BUILD_TARGET_LIBDEEPSPEECH} ${BUILD_TARGET_LITE_LIB} --workspace_status_command="bash native_client/bazel_workspace_status_cmd.sh"
|
||||||
|
;;
|
||||||
|
"--linux-cpu"|"--darwin-cpu")
|
||||||
echo "" | TF_NEED_CUDA=0 ./configure && ${BAZEL_BUILD} ${OPT_OR_DBG} ${BAZEL_OPT_FLAGS} ${BAZEL_EXTRA_FLAGS} ${BUILD_TARGET_LIB_CPP_API} ${BUILD_TARGET_LITE_LIB}
|
echo "" | TF_NEED_CUDA=0 ./configure && ${BAZEL_BUILD} ${OPT_OR_DBG} ${BAZEL_OPT_FLAGS} ${BAZEL_EXTRA_FLAGS} ${BUILD_TARGET_LIB_CPP_API} ${BUILD_TARGET_LITE_LIB}
|
||||||
;;
|
;;
|
||||||
"--linux-cuda"|"--windows-cuda")
|
"--linux-cuda"|"--windows-cuda")
|
||||||
|
@ -109,4 +109,4 @@ mkdir -p ${TASKCLUSTER_ARTIFACTS} || true
|
|||||||
|
|
||||||
# Taken from https://www.tensorflow.org/install/source
|
# Taken from https://www.tensorflow.org/install/source
|
||||||
# Only future is needed for our builds, as we don't build the Python package
|
# Only future is needed for our builds, as we don't build the Python package
|
||||||
pip install -U --user future==0.17.1 || true
|
python -m pip install -U --user future==0.17.1 || true
|
||||||
|
@ -40,9 +40,6 @@ elif [ "${OS}" = "${TC_MSYS_VERSION}" ]; then
|
|||||||
export TASKCLUSTER_ARTIFACTS="$(cygpath ${TASKCLUSTER_ARTIFACTS})"
|
export TASKCLUSTER_ARTIFACTS="$(cygpath ${TASKCLUSTER_ARTIFACTS})"
|
||||||
|
|
||||||
export DS_ROOT_TASK=${TASKCLUSTER_TASK_DIR}
|
export DS_ROOT_TASK=${TASKCLUSTER_TASK_DIR}
|
||||||
export BAZEL_VC='C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC'
|
|
||||||
export BAZEL_SH='C:\builds\tc-workdir\msys64\usr\bin\bash'
|
|
||||||
export TC_WIN_BUILD_PATH='C:\builds\tc-workdir\msys64\usr\bin;C:\Python36'
|
|
||||||
export MSYS2_ARG_CONV_EXCL='//'
|
export MSYS2_ARG_CONV_EXCL='//'
|
||||||
|
|
||||||
mkdir -p ${TASKCLUSTER_TASK_DIR}/tmp/
|
mkdir -p ${TASKCLUSTER_TASK_DIR}/tmp/
|
||||||
@ -119,19 +116,15 @@ export TF_NEED_ROCM=0
|
|||||||
# This should be gcc-5, hopefully. CUDA and TensorFlow might not be happy, otherwise.
|
# This should be gcc-5, hopefully. CUDA and TensorFlow might not be happy, otherwise.
|
||||||
export GCC_HOST_COMPILER_PATH=/usr/bin/gcc
|
export GCC_HOST_COMPILER_PATH=/usr/bin/gcc
|
||||||
|
|
||||||
if [ "${OS}" = "${TC_MSYS_VERSION}" ]; then
|
if [ "${OS}" = "Linux" ]; then
|
||||||
export PYTHON_BIN_PATH=C:/Python36/python.exe
|
source /etc/os-release
|
||||||
else
|
if [ "${ID}" = "ubuntu" -a "${VERSION_ID}" = "20.04" ]; then
|
||||||
if [ "${OS}" = "Linux" ]; then
|
export PYTHON_BIN_PATH=/usr/bin/python3
|
||||||
source /etc/os-release
|
|
||||||
if [ "${ID}" = "ubuntu" -a "${VERSION_ID}" = "20.04" ]; then
|
|
||||||
export PYTHON_BIN_PATH=/usr/bin/python3
|
|
||||||
else
|
|
||||||
export PYTHON_BIN_PATH=/usr/bin/python2.7
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
export PYTHON_BIN_PATH=/usr/bin/python2.7
|
export PYTHON_BIN_PATH=/usr/bin/python2.7
|
||||||
fi
|
fi
|
||||||
|
elif [ "${OS}" != "${TC_MSYS_VERSION}" ]; then
|
||||||
|
export PYTHON_BIN_PATH=/usr/bin/python2.7
|
||||||
fi
|
fi
|
||||||
|
|
||||||
## Below, define or export some build variables
|
## Below, define or export some build variables
|
||||||
@ -186,15 +179,7 @@ fi
|
|||||||
BAZEL_IOS_ARM64_FLAGS="--config=ios_arm64 --define=runtime=tflite --copt=-DTFLITE_WITH_RUY_GEMV"
|
BAZEL_IOS_ARM64_FLAGS="--config=ios_arm64 --define=runtime=tflite --copt=-DTFLITE_WITH_RUY_GEMV"
|
||||||
BAZEL_IOS_X86_64_FLAGS="--config=ios_x86_64 --define=runtime=tflite --copt=-DTFLITE_WITH_RUY_GEMV"
|
BAZEL_IOS_X86_64_FLAGS="--config=ios_x86_64 --define=runtime=tflite --copt=-DTFLITE_WITH_RUY_GEMV"
|
||||||
|
|
||||||
if [ "${OS}" = "${TC_MSYS_VERSION}" ]; then
|
if [ "${OS}" != "${TC_MSYS_VERSION}" ]; then
|
||||||
# Somehow, even with Python being in the PATH, Bazel on windows struggles
|
|
||||||
# with '/usr/bin/env python' ...
|
|
||||||
#
|
|
||||||
# We also force TMP/TEMP otherwise Bazel will pick default Windows one
|
|
||||||
# under %USERPROFILE%\AppData\Local\Temp and with 8.3 file format convention
|
|
||||||
# it messes with cxx_builtin_include_directory
|
|
||||||
BAZEL_EXTRA_FLAGS="--action_env=PATH=${TC_WIN_BUILD_PATH} --action_env=TEMP=${TEMP} --action_env=TMP=${TMP}"
|
|
||||||
else
|
|
||||||
BAZEL_EXTRA_FLAGS="--config=noaws --config=nogcp --config=nohdfs --config=nonccl --copt=-fvisibility=hidden"
|
BAZEL_EXTRA_FLAGS="--config=noaws --config=nogcp --config=nohdfs --config=nonccl --copt=-fvisibility=hidden"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -211,3 +196,4 @@ BUILD_TARGET_GRAPH_BENCHMARK="//tensorflow/tools/benchmark:benchmark_model"
|
|||||||
BUILD_TARGET_TOCO="//tensorflow/lite/toco:toco"
|
BUILD_TARGET_TOCO="//tensorflow/lite/toco:toco"
|
||||||
BUILD_TARGET_LITE_BENCHMARK="//tensorflow/lite/tools/benchmark:benchmark_model"
|
BUILD_TARGET_LITE_BENCHMARK="//tensorflow/lite/tools/benchmark:benchmark_model"
|
||||||
BUILD_TARGET_LITE_LIB="//tensorflow/lite/c:libtensorflowlite_c.so"
|
BUILD_TARGET_LITE_LIB="//tensorflow/lite/c:libtensorflowlite_c.so"
|
||||||
|
BUILD_TARGET_LIBDEEPSPEECH="//native_client:libdeepspeech.so"
|
||||||
|
@ -45,16 +45,16 @@ workspace_status.cc:
|
|||||||
# Enforce PATH here because swig calls from build_ext looses track of some
|
# Enforce PATH here because swig calls from build_ext looses track of some
|
||||||
# variables over several runs
|
# variables over several runs
|
||||||
bindings: clean-keep-third-party workspace_status.cc $(DS_SWIG_DEP)
|
bindings: clean-keep-third-party workspace_status.cc $(DS_SWIG_DEP)
|
||||||
pip3 install --quiet $(PYTHON_PACKAGES) wheel==0.33.6 setuptools==45.0.0
|
python -m pip install --quiet $(PYTHON_PACKAGES) wheel==0.33.6 setuptools==45.0.0
|
||||||
DISTUTILS_USE_SDK=1 PATH=$(DS_SWIG_BIN_PATH):$(TOOLCHAIN):$$PATH SWIG_LIB="$(SWIG_LIB)" AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) LIBEXE=$(LIBEXE) CFLAGS="$(CFLAGS) $(CXXFLAGS)" LDFLAGS="$(LDFLAGS_NEEDED)" $(PYTHON_PATH) $(NUMPY_INCLUDE) python3 ./setup.py build_ext --num_processes $(NUM_PROCESSES) $(PYTHON_PLATFORM_NAME) $(SETUP_FLAGS)
|
DISTUTILS_USE_SDK=1 PATH=$(DS_SWIG_BIN_PATH):$(TOOLCHAIN):$$PATH SWIG_LIB="$(SWIG_LIB)" AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) LIBEXE=$(LIBEXE) CFLAGS="$(CFLAGS) $(CXXFLAGS)" LDFLAGS="$(LDFLAGS_NEEDED)" $(PYTHON_PATH) $(NUMPY_INCLUDE) python ./setup.py build_ext --num_processes $(NUM_PROCESSES) $(PYTHON_PLATFORM_NAME) $(SETUP_FLAGS)
|
||||||
find temp_build -type f -name "*.o" -delete
|
find temp_build -type f -name "*.o" -delete
|
||||||
DISTUTILS_USE_SDK=1 AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) LIBEXE=$(LIBEXE) CFLAGS="$(CFLAGS) $(CXXFLAGS)" LDFLAGS="$(LDFLAGS_NEEDED)" $(PYTHON_PATH) $(NUMPY_INCLUDE) python3 ./setup.py bdist_wheel $(PYTHON_PLATFORM_NAME) $(SETUP_FLAGS)
|
DISTUTILS_USE_SDK=1 AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) LIBEXE=$(LIBEXE) CFLAGS="$(CFLAGS) $(CXXFLAGS)" LDFLAGS="$(LDFLAGS_NEEDED)" $(PYTHON_PATH) $(NUMPY_INCLUDE) python ./setup.py bdist_wheel $(PYTHON_PLATFORM_NAME) $(SETUP_FLAGS)
|
||||||
rm -rf temp_build
|
rm -rf temp_build
|
||||||
|
|
||||||
bindings-debug: clean-keep-third-party workspace_status.cc $(DS_SWIG_DEP)
|
bindings-debug: clean-keep-third-party workspace_status.cc $(DS_SWIG_DEP)
|
||||||
pip3 install --quiet $(PYTHON_PACKAGES) wheel==0.33.6 setuptools==45.0.0
|
python -m pip install --quiet $(PYTHON_PACKAGES) wheel==0.33.6 setuptools==45.0.0
|
||||||
DISTUTILS_USE_SDK=1 PATH=$(DS_SWIG_BIN_PATH):$(TOOLCHAIN):$$PATH SWIG_LIB="$(SWIG_LIB)" AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) LIBEXE=$(LIBEXE) CFLAGS="$(CFLAGS) $(CXXFLAGS) -DDEBUG" LDFLAGS="$(LDFLAGS_NEEDED)" $(PYTHON_PATH) $(NUMPY_INCLUDE) python3 ./setup.py build_ext --debug --num_processes $(NUM_PROCESSES) $(PYTHON_PLATFORM_NAME) $(SETUP_FLAGS)
|
DISTUTILS_USE_SDK=1 PATH=$(DS_SWIG_BIN_PATH):$(TOOLCHAIN):$$PATH SWIG_LIB="$(SWIG_LIB)" AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) LIBEXE=$(LIBEXE) CFLAGS="$(CFLAGS) $(CXXFLAGS) -DDEBUG" LDFLAGS="$(LDFLAGS_NEEDED)" $(PYTHON_PATH) $(NUMPY_INCLUDE) python ./setup.py build_ext --debug --num_processes $(NUM_PROCESSES) $(PYTHON_PLATFORM_NAME) $(SETUP_FLAGS)
|
||||||
$(GENERATE_DEBUG_SYMS)
|
$(GENERATE_DEBUG_SYMS)
|
||||||
find temp_build -type f -name "*.o" -delete
|
find temp_build -type f -name "*.o" -delete
|
||||||
DISTUTILS_USE_SDK=1 AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) LIBEXE=$(LIBEXE) CFLAGS="$(CFLAGS) $(CXXFLAGS) -DDEBUG" LDFLAGS="$(LDFLAGS_NEEDED)" $(PYTHON_PATH) $(NUMPY_INCLUDE) python3 ./setup.py bdist_wheel $(PYTHON_PLATFORM_NAME) $(SETUP_FLAGS)
|
DISTUTILS_USE_SDK=1 AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) LIBEXE=$(LIBEXE) CFLAGS="$(CFLAGS) $(CXXFLAGS) -DDEBUG" LDFLAGS="$(LDFLAGS_NEEDED)" $(PYTHON_PATH) $(NUMPY_INCLUDE) python ./setup.py bdist_wheel $(PYTHON_PLATFORM_NAME) $(SETUP_FLAGS)
|
||||||
rm -rf temp_build
|
rm -rf temp_build
|
||||||
|
@ -55,7 +55,7 @@ PYTHON_PLATFORM_NAME ?= --plat-name manylinux1_x86_64
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(TARGET),host-win)
|
ifeq ($(findstring _NT,$(OS)),_NT)
|
||||||
TOOLCHAIN := '$(VCToolsInstallDir)\bin\Hostx64\x64\'
|
TOOLCHAIN := '$(VCToolsInstallDir)\bin\Hostx64\x64\'
|
||||||
TOOL_CC := cl.exe
|
TOOL_CC := cl.exe
|
||||||
TOOL_CXX := cl.exe
|
TOOL_CXX := cl.exe
|
||||||
|
Loading…
Reference in New Issue
Block a user