summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* CMake: Link libm to test binaries if available.HEADmasterDaniel Engberg2021-05-121-1/+1
| | | | | | | | If libm is available link it to test binaries which will otherwise fail to compile. Tested on FreeBSD 13-STABLE. Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net> Signed-off-by: Ralph Giles <giles@thaumas.net>
* CMake: Fix spelling mistakeDaniel Engberg2021-05-101-1/+1
| | | | | | | "Install CMake package configiguration module" --> configuration Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net> Signed-off-by: Ralph Giles <giles@thaumas.net>
* Fix tests on MSVC.Ralph Giles2021-05-091-0/+4
| | | | | | | | | | | | | | Copy the fallback M_PI define from lib/os.h to test/util.c so the symbol is available under Microsoft's compiler, which doesn't supply it by default. (This can be changed by defining _USE_MATH_DEFINES before including math.h.) The os.h fallback is used when compiling the main codec library, but is not used in the external test harness, so compiling that was failing with CMake under Windows. Signed-off-by: evpobr <evpobr@gmail.com>
* Fix tests run with make check when using alternative allocators.Robert Kausch2021-02-201-1/+1
| | | | | | | | | | | The call to free in line 584 of sharedbook.c mismatches the _ogg_calloc call used to allocated that data in line 216. This causes make check to fail when alternative allocators are used, e.g. the xmm_malloc family of allocators used with the Lancer optimizations. Signed-off-by: Ralph Giles <giles@thaumas.net>
* Add tests to CMake projectevpobr2020-11-064-0/+12
| | | | | | Related to https://github.com/xiph/vorbis/issues/73. Signed-off-by: Ralph Giles <giles@thaumas.net>
* Fix pkgconfig creation with cmake.Matt Oliver2020-11-051-0/+3
| | | | | | | | | | | | The cmake build script was not setting a VORBIS_LIBS variable that is used to update pkg-config files. This results in linking errors in downstream projects due to missing dependencies (in this case libm). This patch just updates the cmake script to behave the same as configure does currently. Signed-off-by: evpobr <evpobr@gmail.com>
* Export CMake targets to the build treeevpobr2020-10-263-5/+14
| | | | Properly export Vorbis targets when added via `add_subdirectory()`.
* Update release checklist after the 1.3.7 release.Ralph Giles2020-07-201-0/+2
| | | | | | Additional steps developed during the release processes. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Add source package checksums.Ralph Giles2020-07-201-0/+39
| | | | | | | | | | | Add a SHA-256 checksum file with the various stable source packages listed to the repository. There are tracked separately on the release site and mirrors, but having a copy in the source repo provides another reference for integrity checks. We already do this for another of other projects. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Reference CVE-2018-10392 in the release notes.Ralph Giles2020-07-201-0/+1
| | | | | | | | | The fix for this issue was in the 1.3.7 release, but we didn't refer to the CVE number explicitly in the release notes. Do so now for the benefit of anyone auditing vulnerability fixes in the future. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Add vorbis dependencies when building examples.v1.3.7Ralph Giles2020-07-031-5/+5
| | | | | | | | | | | The decoder_example program calls floor() which requires its own -lm on the link line to resolve the local reference. It seems on most platforms this was shadowed by the transitive dependency in the vorbis libraries, but it results in an unddefined reference error on e.g. debian 10 mipsel. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update version and copyright for the 1.3.7 release.Ralph Giles2020-07-035-9/+9
| | | | | | | | | | | | | Bump soname version and vendor string for the new release. Update the top-level copyright dates for the release. The have only been bug fixes to the encoder, no tuning changes, but we updated the codename last time. so doing so again this time. It's better to be able to distinguish releases than not. Signed-off-by: Mark Harris <mark.hsj@gmail.com> Signed-off-by: Thomas Daede <daede003@umn.edu>
* Update CHANGES for the 1.3.7 releaseRalph Giles2020-07-031-0/+19
| | | | | | | Summary of commits since the last release. Signed-off-by: Mark Harris <mark.hsj@gmail.com> Signed-off-by: Thomas Daede <daede003@umn.edu>
* Ignore example executables.Ralph Giles2020-07-031-0/+5
| | | | | | Stop these clutting the `git status` output. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Rebuild specification.Ralph Giles2020-07-0317-2611/+1893
| | | | | | | | | | | | | | | | | The tools to build the Vorbis format specification are a heavy dependency, so we keep a built copy of that documentation in the repository for the convenience of casual developers. Rebuild the documents to bump the date and footer link for the 1.3.7 release. The spec build is broken on current texlive releases, with symptoms like a missing table of contents in the pdf and incorrect size attributes on figure images in the html output. This version was build in a debian:9 (stretch) container to recover more of the expected behaviour. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Fix dependency loop in the specification.Ralph Giles2020-07-031-19/+22
| | | | | | | | | | | | | | | | | | | | | | | | Building the html version of the Vorbis format specification creates a series of image files containing figures and rendered equations. Previously we were treating these as part of the static documentation, since we keep a copy of the spec in the repository. Hopever, since the static images were listed as dependencies of the specification document (as the not-generated ones are) rebuilding the spec necessarily rebuilt them as well, which meant the spec would always be considered out of date and rebuilt needlessly. Instead, split the static image files from the set which are generated as part of the specification build process, and only mark dependence on the former. This allows us to drop the inconsistent DISTCLEAN line which was working around the problem of always needing to rebuild the spec, even when it was included in the distribution. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update documentation cleanfiles.Ralph Giles2020-07-031-0/+1
| | | | | | | Add a new intermediate file generated when building the spec. It's necessary to remove all intermediates to pass `make distcheck`. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Fix EFF Open Audio License removal.Ralph Giles2020-07-031-5/+2
| | | | | | | The earlier commit changed the html, but not the original TeX source document. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Fix a link typo in the spec colophon.Ralph Giles2020-07-031-1/+1
| | | | | | This was introduced by the recent https link update patch. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Link to archive.org for the LSP implementation.Ralph Giles2020-07-031-1/+2
| | | | | | | The page the LSP algorithm is based on is no longer online. Link to an archived version instead. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update link to crc_v3.txt.Ralph Giles2020-07-031-4/+3
| | | | | | | | | | | | Ross William's website is still up, but the section containing the CRC introduction is no longer available. Instead link to a copy on zlib.org which hopefully will remain available. Also remove the mailto: link. Email is not one of the included contact links on the author's site, so it seems rude to continue to publish it here. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update the link to the multirate filter bank paper.Ralph Giles2020-07-032-3/+3
| | | | | | | The old url is broken. This PDF link is just the first search engine suggestion for the filename. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Remove reference to the EFF Open Audio license.Ralph Giles2020-07-032-9/+5
| | | | | | | | | The url no longer works, and according to Wikipedia, the EFF now recommends Creative Commons licenses instead. Also provide a specific Creative Commons license as an example. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update repository links to the gitlab instance.Ralph Giles2020-07-031-2/+2
| | | | | | | | Neither git.xiph.org not the jenkins instances are still online. Point people at the new gitlab instance and build status badge instead. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update remaining website links to https.Ralph Giles2020-07-033-6/+6
| | | | | | | These were missed in an earlier commit. Thanks to Mark Harris for the review. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Fix documentation links to the vorbis website.Ralph Giles2020-07-0352-52/+52
| | | | | | | | | | | The server is using .shtml index pages, so linking directly to an index.html page does not work. Truncate the reference at the directory path and rely on the server's default page to select the correct contents. Thanks to Mark Harris for pointing out the breakage. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Fix about link in the specification.Ralph Giles2020-07-031-1/+1
| | | | | | | | The old .html versions of these pages no longer redirect to to the new-style directory-based urls, so this link was broken. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update download links in packaging files.Ralph Giles2020-07-033-4/+4
| | | | | | Use a secure link to the current mirror site. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update website links in the documentation.Ralph Giles2020-07-03121-123/+123
| | | | | | | | - Prefer the shorter, secure url. - Link to the current xiph.org/vorbis location for the vorbis project website. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Remove obsolete link to vorbis.com.Ralph Giles2020-07-031-2/+0
| | | | | | | | There remains a link from the Vorbis RTP format RFC, which is an immutable published document. We'll have to maintain a redirect for the sake of that link. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update CMake links.Ralph Giles2020-07-031-2/+2
| | | | | | Use secure links to the default domain and current documentation. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update ISRC link.Ralph Giles2020-07-032-2/+2
| | | | | | The current link redirects to this secure link. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Update website link in copyright headers.Ralph Giles2020-07-0391-91/+91
| | | | | | | Use the secure link, which should be the default. Prefer the url without the `www` prefix because it's shorter. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
* Add further array bounds checks to bark_noise_hybridmp.Ralph Giles2020-07-011-10/+13
| | | | | | | | | | Make it clear to local analysis that no out-of-bounds array accesses are possible here. Follow-up to CVE-2018-10393 and CVE-2017-14160. Signed-off-by: Thomas Daede <daede003@umn.edu> Signed-off-by: Monty <xiphmont@xiph.org>
* autotools: Use AC_CANONICAL_HOSTRalph Giles2020-06-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | We were calling AC_CANONICAL_TARGET in configure.ac under the mistaken impression that this allowed setting the target architecture for cross-compilation output. However, in GNU terminology the system type that this the target of cross-compilation is the "host" and "target" is reserved for setting what the output of the compiled application should itself target, when compiling a cross-compiler. Finally "build" is the system type the build system is itself running under. So to cross-compile, one invokes `./configure --host ...` not `--target`. In any case, we only make use of the `host` variable, so that is the macro we need to invoke to provide it. Thanks to Maarten Bosmans for reporting the issue. Signed-off-by: Marvin Scholz <epirat07@gmail.com>
* pkg-config: Only append -lm if necessary.Ralph Giles2020-06-121-1/+1
| | | | | | | | | Some systems don't require a separate -lm to link with libc math functions. The configure script checks for this, so use the corresponding variable to set the dependent libraries in vorbis.pc dynamically. Signed-off-by: Marvin Scholz <epirat07@gmail.com>
* gitlab-ci: Use the gcc:9 base image.Ralph Giles2020-06-101-1/+1
| | | | | | | | Use a versioned base image for jobs to reduce variance. This version number will need to be bumped periodically. Signed-off-by: Marvin Scholz <epirat07@gmail.com>
* gitlab-ci: Don't cache object files.Ralph Giles2020-06-101-4/+0
| | | | | | This could only help with the initial build, not `make distcheck` and since config.h is generated fresh for each job, everything was remade anyway. Thanks to ePirat for pointing out the issue.
* gitlab-ci: Move shared tags to a default section.Ralph Giles2020-06-101-6/+5
| | | | | Move shared properties into a `default` stanza per current style recommendations.
* Add cmake build to gitlab ci.Ralph Giles2020-04-151-1/+14
| | | | | | Add an additional build job to the gitlab ci pipeline to do a cmake build. This doesn't run tests, but gives us a little bit of converage.
* Add gitlab ci configuration.Ralph Giles2020-04-151-0/+19
| | | | | | | | | | | | Describe a basic autoconf build and test for gitlab's integrated continuous integration runner. Uses the gcc docker image. Copied from the theora version. - `zip` is needed for `make dist` - `doxygen` is needed to generate api documentation. latex is also needed, but a heavy dependency to install every run, so skipped for now.
* Instead of SIGFPE when bytespersample is zero or negative, return OV_EINVALPetter Reinholdtsen2020-04-151-0/+3
| | | | | | | | Based on0002-Avoid-SIGFPE-when-bytespersample-is-zero.patch from Debian, see https://bugs.debian.org/635906 , adjusted with input from Ralph Giles. Signed-off-by: Ralph Giles <giles@thaumas.net>
* Silence some CMake build MSVC useless warningsevpobr2020-04-081-0/+6
| | | | | | Supress warnings about unsafe and deprecated functions like this: strcat is unsafe, use `strcat_s` instead and so on. Signed-off-by: Ralph Giles <giles@thaumas.net>
* Export public function on MinGW platformevpobr2020-04-081-1/+1
| | | | MinGW produces DLLs, but exports nothing.
* Fix CMake include install directoryevpobr2020-04-081-1/+1
|
* Fix CMake config-file package generationevpobr2020-04-081-2/+2
|
* travis-ci: Build on the xcode11 macOS image.Ralph Giles2020-04-081-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the macOS builds on the travis-ci.org continuous integration system by requiring a more recently-created system image where homebrew packages install correctly. Also switch to declarative syntax for the homebrew package dependencies, using the built-in Brewfile support instead of invoking `brew` explicitly. Travis doesn't update the homebrew three on their default macOS images, so over time available packages become out-of-date, or any explicit update step takes longer and longer, slowing the testing feedback loop. In this particular instance jobs were failing because homebrew on the default macOS image wasn't working at all. Without an update, package installation failed because the `brew bundle` subcommand had itself bitrotted, while running `brew update` would time out, taking more than the allowed job time. Requiring a more recent (non-default) macOS image gets out tests working again. In the future this will probably need to be bumped again or restored to the default image. For more context, see https://travis-ci.community/t/macos-build-fails-because-of-homebrew-bundle-unknown-command/7296/14
* win32: Update VS2010 project files for ogg library name.Ralph Giles2020-04-086-26/+26
| | | | | | | | | | The ogg project changed the default target, making libogg.lib a static library instead of libogg_static.lib. Update our build to match. The VS2005 and VS2008 projects are left as-is, because I have no way to test them and they likely aren't in active use.
* appveyor: Use the correct ogg solution file.Ralph Giles2020-04-081-1/+1
| | | | | | In ogg commit 6d55ddf64b65, the static build was made the default, removing the separate static target solution file, breaking our build on the Appveyor continuous integration system.
* Clean up trailing whitespace.Ralph Giles2020-04-072-2/+2
|