./autogen.sh --enable-vtk --enable-python --enable-doxygen
make
- 1b/ check the python test suite is clean (python testSuite.py)
+ 1b/ check the python test suite is clean:
cd gdcmPython
export PYTHONPATH=`pwd`/..
ln -s .libs/pygdcm.so _gdcm.so
1c/ check the setup.py distutil script is operational and then validate
its produced packages through the test suite, in all following cases
- Direct installation:
- cd $(GDCMHOME)
- python setup.py install --prefix=/tmp/
+ cd $GDCMHOME
+ python setup.py install --prefix=/tmp
cd /tmp/lib/python2.2/site-packages/
- ln -s $(GDCMDATAHOME) .
+ ln -s $GDCMHOME/gdcmData .
export PYTHONPATH=`pwd`
cd gdcmPython/
python testSuite.py
+ cd $GDCMHOME
+ \rm -fr build /tmp/lib
- Binary distribution:
- cd $(GDCMHOME)
+ cd $GDCMHOME
+ make clean
+ [ or you might get some complains about the function
+ PyVTKClass_vtkGdcmReaderNew being multiply defined: this is
+ because of the loose definition of vtkSources in setup.py
+ in which the usage of the glob function will produce a link
+ stage with multiple occurences of vtkGdcmReaderPython.o)].
python setup.py bdist --formats=rpm
su
- rpm -Uvh dist/gdcmPython-0.[n].i386.rpm
+ rpm -Uvh dist/gdcmPython-0.*.i386.rpm
cd /usr/lib/python2.2/site-packages/
- Check out gdcmData
+ ln -s $GDCMHOME/gdcmData .
cd gdcmPython
python testSuite.py
rpm --erase gdcmPython
- Source distribution and then binary distribution (out of build
source distro):
- cd $(GDCMHOME)
+ cd $GDCMHOME
+ [make clean (see above) ]
python setup.py sdist
cd /tmp
- tar zxvf ~/cvs/gdcm/dist/gdcmPython-*.tar.gz
+ tar zxvf $GDCMHOME/dist/gdcmPython-*.tar.gz
cd gdcmPython-*/
python setup.py bdist --formats=rpm
+ cd dist
As root, repeat above installation with rpm and test.
2/ Windoze:
+ Notation: we consider that GDCMHOME is the directory obtained from the
+ following checkout.
+ cvs -d:pserver:anonymous@cvs.creatis.insa-lyon.fr:2402/cvs/public login
+ cvs -d:pserver:anonymous@cvs.creatis.insa-lyon.fr:2402/cvs/public co gdcm
+ cd gdcm
+ cvs -d:pserver:anonymous@cvs.creatis.insa-lyon.fr:2402/cvs/public co gdcmData
+ 2a/ compile all projects in the gdcm.dsw workspace.
+
+ 2b/ set the PYTHONPATH environement variable to the gdcm/gdcmPython
+ directory
+ check the python test suite is clean (python testSuite.py)
+ cd gdcmPython
+ python testSuite.py
+
+ 2c/ check the setup.py distutil script is operational and then validate
+ its produced packages through the test suite, in all following cases
+ - Direct installation:
+ cd $(GDCMHOME)
+ python setup.py install --prefix="c:\tmp"
+ cd /tmp/Lib/site-packages/
+ copy $(GDCMDATAHOME) .
+ export PYTHONPATH="c:\tmp\Lib\site-packages"
+ cd gdcmPython/
+ python testSuite.py
+ remove $(GDCMHOME)\build directory
+ - Binary distribution:
+ cd $(GDCMHOME)
+ python setup.py bdist --formats=wininst
+ install $(GDCMHOME)\dist\gdcmPython-xxx.win32-py2.2.exe
+ cd $(PYTHONHOME)\Lib\site-packages\
+ Check out gdcmData
+ cd gdcmPython
+ clean up PYTHONPATH
+ python testSuite.py
+ remove $(GDCMHOME)\build directory
+ - Source distribution and then binary distribution (out of build
+ source distro):
+ cd $(GDCMHOME)
+ python setup.py sdist --formats=zip
+ unzip $(GDCMHOME)\dist\gdcmPython-xxx.zip in TMPHOME directory
+ cd $(TMPHOME)
+ cd gdcmPython-*/
+ python setup.py bdist --formats=wininst
+ As root, repeat above installation with exe and test.
+
* Second stage: preparing packaging:
- Update the version number in configure.in (AM_INIT_AUTOMAKE)
- Update the version number in setup.py (version entry in setup object).
- ./autogen.sh --enable-vtk --enable-python --enable-doxygen
- make release (generates gdcm-x.y.z.tar.gz)
- rpm -ta gdcm-x.y.z.tar.gz
+ - collect the result in <somedirectoryPath>/RPMS/i386/ and
+ <somedirectoryPath>/SRPMS.
1b/ Packaging at the python level:
cd $(GDCMHOME)
python setup.py sdist
python setup.py bdist --formats=rpm
collect both source distro and binary distro
+
+ 2/ Un*x
+ 2a/ Packaging at the python level:
+ cd $(GDCMHOME)
+ python setup.py sdist --formats=zip
+ python setup.py bdist --formats=wininst
+ collect both source distro and binary distro
+