debian swirl logo

Back to the packages list vows

#!/usr/bin/make -f
# -*- mode: makefile; coding: utf-8 -*-
# Copyright © 2010, 2011, 2012, 2013 Jonas Smedegaard 
# Description: Main Debian packaging script for Vows
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see .

include /usr/share/cdbs/1/rules/upstream-tarball.mk
include /usr/share/cdbs/1/rules/utils.mk
include /usr/share/cdbs/1/rules/debhelper.mk

pkg = node-vows

# Needed by upstream build and (always) at runtime
deps = nodejs (>= 0.6.19~dfsg1-3~), node-eyes, node-diff (>= 1.0.3)

# Needed by our packaging
bdeps = patch

# Needed by upstream testsuite
deps-test = node-request

# Needed (often) at runtime
recommends = coffeescript

CDBS_BUILD_DEPENDS += , $(deps), $(bdeps), $(deps-test)
CDBS_DEPENDS_$(pkg) = $(deps)
CDBS_RECOMMENDS_$(pkg) = $(recommends)

DEB_UPSTREAM_URL = https://github.com/cloudhead/vows/archive
DEB_UPSTREAM_TARBALL_BASENAME = v$(DEB_UPSTREAM_TARBALL_VERSION)
DEB_UPSTREAM_TARBALL_MD5 = 0af6ff98b317c02b98f4640f7bc0ed1c

DEB_INSTALL_DOCS_ALL += README.md

build/$(pkg):: $(if $(filter nocheck,$(DEB_BUILD_OPTIONS)),,debian/stamp-testsuite)
debian/stamp-testsuite:
		cat debian/patches/1001_avoid_explicit_path.patch | patch -tuRp1
	NODE_PATH= lib find test -type f -name '*.js' -not -name failing.js -exec bin/vows '{}' +
		cat debian/patches/1001_avoid_explicit_path.patch | patch -tuNp1
		touch $@
clean::
		rm -f debian/stamp-testsuite

# Hardcode upstream version in main library file
verfile= lib/vows.js
pre-build:: debian/stamp-upstreamtmpstuff
debian/stamp-upstreamtmpstuff: debian/stamp-copyright-check
		mkdir -p debian/bak/$(dir $(verfile))
		[ ! -e $(verfile) ] || [ -e debian/bak/$(verfile) ] || cp $(verfile) debian/bak/$(verfile)
	perl -0 -i -pe 's/(\nvows\.version = )[^\n]*(\n {14}[^\n]*)+/$$1 "$(DEB_UPSTREAM_VERSION)"/' $(verfile)
		@if ! fgrep -xq 'vows.version = "$(DEB_UPSTREAM_VERSION)"' $(verfile); then \
			echo "Failed to hardcode version."; \
			exit 1; \
		fi
		touch $@
clean::
		[ ! -e debian/bak/$(verfile) ] || mv -f debian/bak/$(verfile) $(verfile)
		rm -rf debian/bak
		rm -f debian/stamp-upstreamtmpstuff

Builds:

node-vows
asynchronous bdd & continuous integration for node