blob: af8f0cd408c76b0fa49251ac1e39f6d368d3f973 [file] [log] [blame]
Instructions for creating a uimacpp release
For a new release
1. create a tag for the new release, e.g.
use the github webpage to create a new branch named rc/uimacpp-X.Y.Z
2. follow "new build" instructions below and update branch if needed. Iterate until clean.
3. create a new tag when ready to release.
4. sign release artifacts
5. copy signed release artifacts to staging spot
6. get successful release vote
7. releasing: see
For a new build on Linux
0. confirm that prerequisite tools for automake and doxygen are installed.
1. Make sure has the desired package version numbers in AC_INIT and library version in LT_VERSION_NUMBER. Update source control if necessary.
Update the library number by modifying LT_VERSION_NUMBER following the libtool version numbering convention. This is summarized on the wiki page
2. Update RELEASE_NOTES.html with new Jira report from Jira website:
on jira web page, go to UIMA releases and select new release. For example:
hit "Release Notes", replace Jira report section with new html text from webpage.
3. checkout source from the tag and cd to that directory
git clone -b rc/uimacpp-X.Y.Z uimacpp-X.Y.Z-rc
cd uimacpp-X.Y.Z-rc
4. build all 3rd party dependencies, build & check UIMACPP, and create SDK tree with:
5. create bin tarball
cd sdk
tar -czf uimacpp-X.Y.Z-bin.tgz uimacpp
7. sniff test of base sdk
cd uimacpp
export UIMACPP_HOME=`pwd`
export LD_LIBRARY_PATH=`pwd`/lib:`pwd`/examples/src
cd examples/src
make -f all.mak
cd ..
8. sniff test of scriptators (following base sniff test)
cd ../scriptators/tcl
runAECpp TclSample.xml ../../examples/data/
cd ../python
export PYTHONPATH=`pwd`
runAECpp PythonSample.xml ../../examples/data/
cd ../perl
runAECpp PerlSample.xml ../../examples/data/
9. sniff test of uimacpp service wrapper
in a new window start an ActiveMQ broker:
set UIMA_HOME and extend PATH with $UIMA_HOME/bin
back in the UimaCpp test window:
cd $UIMACPP/examples/tutorial/src
make -f MeetingAnnotator.mak
cd ..
set UIMA_HOME and extend PATH with $UIMA_HOME/bin tcp://localhost:61616 MeetingAnnotator \
-d descriptors/Deploy_MeetingAnnotator.xml
For a new build on Windows
1. checkout source from current release branch
svn co
2. build, test and create sdk tree following the instructions in README.4src
3. create bin zipfile of buildDir\uimacpp as
4. sniff test of base sdk
cd uimacpp
cd examples\src
devenv uimacpp-examples.sln /build release
cd ..
5. sniff test of scriptators (following base sniff test)
cd ..\scriptators\perl
runAECpp PerlSample.xml ..\..\examples\data\
cd ..\python
runAECpp PythonSample.xml ..\..\examples\data\
cd ..\tcl
runAECpp TclSample.xml ..\..\examples\data\
6. sniff test of uimacpp service wrapper
in a "Uima AS window", run:
back in the UimaCpp test window:
cd ..\..\examples
runRemoteAsyncAE tcp://localhost:61616 MeetingAnnotator \
-d tutorial\descriptors\Deploy_MeetingAnnotator.xml
Create Source Tar ball
The source tar ball is created by zipping up the files from svn extract of UIMA C++ source.
The source tar ball contains all the files needed to build the Windows and/or
Linux binaries.
1. checkout source from current release branch
git clone -b rc/uimacpp-X.Y.Z uimacpp-X.Y.Z-rc
2. create the tar ball
Remove git specific files: "rm -rf .git .gitattributes .asf.yaml"
Create zip file for Windows: zip -r uimacpp-X.Y.Z
Create tar file for Linux: tar -zcvf uimacpp-X.Y.Z-src.tgz uimacpp-X.Y.Z
3. rat scan the source directory
java -jar apache-rat-0.13.jar -dir uimacpp-X.Y.Z-rc -e .*vcproj .*txt .*sln .*asc README.* RELEASE.* NOTICE.* dot.gdbinit doxyheader.html org_apache_uima_uimacpp_UimacppEngine.h config m4