Hamlib/README.release

116 wiersze
4.2 KiB
Plaintext
Czysty Zwykły widok Historia

This file is a release HOWTO, more or less a reminder before releasing
a new version of Hamlib.
TODO: With the switch to SVN SCM discuss the use of tags and branches
for releases.
Before deciding release:
-----------------------
* Anticipate what problems would users experience with the new release,
so you can fix the problems before making the release.
Basically, this is making sure the package will
compile on a whole breed of systems (arch,OS,library,gcc,etc. combo),
that there's no regression, and the API evolution is managed well.
* Announce SVN/version freeze on hamlib-developer mailing list,
so developers have time to check in their contributions.
* Update libtool:
clean the tree
sh ./autogen.sh
Releasing Hamlib:
----------------
* Update NEWS, TODO, AUTHORS
* Update the version in the macro AC_INIT of configure.ac (remove 'svn')
* Regenerate ChangeLog with:
TZ=UTC svn2cl
* svn commit -m "release X.Y.Z" ChangeLog configure.ac NEWS
Note the revision number (N).
* Tag the SVN rep with version 'HAMLIB-x-y-z'
svn copy -r N https://hamlib.svn.sourceforge.net/svnroot/hamlib/trunk \
https://hamlib.svn.sourceforge.net/svnroot/hamlib/tags/HAMLIB-x-y-z \
-m "release x.y.z"
* Build source tarball:
svn co -r N https://hamlib.svn.sourceforge.net/svnroot/hamlib/trunk hamlib
sh autogen.sh --enable-maintainer-mode
# (Would the above command be better invoked as:
# sh autogen.sh --disable-maintainer-mode --prefix=/usr/local CFLAGS="-g -O0"
# ?? comments please.)
make dist
* Build Windows DLL from previous tarball, and .LIB, then create .zip file
Rem: under Linux, you need the package mingw32 to cross-compile it,
and free MVC++Toolkit to create .lib file:
./configure --disable-static \
--host=i586-mingw32msvc \
--prefix=/tmp/mingw-inst \
--without-rpc-backends \
--enable-xmltest PKG_CONFIG_LIBDIR= ac_cv_path_PKG_CONFIG=no
make install
new_ver="x.y.z"
mkdir -p /tmp/mingw-inst/hamlib-${new_ver}/lib/msvc /tmp/mingw-inst/hamlib-${new_ver}/lib/gcc
cp src/libhamlib.def /tmp/mingw-inst/hamlib-${new_ver}/lib/msvc/libhamlib-2.def
cd /tmp/mingw-inst/hamlib-${new_ver}/lib/msvc/
unix2dos *.def
wine /media/sda1/Program\ Files/Microsoft\ Visual\ C++\ Toolkit\ 2003/bin/link.exe /lib /machine:i386 /def:libhamlib-2.def
cd ../..
unix2dos include/hamlib/*.h
cp lib/libhamlib.dll.a /tmp/mingw-inst/hamlib-${new_ver}/lib/gcc
zip -r hamlib-win32-${new_ver}.zip hamlib-win32-${new_ver}
Edit Release, i386, .zip
* Build Windows DLL with stdcall convention:
Ditto but with HAMLIB_API set to __stdcall in include/hamlib/rig_dll.h before re-compiling.
Subsitute cdecl by stdcall in README.txt.
* Release the file(s)
- https://sourceforge.net/projects/hamlib/files/
- Select Hamlib
- Click Add Folder, name it X.Y.Z
- Select X.Y.Z
- Click Add File button
- Click Choose File button
- Click Upload
* Update http://www.hamlib.org Wiki
- Download section
https://sourceforge.net/apps/mediawiki/hamlib/index.php?title=Download
- Documentation (requires doxygen)
make -C doc doc
ssh shell.sourceforge.net mkdir /home/project-web/h/ha/hamlib/htdocs/manuals/x-y-z
scp -r doc/html shell.sourceforge.net:/home/project-web/h/ha/hamlib/htdocs/manuals/x-y-z/.
Edit Wiki Documentation section
- Supported Radios/Rotators
make -C tests rigmatrix.html
ssh -t USER,hamlib@shell.sourceforge.net create
scp -r tests/sup-info/* USER,hamlib@shell.sourceforge.net:/home/project-web/hamlib/htdocs/sup-info/.
* Notify various sites:
- Sourceforge/News: https://sourceforge.net/news/submit.php?group_id=8305
- Freshmeat: http://freshmeat.net/projects/hamlib
- http://radio.linux.org.au/pkgdetail.phtml?pkgid=243 Linux Hamradio App: rigctl category
* Send announce to mailing lists: [ANN] hamlib-announce, linux-ham
To advertise:
- list the rigs supported so far,
- what was major work achieved,
- where we're heading,
- what kind of support we need
Get ready for the next round:
* Bump version number and append 'svn' to it in macro AC_INIT of configure.ac
* Update src/Makefile.am revision of -version-info