Skip to content

Commit 7a36c55

Browse files
authored
Clean up libsox source and build directory (#1161)
1 parent 9690e8e commit 7a36c55

File tree

7 files changed

+104
-125
lines changed

7 files changed

+104
-125
lines changed

.circleci/config.yml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -101,14 +101,14 @@ jobs:
101101

102102
- run:
103103
command: |
104-
mkdir -p third_party/archives/
105-
wget --no-clobber --directory-prefix=third_party/archives/ $(awk '/URL /{print $2}' third_party/CMakeLists.txt)
104+
mkdir -p third_party/sox/archives/
105+
wget --no-clobber --directory-prefix=third_party/sox/archives/ $(awk '/URL /{print $2}' third_party/sox/CMakeLists.txt)
106106
- save_cache:
107107

108108
key: tp-nix-v2-{{ checksum ".cachekey" }}
109109

110110
paths:
111-
- third_party/archives
111+
- third_party/sox/archives
112112
- persist_to_workspace:
113113
root: third_party
114114
paths:
@@ -411,9 +411,7 @@ jobs:
411411
paths:
412412
- conda
413413
- env
414-
- third_party/build
415414
- third_party/install
416-
- third_party/src
417415
- run:
418416
name: Install torchaudio
419417
command: .circleci/unittest/linux/scripts/install.sh
@@ -458,9 +456,7 @@ jobs:
458456
paths:
459457
- conda
460458
- env
461-
- third_party/build
462459
- third_party/install
463-
- third_party/src
464460
- run:
465461
name: Install torchaudio
466462
command: docker run -t --gpus all -e UPLOAD_CHANNEL -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux/scripts/install.sh
@@ -573,9 +569,7 @@ jobs:
573569
paths:
574570
- conda
575571
- env
576-
- third_party/build
577572
- third_party/install
578-
- third_party/src
579573
- run:
580574
name: Install torchaudio
581575
command: .circleci/unittest/linux/scripts/install.sh
@@ -612,9 +606,7 @@ jobs:
612606
paths:
613607
- conda
614608
- env
615-
- third_party/build
616609
- third_party/install
617-
- third_party/src
618610
- run:
619611
name: Run style check
620612
command: .circleci/unittest/linux/scripts/run_style_checks.sh

.circleci/config.yml.in

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -101,14 +101,14 @@ jobs:
101101
{% endraw %}
102102
- run:
103103
command: |
104-
mkdir -p third_party/archives/
105-
wget --no-clobber --directory-prefix=third_party/archives/ $(awk '/URL /{print $2}' third_party/CMakeLists.txt)
104+
mkdir -p third_party/sox/archives/
105+
wget --no-clobber --directory-prefix=third_party/sox/archives/ $(awk '/URL /{print $2}' third_party/sox/CMakeLists.txt)
106106
- save_cache:
107107
{% raw %}
108108
key: tp-nix-v2-{{ checksum ".cachekey" }}
109109
{% endraw %}
110110
paths:
111-
- third_party/archives
111+
- third_party/sox/archives
112112
- persist_to_workspace:
113113
root: third_party
114114
paths:
@@ -411,9 +411,7 @@ jobs:
411411
paths:
412412
- conda
413413
- env
414-
- third_party/build
415414
- third_party/install
416-
- third_party/src
417415
- run:
418416
name: Install torchaudio
419417
command: .circleci/unittest/linux/scripts/install.sh
@@ -458,9 +456,7 @@ jobs:
458456
paths:
459457
- conda
460458
- env
461-
- third_party/build
462459
- third_party/install
463-
- third_party/src
464460
- run:
465461
name: Install torchaudio
466462
command: docker run -t --gpus all -e UPLOAD_CHANNEL -v $PWD:$PWD -w $PWD "${image_name}" .circleci/unittest/linux/scripts/install.sh
@@ -573,9 +569,7 @@ jobs:
573569
paths:
574570
- conda
575571
- env
576-
- third_party/build
577572
- third_party/install
578-
- third_party/src
579573
- run:
580574
name: Install torchaudio
581575
command: .circleci/unittest/linux/scripts/install.sh
@@ -612,9 +606,7 @@ jobs:
612606
paths:
613607
- conda
614608
- env
615-
- third_party/build
616609
- third_party/install
617-
- third_party/src
618610
- run:
619611
name: Run style check
620612
command: .circleci/unittest/linux/scripts/run_style_checks.sh

.gitignore

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,5 @@ examples/interactive_asr/data/*.model
123123
examples/interactive_asr/data/*.pt
124124

125125
# third parties
126-
third_party/archives/
127126
third_party/install/
128-
third_party/src/
129-
third_party/tmp/
127+
third_party/sox/archives/

third_party/CMakeLists.txt

Lines changed: 2 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -8,94 +8,9 @@ option(BUILD_TRANSDUCER "Build transducer statically")
88
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
99

1010
if (BUILD_SOX)
11-
include(ExternalProject)
12-
set(INSTALL_DIR ${CMAKE_INSTALL_PREFIX})
13-
set(ARCHIVE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/archives)
14-
set(COMMON_ARGS --quiet --disable-shared --enable-static --prefix=${INSTALL_DIR} --with-pic --disable-dependency-tracking --disable-debug --disable-examples --disable-doc)
15-
16-
ExternalProject_Add(libmad
17-
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}
18-
DOWNLOAD_DIR ${ARCHIVE_DIR}
19-
URL https://downloads.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz
20-
URL_HASH SHA256=bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690
21-
PATCH_COMMAND patch < ${CMAKE_CURRENT_SOURCE_DIR}/patch/libmad.patch
22-
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/src/libmad/configure ${COMMON_ARGS}
23-
)
24-
25-
ExternalProject_Add(amr
26-
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}
27-
DOWNLOAD_DIR ${ARCHIVE_DIR}
28-
URL https://sourceforge.net/projects/opencore-amr/files/opencore-amr/opencore-amr-0.1.5.tar.gz
29-
URL_HASH SHA256=2c006cb9d5f651bfb5e60156dbff6af3c9d35c7bbcc9015308c0aff1e14cd341
30-
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/src/amr/configure ${COMMON_ARGS}
31-
)
32-
33-
ExternalProject_Add(libmp3lame
34-
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}
35-
DOWNLOAD_DIR ${ARCHIVE_DIR}
36-
URL https://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
37-
URL_HASH SHA256=24346b4158e4af3bd9f2e194bb23eb473c75fb7377011523353196b19b9a23ff
38-
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/src/libmp3lame/configure ${COMMON_ARGS} --enable-nasm
39-
)
40-
41-
ExternalProject_Add(libogg
42-
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}
43-
DOWNLOAD_DIR ${ARCHIVE_DIR}
44-
URL https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.3.tar.gz
45-
URL_HASH SHA256=c2e8a485110b97550f453226ec644ebac6cb29d1caef2902c007edab4308d985
46-
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/src/libogg/configure ${COMMON_ARGS}
47-
)
48-
49-
ExternalProject_Add(libflac
50-
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}
51-
DEPENDS libogg
52-
DOWNLOAD_DIR ${ARCHIVE_DIR}
53-
URL https://ftp.osuosl.org/pub/xiph/releases/flac/flac-1.3.2.tar.xz
54-
URL_HASH SHA256=91cfc3ed61dc40f47f050a109b08610667d73477af6ef36dcad31c31a4a8d53f
55-
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/build_codec_helper.sh ${CMAKE_CURRENT_SOURCE_DIR}/src/libflac/configure ${COMMON_ARGS} --with-ogg
56-
)
57-
58-
ExternalProject_Add(libvorbis
59-
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}
60-
DEPENDS libogg
61-
DOWNLOAD_DIR ${ARCHIVE_DIR}
62-
URL https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.6.tar.gz
63-
URL_HASH SHA256=6ed40e0241089a42c48604dc00e362beee00036af2d8b3f46338031c9e0351cb
64-
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/build_codec_helper.sh ${CMAKE_CURRENT_SOURCE_DIR}/src/libvorbis/configure ${COMMON_ARGS} --with-ogg
65-
)
66-
67-
ExternalProject_Add(libopus
68-
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}
69-
DEPENDS libogg
70-
DOWNLOAD_DIR ${ARCHIVE_DIR}
71-
URL https://ftp.osuosl.org/pub/xiph/releases/opus/opus-1.3.1.tar.gz
72-
URL_HASH SHA256=65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d
73-
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/build_codec_helper.sh ${CMAKE_CURRENT_SOURCE_DIR}/src/libopus/configure ${COMMON_ARGS} --with-ogg
74-
)
75-
76-
ExternalProject_Add(opusfile
77-
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}
78-
DEPENDS libopus
79-
DOWNLOAD_DIR ${ARCHIVE_DIR}
80-
STAMP_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src/opusfile-stamp
81-
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src/opusfile
82-
URL https://ftp.osuosl.org/pub/xiph/releases/opus/opusfile-0.12.tar.gz
83-
URL_HASH SHA256=118d8601c12dd6a44f52423e68ca9083cc9f2bfe72da7a8c1acb22a80ae3550b
84-
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/build_codec_helper.sh ${CMAKE_CURRENT_SOURCE_DIR}/src/opusfile/configure ${COMMON_ARGS} --disable-http
85-
)
86-
87-
ExternalProject_Add(libsox
88-
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}
89-
DEPENDS libogg libflac libvorbis opusfile libmp3lame libmad amr
90-
DOWNLOAD_DIR ${ARCHIVE_DIR}
91-
URL https://downloads.sourceforge.net/project/sox/sox/14.4.2/sox-14.4.2.tar.bz2
92-
URL_HASH SHA256=81a6956d4330e75b5827316e44ae381e6f1e8928003c6aa45896da9041ea149c
93-
# OpenMP is by default compiled against GNU OpenMP, which conflicts with the version of OpenMP that PyTorch uses.
94-
# See https://github.com/pytorch/audio/pull/1026
95-
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/build_codec_helper.sh ${CMAKE_CURRENT_SOURCE_DIR}/src/libsox/configure ${COMMON_ARGS} --with-lame --with-flac --with-mad --with-oggvorbis --without-alsa --without-coreaudio --without-png --without-oss --without-sndfile --with-opus --with-amrwb --with-amrnb --disable-openmp --without-sndio --without-pulseaudio
96-
)
11+
add_subdirectory(sox)
9712
endif()
9813

9914
if(BUILD_TRANSDUCER)
100-
add_subdirectory(transducer)
15+
add_subdirectory(transducer)
10116
endif()

third_party/build_codec_helper.sh

Lines changed: 0 additions & 13 deletions
This file was deleted.

third_party/sox/CMakeLists.txt

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
include(ExternalProject)
2+
3+
set(INSTALL_DIR ${PROJECT_SOURCE_DIR}/install)
4+
set(ARCHIVE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/archives)
5+
set(COMMON_ARGS --quiet --disable-shared --enable-static --prefix=${INSTALL_DIR} --with-pic --disable-dependency-tracking --disable-debug --disable-examples --disable-doc)
6+
7+
# To pass custom environment variables to ExternalProject_Add command,
8+
# we need to do `${CMAKE_COMMAND} -E env ${envs} <COMMANAD>`.
9+
# https://stackoverflow.com/a/62437353
10+
# We constrcut the custom environment variables here
11+
set(envs
12+
"PKG_CONFIG_PATH=${INSTALL_DIR}/lib/pkgconfig"
13+
"LDFLAGS=-L${INSTALL_DIR}/lib $ENV{LDFLAGS}"
14+
"CPPFLAGS=-I${INSTALL_DIR}/include $ENV{CPPFLAGS}"
15+
)
16+
17+
ExternalProject_Add(mad
18+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
19+
DOWNLOAD_DIR ${ARCHIVE_DIR}
20+
URL https://downloads.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz
21+
URL_HASH SHA256=bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690
22+
PATCH_COMMAND patch < ${CMAKE_CURRENT_SOURCE_DIR}/patch/libmad.patch
23+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/mad/configure ${COMMON_ARGS}
24+
)
25+
26+
ExternalProject_Add(amr
27+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
28+
DOWNLOAD_DIR ${ARCHIVE_DIR}
29+
URL https://sourceforge.net/projects/opencore-amr/files/opencore-amr/opencore-amr-0.1.5.tar.gz
30+
URL_HASH SHA256=2c006cb9d5f651bfb5e60156dbff6af3c9d35c7bbcc9015308c0aff1e14cd341
31+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/amr/configure ${COMMON_ARGS}
32+
)
33+
34+
ExternalProject_Add(lame
35+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
36+
DOWNLOAD_DIR ${ARCHIVE_DIR}
37+
URL https://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz
38+
URL_HASH SHA256=24346b4158e4af3bd9f2e194bb23eb473c75fb7377011523353196b19b9a23ff
39+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/lame/configure ${COMMON_ARGS} --enable-nasm
40+
)
41+
42+
ExternalProject_Add(ogg
43+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
44+
DOWNLOAD_DIR ${ARCHIVE_DIR}
45+
URL https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.3.tar.gz
46+
URL_HASH SHA256=c2e8a485110b97550f453226ec644ebac6cb29d1caef2902c007edab4308d985
47+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/ogg/configure ${COMMON_ARGS}
48+
)
49+
50+
ExternalProject_Add(flac
51+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
52+
DEPENDS ogg
53+
DOWNLOAD_DIR ${ARCHIVE_DIR}
54+
URL https://ftp.osuosl.org/pub/xiph/releases/flac/flac-1.3.2.tar.xz
55+
URL_HASH SHA256=91cfc3ed61dc40f47f050a109b08610667d73477af6ef36dcad31c31a4a8d53f
56+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/flac/configure ${COMMON_ARGS} --with-ogg --disable-cpplibs
57+
)
58+
59+
ExternalProject_Add(vorbis
60+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
61+
DEPENDS ogg
62+
DOWNLOAD_DIR ${ARCHIVE_DIR}
63+
URL https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.6.tar.gz
64+
URL_HASH SHA256=6ed40e0241089a42c48604dc00e362beee00036af2d8b3f46338031c9e0351cb
65+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/vorbis/configure ${COMMON_ARGS} --with-ogg
66+
)
67+
68+
ExternalProject_Add(opus
69+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
70+
DEPENDS ogg
71+
DOWNLOAD_DIR ${ARCHIVE_DIR}
72+
URL https://ftp.osuosl.org/pub/xiph/releases/opus/opus-1.3.1.tar.gz
73+
URL_HASH SHA256=65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d
74+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/opus/configure ${COMMON_ARGS} --with-ogg
75+
)
76+
77+
ExternalProject_Add(opusfile
78+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
79+
DEPENDS opus
80+
DOWNLOAD_DIR ${ARCHIVE_DIR}
81+
URL https://ftp.osuosl.org/pub/xiph/releases/opus/opusfile-0.12.tar.gz
82+
URL_HASH SHA256=118d8601c12dd6a44f52423e68ca9083cc9f2bfe72da7a8c1acb22a80ae3550b
83+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/opusfile/configure ${COMMON_ARGS} --disable-http
84+
)
85+
86+
ExternalProject_Add(sox
87+
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
88+
DEPENDS ogg flac vorbis opusfile lame mad amr
89+
DOWNLOAD_DIR ${ARCHIVE_DIR}
90+
URL https://downloads.sourceforge.net/project/sox/sox/14.4.2/sox-14.4.2.tar.bz2
91+
URL_HASH SHA256=81a6956d4330e75b5827316e44ae381e6f1e8928003c6aa45896da9041ea149c
92+
# OpenMP is by default compiled against GNU OpenMP, which conflicts with the version of OpenMP that PyTorch uses.
93+
# See https://github.com/pytorch/audio/pull/1026
94+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${envs} ${CMAKE_CURRENT_BINARY_DIR}/src/sox/configure ${COMMON_ARGS} --with-lame --with-flac --with-mad --with-oggvorbis --without-alsa --without-coreaudio --without-png --without-oss --without-sndfile --with-opus --with-amrwb --with-amrnb --disable-openmp --without-sndio --without-pulseaudio
95+
)
File renamed without changes.

0 commit comments

Comments
 (0)