summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* gitlab-ci: Re-enable builds for merge requests.gitlab-ci-mrRalph Giles2020-12-221-2/+4
| | | | | | | | | | | | | | | | | When the whitespace job was added, we marked it with only: merge_requests because we wanted it to only run on new merge requests. However, adding an `only` clause like this disables all the unmarked jobs for merge requests, which means we don't get the more important feedback about build failures. Instead, use the `rules` key, added in Gitlab 12.3. This more flexible mechanism is currently recommended and lets us specify what we want without having to add additional decorations to every other job.
* docs: fix simple typo, neareast -> nearestTim Gates2020-12-081-2/+2
| | | | | | | | There is a small typo in celt/fixed_generic.h. Should read `nearest` rather than `neareast`. Signed-off-by: Ralph Giles <giles@thaumas.net>
* Meson: Fix doc build when opus is a subprojectXavier Claessens2020-11-262-3/+2
| | | | | | | | | | | meson.source_root() and meson.build_root() have been deprecated in latest Meson release because they are a trap. They point to the root of parent project instead of root of current subproject. Meson 0.56.0 added meson.project_source/build_root() but it is just as easy to use meson.current_source/build_dir() in the root meson.build file and avoids bumping required meson version. Signed-off-by: Ralph Giles <giles@thaumas.net>
* cmake - add option for fixed point debugMarcus Asteborg2020-11-211-0/+12
| | | | Signed-off-by: Ralph Giles <giles@thaumas.net>
* cmake - add option for check asmMarcus Asteborg2020-11-211-0/+8
| | | | Signed-off-by: Ralph Giles <giles@thaumas.net>
* cmake - add option for fuzzingMarcus Asteborg2020-11-211-0/+8
| | | | Signed-off-by: Ralph Giles <giles@thaumas.net>
* cmake - add option for hardeningMarcus Asteborg2020-11-211-1/+9
| | | | Signed-off-by: Ralph Giles <giles@thaumas.net>
* cmake - add option for assertionsMarcus Asteborg2020-11-211-0/+8
| | | | Signed-off-by: Ralph Giles <giles@thaumas.net>
* CMakeLists.txt: specify working directory in add_test() directivesDavide Beatrici2020-11-211-4/+4
| | | | | | | | This is required for Windows because it doesn't have RPATH, thus it fails to find Opus if it's not in the same directory as the executables or in PATH. Signed-off-by: Ralph Giles <giles@thaumas.net>
* CMakeLists.txt: specify path to target file in add_test() directivesDavide Beatrici2020-11-211-4/+4
| | | | | | | This is required in case the output path for tests is changed by a project adding Opus as submodule. Signed-off-by: Ralph Giles <giles@thaumas.net>
* cmake - change logging of api version to debugMarcus Asteborg2020-11-211-1/+1
| | | | Signed-off-by: Ralph Giles <giles@thaumas.net>
* Add support for Meson build systemTim-Philipp Müller2020-10-2815-1/+1114
| | | | | | | | | | | | | | Tested on: - Linux/x86* with gcc - Android armv7 arm64 x86 x86_64 with clang - Windows x86 x86_64 with Visual Studio 2017 - Windows x86 x86_64 with MinGW - macOS x86_64 with clang - iOS arm64 x86_64 with clang Co-authored by: Nirbheek Chauhan <nirbheek@centricular.com> https://gitlab.xiph.org/xiph/opus/-/merge_requests/13
* Fix MSVC warning about trunction from double to floatNirbheek Chauhan2020-08-211-3/+3
| | | | | | Specify the precision as float to avoid truncating from double. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* repacketizer_demo: check for read errors to fix compiler warningsNirbheek Chauhan2020-08-211-7/+37
| | | | | | | | | | | Actually check for read errors instead of just storing the return value in a variable that then never gets checked. Also fixes "conversion from 'size_t' to 'int', possible loss of data" compiler warnings on Windows with MSVC caused by storing the size_t returned by fread() into an int variable. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Replace WIN32 with _WIN32 everywhereNirbheek Chauhan2020-08-215-7/+7
| | | | | | | | _WIN32 is defined on all Windows platforms by every compiler that targets Windows. We do not need WIN32 at all. Signed-off-by: Mark Harris <mark.hsj@gmail.com> Resolves https://github.com/xiph/opus/pull/104
* celt: Fix broken SSE pre-processor check due to typoNirbheek Chauhan2020-08-211-1/+1
| | | | | | This broke 5 years ago in 43120f00758219a784f952754f33b9788a8d731b Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* silk: Fix incorrect ifdef in debug.cNirbheek Chauhan2020-08-211-2/+1
| | | | Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* opus_decoder_fuzzer: limit the number of decodes to avoid timeoutFelicia Lim2020-08-101-1/+4
|
* cmake - MINGW check for ssp lib and link if security features is enabledMarcus Asteborg2020-08-082-6/+28
|
* CMake: Make _FORTIFY_SOURCE optionalZeno Endemann2020-08-081-1/+7
|
* cmake - fix bugs around consuming Opus as a submodule in cmake and package ↵Marcus Asteborg2020-08-085-68/+80
| | | | version parsing
* cmake - Fix typo bug in enable_float_api optionMarcus Asteborg2020-08-081-1/+1
|
* cmake - add warning flags for clang, gcc etc.Marcus Asteborg2020-08-081-0/+12
|
* gitlab-ci: Run jobs on the gcc:9 image.Ralph Giles2020-08-081-1/+1
| | | | | | | | | | | | | Use a versioned gcc container image for more consistent test results. This is the same version we're using for other projects, but of course it will need to be bumped periodically. The current gcc release is 10.2. The oldest supported release is 8.4, so this is in the middle of the support window. Signed-off-by: Marvin Scholz <epirat07@gmail.com>
* configure: adjust x86 get cpu info inline assembly method for PIC casesezero2020-07-071-0/+13
| | | | | | .. just like the way it is done in celt/x86/x86cpu.c. Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
* Fix and clean up opus_decode_fuzzerFelicia Lim2020-06-181-19/+14
| | | | Use the fuzzed sub-length of the input data instead of the whole input.
* Remove trailing whitespaces in vla.c that was missed previouslyMarcus Asteborg2020-06-151-4/+4
|
* Add CI to check for trailing whitespaces in merge requestsMarcus Asteborg2020-06-151-0/+7
|
* Fix arm build with rtcd enabled.Ralph Giles2020-06-141-0/+2
| | | | | | | | | | | | | | | | | | The autotools build doesn't set OPUS_HAVE_RTCD for arm targets, assuming all the supported intrinsics will work on the runtime cpu. The cmake build however defines this by default when the neon extension is available on the target. On Linux, the runtime cpu detection reads /proc/cpuinfo, so removing stdio.h from celt/os_support.h meant that the cmake build for arm targets failed. We don't currently have ci runs for that configuration, so this only became apparent through manual testing. Signed-off-by: Marcus Asteborg <maastebo@microsoft.com> Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
* Fix trailing whitspace in previous commitMarcus Asteborg2020-06-131-3/+3
| | | | Signed-off-by: Ralph Giles <giles@thaumas.net>
* Prefer SSE and ASM implementation of float2int before lrintf for MSVCMarcus Asteborg2020-06-141-26/+32
| | | | Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
* Silence clang silk_encoder alignment warningMark Harris2020-06-131-1/+1
|
* fix doc/build_draft.sh run errorwillson-chen2020-06-131-0/+9
| | | | | | | Add newer source directories to the destdir file tree so we can include all sources referenced from opus_sources.mk. Signed-off-by: Ralph Giles <giles@thaumas.net>
* opus draft: fix run failed under dashwillson-chen2020-06-131-1/+1
| | | | | | | | [[ ]], the compound command is not supported by all shell interpreter. [ ], the buildin command is more common. Signed-off-by: Ralph Giles <giles@thaumas.net>
* cmake - refactor and cleanup optionsMarcus Asteborg2020-06-131-111/+113
| | | | Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* cmake/CFeatureCheck.cmake: fix feature tests failing when Opus is a submoduleDavide Beatrici2020-06-131-2/+2
| | | | | | | | | | | | | CMAKE_SOURCE_DIR corresponds to the top project's source directory. CMAKE_BINARY_DIR corresponds to the top project's binary directory. The usage of these variables doesn't cause any problems when Opus is built as a standalone project. This is not the case when Opus is added as submodule: the variables are set by the project that calls "add_subdirectory()". The fix consists in using PROJECT_SOURCE_DIR and PROJECT_BINARY_DIR, which always refer to the current project. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* cmake - add option to disable intrinsicsMarcus Asteborg2020-06-132-116/+123
| | | | Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* cmake - move all compiler feature detection to OpusConfigMarcus Asteborg2020-06-133-43/+38
| | | | Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* cmake - add include guards to cmake filesMarcus Asteborg2020-06-134-5/+18
| | | | Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* cmake - move cmake related files to cmake folder to make root dir less busyMarcus Asteborg2020-06-138-14/+14
| | | | Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* cmake - only publish opus_custom.h if custom modes is enabled #121Marcus Asteborg2020-06-131-1/+4
| | | | Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* cmake - add headers to projectMarcus Asteborg2020-06-132-3/+6
| | | | Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Add support to CMake build for building frameworks on Apple systems.Simon Jackson2020-06-131-5/+21
| | | | Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Fix intrin0.h include guard.Ralph Giles2020-06-111-1/+1
| | | | | | | | | This lighter-weight intrinsics header is available starting with Microsoft Visual Studio 2017, so the previous change to allow this header failed when building with Visual Studio 2015. Restores the appveyor continuous integration build.
* Build time improvement, for MSVC use intrin0.h instead of intrin.h and ↵Marcus Asteborg2020-06-116-14/+23
| | | | | | remove usage of stdio.h in production code Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
* Disable message box when calling abort(). The message box is causing hangs ↵Marcus Asteborg2020-06-113-0/+9
| | | | | | in tests. Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
* Build and run test for cmake build in gitlab-ciMarcus Asteborg2020-06-111-1/+2
| | | | Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
* Update Doxygen config file, header and footer to Doxygen 1.8.18Marcus Asteborg2020-06-083-13/+26
| | | | Signed-off-by: Ralph Giles <giles@thaumas.net>
* Build trivial_example by default.Ralph Giles2020-06-012-1/+6
| | | | | | | Add doc/trivial_example.c to the autotools build so we get some minimal verification that the code compiles. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* trivial_example: Check the return value of fread().Ralph Giles2020-06-011-2/+13
| | | | | | | | | | | | | | | | Silence a gcc warning by checking the return value of the fread() call instead of the feof() guard. This prevents an infinite loop in the case of a read error. Otherwise, when end-of-file is reached fread() will certainly return a smaller number of elements read than requested, so both cases are handled now. Add a comment to clarify that we're dropping a partial frame on purpose to keep the code simple. Also add more braces around conditional bodies for less error-prone style. Signed-off-by: Mark Harris <mark.hsj@gmail.com>