| 1 | = Rebuild mpich2 Debain package = |
| 2 | |
| 3 | There are [http://torvalds.cs.mtsu.edu/~zach/debian/current Debian package] provided by Zach Lowry for MPICH2 version 1.0.3. We want to build 1.0.7 package with 1.0.3 package rules. Here is the procedures: |
| 4 | |
| 5 | == Extract 1.0.3 debian package rules == |
| 6 | |
| 7 | * Donwload 1.0.3 debian package source files |
| 8 | {{{ |
| 9 | root@r-mpi:~# wget http://www.cs.mtsu.edu/~zach/debian/current/mpich2_1.0.3-2.dsc |
| 10 | root@r-mpi:~# wget http://www.cs.mtsu.edu/~zach/debian/current/mpich2_1.0.3-2.diff.gz |
| 11 | root@r-mpi:~# wget http://www.cs.mtsu.edu/~zach/debian/current/mpich2_1.0.3.orig.tar.gz |
| 12 | }}} |
| 13 | * We will need '''dpkg-source''' command, so first check if you had installed dpkg-dev |
| 14 | {{{ |
| 15 | root@r-mpi:~# apt-get install dpkg-dev |
| 16 | }}} |
| 17 | * Extract 1.0.3 debian package source |
| 18 | {{{ |
| 19 | root@r-mpi:~# dpkg-source -x mpich2_1.0.3-2.dsc |
| 20 | gpg: Signature made Mon 28 Nov 2005 07:49:49 PM PST using DSA key ID 1CE6894E |
| 21 | gpg: Can't check signature: public key not found |
| 22 | dpkg-source: extracting mpich2 in mpich2-1.0.3 |
| 23 | dpkg-source: unpacking mpich2_1.0.3.orig.tar.gz |
| 24 | dpkg-source: applying ./mpich2_1.0.3-2.diff.gz |
| 25 | }}} |
| 26 | |
| 27 | == Configure 1.0.7 source tar ball == |
| 28 | |
| 29 | * Download 1.0.7 source tar ball from office website |
| 30 | {{{ |
| 31 | root@r-mpi:~# wget http://www.mcs.anl.gov/research/projects/mpich2/downloads/tarballs/mpich2-1.0.7.tar.gz |
| 32 | root@r-mpi:~# tar zxvf mpich2-1.0.7.tar.gz |
| 33 | }}} |
| 34 | * Copy debian folder from 1.0.3 |
| 35 | {{{ |
| 36 | root@r-mpi:~# cd mpich2-1.0.7 |
| 37 | root@r-mpi:~/mpich2-1.0.7# cp -aRp ../mpich2-1.0.3/debian/ . |
| 38 | }}} |
| 39 | * We will need '''dch''' command, so first check if you had installed devscripts |
| 40 | {{{ |
| 41 | root@r-mpi:~/mpich2-1.0.7# apt-get install devscripts |
| 42 | }}} |
| 43 | * modified debian/control |
| 44 | {{{ |
| 45 | root@r-mpi:~/mpich2-1.0.7# vi debian/control |
| 46 | }}} |
| 47 | {{{ |
| 48 | #!diff |
| 49 | --- debian/control.bak 2008-06-12 13:09:27.000000000 -0700 |
| 50 | +++ debian/control 2008-06-12 12:57:37.000000000 -0700 |
| 51 | @@ -24,7 +24,7 @@ |
| 52 | Architecture: any |
| 53 | Section: devel |
| 54 | Priority: extra |
| 55 | -Depends: ${shlibs:Depends}, python2.3, python2.3-xml |
| 56 | +Depends: ${shlibs:Depends}, python, python-xml |
| 57 | Conflicts: mpd |
| 58 | Recommends: mpich2-doc (= ${Source-Version}), ssh |
| 59 | Description: Process control for MPICH2 |
| 60 | }}} |
| 61 | * update debian/changelog |
| 62 | {{{ |
| 63 | root@r-mpi:~/mpich2-1.0.7# export DEBFULLNAME="Jazz Yao-Tsung Wang" |
| 64 | root@r-mpi:~/mpich2-1.0.7# export DEBEMAIL="XXX@NCHC.ORG.TW" |
| 65 | root@r-mpi:~/mpich2-1.0.7# dch -i |
| 66 | }}} |
| 67 | {{{ |
| 68 | #!diff |
| 69 | --- debian/changelog.bak 2008-06-12 13:13:57.000000000 -0700 |
| 70 | +++ debian/changelog 2008-06-12 13:12:03.000000000 -0700 |
| 71 | @@ -1,3 +1,8 @@ |
| 72 | +mpich2 (1.0.3-3) unstable; urgency=low |
| 73 | + |
| 74 | + * New upstream release |
| 75 | + |
| 76 | + -- Jazz Yao-Tsung Wang <XXX@NCHC.ORG.TW> Thu, 12 Jun 2008 13:11:50 -0700 |
| 77 | }}} |
| 78 | * remove old patches |
| 79 | {{{ |
| 80 | root@r-mpi:~/mpich2-1.0.7# rm -rf debian/patches/ |
| 81 | }}} |
| 82 | * use '''dpkg-checkbuilddeps''' to know which packages is not yet installed for building new packages. |
| 83 | {{{ |
| 84 | root@r-mpi:~/mpich2-1.0.7# dpkg-checkbuilddeps |
| 85 | }}} |
| 86 | * use '''cdbs-edit-patches''' to create new patches |