]> Creatis software - gdcm.git/blob - PACKAGER
* vtk/testvtkGdcmReader.cxx : remove a symbol that is unused
[gdcm.git] / PACKAGER
1 Here is the checklist when freezing a version of gdcm:
2
3 * First stage, checkings:
4   1/ Un*x:
5     Notation: we here assume you have a cvs tree in GDCMHOME directory.
6     cvs -d:pserver:anonymous@cvs.creatis.insa-lyon.fr:2402/cvs/public login
7     cvs -d:pserver:anonymous@cvs.creatis.insa-lyon.fr:2402/cvs/public co gdcm
8     cd gdcm
9     export GDCMHOME=`pwd`
10     cvs -d:pserver:anonymous@cvs.creatis.insa-lyon.fr:2402/cvs/public co gdcmData
11
12     1a/ check the full compilation is effective:
13        ./autogen.sh --enable-vtk --enable-python --enable-doxygen
14        make
15         
16     1b/ check the python test suite is clean (python testSuite.py)
17        cd gdcmPython
18        export PYTHONPATH=`pwd`/..
19        ln -s .libs/pygdcm.so _gdcm.so
20        ln -s .libs/vtkgdcmPython.so .
21        python testSuite.py
22
23     1c/ check the setup.py distutil script is operational and then validate
24         its produced packages through the test suite, in all following cases
25        - Direct installation:
26          cd $(GDCMHOME)
27          python setup.py install --prefix=/tmp/
28          cd /tmp/lib/python2.2/site-packages/
29          ln -s $(GDCMDATAHOME) .
30          export PYTHONPATH=`pwd`
31          cd gdcmPython/
32          python testSuite.py
33        - Binary distribution:
34          cd $(GDCMHOME)
35          python setup.py bdist --formats=rpm
36          su
37          rpm -Uvh dist/gdcmPython-0.[n].i386.rpm
38          cd /usr/lib/python2.2/site-packages/
39          Check out gdcmData
40          cd gdcmPython
41          python testSuite.py
42          rpm --erase gdcmPython
43        - Source distribution and then binary distribution (out of build 
44          source distro):
45          cd $(GDCMHOME)
46          python setup.py sdist
47          cd /tmp
48          tar zxvf $(GDCMHOME)/dist/gdcmPython-*.tar.gz
49          cd gdcmPython-*/
50          python setup.py bdist --formats=rpm
51          As root, repeat above installation with rpm and test.
52          
53   2/ Windoze:
54     Notation: we consider that GDCMHOME is the directory obtained from the
55     following checkout.
56     cvs -d:pserver:anonymous@cvs.creatis.insa-lyon.fr:2402/cvs/public login
57     cvs -d:pserver:anonymous@cvs.creatis.insa-lyon.fr:2402/cvs/public co gdcm
58     cd gdcm
59     cvs -d:pserver:anonymous@cvs.creatis.insa-lyon.fr:2402/cvs/public co gdcmData
60
61     2a/ compile all projects in the gdcm.dsw workspace.
62
63     2b/ set the PYTHONPATH environement variable to the gdcm/gdcmPython
64        directory
65        check the python test suite is clean (python testSuite.py)
66        cd gdcmPython
67        python testSuite.py
68
69     2c/ check the setup.py distutil script is operational and then validate
70         its produced packages through the test suite, in all following cases
71        - Direct installation:
72          cd $(GDCMHOME)
73          python setup.py install --prefix="c:\tmp"
74          cd /tmp/Lib/site-packages/
75          copy $(GDCMDATAHOME) .
76          export PYTHONPATH="c:\tmp\Lib\site-packages"
77          cd gdcmPython/
78          python testSuite.py
79          remove $(GDCMHOME)\build directory
80        - Binary distribution:
81          cd $(GDCMHOME)
82          python setup.py bdist --formats=wininst
83          install $(GDCMHOME)\dist\gdcmPython-0.3.win32-py2.2.exe
84          cd $(PYTHONHOME)\Lib\site-packages\
85          Check out gdcmData
86          cd gdcmPython
87          clean up PYTHONPATH
88          python testSuite.py
89          remove $(GDCMHOME)\build directory
90        - Source distribution and then binary distribution (out of build
91          source distro):
92          cd $(GDCMHOME)
93          python setup.py sdist --formats=zip
94          unzip $(GDCMHOME)\dist\gdcmPython-0.3.zip in TMPHOME directory
95          cd $(TMPHOME)
96          cd gdcmPython-*/
97          python setup.py bdist --formats=wininst
98          As root, repeat above installation with exe and test.
99          
100 * Second stage: preparing packaging:
101   - Update the version number in configure.in (AM_INIT_AUTOMAKE)
102   - Update the version number in setup.py (version entry in setup object).
103
104 * Third stage: packaging
105   1/ Un*x
106     1a/  Packaging at the C/C++/Python level (i.e. exports both libraries,
107         include files and python package)
108       - Make sure you have a ~/.rpmmacros file containing the line
109             %_topdir <somedirectoryPath>
110         and that <somedirectoryPath> exists and contains the subdirs
111         BUILD, SOURCES, RPMS/i386, SRPMS, SPECS
112       - cd $(GDCMHOME)
113       - ./autogen.sh --enable-vtk --enable-python --enable-doxygen
114       - make release  (generates gdcm-x.y.z.tar.gz)
115       - rpm -ta gdcm-x.y.z.tar.gz
116     1b/ Packaging at the python level:
117          cd $(GDCMHOME)
118          python setup.py sdist
119          python setup.py bdist --formats=rpm
120          collect both source distro and binary distro
121
122   2/ Un*x
123     2a/ Packaging at the python level:
124          cd $(GDCMHOME)
125          python setup.py sdist --formats=zip
126          python setup.py bdist --formats=wininst
127          collect both source distro and binary distro
128