1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
To start working on nqp:
* install development packages
# aptitude install git-buildpackage devscripts cme pkg-perl-tools
* set up your environement to have something like:
$ cat ~/.devscripts
DEBCHANGE_RELEASE_HEURISTIC=changelog
DEBUILD_LINTIAN=yes
DEBUILD_LINTIAN_OPTS="-i -I --show-overrides"
USCAN_DESTDIR=../tarballs
DEBRELEASE_DEBS_DIR=../build-area
$ cat ~/.gbp.conf
[DEFAULT]
pristine-tar = True
sign-tags = True
[buildpackage]
# use a build area relative to the git repository
export-dir=../build-area/
tarball-dir = ../tarballs/
urgency=low
# to use the same build area for all packages use an absolute path:
#export-dir=/home/debian-packages/build-area
[import-orig]
# run hook after the import:
postimport = gbp dch -N%(version)s -S -a --debian-branch=$GBP_BRANCH
* clone nqp:
$ gbp clone git+ssh://git.debian.org/git/pkg-rakudo/nqp.git
To update nqp with upstream tarball:
* import new version:
$ gbp import-orig --uscan
- follow the prompts
* push the merge to Alioth
$ gbp push
Other updates:
* Update debian/control for moarvm version:
$ perl debian/update-control.pl
* Check for misc updates:
$ cme check dpkg
* optionally:
$ cme fix dpkg
* update copyright (be sure to commit copyright file before):
$ cme update dpkg-copyright
To build the package:
$ gbp build-package -us -uc
To cleanup cruft (dangerous, commit your work before):
$ git reset --hard
$ git clean -dxf
Note about the source:
* upstream nqp is deliver with a set of jar files without source.
These jar files are removed when upstream tarball is imported
(see Debian/copyright file)
There's no need to worry about the jar files as long as we don't
provide nqp/jvm.
The jar files in stage0 directory can be rebuilt with:
configure && make && make m-bootstrap-files
* src/vm/moar/stage0/ directory contains binary files. These files are
a pre-compiled nqp compiler and are necessary to compile nqp. nqp is
a bootstrapping compiler that uses itself to compile nqp. See file
docs/bootstrapping.pod for more details
-- Dominique Dumont <domi.dumont@free.fr>, Sun, 30 Oct 2016 20:02:27 +0100
|