1*600f14f4SXin Li1. Change version number in 2*600f14f4SXin Li - /configure.ac 3*600f14f4SXin Li - /CMakeLists.txt 4*600f14f4SXin Li - /doc/Doxyfile.in 5*600f14f4SXin Li - /man/flac.md 6*600f14f4SXin Li - /man/metaflac.md 7*600f14f4SXin Li - /test/metaflac-test-files/case07-expect.meta 8*600f14f4SXin Li1. Change version date in 9*600f14f4SXin Li - /src/libFLAC/format.c 10*600f14f4SXin Li - /test/metaflac-test-files/case07-expect.meta 11*600f14f4SXin Li1. Update changelog 12*600f14f4SXin Li1. Check copyright year and update if applicable 13*600f14f4SXin Li1. Check libFLAC and libFLAC++ for interface changes and update 14*600f14f4SXin Li version numbers in include/FLAC/export.h, include/FLAC++/export.h, 15*600f14f4SXin Li src/libFLAC/Makefile.am, src/libFLAC++/Makefile.am, 16*600f14f4SXin Li src/libFLAC/CMakeLists.txt and src/libFLAC++/CMakeLists.txt 17*600f14f4SXin Li1. Prepare and check release tarball by running 18*600f14f4SXin Li `git clean -ffxd && ./autogen.sh && ./configure && make distcheck` 19*600f14f4SXin Li1. Check whether release tarball contains api documentation and 20*600f14f4SXin Li generated man pages 21*600f14f4SXin Li1. Prepare Windows release. Instructions are for building with MinGW-w64 22*600f14f4SXin Li - Take last release as template 23*600f14f4SXin Li - Update readme's if necessary 24*600f14f4SXin Li - Copy changelog and tool documentation 25*600f14f4SXin Li - Unpack tarball and create empty directories build64 and build32 26*600f14f4SXin Li - Unpack most recent libogg: change 27*600f14f4SXin Li `add_library(ogg ${OGG_HEADERS} ${OGG_SOURCES})` to 28*600f14f4SXin Li `add_library(ogg STATIC ${OGG_HEADERS} ${OGG_SOURCES})` 29*600f14f4SXin Li - Add `-static-libgcc` to FLAC's CFLAGS 30*600f14f4SXin Li - Add `-static-libgcc -static-libstdc++ -Wl,-Bstatic,--whole-archive 31*600f14f4SXin Li -lwinpthread -Wl,-Bdynamic,--no-whole-archive` to FLAC's CXXFLAGS 32*600f14f4SXin Li - Run `CMake -DBUILD_SHARED_LIBS=ON .. && ninja` in both build64 and 33*600f14f4SXin Li build32 in the corresponding build environments 34*600f14f4SXin Li - Check dependencies of flac.exe, metaflac.exe, libFLAC.dll and 35*600f14f4SXin Li libFLAC++.dll, e.g. with objdump -x *.* | grep DLL. 36*600f14f4SXin Li Dependencies should only include KERNEL32.DLL, ADVAPI32.DLL, 37*600f14f4SXin Li msvcrt.dll and libFLAC.dll 38*600f14f4SXin Li - Copy flac.exe, metaflac.exe, libFLAC.dll and libFLAC++.dll of both 39*600f14f4SXin Li builds to proper directories 40*600f14f4SXin Li - Zip directory 41