← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] lp:~abentley/launchpad/makefile-tweak into lp:launchpad

 

Aaron Bentley has proposed merging lp:~abentley/launchpad/makefile-tweak into lp:launchpad.

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)

For more details, see:
https://code.launchpad.net/~abentley/launchpad/makefile-tweak/+merge/121885

= Summary =
Tweak makefile rules to run fewer cp commands.

== Proposed fix ==
Use a pattern rule, instead of an overkill rule, to copy files from lib/canonical/launchpad/icing/yui_2.7.0b/build/ to build/js/yui2/

== Pre-implementation notes ==
Discussed with rick_h

== LOC Rationale ==
Part of private projects.

== Implementation details ==
The existing rule to copy the YUI 2.7 files would copy all YUI 2.7 files for each file in JS_YUI (which included many non 2.7 files).

The new rule is triggered only on YUI 2.7 files, and only copies one file at a time.  (Consequently, it has to ensure the directory exists, first.)

As a driveby, I cleaned up a long line at 206.

== Tests ==
None

== Demo and Q/A ==
None

= Launchpad lint =

Checking for conflicts and issues in changed files.

Linting changed files:
  Makefile
-- 
https://code.launchpad.net/~abentley/launchpad/makefile-tweak/+merge/121885
Your team Launchpad code reviewers is requested to review the proposed merge of lp:~abentley/launchpad/makefile-tweak into lp:launchpad.
=== modified file 'Makefile'
--- Makefile	2012-08-13 18:27:18 +0000
+++ Makefile	2012-08-29 15:25:27 +0000
@@ -187,8 +187,10 @@
 	done
 
 $(JS_LP): jsbuild_widget_css
-$(JS_YUI):
-	cp -a lib/canonical/launchpad/icing/yui_2.7.0b/build build/js/yui2
+
+build/js/yui2/%: lib/canonical/launchpad/icing/yui_2.7.0b/build/%
+	mkdir -p `dirname $@`
+	cp -a $< $@
 
 # YUI_DEFAULT is one of the targets in YUI_BUILDS which expands all of our YUI
 # versions for us.
@@ -201,7 +203,8 @@
 endif
 
 combobuild:
-	utilities/js-deps -n LP_MODULES -s build/js/lp -x '-min.js' -o build/js/lp/meta.js >/dev/null
+	utilities/js-deps -n LP_MODULES -s build/js/lp -x '-min.js' -o \
+	build/js/lp/meta.js >/dev/null
 	utilities/check-js-deps
 
 jsbuild: $(PY) $(JS_OUT)


Follow ups