The DEB package generator isn't available in the cmake version
provided by travis-ci.org, so only skip invoking it there.
Unbreaks cmake build tests after adding macOS coverage.
Test on Linux and macOS with both gcc and clang.
Ubuntu 14.04 (trusty) is now the default travis environment.
Signed-off-by: Ralph Giles <giles@thaumas.net>
* Use build_script step in AppVeyor configuration. This is a
preparation for building with multiple build systems.
* Add BUILD_SYSTEM env variable to AppVeyor build matrix. This
allows to switch between different build systems when building
multiple test matrix configurations.
Signed-off-by: Ralph Giles <giles@thaumas.net>
We call ogg_stream_init() in main() of framing.c, but no
ogg_stream_clear() in corresponding. It will cause memory leak.
Signed-off-by: Ralph Giles <giles@thaumas.net>
Fixes a cppcheck warning. Possibly we should just convert
the array type to `long` since that's what oggpack_look()
returns, using negative values to report error.
However, none of the compared values are out of range
for either type so it doesn't really matter.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Signed-off-by: Ralph Giles <giles@thaumas.net>
Sets the correct include path when the build directory isn't the
the top source directory. Also, uses the .la file for linking,
which makes it possible to use shared libraries (and properly
build when libogg is used from a library).
Signed-off-by: Ralph Giles <giles@thaumas.net>
Subversion, like cvs, had a mechanism for replacing inline template
text on checkout for representing things like 'last modified date'.
Git does not support this, so remove the template strings from
file header comments.
Also less aggressive language is os_types.h.
Bump the API documentation page footer for the latest release.
I missed this before making the 1.3.3 release, changing it
now and including this version on the website is less confusing,
I think.
On 64-bit Windows, sizeof(unsigned char *) is 8, sizeof(long) is 4 and
alignof(ogg_int64_t) is 8. This results in a 4-byte hole in ogg_packet
after "long e_o_s", which means ogg_packet structs cannot be reliably
compared by memcmp. Compare ogg_packet structs member-by-member instead.
This fixes `make check` for me on mingw-w64/GCC.
Signed-off-by: Ralph Giles <giles@thaumas.net>
The previous commit changed the generated source file location
without updating the installed-file list or include directories,
breaking installation and downstream integration tests.
Adding the include directory doesn't seem to be necessary on macOS,
but even the initial build step fails on Linux without it.
A false continued packet occurs if the previous page ended at the
end of a packet, with no sequence number gap and no continued data
on that page, while the current page has the continued packet flag
set.
Previously, if you drained all of the buffered packet data by
repeatedly calling ogg_stream_packetout() after submitting the
previous page but before submitting the current page, libogg would
discard the continued data at the beggining of the current page.
However, if you left the previous page's data in the buffer, then
libogg would happily return the continued data at the start of the
current page as a separate packet when you eventually did call
ogg_stream_packetout().
This patch makes libogg consistently discard this data.
Users should be able to install the MacOSX Framework by pointing
CMAKE_INSTALL_PREFIX to the corresponding directory. For example to
install into `/Library/Frameworks` configure with
cmake -DCMAKE_INSTALL_PREFIX=/Library/Frameworks <build dir>