On Sat, 30 Dec 2017 12:58:14 +0530 Pirate Praveen <prav...@debian.org>
wrote:
> Control: affects -1 nodejs-dev
> 
> [copying nodejs/npm2deb maintainers]
> bcc: pkg-javascript-devel, follow #845043
> 
> On Thu, 28 Dec 2017 09:11:00 +0000 Niels Thykier <ni...@thykier.net>
> wrote:> Sure; the idea more about you developing the prototype in a separate
> > package and less about the concrete name of the package.  We can also do
> > it inside debhelper, but then you get changes at the pace of debhelper
> > releases plus the stability woes/guarantees of debhelper (e.g. at some
> > point it will take compat bumps to fix things).
> 
> I just found out nodejs-dev has some basic debhelper plugin
> https://anonscm.debian.org/cgit/collab-maint/nodejs.git/tree/debian/nodejs.pm
> may be we can extend that.
> 

Ok, to me nodejs-dev sounds like a good start location for the build
systems (on the assumption it already has debhelper related tooling).
Note that packages can provide build systems without providing all the
dependencies required for using them.  As an example, debhelper does
that with meson+ninja or cmake+ninja where packages have to Build-Depend
on meson or cmake and ninja themselves (on top of the build-dependency
on debhelper).

> > If those are "good enough" for you, then I am fine with going that
> > direction.
> > 
> > >> FTR, I know next to nothing about grunt/nodejs builds, so I am a poor
> > >> choice for driving such a prototype.  However, I am happy to assist with
> > >> the debhelper integration bit.
> > > 
> > > I think it does not need any nodejs knowledge. If you find a
> > > Gruntfile.js or Gruntfile.coffee, just call "grunt build".
> > > 
> > > Same for gulp, if you find a Gulpfile.js, just call "gulp build".
> > > 
> > > Also for cake, if you find Cakefile, just call "cake.coffeescript build".
> > > 
> > 
> [... how to call the tools ...]
> 
> 

I have attached a sample buildsystem for grunt that should run "grunt
build" and "grunt clean".  While testing, you will need to explicitly
active the build system with "-Sgrunt" for now.  This is because
debhelper has a whitelist of buildsystems it will autoselect, but I am
happy to add the javascript related build systems once they are available.

The build system should be installed in perl's default search path as
"Debian/Debhelper/Buildsystem/grunt.pm" (e.g.
/usr/share/perl5/Debian/Debhelper/Buildsystem/grunt.pm).  Furthermore,
the sample should be trivial to use as a basis for the gulp and cake tools.

Thanks,
~Niels

Attachment: grunt.pm
Description: Perl program

Reply via email to