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 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
|
#!/usr/bin/make -f
# Upstream version and date as found in upstream jquery-ui.js file
timestamp = '2016-09-14'
include /usr/share/dpkg/pkg-info.mk
version = $(shell echo $(DEB_VERSION_UPSTREAM) | sed 's/+dfsg//')
%:
dh $@
override_dh_auto_configure:
find demos -name "*.html" -exec sed --in-place "s#\.\./\.\./themes/base/all\.css#/usr/share/javascript/jquery-ui/themes/base/jquery-ui.css#" {} \;
find demos -name "*.html" -exec sed --in-place "s#\.\./\.\./external/requirejs/require\.js#/usr/share/nodejs/require.js#" {} \;
dh_auto_configure --buildsystem=nodejs
override_dh_auto_build: jquery-ui.js jquery-ui.min.js themes/base/jquery-ui.css ui/i18n/jquery-ui-i18n.js
for file in $$(find ui -name '*.js'); do \
uglifyjs $$file --output $${file%.js}.min.js --compress; \
done
for file in $$(find themes -name '*.css'); do \
yui-compressor $$file -o $${file%.css}.min.css; \
done
dh_auto_build --buildsystem=nodejs
build.js: debian/build.js
cp $< $@
jquery-ui.js: build.js
nodejs `nodepath requirejs`/r.js -o build.js
sed -i -e 's/@VERSION/$(version)/; s/@DATE/$(timestamp)/' $@
@nodejs --check $@ || (mv $@ $@.failed; false)
jquery-ui.min.js: jquery-ui.js
uglifyjs $^ --output $@ --compress
themes/base/jquery-ui.css:
# Can probably be done with "nodejs /usr/share/nodejs/requirejs/r.js" as well,
# but don't know how now.
cd themes/base ; cat \
../../debian/intro.css \
core.css \
accordion.css \
autocomplete.css \
menu.css \
button.css \
controlgroup.css \
checkboxradio.css \
datepicker.css \
dialog.css \
draggable.css \
resizable.css \
progressbar.css \
selectable.css \
selectmenu.css \
slider.css \
sortable.css \
spinner.css \
tabs.css \
tooltip.css \
theme.css \
> ../../$@
sed -i -e 's/@VERSION/$(version)/; s/@DATE/$(timestamp)/' $@
# Strip comments containing names of defaults
sed -i -e 's#/\*{\w*}\*/##'g $@
# Strip copyright block per file in concatentated file
sed -i -e 's#^/\*!$$##; s#^ \*.*##; s#^ \*$$##' $@
ui/i18n/jquery-ui-i18n.js: export LC_ALL=C.UTF-8
ui/i18n/jquery-ui-i18n.js:
# Replace newline with \r to ease use of sed (I don't know well enough how
# to achieve the same thing in the hold space).
for file in ui/i18n/datepicker*.js ; do \
cat $${file} | tr '\n' '\r' | \
sed -e 's/( function( factory.*function( datepicker ) {//' \
-e 's/datepicker\.regional/jQuery(function($$){\r\t&/' \
-e 's/\(datepicker\.regional\)\.\([[:alpha:]-]*\)/\1["\2"]/g' \
-e 's/\rreturn datepicker.*\r\r} ) );\r//' \
-e 's/datepicker\./$$.&/g' | \
tr '\r' '\n' > $${file}.tmp ; \
echo '});' >> $${file}.tmp ; \
done
cat ui/i18n/datepicker*.tmp > $@
$(RM) ui/i18n/datepicker*.tmp
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS) $(DEB_BUILD_PROFILES)))
override_dh_auto_test: jquery-ui.js jquery-ui.min.js themes/base/jquery-ui.css
nodejs --check jquery-ui.js
nodejs --check jquery-ui.min.js
nodejs --check ui/i18n/jquery-ui-i18n.js
# Reference files are taken from the quick download ZIP file from
# http://jqueryui.com
#diff -Bw debian/reference-jquery-ui.js jquery-ui.js
#diff -Bw debian/reference-jquery-ui.css themes/base/jquery-ui.css
endif
override_dh_compress:
# examples/autocomplete/search.php is needed for some examples to work;
# unfortunately this doesn't help with file browsing
dh_compress --exclude=search.php
override_dh_auto_clean:
find demos -name "*.html" -exec sed --in-place "s#/usr/share/javascript/jquery-ui/themes/base/jquery-ui\.css#../../themes/base/all.css#" {} \;
find demos -name "*.html" -exec sed --in-place "s#/usr/share/nodejs/require\.js#../../external/requirejs/require.js#" {} \;
|