commit:     49e5f10191541079b8fe7201e478b9dcd6c1c400
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Thu Dec  4 05:22:53 2025 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Sun Dec 14 18:47:43 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49e5f101

media-sound/ardour: update live

update deps from wscripts files
remove plocale
boost is now header only (since 6.0)
fix cpp harcoded
add test
fix linking for few extra binaries like ardour-export
fix prefix for configdir
set cxx17 to fix building w/ gcc-16
remove check for (old)gold linker
move appdata to metainfo instead of a patch because it causes fail
otherwise with translation
doc does nothing, doxygen must be called

cpu_flags reworked :
separate avx, avx512f, fma3
rm 3dnow, mmx (just added a cflag)
rm altivec, not keyworded and no-fpu-optimization doesn't handle it

patches:
remove unwanted flags and hopefully clarify optimizations
direct call to ffmpeg and ffprobe for transcoding

Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Part-of: https://github.com/gentoo/gentoo/pull/44943
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 media-sound/ardour/ardour-9999.ebuild              | 194 ++++++++++++--------
 .../ardour/files/ardour-8.12-fix_fftranscode.patch |  22 +++
 media-sound/ardour/files/ardour-8.12-fix_fpu.patch | 196 +++++++++++++++++++++
 3 files changed, 334 insertions(+), 78 deletions(-)

diff --git a/media-sound/ardour/ardour-9999.ebuild 
b/media-sound/ardour/ardour-9999.ebuild
index 33c8a136294f..5a9fa6586de2 100644
--- a/media-sound/ardour/ardour-9999.ebuild
+++ b/media-sound/ardour/ardour-9999.ebuild
@@ -5,18 +5,23 @@ EAPI=8
 
 PYTHON_COMPAT=( python3_{11..13} )
 PYTHON_REQ_USE='threads(+)'
-PLOCALES="ca cs de el en_GB es eu fr it ja ko nn pl pt pt_PT ru sv zh"
-inherit toolchain-funcs flag-o-matic plocale python-any-r1 waf-utils desktop 
xdg
+inherit desktop edo flag-o-matic optfeature python-any-r1 waf-utils 
toolchain-funcs xdg
 
 DESCRIPTION="Digital Audio Workstation"
 HOMEPAGE="https://ardour.org/";
 
 if [[ ${PV} == *9999* ]]; then
-       # Main repo disabled for now by upstream
+       # Main repo not stable
        #EGIT_REPO_URI="https://git.ardour.org/ardour/ardour.git";
        EGIT_REPO_URI="https://github.com/Ardour/ardour.git";
        inherit git-r3
 else
+       # We previously had 8.12 instead of 8.12.0 despite SRC_URI + S
+       [[ ${PV} != 8.12 ]] && die "Please fix the version to be X.Y.Z instead 
of X.Y on this next bump!"
+       # upstream doesn't provide a release tarball in github repo
+       # see https://github.com/Ardour/ardour/blob/master/README-GITHUB.txt
+       # official link is available here, but with token/expiration:
+       # https://community.ardour.org/download?architecture=x86_64&type=source
        
SRC_URI="https://dev.gentoo.org/~fordfrog/distfiles/Ardour-${PV}.0.tar.bz2";
        S="${WORKDIR}/Ardour-${PV}.0"
        KEYWORDS="~amd64 ~loong ~x86"
@@ -24,101 +29,110 @@ fi
 
 LICENSE="GPL-2"
 SLOT="9"
-IUSE="doc jack nls phonehome pulseaudio cpu_flags_ppc_altivec 
cpu_flags_x86_sse cpu_flags_x86_mmx cpu_flags_x86_3dnow"
+IUSE="doc jack phonehome pulseaudio test"
+CPU_USE=(
+       cpu_flags_x86_{avx,avx512f,fma3,sse}
+)
+IUSE+=" ${CPU_USE[@]}"
+RESTRICT="!test? ( test )"
 
 RDEPEND="
-       dev-cpp/cairomm:0
+       app-arch/libarchive:=
+       dev-cpp/cairomm:0[X]
        dev-cpp/glibmm:2
        dev-cpp/pangomm:1.4
-       dev-libs/boost:=
        dev-libs/glib:2
        dev-libs/libsigc++:2
        dev-libs/libxml2:2=
        media-libs/alsa-lib
-       media-libs/aubio
-       media-libs/flac:=
+       media-libs/aubio:=
+       media-libs/flac
+       media-libs/fontconfig
        media-libs/freetype:2
        media-libs/liblo
        media-libs/liblrdf
+       media-libs/libpng:=
        media-libs/libsamplerate
        media-libs/libsndfile
-       media-libs/libsoundtouch
+       media-libs/lilv
+       media-libs/lv2
        media-libs/raptor:2
-       media-libs/rubberband
+       media-libs/rubberband:=
        media-libs/taglib:=
        media-libs/vamp-plugin-sdk
-       net-libs/libwebsockets
+       net-libs/libwebsockets:=
        net-misc/curl
+       sys-apps/dbus
        sys-libs/readline:0=
-       sci-libs/fftw:3.0[threads]
+       sci-libs/fftw:3.0=[threads]
        virtual/libusb:1
-       x11-libs/cairo
+       x11-libs/cairo[X]
+       x11-libs/libX11
+       x11-libs/libXext
+       x11-libs/libXinerama
+       x11-libs/libXrandr
        x11-libs/pango
+       x11-themes/hicolor-icon-theme
        jack? ( virtual/jack )
        pulseaudio? ( media-libs/libpulse )
-       media-libs/lilv
-       media-libs/sratom
-       dev-libs/sord
-       media-libs/lv2"
+"
 #      media-libs/suil[X,gtk2] bundled suil is used, maybe probably because of 
ytk
 #      !bundled-libs? ( media-sound/fluidsynth ) at least libltc is missing to 
be able to unbundle...
-
-DEPEND="${RDEPEND}
-       jack? ( virtual/jack )"
-BDEPEND="${PYTHON_DEPS}
+DEPEND="
+       ${RDEPEND}
+       dev-libs/boost
+       dev-libs/sord
+       media-libs/sratom
+       x11-libs/libXi
+       test? ( dev-util/cppunit )
+"
+BDEPEND="
+       ${PYTHON_DEPS}
        dev-util/itstool
        sys-devel/gettext
        virtual/pkgconfig
-       doc? ( app-text/doxygen[dot] )"
+       doc? (
+               app-text/doxygen
+               media-gfx/graphviz
+       )
+"
 
 PATCHES=(
-       "${FILESDIR}/${PN}-6.8-metadata.patch"
+       "${FILESDIR}/${PN}-8.12-fix_fpu.patch"
+       # see bug #966219
+       "${FILESDIR}/${PN}-8.12-fix_fftranscode.patch"
 )
 
-pkg_pretend() {
-       [[ $(tc-getLD) == *gold* ]] && (has_version sci-libs/fftw[openmp] || 
has_version sci-libs/fftw[threads]) && \
-               ewarn "Linking with gold linker might produce broken 
executable, see bug #733972"
-}
-
 src_prepare() {
        default
 
-       # delete optimization flags
-       sed 's/'full-optimization\'\ :\ \\[.*'/'full-optimization\'\ :\ 
\'\','/' -i "${S}"/wscript || die
-
-       # handle arch
-       MARCH=$(get-flag march)
-       OPTFLAGS=""
-       if use cpu_flags_x86_sse; then
-               if [[ ${MARCH} == "i686" ]] || [[ ${MARCH} == "i486" ]]; then
-                       elog "You enabled sse but use an march that does not 
support sse!"
-                       elog "We add -msse to the flags now, but please 
consider switching your march in make.conf!"
-               fi
-               OPTFLAGS="sse"
-       fi
-       if use cpu_flags_x86_mmx; then
-               if [[ ${MARCH} == "i486" ]]; then
-                       elog "You enabled mmx with i486 set as march! You have 
been warned!"
-               fi
-               OPTFLAGS="${OPTFLAGS} mmx"
-       fi
-       if use cpu_flags_x86_3dnow; then
-               OPTFLAGS="${OPTFLAGS} 3dnow"
+       local optflags=(
+               $(usev cpu_flags_x86_sse sse)
+       )
+       # these flags imply sse and avx
+       if use cpu_flags_x86_sse && use cpu_flags_x86_avx; then
+               optflags+=(
+                       avx
+                       $(usev cpu_flags_x86_avx512f avx512f)
+                       $(usev cpu_flags_x86_fma3 fma)
+               )
        fi
-       sed 's/flag_line\ =\ o.*/flag_line\ =\ \": '"${OPTFLAGS}"' just some 
place holders\"/' \
-               -i "${S}"/wscript || die
-       sed 's/cpu\ ==\ .*/cpu\ ==\ "LeaveMarchAsIs":/' -i "${S}"/wscript || die
-
-       # boost and shebang
-       append-flags "-lboost_system"
-       python_fix_shebang "${S}"/wscript
-       python_fix_shebang "${S}"/waf
-
-       # handle locales
-       my_lcmsg() {
-               rm -f 
{gtk2_ardour,gtk2_ardour/appdata,libs/ardour,libs/gtkmm2ext}/po/${1}.po
-       }
-       plocale_for_each_disabled_locale my_lcmsg
+
+       # use only flags defined by users
+       sed 's/flag_line = o.*/flag_line = \": '"${optflags[*]}"'\"/' \
+               -i wscript || die
+
+       # shebang
+       python_fix_shebang wscript
+       python_fix_shebang waf
+
+       # fix hardcoded cpp, apply `gcc -E` needs patching but will fail w/ 
clang
+       tc-export CPP
+       sed -e "[email protected] = 'cpp'@obj.command = '${CPP/-gcc -E/-cpp}'@" \
+               -i gtk2_ardour/wscript || die
+
+       # skip non-generic tests with failures
+       sed -e "\@'test/fpu_test.cc',@d" -i libs/ardour/wscript || die
 }
 
 src_configure() {
@@ -130,22 +144,29 @@ src_configure() {
        # https://bugs.gentoo.org/917095
        filter-lto
 
-       local backends="alsa,dummy"
-       use jack && backends+=",jack"
-       use pulseaudio && backends+=",pulseaudio"
+       append-ldflags -Wl,-rpath,"${EPREFIX}/usr/$(get_libdir)/ardour${SLOT}"
 
+       local backends=(
+               alsa
+               dummy
+               $(usev jack)
+               $(usev pulseaudio)
+       )
+
+       # VST support is enabled by default given --no-lxvst is not called.
+       # But please keep in mind the README (obsolete?) made by upstream.
+       # https://github.com/Ardour/ardour/blob/master/PACKAGER_README
        tc-export CC CXX
        local myconf=(
-               --configdir=/etc
+               --configdir="${EPREFIX}"/etc
+               --cxx17
                --freedesktop
                --noconfirm
                --optimize
-               --with-backends=${backends}
-               $({ use cpu_flags_ppc_altivec || use cpu_flags_x86_sse; } && \
-                       echo '' || echo "--no-fpu-optimization")
-               $(usex doc "--docs" '')
-               $(usex nls '' "--no-nls")
-               $(usex phonehome '' "--no-phone-home")
+               --with-backends=$(IFS=','; echo "${backends[*]}")
+               $(usev !cpu_flags_x86_sse --no-fpu-optimization)
+               $(usev !phonehome --no-phone-home)
+               $(usev test --test)
                # not possible right now  --use-external-libs
                # missing dependency: https://github.com/c4dm/qm-dsp
        )
@@ -155,24 +176,35 @@ src_configure() {
 
 src_compile() {
        waf-utils_src_compile
-       use nls && waf-utils_src_compile i18n
+       waf-utils_src_compile i18n
+       if use doc; then
+               pushd doc >/dev/null || die
+               doxygen -u Doxyfile || die
+               doxygen Doxyfile || die
+               find . \( -iname '*.map' -o -iname '*.md5' \) -delete || die
+               popd >/dev/null || die
+       fi
+}
+
+src_test() {
+       pushd "${S}"/libs/ardour/ >/dev/null || die
+       edo ./run-tests.sh
+       popd >/dev/null || die
 }
 
 src_install() {
-       local s
+       use doc && local HTML_DOCS=( doc/html/. )
 
        waf-utils_src_install
 
        mv ${PN}.1 ${PN}${SLOT}.1 || die
        doman ${PN}${SLOT}.1
 
+       local s
        for s in 16 22 32 48 256 512; do
                newicon -s ${s} gtk2_ardour/resources/Ardour-icon_${s}px.png 
ardour${SLOT}.png
        done
 
-       # the build system still installs ardour6.png files so we get rid of 
those to not conflict with ardour:6
-       find "${D}/usr/share/icons/" -name ardour6.png -delete
-
        sed -i \
                -e "s/\(^Name=\).*/\1Ardour ${SLOT}/" \
                -e 's/;AudioEditing;/;X-AudioEditing;/' \
@@ -182,11 +214,17 @@ src_install() {
        insinto /usr/share/mime/packages
        newins build/gtk2_ardour/ardour.xml ardour${SLOT}.xml
        rm "${D}/usr/share/mime/packages/ardour.xml" || die
+
+       # the appdata directory is deprecated
+       # no patch because this causes the translation fail
+       mv "${ED}"/usr/share/{appdata,metainfo} || die
 }
 
 pkg_postinst() {
        xdg_pkg_postinst
 
+       optfeature "exporting audio in mp3" media-video/ffmpeg[lame]
+
        elog "Please do _not_ report problems with the package to ${PN} 
upstream."
        elog "If you think you've found a bug, check the upstream binary 
package"
        elog "before you report anything to upstream."

diff --git a/media-sound/ardour/files/ardour-8.12-fix_fftranscode.patch 
b/media-sound/ardour/files/ardour-8.12-fix_fftranscode.patch
new file mode 100644
index 000000000000..353d1402498e
--- /dev/null
+++ b/media-sound/ardour/files/ardour-8.12-fix_fftranscode.patch
@@ -0,0 +1,22 @@
+see https://bugs.gentoo.org/966219
+direct call of ffmpeg binaries instead of harvid wrapper
+--- a/libs/ardour/video_tools_paths.cc
++++ b/libs/ardour/video_tools_paths.cc
+@@ -175,7 +175,7 @@ ArdourVideoToolPaths::transcoder_exe (std::string 
&ffmpeg_exe, std::string &ffpr
+       _ffprobe_exe = X_("");
+ 
+       std::string ff_file_path;
+-      if (find_file (Searchpath(Glib::getenv("PATH")), X_("ffmpeg_harvid"), 
ff_file_path)) {
++      if (find_file (Searchpath(Glib::getenv("PATH")), X_("ffmpeg"), 
ff_file_path)) {
+               _ffmpeg_exe = ff_file_path;
+       }
+ #ifdef PLATFORM_WINDOWS
+@@ -203,7 +203,7 @@ ArdourVideoToolPaths::transcoder_exe (std::string 
&ffmpeg_exe, std::string &ffpr
+       }
+ #endif
+ 
+-      if (find_file (Searchpath(Glib::getenv("PATH")), X_("ffprobe_harvid"), 
ff_file_path)) {
++      if (find_file (Searchpath(Glib::getenv("PATH")), X_("ffprobe"), 
ff_file_path)) {
+               _ffprobe_exe = ff_file_path;
+       }
+ #ifdef PLATFORM_WINDOWS

diff --git a/media-sound/ardour/files/ardour-8.12-fix_fpu.patch 
b/media-sound/ardour/files/ardour-8.12-fix_fpu.patch
new file mode 100644
index 000000000000..dd99e010fe41
--- /dev/null
+++ b/media-sound/ardour/files/ardour-8.12-fix_fpu.patch
@@ -0,0 +1,196 @@
+respect userflags for optimizations
+files for test are patched, even if it's broken for now
+--- a/wscript
++++ b/wscript
+@@ -553,8 +553,7 @@ int main() { return 0; }''',
+                            execute   = False,
+                            msg       = 'Checking compiler for AVX512F 
intrinsics',
+                            okmsg     = 'Found',
+-                           errmsg    = 'Not supported',
+-                           define_name = 'FPU_AVX512F_SUPPORT')
++                           errmsg    = 'Not supported')
+ 
+             conf.check_cxx(fragment = "#include <immintrin.h>\nint main(void) 
{ __m128 a; _mm_fmadd_ss(a, a, a); return 0; }\n",
+                            features  = ['cxx'],
+@@ -563,8 +562,7 @@ int main() { return 0; }''',
+                            execute   = False,
+                            msg       = 'Checking compiler for AVX/FMA 
intrinsics',
+                            okmsg     = 'Found',
+-                           errmsg    = 'Not supported',
+-                           define_name = 'FPU_AVX_FMA_SUPPORT')
++                           errmsg    = 'Not supported')
+ 
+     if opt.use_libcpp or conf.env['build_host'] in [ 'yosemite', 
'el_capitan', 'sierra', 'high_sierra', 'mojave', 'catalina' ]:
+         cxx_flags.append('--stdlib=libc++')
+@@ -636,11 +634,12 @@ int main() { return 0; }''',
+                     build_host_supports_sse = True
+                 if "3dnow" in x86_flags:
+                     compiler_flags.append ("-m3dnow")
+-
+-            if cpu == "i586":
+-                compiler_flags.append ("-march=i586")
+-            elif cpu == "i686":
+-                compiler_flags.append ("-march=i686")
++                if "avx" in x86_flags:
++                    conf.define ('FPU_AVX_SUPPORT', 1)
++                if "fma" in x86_flags:
++                    conf.define ('FPU_AVX_FMA_SUPPORT', 1)
++                if "avx512f" in x86_flags:
++                    conf.define ('FPU_AVX512F_SUPPORT', 1)
+ 
+         if not is_clang and ((conf.env['build_target'] == 'i686') or 
(conf.env['build_target'] == 'x86_64')) and build_host_supports_sse:
+             compiler_flags.extend ([ flags_dict['sse'], 
flags_dict['fpmath-sse'], flags_dict['xmmintrinsics'] ])
+@@ -762,9 +761,6 @@ int main() { return 0; }''',
+             prepend_opt_flags = False
+             break
+ 
+-    if prepend_opt_flags:
+-        optimization_flags[:0] = flags_dict['full-optimization']
+-
+     if opt.debug_symbols:
+         optimization_flags += flags_dict['debuggable']
+ 
+--- a/libs/ardour/wscript
++++ b/libs/ardour/wscript
+@@ -495,14 +495,8 @@ def build(bld):
+     if not Options.options.no_fpu_optimization:
+         if (bld.env['build_target'] == 'i386' or bld.env['build_target'] == 
'i686'):
+             obj.source += [ 'sse_functions_xmm.cc', 'sse_functions.s', ]
+-            avx_sources = [ 'sse_functions_avx_linux.cc' ]
+-            fma_sources = [ 'x86_functions_fma.cc' ]
+-            avx512f_sources = [ 'x86_functions_avx512f.cc' ]
+         elif bld.env['build_target'] == 'x86_64':
+             obj.source += [ 'sse_functions_xmm.cc', 'sse_functions_64bit.s', ]
+-            avx_sources = [ 'sse_functions_avx_linux.cc' ]
+-            fma_sources = [ 'x86_functions_fma.cc' ]
+-            avx512f_sources = [ 'x86_functions_avx512f.cc' ]
+         elif bld.env['build_target'] == 'mingw':
+             # usability of the 64 bit windows assembler depends on the 
compiler target,
+             # not the build host, which in turn can only be inferred from the 
name
+@@ -533,7 +527,8 @@ def build(bld):
+             obj.use += ['arm_neon_functions' ]
+             obj.defines += [ 'ARM_NEON_SUPPORT' ]
+ 
+-        if avx_sources:
++        if bld.is_defined('FPU_AVX_SUPPORT'):
++            avx_sources = [ 'sse_functions_avx_linux.cc' ]
+             # as long as we want to use AVX intrinsics in this file,
+             # compile it with -mavx flag - append avx flag to the existing
+             avx_cxxflags = list(bld.env['CXXFLAGS'])
+@@ -549,7 +544,8 @@ def build(bld):
+ 
+             obj.use += ['sse_avx_functions' ]
+ 
+-        if bld.is_defined('FPU_AVX_FMA_SUPPORT') and fma_sources:
++        if bld.is_defined('FPU_AVX_FMA_SUPPORT'):
++            fma_sources = [ 'x86_functions_fma.cc' ]
+             fma_cxxflags = list(bld.env['CXXFLAGS'])
+             fma_cxxflags.append (bld.env['compiler_flags_dict']['avx'])
+             fma_cxxflags.append (bld.env['compiler_flags_dict']['pic'])
+@@ -566,7 +562,8 @@ def build(bld):
+             obj.use += ['sse_fma_functions' ]
+             obj.defines += [ 'FPU_AVX_FMA_SUPPORT' ]
+ 
+-        if bld.is_defined('FPU_AVX512F_SUPPORT') and avx512f_sources:
++        if bld.is_defined('FPU_AVX512F_SUPPORT'):
++            avx512f_sources = [ 'x86_functions_avx512f.cc' ]
+             avx512f_cxxflags = list(bld.env['CXXFLAGS'])
+             avx512f_cxxflags.append 
(bld.env['compiler_flags_dict']['avx512f'])
+             avx512f_cxxflags.append (bld.env['compiler_flags_dict']['avx'])
+--- a/libs/ardour/globals.cc
++++ b/libs/ardour/globals.cc
+@@ -228,6 +228,8 @@ setup_hardware_optimization (bool try_optimization)
+ 
+               } else
+ #endif
++
++#ifdef FPU_AVX_SUPPORT
+               if (fpu->has_avx ()) {
+                       info << "Using AVX optimized routines" << endmsg;
+ 
+@@ -241,7 +243,10 @@ setup_hardware_optimization (bool try_optimization)
+ 
+                       generic_mix_functions = false;
+ 
+-              } else if (fpu->has_sse ()) {
++              } else
++#endif
++
++              if (fpu->has_sse ()) {
+                       info << "Using SSE optimized routines" << endmsg;
+ 
+                       // SSE SET
+--- a/libs/ardour/ardour/mix.h
++++ b/libs/ardour/ardour/mix.h
+@@ -37,6 +37,7 @@ LIBARDOUR_API void x86_sse_find_peaks              (float 
const* buf, uint32_t n
+ 
+ extern "C" {
+ /* AVX functions */
++#ifdef FPU_AVX_SUPPORT
+       LIBARDOUR_API float x86_sse_avx_compute_peak          (float const* 
buf, uint32_t nsamples, float current);
+       LIBARDOUR_API void  x86_sse_avx_apply_gain_to_buffer  (float* buf, 
uint32_t nframes, float gain);
+       LIBARDOUR_API void  x86_sse_avx_mix_buffers_with_gain (float* dst, 
float const* src, uint32_t nframes, float gain);
+@@ -45,6 +46,7 @@ extern "C" {
+ #ifndef PLATFORM_WINDOWS
+       LIBARDOUR_API void  x86_sse_avx_find_peaks            (float const* 
buf, uint32_t nsamples, float* min, float* max);
+ #endif
++#endif
+ }
+ #ifdef PLATFORM_WINDOWS
+ LIBARDOUR_API void x86_sse_avx_find_peaks               (float const* buf, 
uint32_t nsamples, float* min, float* max);
+--- a/libs/ardour/test/fpu_test.cc
++++ b/libs/ardour/test/fpu_test.cc
+@@ -99,6 +99,7 @@ FPUTest::compare (std::string msg, size_t cnt, float 
max_diff)
+ 
+ #if defined(ARCH_X86) && defined(BUILD_SSE_OPTIMIZATIONS)
+ 
++#if defined FPU_AVX_SUPPORT
+ void
+ FPUTest::avxFmaTest ()
+ {
+@@ -125,7 +126,9 @@ FPUTest::avxFmaTest ()
+ 
+       run (align_max, FLT_EPSILON);
+ }
++#endif
+ 
++#if defined FPU_AVX_SUPPORT
+ void
+ FPUTest::avxTest ()
+ {
+@@ -152,7 +155,9 @@ FPUTest::avxTest ()
+ 
+       run (align_max);
+ }
++#endif
+ 
++#if defined FPU_AVX512F_SUPPORT
+ void
+ FPUTest::avx512fTest ()
+ {
+@@ -179,6 +184,7 @@ FPUTest::avx512fTest ()
+ 
+       run (align_max, FLT_EPSILON);
+ }
++#endif
+ 
+ void
+ FPUTest::sseTest ()
+--- a/libs/ardour/test/fpu_test.h
++++ b/libs/ardour/test/fpu_test.h
+@@ -8,9 +8,15 @@ class FPUTest : public CppUnit::TestFixture
+       CPPUNIT_TEST_SUITE (FPUTest);
+ #if defined(ARCH_X86) && defined(BUILD_SSE_OPTIMIZATIONS)
+       CPPUNIT_TEST (sseTest);
++#if defined FPU_AVX_SUPPORT
+       CPPUNIT_TEST (avxTest);
++#endif
++#if defined FPU_AVX_FMA_SUPPORT
+       CPPUNIT_TEST (avxFmaTest);
++#endif
++#if defined FPU_AVX512F_SUPPORT
+       CPPUNIT_TEST (avx512fTest);
++#endif
+ #elif defined ARM_NEON_SUPPORT
+       CPPUNIT_TEST (neonTest);
+ #elif defined(__APPLE__) && defined(BUILD_VECLIB_OPTIMIZATIONS)

Reply via email to