Check libFLAC and libFLAC++ for interface changes and update
version numbers in include/FLAC/export.h, include/FLAC++/export.h,
src/libFLAC/Makefile.am, src/libFLAC++/Makefile.am,
src/libFLAC/CMakeLists.txt and src/libFLAC++/CMakeLists.txt
Prepare and check release tarball by running
git clean -ffxd && ./autogen.sh && ./configure && make distcheck
Check whether release tarball contains api documentation and
generated man pages
Prepare Windows release. Instructions are for building with MinGW-w64
Take last release as template
Update readme's if necessary
Copy changelog and tool documentation
Unpack tarball and create empty directories build64 and build32
Unpack most recent libogg: change
add_library(ogg ${OGG_HEADERS} ${OGG_SOURCES}) to
add_library(ogg STATIC ${OGG_HEADERS} ${OGG_SOURCES})
Add -static-libgcc to FLAC's CFLAGS
Add -static-libgcc -static-libstdc++ -Wl,-Bstatic,--whole-archive
-lwinpthread -Wl,-Bdynamic,--no-whole-archive to FLAC's CXXFLAGS
Run CMake -DBUILD_SHARED_LIBS=ON .. && ninja in both build64 and
build32 in the corresponding build environments
Check dependencies of flac.exe, metaflac.exe, libFLAC.dll and
libFLAC++.dll, e.g. with objdump -x . | grep DLL.
Dependencies should only include KERNEL32.DLL, ADVAPI32.DLL,
msvcrt.dll and libFLAC.dll
Copy flac.exe, metaflac.exe, libFLAC.dll and libFLAC++.dll of both
builds to proper directories