xref: /aosp_15_r20/external/flac/doc/release_checklist.md (revision 600f14f40d737144c998e2ec7a483122d3776fbc)
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