diff options
author | Hengjian Jia | 2023-03-18 21:41:23 +0000 |
---|---|---|
committer | Hengjian Jia | 2023-03-18 21:41:23 +0000 |
commit | ae5e665e30e6130667bf2de37d9fab58e99629a4 (patch) | |
tree | 9905e325452547d350aa236c23116f6bd3507578 | |
parent | e4c129b0a7c061538d265135e487c0012a4288a9 (diff) | |
parent | 4ee00606d41e29963ae0771eff919485dd2443bc (diff) | |
download | aur-ae5e665e30e6130667bf2de37d9fab58e99629a4.tar.gz |
Update to 2.0.1
-rw-r--r-- | .SRCINFO | 26 | ||||
-rw-r--r-- | PKGBUILD | 50 | ||||
-rw-r--r-- | use-system-libs.diff | 165 |
3 files changed, 231 insertions, 10 deletions
@@ -3,17 +3,39 @@ pkgbase = python-torchaudio pkgver = 2.0.1 pkgrel = 1 url = https://github.com/pytorch/audio - arch = any + arch = x86_64 + arch = i686 license = BSD makedepends = git makedepends = python-setuptools makedepends = cmake makedepends = ninja + makedepends = boost depends = python depends = python-pytorch + depends = bzip2 + depends = xz + depends = opencore-amr + depends = lame + depends = libogg + depends = libFLAC.so + depends = libvorbis + depends = opus + depends = opusfile + depends = zlib optdepends = python-kaldi-io conflicts = python-torchaudio-git source = git+https://github.com/pytorch/audio#tag=v2.0.1 - sha512sums = SKIP + source = git+https://github.com/kaldi-asr/kaldi.git + source = git+https://github.com/kpu/kenlm.git + source = flashlight-text::git+https://github.com/flashlight/text.git + source = https://downloads.sourceforge.net/project/sox/sox/14.4.2/sox-14.4.2.tar.bz2 + source = use-system-libs.diff + sha256sums = SKIP + sha256sums = SKIP + sha256sums = SKIP + sha256sums = SKIP + sha256sums = 81a6956d4330e75b5827316e44ae381e6f1e8928003c6aa45896da9041ea149c + sha256sums = 1dcf13e8893d780ed730121fd607e9ccedfa47e380fd7e594f21b77aa7cd1720 pkgname = python-torchaudio @@ -4,27 +4,61 @@ pkgname=python-torchaudio _pkgname=audio pkgver=2.0.1 +_sox_ver=14.4.2 pkgrel=1 pkgdesc="Data manipulation and transformation for audio signal processing, powered by PyTorch" -arch=('any') +arch=('x86_64' 'i686') url="https://github.com/pytorch/audio" license=('BSD') -depends=('python' 'python-pytorch') +depends=('python' 'python-pytorch' 'bzip2' 'xz' 'opencore-amr' 'lame' 'libogg' 'libFLAC.so' 'libvorbis' 'opus' 'opusfile' 'zlib') optdepends=('python-kaldi-io') -makedepends=('git' 'python-setuptools' 'cmake' 'ninja') +makedepends=('git' 'python-setuptools' 'cmake' 'ninja' 'boost') conflicts=('python-torchaudio-git') -source=("git+$url#tag=v${pkgver}") -sha512sums=('SKIP') +source=("git+$url#tag=v${pkgver}" + "git+https://github.com/kaldi-asr/kaldi.git" + "git+https://github.com/kpu/kenlm.git" + "flashlight-text::git+https://github.com/flashlight/text.git" + # Files downloaded by ExternalProject_Add + "https://downloads.sourceforge.net/project/sox/sox/$_sox_ver/sox-$_sox_ver.tar.bz2" + "use-system-libs.diff") +sha256sums=('SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + '81a6956d4330e75b5827316e44ae381e6f1e8928003c6aa45896da9041ea149c' + '1dcf13e8893d780ed730121fd607e9ccedfa47e380fd7e594f21b77aa7cd1720') prepare() { cd "$srcdir/${_pkgname}" - # Use sourceforge url to fetch zlib - # See https://github.com/pytorch/audio/pull/2297 - # git cherry-pick -n e92a17c35fdff6b0622b0791b43e665c5d05c4b4 + + mkdir -p third_party/archives + ln -s "$srcdir"/sox-$_sox_ver.tar.bz2 third_party/archives/ + + patch -Np1 -i ../use-system-libs.diff + + for dep in bzip2 lzma zlib; do + echo "add_library($dep INTERFACE)" > third_party/$dep/CMakeLists.txt + done + + git submodule init + git config submodule.third_party/kaldi/submodule.url "$srcdir"/kaldi + git config submodule.third_party/kenlm/kenlm.url "$srcdir"/kenlm + git config submodule.third_party/flashlight-text/submodule.url "$srcdir"/flashlight-text + git -c protocol.file.allow=always submodule update third_party/kaldi/submodule + git -c protocol.file.allow=always submodule update third_party/kenlm/kenlm + git -c protocol.file.allow=always submodule update third_party/flashlight-text/submodule } build() { cd "$srcdir/${_pkgname}" + + # Allow this to build with CUDA, which is not compatible with GCC 12 yet + export CUDACXX=/opt/cuda/bin/nvcc + export CUDAHOSTCXX=$CXX + # Follow architectures used by pytorch + # https://github.com/archlinux/svntogit-community/blob/packages/python-pytorch/trunk/PKGBUILD + export TORCH_CUDA_ARCH_LIST="5.2;5.3;6.0;6.1;6.2;7.0;7.2;7.5;8.0;8.6;8.9;9.0;9.0+PTX" + CUDA_HOME=/opt/cuda/ BUILD_SOX=1 python setup.py build } diff --git a/use-system-libs.diff b/use-system-libs.diff new file mode 100644 index 000000000000..1c83367799a0 --- /dev/null +++ b/use-system-libs.diff @@ -0,0 +1,165 @@ +diff --git a/third_party/sox/CMakeLists.txt b/third_party/sox/CMakeLists.txt +index 50e5cc91..1e841ad4 100644 +--- a/third_party/sox/CMakeLists.txt ++++ b/third_party/sox/CMakeLists.txt +@@ -17,129 +17,6 @@ set(envs + "CFLAGS=-I${INSTALL_DIR}/include -fvisibility=hidden $ENV{CFLAGS}" + ) + +-ExternalProject_Add(amr +- PREFIX ${CMAKE_CURRENT_BINARY_DIR} +- DOWNLOAD_DIR ${ARCHIVE_DIR} +- URL https://sourceforge.net/projects/opencore-amr/files/opencore-amr/opencore-amr-0.1.5.tar.gz +- URL_HASH SHA256=2c006cb9d5f651bfb5e60156dbff6af3c9d35c7bbcc9015308c0aff1e14cd341 +- PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/amr/ +- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/amr/configure ${COMMON_ARGS} +- DOWNLOAD_NO_PROGRESS ON +- LOG_DOWNLOAD ON +- LOG_UPDATE ON +- LOG_CONFIGURE ON +- LOG_BUILD ON +- LOG_INSTALL ON +- LOG_MERGED_STDOUTERR ON +- LOG_OUTPUT_ON_FAILURE ON +-) +- +-ExternalProject_Add(lame +- PREFIX ${CMAKE_CURRENT_BINARY_DIR} +- DOWNLOAD_DIR ${ARCHIVE_DIR} +- URL https://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz +- URL_HASH SHA256=24346b4158e4af3bd9f2e194bb23eb473c75fb7377011523353196b19b9a23ff +- PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/lame/ +- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/lame/configure ${COMMON_ARGS} --enable-nasm +- DOWNLOAD_NO_PROGRESS ON +- LOG_DOWNLOAD ON +- LOG_UPDATE ON +- LOG_CONFIGURE ON +- LOG_BUILD ON +- LOG_INSTALL ON +- LOG_MERGED_STDOUTERR ON +- LOG_OUTPUT_ON_FAILURE ON +-) +- +-ExternalProject_Add(ogg +- PREFIX ${CMAKE_CURRENT_BINARY_DIR} +- DOWNLOAD_DIR ${ARCHIVE_DIR} +- URL https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.3.tar.gz +- URL_HASH SHA256=c2e8a485110b97550f453226ec644ebac6cb29d1caef2902c007edab4308d985 +- PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/ogg/ +- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/ogg/configure ${COMMON_ARGS} +- DOWNLOAD_NO_PROGRESS ON +- LOG_DOWNLOAD ON +- LOG_UPDATE ON +- LOG_CONFIGURE ON +- LOG_BUILD ON +- LOG_INSTALL ON +- LOG_MERGED_STDOUTERR ON +- LOG_OUTPUT_ON_FAILURE ON +-) +- +-ExternalProject_Add(flac +- PREFIX ${CMAKE_CURRENT_BINARY_DIR} +- DEPENDS ogg +- DOWNLOAD_DIR ${ARCHIVE_DIR} +- URL https://ftp.osuosl.org/pub/xiph/releases/flac/flac-1.3.2.tar.xz +- URL_HASH SHA256=91cfc3ed61dc40f47f050a109b08610667d73477af6ef36dcad31c31a4a8d53f +- PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/flac/ +- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/flac/configure ${COMMON_ARGS} --with-ogg --disable-cpplibs +- DOWNLOAD_NO_PROGRESS ON +- LOG_DOWNLOAD ON +- LOG_UPDATE ON +- LOG_CONFIGURE ON +- LOG_BUILD ON +- LOG_INSTALL ON +- LOG_MERGED_STDOUTERR ON +- LOG_OUTPUT_ON_FAILURE ON +-) +- +-ExternalProject_Add(vorbis +- PREFIX ${CMAKE_CURRENT_BINARY_DIR} +- DEPENDS ogg +- DOWNLOAD_DIR ${ARCHIVE_DIR} +- URL https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.6.tar.gz +- URL_HASH SHA256=6ed40e0241089a42c48604dc00e362beee00036af2d8b3f46338031c9e0351cb +- PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/vorbis/ +- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/vorbis/configure ${COMMON_ARGS} --with-ogg +- DOWNLOAD_NO_PROGRESS ON +- LOG_DOWNLOAD ON +- LOG_UPDATE ON +- LOG_CONFIGURE ON +- LOG_BUILD ON +- LOG_INSTALL ON +- LOG_MERGED_STDOUTERR ON +- LOG_OUTPUT_ON_FAILURE ON +-) +- +-ExternalProject_Add(opus +- PREFIX ${CMAKE_CURRENT_BINARY_DIR} +- DEPENDS ogg +- DOWNLOAD_DIR ${ARCHIVE_DIR} +- URL https://ftp.osuosl.org/pub/xiph/releases/opus/opus-1.3.1.tar.gz +- URL_HASH SHA256=65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d +- PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/opus/ +- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/opus/configure ${COMMON_ARGS} --with-ogg +- DOWNLOAD_NO_PROGRESS ON +- LOG_DOWNLOAD ON +- LOG_UPDATE ON +- LOG_CONFIGURE ON +- LOG_BUILD ON +- LOG_INSTALL ON +- LOG_MERGED_STDOUTERR ON +- LOG_OUTPUT_ON_FAILURE ON +-) +- +-ExternalProject_Add(opusfile +- PREFIX ${CMAKE_CURRENT_BINARY_DIR} +- DEPENDS opus +- DOWNLOAD_DIR ${ARCHIVE_DIR} +- URL https://ftp.osuosl.org/pub/xiph/releases/opus/opusfile-0.12.tar.gz +- URL_HASH SHA256=118d8601c12dd6a44f52423e68ca9083cc9f2bfe72da7a8c1acb22a80ae3550b +- PATCH_COMMAND cp ${patch_dir}/config.guess ${patch_dir}/config.sub ${CMAKE_CURRENT_BINARY_DIR}/src/opusfile/ +- CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/opusfile/configure ${COMMON_ARGS} --disable-http +- DOWNLOAD_NO_PROGRESS ON +- LOG_DOWNLOAD ON +- LOG_UPDATE ON +- LOG_CONFIGURE ON +- LOG_BUILD ON +- LOG_INSTALL ON +- LOG_MERGED_STDOUTERR ON +- LOG_OUTPUT_ON_FAILURE ON +-) +- + # OpenMP is by default compiled against GNU OpenMP, which conflicts with the version of OpenMP that PyTorch uses. + # See https://github.com/pytorch/audio/pull/1026 + # TODO: Add flags like https://github.com/suphoff/pytorch_parallel_extension_cpp/blob/master/setup.py +@@ -171,20 +48,16 @@ set(SOX_OPTIONS + + set(SOX_LIBRARIES + ${INSTALL_DIR}/lib/libsox.a +- ${INSTALL_DIR}/lib/libopencore-amrnb.a +- ${INSTALL_DIR}/lib/libopencore-amrwb.a +- ${INSTALL_DIR}/lib/libmp3lame.a +- ${INSTALL_DIR}/lib/libFLAC.a +- ${INSTALL_DIR}/lib/libopusfile.a +- ${INSTALL_DIR}/lib/libopus.a +- ${INSTALL_DIR}/lib/libvorbisenc.a +- ${INSTALL_DIR}/lib/libvorbisfile.a +- ${INSTALL_DIR}/lib/libvorbis.a +- ${INSTALL_DIR}/lib/libogg.a +- ) +- +-set(sox_depends +- ogg flac vorbis opusfile lame amr ++ -lopencore-amrnb ++ -lopencore-amrwb ++ -lmp3lame ++ -lFLAC ++ -lopusfile ++ -lopus ++ -lvorbisenc ++ -lvorbisfile ++ -lvorbis ++ -logg + ) + + ExternalProject_Add(sox |