-
Notifications
You must be signed in to change notification settings - Fork 8
Release process
Takashi Kato edited this page Jun 19, 2025
·
2 revisions
How to release:
The current release process is pretty much easy (may not look professional but hey!)
Steps:
- Run the
sagittarius-release.sh - Create Windows installers with the source directory created above step. (both 32 and 64 bits)
- Write release notes on bitbucket.org wiki
- Upload the tarball and installers
- Update documents on GitHub
As an extra step, we also build the tarball on a couple of Linux environments if possible.
sagittarius-release.sh
#!/bin/sh
SRC_DIR=sagittarius.dist
WORK_DIR=build
#
if [ -d "$SRC_DIR" ]; then
rm -rf $SRC_DIR
fi
git clone https://github.com/ktakashi/sagittarius-scheme.git $SRC_DIR
cd $SRC_DIR
./dist.sh gen
cd ../
if [ -d "$WORK_DIR" ]; then
rm -rf $WORK_DIR
fi
mkdir $WORK_DIR
cd $WORK_DIR
cmake ../$SRC_DIR
make
make doc
make online-doc
make test
make install -j 8
../$SRC_DIR/dist.sh dist ../$SRC_DIR
For Windows, we can use this (suppose we already generated the stub/precompiled files)
@echo off
set SRC_DIR=%1
echo Source directory %SRC_DIR%
if not exist "%SRC_DIR%" (
echo "%SRC_DIR% not found"
goto exit
)
for /f "usebackq delims=#" %%a in (`"%programfiles(x86)%\Microsoft Visual Studio\Installer\vswhere" -latest -property installationPath`) do set VsDevCmd_Path=%%a\VC\Auxiliary\Build\vcvars32.bat
if [%2] equ [x64] (
call "%VsDevCmd_Path%" x86_amd64
set ARCH=x64
) else (
call "%VsDevCmd_Path%"
set ARCH=x86
)
rem set VSCMD_DEBUG=
set VsDevCmd_Path=
set WORK_DIR="win_%ARCH%"
md %WORK_DIR%
cd %WORK_DIR%
cmake %SRC_DIR% -G"NMake Makefiles" -Denable_threads=ON -Denable_parallel_mark=ON
nmake
nmake test
"%programfiles(x86)%\Inno Setup 6\iscc.exe" /Qp win\innosetup.iss
cd ..
:exit