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