sezero
952d511655
cmake: fix nasm sources build when building in a separate directory
...
When building in the same directory as the source, it works, but not in
a separate directory. The trailing slash is important with nasm. Note
that include_directories("${CMAKE_CURRENT_SOURCE_DIR}/") does not work
because cmake seems to strip the trailing slash.
Also relax the cmake version requirement from 3.12 to 3.9 as everywhere
else in the tree: it works just fine.
2019-10-10 18:32:21 +11:00
sezero
ee70d96932
cmake: do not add visibility attributes to shared lib builds for win32.
2019-10-10 18:30:39 +11:00
sezero
b917d456d2
make dllexport work with compilers other than MSVC
...
the issue is, flac and metaflac exes rely on flac_internal_???_utf8()
procedures from windows_unicode_filenames.c and there is no easy way
to exclude them from exports without breaking things. So export them
explicitly (they are exported anyway w/o this patch), but add a FIXME
note about the kludge in windows_unicode_filenames.c.
2019-10-10 18:30:39 +11:00
sezero
19a0e99ac3
move the new public get_decoder_client_data function to public header.
2019-10-10 06:09:21 +11:00
Erik de Castro Lopo
2e7931c27e
libFLAC/bitreader.c: Fix out-of-bounds read
...
Credit: Oss-Fuzz
Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=17069
Testcase: fuzzer_decoder-5670265022840832
2019-10-08 06:14:06 +11:00
Erik de Castro Lopo
6d0e222a6e
Make sure CMake build files end up in release tarball
2019-10-01 08:18:28 +10:00
Erik de Castro Lopo
5598543a96
libFLAC/lpc.c: Fix signed integer overflow
...
Do the addition as 64 bits before truncating to 32 bits.
Credit: Oss-Fuzz
Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16459
Testcase: fuzzer_decoder-5728784602365952
2019-09-16 06:18:07 +10:00
Erik de Castro Lopo
8147ee7ea2
libFLAC/bitreader.c: Fix shift invoking undefined behaviour
...
Credit: Oss-Fuzz
Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16464
Testcase: fuzzer_decoder-5663276452544512
2019-09-16 06:18:07 +10:00
Erik de Castro Lopo
09f47c00e1
libFLAC/bitreader.c: Fix shift invoking undefined behaviour
...
Credit: Oss-Fuzz
Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16458
Testcase: fuzzer_decoder-5649174900506624
2019-09-16 06:18:07 +10:00
Erik de Castro Lopo
c34c3459b5
libFLAC/bitreader.c: Fix OOB read
...
Credit: OSS-Fuzz
Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16457
Testcase: fuzzer_decoder-5076189185572864
2019-09-16 06:18:07 +10:00
Erik de Castro Lopo
04974d2715
Fix a number of gcc 9.2 compiler warnings
2019-09-15 16:14:36 +10:00
Rosen Penev
2409f5f39d
Run libFLAC++ through clang-tidy.
...
Applied the following suggestions:
modernize-deprecated-headers
google-readability-casting
google-readability-namespace-comments
readability-else-after-return
2019-09-15 11:39:08 +10:00
Rosen Penev
9ea40e34f8
window: fabs > fabsf and cos > cosf where it makes sense
...
The f functions are faster. It seems the arguments are all floats.
2019-09-15 11:34:08 +10:00
Rosen Penev
cc6ca9a6ec
flac/utils: Add missing define
...
wcswidth needs _XOPEN_SOURCE defined. Otherwise, no declaration.
2019-09-15 11:30:35 +10:00
Rosen Penev
66dd7f05d7
Switch to utimensat for newer POSIX versions
...
Some libcs like uClibc-ng can optionally disable deprecated functions.
utime is one of them. When done so, both the header and the function go
missing.
This fixes flac_utime to work in such a situation.
2019-08-20 06:49:13 +10:00
pkubaj
5db5820932
Fix build on FreeBSD PowerPC
...
Used the elf_aux_info function on FreeBSD and clarify that users of other
systems need to implement reading from AT_HWCAP2.
2019-08-18 10:44:15 +10:00
Erik de Castro Lopo
4ca0d85c5d
libFLAC: Rename get_client_data_from_decoder function
...
This function was added after the 1.3.2 release, but the name was bad
(missing "FLAC__" at the start) and the pointer returned should be 'const'.
2019-08-09 09:36:19 +10:00
sezero
4a43f2bd4d
Do not assume that sys/param.h defines MIN and MAX
...
One such example is sys/param.h from MinGW.
2019-08-05 12:35:08 +10:00
Erik de Castro Lopo
f764434a39
Version 1.3.3
2019-08-04 19:47:53 +10:00
Erik de Castro Lopo
deb21bc251
Update Visual Studio 2005 files
...
Patch-from: Janne Hyvärinen
2019-07-16 07:53:41 +10:00
Erik de Castro Lopo
48e8dbcf4a
Fix CppCheck warnings
2019-07-15 09:42:38 +10:00
Виталий Кирсанов
77e234acef
CMake: fixed windows_unicode_filenames linking errors
2019-05-28 15:55:27 +10:00
evpobr
e4b94e3144
Fix Visual Studio solution generation with CMake
...
Rename flac application target to flacapp to avoid name collision with FLAC library target.
Closes #101 .
2019-05-12 09:00:07 +10:00
Vitaliy Kirsanov
55447a2d58
Ogg::Ogg renamed to Ogg::ogg
2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
573dbc12ae
Use of BUILD_SHARED_LIBS added
2019-05-04 11:41:48 +10:00
Виталий Кирсанов
1cb968a7d4
Fixed dependencies on win_utf8_io
2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
5d81610eb5
Fixed dependency between grabbag and utf8
2019-05-04 11:41:48 +10:00
Vitaly Kirsanov
a82a014cf1
CMake minimum required lowered to 3.1
2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
2359563a46
FLAC now depends on win_utf8_io
...
Accidently found this missing dependency
2019-05-04 11:41:48 +10:00
Vitaly Kirsanov
8610c3acfb
Added /arch:SSE2 flag
2019-05-04 11:41:48 +10:00
Vitaly Kirsanov
aa96297d78
Versions for shared libs specified
2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
5435f15be4
/test/*.sh enabled for CTest in UNIX
2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
6cd2b6cded
FindOGG.cmake module added
2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
c39718d7a3
CMake support added
2019-05-04 11:41:48 +10:00
lvqcl
12ec86c618
Use MMX ASM fucntions instead of SSE4.1 if available
...
These SSE4.1 functions are not always faster than their MMX ASM counterparts,
so let's use ASM functions if they're available.
2019-03-08 07:01:19 +11:00
Robert Kausch
b936e398e2
Speed up FLAC__bitwriter_write_byte_block (metadata writing)
2019-03-08 07:00:12 +11:00
Karthik Periagaram
cc15b7427a
Suppress compression failure message if it is not an error
...
If the user specifies `--no-error-on-compression-fail`, there is no need
to treat compression failure as an error. Hence, the failure message
should be suppressed along with the non-zero exit code (which already
is suppressed).
2019-02-01 18:20:30 +11:00
lvqcl
421961f00b
Replace hadd with shuffle + add
2018-09-20 07:20:13 +10:00
lvqcl
faafa4c82c
Cosmetic changes in lpc_asm.nasm and utf8.c
2018-09-02 21:26:51 +10:00
lvqcl
0897458f59
Update MinGW build files
2018-08-26 07:58:50 +10:00
lvqcl
edfbe3cf19
Move CreateFile_utf8 function to a more logical place
2018-08-25 18:55:30 +10:00
Anton Blanchard
cdb030cd37
Add VSX optimised versions of autocorrelation loops
...
Add a POWER8 and POWER9 version of the autocorrelation functions.
flac --best is about 3.3x faster on POWER9 with this patch.
Signed-off-by: Anton Blanchard <anton@ozlabs.org >
2018-08-20 18:16:34 +10:00
Anton Blanchard
8e1796b91a
Add runtime detection of POWER8 and POWER9
...
Use getauxval() to determine if we are on POWER8 or POWER9 or newer.
POWER8 is represented by version 2.07 and POWER9 by version 3.00.
Signed-off-by: Anton Blanchard <anton@ozlabs.org >
2018-08-20 18:16:34 +10:00
lvqcl
9fa2b5edba
move CreateFile function outside of libFLAC
2018-08-19 15:12:26 +10:00
Erik de Castro Lopo
a8e9857e38
windows_unicode_filenames.c: Fix a missing return statement
2018-08-18 09:44:24 +10:00
evpobr
6892e7c8a2
Improve SIMD detection with Visual Studio
...
Visual Studio can use GCC (for Android) and Clang (supported toolset) so they must be checked before native compiler.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com >
2018-06-13 06:21:54 +10:00
orbea
5dff53c0cc
Fix --output-prefix with input-files in sub-directories
...
And make sure to reserve the whole file path when not using --output-prefix.
Fixes https://sourceforge.net/p/flac/bugs/463/
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com >
2018-06-11 09:57:09 +10:00
luz.paz
01eb19708c
Fix miscellaneous typos.
...
Found via `codespell -q 3`
2018-05-24 07:20:19 +10:00
Robert Kausch
c2673dafb1
Add unit tests for word-wise CRC16 functions
...
Update FLAC__BitReader structure in unit test.
2018-05-21 10:19:28 +10:00
Robert Kausch
65c2796402
Fix CRC calculation for small blocks.
2018-05-21 10:19:03 +10:00