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 67 68 69 70 71 72 73 74 75 76 77 78
|
#!/usr/bin/make -f
# -*- mode: makefile; coding: utf-8 -*-
# Copyright © 2011-2015 Jonas Smedegaard <dr@jones.dk>
# Description: Main Debian packaging script for UglifyJS
#
# 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 <http://www.gnu.org/licenses/>.
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-uglify
libdir = /usr/lib/nodejs/uglify-js
jspkg = libjs-uglify
jslibdir = /usr/share/javascript/uglifyjs
DEB_UPSTREAM_URL = https://github.com/mishoo/UglifyJS2/archive
DEB_UPSTREAM_TARBALL_BASENAME = v$(DEB_UPSTREAM_TARBALL_VERSION)
# Needed by upstream build process and (always) at runtime
deps = node-async (>= 0.2.6), node-yargs
# Needed by upstream testsuite
bdeps-test = mocha, node-escodegen, node-estraverse
CDBS_BUILD_DEPENDS +=, $(deps), $(bdeps-test)
CDBS_DEPENDS_$(pkg) = nodejs, $(deps)
CDBS_RECOMMENDS_$(pkg) = node-source-map
CDBS_SUGGESTS_$(pkg) = node-uglify-to-browserify
CDBS_PROVIDES_$(pkg) = uglifyjs
# don't fail on experimental builds
DEB_SUITE_EXP = $(filter experimental% UNRELEASED,$(DEB_SUITE))
# generate man page from --help output of script itself
CDBS_BUILD_DEPENDS +=, help2man
DEB_INSTALL_MANPAGES_$(pkg) = debian/uglifyjs.1
common-build-indep:: debian/stamp-build
debian/stamp-build:
NODE_PATH=lib help2man --no-info bin/uglifyjs | sed \
-e 's/[[:space:]]*\[string\]$$/ This parameter is a string./g' \
-e 's/[[:space:]]*\[boolean\]$$/ This parameter is a boolean./g' \
-e 's/[[:space:]]*\[array\]$$/ This parameter is an array./g'> debian/uglifyjs.1
$(if $(filter nocheck,$(DEB_BUILD_OPTIONS)),\
,\
NODE_PATH=lib nodejs test/run-tests.js \
$(if $(DEB_SUITE_EXP),|| true))
nodejs bin/uglifyjs \
--self \
--comments /Copyright/ \
--output debian/uglify.js
touch $@
common-post-build-indep::
rm -f lib/uglify-js
clean::
rm -f lib/index.js lib/package.json
rm -f debian/stamp-build debian/uglifyjs.1
rm -f debian/uglify.js
DEB_DH_INSTALL_ARGS_$(pkg) = package.json bin lib tools $(libdir)
DEB_DH_INSTALL_ARGS_$(jspkg) = debian/uglify.js $(jslibdir)
DEB_DH_LINK_$(pkg) = $(libdir)/bin/uglifyjs /usr/bin/uglifyjs
DEB_INSTALL_DOCS_ALL += README.md
binary-fixup/$(pkg)::
chmod a+x debian/$(pkg)/usr/lib/nodejs/uglify-js/bin/extract-props.js
|