Erik de Castro Lopo [Mon, 1 Apr 2013 19:37:08 +0000 (06:37 +1100)]
flac_mac patches from Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Mon, 1 Apr 2013 19:35:35 +0000 (06:35 +1100)]
Another windows utf8 I/O patch from Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Mon, 1 Apr 2013 19:33:09 +0000 (06:33 +1100)]
MSVC version patch from Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Mon, 1 Apr 2013 19:27:07 +0000 (06:27 +1100)]
Two small patches for utf8 I/O.
Thanks to LRN <lrn1986@gmail.com>.
Erik de Castro Lopo [Mon, 1 Apr 2013 19:05:47 +0000 (06:05 +1100)]
include/share/Makefile.am : Add win_utf8_io.h.
Erik de Castro Lopo [Mon, 1 Apr 2013 11:00:59 +0000 (22:00 +1100)]
Purge more strcpy/strcat usage.
Erik de Castro Lopo [Mon, 1 Apr 2013 09:49:41 +0000 (20:49 +1100)]
configure.ac : Version 1.3.0pre3.
Erik de Castro Lopo [Mon, 1 Apr 2013 09:01:37 +0000 (20:01 +1100)]
Purge FLAC__STRINGS_IN_UTF8 from VC project files.
Erik de Castro Lopo [Mon, 1 Apr 2013 08:57:13 +0000 (19:57 +1100)]
Enable utf8 I/O stuff when compiling with MinGW.
Erik de Castro Lopo [Mon, 1 Apr 2013 06:44:42 +0000 (17:44 +1100)]
Use recursive automake in src/share/ part of tree.
This will make it easier to incorporate the win_utf8_io stuff.
Erik de Castro Lopo [Sat, 23 Mar 2013 11:24:47 +0000 (22:24 +1100)]
Add CLEANFILES to relevant Makefile.am to force removal of Windows EXEs.
This ensures they are removed even we've cross-compiled from Linux
to Windows and then configured for Linux. We don't want the Windows
EXEs to be run after configuring for Linux.
Erik de Castro Lopo [Sat, 23 Mar 2013 11:13:47 +0000 (22:13 +1100)]
include/share/compat.h : Cleanup.
Erik de Castro Lopo [Fri, 22 Mar 2013 07:22:57 +0000 (18:22 +1100)]
Rename _flac_stat to flac_stat_s.
Erik de Castro Lopo [Fri, 22 Mar 2013 07:18:14 +0000 (18:18 +1100)]
Rename all 'utf8_io' -> 'win_utf8_io'.
Erik de Castro Lopo [Thu, 21 Mar 2013 08:18:49 +0000 (19:18 +1100)]
Huge Windows utf8 I/O patch.
Patch from Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Fri, 29 Mar 2013 09:54:34 +0000 (20:54 +1100)]
src/test_libFLAC/decoders.c : Minor improvement.
Miroslav Lichvar [Wed, 27 Mar 2013 16:49:19 +0000 (17:49 +0100)]
Fix option names in documentation and help messages.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Erik de Castro Lopo [Sat, 23 Mar 2013 11:02:56 +0000 (22:02 +1100)]
include/share/compat.h : Simplify.
Erik de Castro Lopo [Thu, 21 Mar 2013 06:28:23 +0000 (17:28 +1100)]
Replace a couple of safe_strncpy/cat with snprintf.
Erik de Castro Lopo [Tue, 19 Mar 2013 09:23:44 +0000 (20:23 +1100)]
Replace broken str* functions with safe versions.
Erik de Castro Lopo [Tue, 19 Mar 2013 09:14:26 +0000 (20:14 +1100)]
Add new file include/share/safe_str.h.
New functions safe_strncat() and safe_strncpy() which always return
a NUL terminated string and do not overflow the destination buffer.
Erik de Castro Lopo [Mon, 18 Mar 2013 08:35:30 +0000 (19:35 +1100)]
autogen.sh : OpenBSD tweaks.
Erik de Castro Lopo [Sun, 17 Mar 2013 19:22:51 +0000 (06:22 +1100)]
More Microsoft Visual Studio project file updates.
Patch from Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Sun, 17 Mar 2013 11:05:58 +0000 (22:05 +1100)]
Windows flac_snprintf tweaks.
Patch from Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Sun, 17 Mar 2013 11:04:34 +0000 (22:04 +1100)]
include/share/private.h : Add FLAC_API to private functions.
Patch from Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Sun, 17 Mar 2013 09:56:41 +0000 (20:56 +1100)]
Use new function flac_snprintf() where ever appropriate.
This replaces un-safe usage of sprintf() and Micorsoft's _snprintf()
with something sane.
Erik de Castro Lopo [Sun, 17 Mar 2013 09:51:52 +0000 (20:51 +1100)]
Add file src/share/grabbag/snprintf.c to grabbag library.
Define function flac_snprintf() which has ISO C99 snprintf() behavior
even when compiling with Microsoft Visual Studio, by wrapping the
MSVS snprintf_s() function.
Erik de Castro Lopo [Sun, 17 Mar 2013 08:39:05 +0000 (19:39 +1100)]
FLAC.sln : Remove obsolete in_flac project.
Patch from Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Sun, 17 Mar 2013 07:31:46 +0000 (18:31 +1100)]
changelog.html : Updates.
Erik de Castro Lopo [Sun, 17 Mar 2013 07:28:53 +0000 (18:28 +1100)]
Wave64 patch from Janne Hyvrinen <cse@sci.fi>.
GUID had one word incorrectly in little endian order.
Erik de Castro Lopo [Thu, 14 Mar 2013 19:37:59 +0000 (06:37 +1100)]
Restore code dropped in commit
f25b2602dc.
Erik de Castro Lopo [Thu, 14 Mar 2013 07:22:29 +0000 (18:22 +1100)]
Fix a couple of Windows 2Gig file size issues.
Patch submitted by Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Wed, 13 Mar 2013 10:54:15 +0000 (21:54 +1100)]
configure.ac : Detect the size of off_t.
Erik de Castro Lopo [Wed, 13 Mar 2013 07:58:16 +0000 (18:58 +1100)]
Add configure option to enable GNU GCC stack smash protection.
This option is disabled by default because it is known not to work
on FreeBSD 9.1 and for Linux -> Windows cross compiling using the
Debian MinGW-w64 tool chain.
It is known to work for native compiles in Debian testing and
OpenBSD 5.2.
Erik de Castro Lopo [Tue, 12 Mar 2013 08:14:51 +0000 (19:14 +1100)]
MS VS : Add alloc.c to the grabbag static build.
Patch from Janne Hyvärinen <cse@sci.fi>.
Erik de Castro Lopo [Tue, 12 Mar 2013 06:08:29 +0000 (17:08 +1100)]
MS VS inline/extern fix from Ben Alison plus comments.
Add explicit extern to functions that are locally declared inline
but which also have non-inline public prototypes.
It seems MS VS does not quite meet the C99 spec (section 6.7.4).
Erik de Castro Lopo [Sun, 10 Mar 2013 11:34:18 +0000 (22:34 +1100)]
configure.ac : When compiling with GCC use some extra warning flags.
Erik de Castro Lopo [Sun, 10 Mar 2013 11:03:47 +0000 (22:03 +1100)]
Fix -Wshadow warnings.
Erik de Castro Lopo [Sun, 10 Mar 2013 11:02:07 +0000 (22:02 +1100)]
src/libFLAC/include/private/macros.h : Fix flac_min.
The existing flac_min macro was generating -Wshadow compiler warnings
when nested.
Erik de Castro Lopo [Sun, 10 Mar 2013 09:39:03 +0000 (20:39 +1100)]
Fix -Wstrict-prototypes -Wmissing-prototypes warnings.
The files src/flac/encode.c and src/libFLAC/stream_encoder.c use
functions in libFLAC that are marked as 'unpublished debug routines'.
This patch moves these functions to new file include/share/private.h
and marks them as 'unpublished debug routines'.
Erik de Castro Lopo [Sun, 10 Mar 2013 07:38:03 +0000 (18:38 +1100)]
include/share/compat.h : feeko and ftello fixes for MinGW.
Patch from LRN <lrn1986@gmail.com>.
Erik de Castro Lopo [Sun, 10 Mar 2013 01:30:49 +0000 (12:30 +1100)]
gcc_version.m4 : Use cut instead of sed.
Add this and other macros to Makefile.am.
Erik de Castro Lopo [Sun, 10 Mar 2013 00:01:20 +0000 (11:01 +1100)]
Purge old un-maintained MSVC 6 project files.
Erik de Castro Lopo [Sat, 9 Mar 2013 23:58:57 +0000 (10:58 +1100)]
doc/html/changelog.html : Prepare for 1.3.0 release.
Erik de Castro Lopo [Sat, 9 Mar 2013 12:56:19 +0000 (23:56 +1100)]
doc/html/documentation_tools_flac.html : Tweaks.
Erik de Castro Lopo [Sat, 9 Mar 2013 11:06:12 +0000 (22:06 +1100)]
Version 1.3.0pre2.
Erik de Castro Lopo [Sat, 9 Mar 2013 09:50:27 +0000 (20:50 +1100)]
Update .gitignore.
Erik de Castro Lopo [Sat, 9 Mar 2013 09:07:31 +0000 (20:07 +1100)]
m4/gcc_version.m4 : Fix XIPH_GCC_VERSION macro.
Macro was misbehaving with OpenBSD's sed.
Erik de Castro Lopo [Sat, 9 Mar 2013 08:42:26 +0000 (19:42 +1100)]
configure.ac : If gcc is version 4.2, use -fgnu89-inline.
Using -gnu-inline avoids a rather ugly warning message that only
seems to be present with gcc-4.2.
Erik de Castro Lopo [Sat, 9 Mar 2013 08:35:42 +0000 (19:35 +1100)]
test/test_compression.sh : Replace seq with numbers.
Apparently seq is a GNU program that isn't installed by default
on OpenBSD.
Erik de Castro Lopo [Sat, 9 Mar 2013 07:42:59 +0000 (18:42 +1100)]
configure.ac : Disable stack protector on FreeBSD.
Erik de Castro Lopo [Fri, 8 Mar 2013 23:25:39 +0000 (10:25 +1100)]
FLAC/ordinals.h : Add <stdint.h> definitions for MSVC < 2010.
Erik de Castro Lopo [Fri, 8 Mar 2013 21:55:37 +0000 (08:55 +1100)]
configure.ac : Don't enable stack protector for mingw* host_os.
Erik de Castro Lopo [Fri, 8 Mar 2013 10:13:13 +0000 (21:13 +1100)]
FLAC/ordinals.h : Provide links for <stdint.h> replacements.
Erik de Castro Lopo [Fri, 8 Mar 2013 10:06:37 +0000 (21:06 +1100)]
Fix version number in Visual Studio project files.
Patch from Ben Allison <benski@winamp.com> and tweaked to change
version from 1.3.0 (which hasn't been released yet) to 1.3.0pre1.
Erik de Castro Lopo [Fri, 8 Mar 2013 09:47:31 +0000 (20:47 +1100)]
Another MSVC patch from Ben Alison.
Erik de Castro Lopo [Wed, 6 Mar 2013 11:17:46 +0000 (22:17 +1100)]
Large patch from Ben Allison fixing the MSVC build.
Patch tweaked a little to fix Linux build and clean up minor problems.
Erik de Castro Lopo [Tue, 5 Mar 2013 11:19:27 +0000 (22:19 +1100)]
Fix compiler warnings from new compiler flags.
Erik de Castro Lopo [Tue, 5 Mar 2013 10:53:18 +0000 (21:53 +1100)]
configure.ac : Add hardening compile options.
Extra compile options are detected at configure time with new
XIPH_ADD_*FLAGS m4 macros.
Options enabled include -Wextra, -D_FORTIFY_SOURCE=2 and stack
protection.
Erik de Castro Lopo [Tue, 5 Mar 2013 07:11:36 +0000 (18:11 +1100)]
Fix a bunch of WDG validation warnings in HTML docs.
Erik de Castro Lopo [Tue, 5 Mar 2013 06:46:04 +0000 (17:46 +1100)]
documentation_tools_flac.html : Document --ignore-chunk-sizes command line option.
Erik de Castro Lopo [Tue, 5 Mar 2013 06:40:45 +0000 (17:40 +1100)]
documentation_tools_flac.html : Fix WDG HTML validator warnings.
Erik de Castro Lopo [Tue, 5 Mar 2013 06:35:16 +0000 (17:35 +1100)]
src/flac/main.c : Mention --ignore-chunk-sizes in help output.
Also mention --no-ignore-chunk-sizes option.
Erik de Castro Lopo [Mon, 4 Mar 2013 10:24:51 +0000 (21:24 +1100)]
test/test_compression.sh : Use wc instead of stat to get file size.
The stat program has different command line parameters depend on
whether its the GNU or BSD version. Sitch to 'wc -c' instead which
seems more portable.
Plus other minor improvements.
Erik de Castro Lopo [Sat, 2 Mar 2013 08:06:56 +0000 (19:06 +1100)]
configure.ac : Version 1.3.0pre1.
Erik de Castro Lopo [Sat, 2 Mar 2013 08:06:20 +0000 (19:06 +1100)]
src/flac/decode.c : Remove repeated code block.
Erik de Castro Lopo [Sat, 2 Mar 2013 03:09:46 +0000 (14:09 +1100)]
Add appropriate WAV channel masks for 7 and 8 channel files.
This commit accepts the new default channel masks for 6.1 and 7.1
surround input WAV files, and writes the corresponding masks when
decoding to WAV without a channel mask from the metadata block.
The local copy of the format spec is also updated with the new text
from the flac-website repository.
Patch from Ralph Giles <giles@mozilla.com>
Timothy B. Terriberry [Thu, 7 Feb 2013 20:33:03 +0000 (12:33 -0800)]
Robustify autogen.sh
This allows the script to be run from somewhere other than the
top-level build directory.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Timothy B. Terriberry [Thu, 7 Feb 2013 20:28:39 +0000 (12:28 -0800)]
xmms - Fix inline linking problems with old glib
f0296255 switched to --std=c99 by default, but old glib relies on
the pre-C99 extern inline rules.
Override G_INLINE_FUNC for it to avoid multiple definition linker
errors.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Timothy B. Terriberry [Thu, 7 Feb 2013 20:27:09 +0000 (12:27 -0800)]
xmms - #include <inttypes.h> for PRIu64
Not sure where this was coming from before, but it's not getting
included elsewhere on my system, so include it explicitly.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Timothy B. Terriberry [Thu, 7 Feb 2013 20:23:24 +0000 (12:23 -0800)]
xmms - Fix libtool usage.
9b7cb22f removed the extra libtool-disable-static script in favor
of always building with disable-static, but plugin_xmms still
referenced libtool-disable-static explicitly.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Erik de Castro Lopo [Fri, 25 Jan 2013 23:11:39 +0000 (10:11 +1100)]
include/share/compat.h : For MSVC define inline as __inline.
Ralph Giles [Fri, 18 Jan 2013 22:04:27 +0000 (14:04 -0800)]
Fix the 'distclean' target.
Generated documentation needs to be removed by this target
for 'distcheck' to succeed.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Ralph Giles [Fri, 18 Jan 2013 00:30:22 +0000 (16:30 -0800)]
Hoist a repeated conditional in the channel mapping code.
This is equivalent and just makes the code shorter.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Erik de Castro Lopo [Thu, 17 Jan 2013 09:13:33 +0000 (20:13 +1100)]
autogen.sh : Make sure config.rpath exists.
Olivier Blin [Fri, 28 Dec 2012 18:58:46 +0000 (19:58 +0100)]
doc: fix out-of-tree build
When building outside of the source tree, the Doxyfile needs to be
generated in the build tree and should point to the proper paths for
include directories and html footer.
The generated api files to install should also be taken from the build
tree instead of the source tree.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Erik de Castro Lopo [Wed, 2 Jan 2013 19:25:21 +0000 (06:25 +1100)]
Revert parts of
96d081c1 that touched source code or autotools files.
Erik de Castro Lopo [Wed, 2 Jan 2013 11:48:59 +0000 (22:48 +1100)]
Fix VC project files to use /objs/ directory instead of /obj/ directory.
Erik de Castro Lopo [Wed, 2 Jan 2013 11:39:56 +0000 (22:39 +1100)]
Minor Linux fixes for Makefile.lite build method.
Erik de Castro Lopo [Wed, 2 Jan 2013 11:37:42 +0000 (22:37 +1100)]
Fix all Makefile.lite to use /objs/ directory instead of /obj/ directory.
Hendricks266 [Sat, 29 Dec 2012 10:22:59 +0000 (04:22 -0600)]
Fix building with MSYS and MinGW(-w64); Improve Makefile.lite build system
This is a patch to allow building of the project using MSYS, MinGW, and MinGW-w64 with the following invocation:
make -f Makefile.lite libFLAC libFLAC++ flac metaflac test_libs_common test_libFLAC test_libFLAC++ test_grabbag test_seeking test_streams utils examples
This patch addresses eight points:
1. `uname -p` in MSYS returns "unknown" so we must use `gcc -dumpmachine` to gain information about the target, 32-bit or 64-bit.
2. MinGW-w64 does not ship with a working iconv.h, so we must disable it under this specific compiler.
3. The code requires <inttypes.h> in a handful of C files, but config.mk did not contain -DHAVE_INTTYPES_H, which under the full build process (I assume) is added by autoconf.
4. The compiler complained when lround() in lpc.c was static, so it is no longer static.
5. Additional scattered linking directives (and reordering) (particularly FLAC, grabbag, and replaygain_analysis) were necessary to build some of the components.
6. The Makefile.lite build system benefited from some cleanup, particularly by rigorously defining all entries, factoring redundancy, and establishing dependencies. (Some typos were fixed too.)
7. Shared objects on Windows use .dll, not .so. (Added *.dll, *.dylib, and *.exe to .gitignore.)
8. To allow more freedom using Makefile.lite without configure, I added the variables USE_OGG and USE_ICONV which can toggle these two components in the build process.
ex: make -f Makefile.lite examples USE_OGG=0 USE_ICONV=0
These improvements make use of some use-time Makefile variable expansion.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
nu774 [Thu, 27 Dec 2012 12:44:38 +0000 (21:44 +0900)]
Fix to allow the flac command to parse piped WAV input with
WAVEFORMATEXTENSIBLE format.
MinGW's fseeko() doesn't return error for the attempt to seek on non
seekable file (same behavior as MSVC).
The simplest solution would be to change #ifdef _MSC_VER to #ifdef
_WIN32 here.
Instead, this patch tests file with fstat(), and use fseeko() only when
it is a regular file.
This is confirmed to work properly both on MSVC and MinGW, can seek if
stdin is a redirected regular file, and doesn't require #ifdef.
Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
Erik de Castro Lopo [Fri, 28 Dec 2012 00:06:38 +0000 (11:06 +1100)]
Rename obj/ directory to objs/ to avoid BSD make issue.
Erik de Castro Lopo [Thu, 27 Dec 2012 22:49:50 +0000 (09:49 +1100)]
configure.ac : Treat powerpc64 like powerpc.
Max Horn [Wed, 12 Dec 2012 20:33:55 +0000 (21:33 +0100)]
configure: modernize autoconf usage
In particular:
- quote several macro arguments properly
- switch to the extended version of AC_INIT
- replace AM_CONFIG_HEADER by AC_CONFIG_HEADERS
- remove obsolete extra AC_CHECK_SIZEOF param
- upgrade minimal automake version from 1.7 to 1.11
(which is when dist-xz was introduced)
Signed-off-by: Max Horn <max@quendi.de>
Max Horn [Wed, 12 Dec 2012 20:33:54 +0000 (21:33 +0100)]
configure: merge AC_CHECK_HEADERS calls
Also removed some pointless AC_SUBST invocation, which would only be
necessary if the Makefiles were using the results of the header
detection, which they are not.
Signed-off-by: Max Horn <max@quendi.de>
Max Horn [Wed, 12 Dec 2012 20:33:53 +0000 (21:33 +0100)]
configure: always print ac_cv_c_compiler_gnu
Previously, we only printed whether the used compiler was
detected as gcc if the answer was positive. Now we always
print the result (but the GCC version still is only
printed when we are using GCC)
Signed-off-by: Max Horn <max@quendi.de>
Max Horn [Wed, 12 Dec 2012 20:33:52 +0000 (21:33 +0100)]
autogen.sh: replace this by a simple call to autoreconf
The autoreconf tool is provided by autoconf to do what custom
autogen.sh scripts in many projects used to do. Only it is more
robust and widely tested. It has been available for several years,
too. No reason to rely on custom code for this.
Signed-off-by: Max Horn <max@quendi.de>
Max Horn [Wed, 12 Dec 2012 20:33:51 +0000 (21:33 +0100)]
configure: replace XIPH_C_FIND_ENDIAN by AC_C_BIGENDIAN
Signed-off-by: Max Horn <max@quendi.de>
Timothy B. Terriberry [Sat, 8 Dec 2012 20:42:57 +0000 (12:42 -0800)]
Fix a copy & paste error in a comment.
Erik de Castro Lopo [Wed, 5 Dec 2012 19:42:34 +0000 (06:42 +1100)]
Covert 2 C source files from dos to unix line endings.
Miroslav Lichvar [Tue, 4 Dec 2012 16:36:05 +0000 (17:36 +0100)]
Update FSF address.
Miroslav Lichvar [Mon, 3 Dec 2012 20:04:59 +0000 (21:04 +0100)]
Update library version-info.
Miroslav Lichvar [Mon, 3 Dec 2012 20:04:58 +0000 (21:04 +0100)]
Hide symbols with nasm.
Hide all cglobal symbols with nasm >= 2.
Miroslav Lichvar [Mon, 3 Dec 2012 20:04:57 +0000 (21:04 +0100)]
Hide symbols with gcc.
With gcc >= 4 and ELF, set default visibility to hidden and make visible
only the symbols with FLAC_API or FLACPP_API.
A convenience libFLAC-static.la is created for test_libFLAC as it
depends on the hidden symbols.
Miroslav Lichvar [Mon, 3 Dec 2012 20:04:56 +0000 (21:04 +0100)]
Don't override user-specified CFLAGS.
Miroslav Lichvar [Mon, 3 Dec 2012 20:04:55 +0000 (21:04 +0100)]
Remove old GNU-stack sections from nasm files.
They are not needed since the section is defined in nasm.h.
Miroslav Lichvar [Fri, 30 Nov 2012 15:38:28 +0000 (16:38 +0100)]
Add missing options to flac man page.
Erik de Castro Lopo [Wed, 28 Nov 2012 10:49:47 +0000 (21:49 +1100)]
src/libFLAC/stream_encoder.c : Fix typo.
FLAC__treamEncoderReadStatusString -> FLAC__StreamEncoderReadStatusString
Thanks to nu774 on github.
Erik de Castro Lopo [Tue, 13 Nov 2012 06:25:32 +0000 (17:25 +1100)]
Replace printfs with "%s" format strings with puts.
Thanks to Elan Ruusamäe for the suggestion.