Skip to content

Commit 1652067

Browse files
committed
release process: add sanity checks
1 parent 3353d3c commit 1652067

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

doc/release-process.md

+21
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,27 @@ It is best if the maintainers are present during the release, so they can help e
1212

1313
This process also assumes that there will be no minor releases for old major releases.
1414

15+
## Sanity Checks
16+
Perform these checks before creating a release:
17+
18+
1. Ensure `make distcheck` doesn't fail.
19+
```shell
20+
./autogen.sh && ./configure --enable-dev-mode && make distcheck
21+
```
22+
2. Check installation with autotools:
23+
```shell
24+
dir=$(mktemp -d)
25+
./autogen.sh && ./configure --prefix=$dir && make clean && make install && ls -l $dir/include $dir/lib
26+
gcc -o ecdsa examples/ecdsa.c $(PKG_CONFIG_PATH=$dir/lib/pkgconfig pkg-config --cflags --libs libsecp256k1) -Wl,-rpath,"$dir/lib" && ./ecdsa
27+
```
28+
3. Check installation with CMake:
29+
```shell
30+
dir=$(mktemp -d)
31+
build=$(mktemp -d)
32+
cmake -B $build -DCMAKE_INSTALL_PREFIX=$dir && cmake --build $build --target install && ls -l $dir/include $dir/lib*
33+
gcc -o ecdsa examples/ecdsa.c -I $dir/include -L $dir/lib*/ -l secp256k1 -Wl,-rpath,"$dir/lib",-rpath,"$dir/lib64" && ./ecdsa
34+
```
35+
1536
## Regular release
1637

1738
1. Open a PR to the master branch with a commit (using message `"release: prepare for $MAJOR.$MINOR.$PATCH"`, for example) that

0 commit comments

Comments
 (0)