Modified the presubmit checks such that difference license templates are checked for in webrtc and talk folder.

BUG=2091
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1833004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4381 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/talk/PRESUBMIT.py b/talk/PRESUBMIT.py
new file mode 100644
index 0000000..5fbda4a
--- /dev/null
+++ b/talk/PRESUBMIT.py
@@ -0,0 +1,93 @@
+# libjingle
+# Copyright 2013 Google Inc.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+#  1. Redistributions of source code must retain the above copyright notice,
+#     this list of conditions and the following disclaimer.
+#  2. Redistributions in binary form must reproduce the above copyright notice,
+#     this list of conditions and the following disclaimer in the documentation
+#     and/or other materials provided with the distribution.
+#  3. The name of the author may not be used to endorse or promote products
+#     derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+def _LicenseHeader(input_api):
+  """Returns the license header regexp."""
+  # Accept any year number from 2011 to the current year
+  current_year = int(input_api.time.strftime('%Y'))
+  allowed_years = (str(s) for s in reversed(xrange(2008, current_year + 1)))
+  years_re = '(' + '|'.join(allowed_years) + ')'
+  license_header = (
+      r'.*? libjingle\n'
+      r'.*? Copyright %(year)s Google Inc\.\n'
+      r'.*?\n'
+      r'.*? Redistribution and use in source and binary forms, with or without'
+        r'\n'
+      r'.*? modification, are permitted provided that the following conditions '
+        r'are met:\n'
+      r'.*?\n'
+      r'.*? 1\. Redistributions of source code must retain the above copyright '
+        r'notice,\n'
+      r'.*?    this list of conditions and the following disclaimer\.\n'
+      r'.*? 2\. Redistributions in binary form must reproduce the above '
+        r'copyright notice,\n'
+      r'.*?    this list of conditions and the following disclaimer in the '
+        r'documentation\n'
+      r'.*?    and/or other materials provided with the distribution\.\n'
+      r'.*? 3\. The name of the author may not be used to endorse or promote '
+        r'products\n'
+      r'.*?    derived from this software without specific prior written '
+        r'permission\.\n'
+      r'.*?\n'
+      r'.*? THIS SOFTWARE IS PROVIDED BY THE AUTHOR \`\`AS IS\'\' AND ANY '
+        r'EXPRESS OR IMPLIED\n'
+      r'.*? WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES '
+        r'OF\n'
+      r'.*? MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE '
+        r'DISCLAIMED\. IN NO\n'
+      r'.*? EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, '
+        r'INCIDENTAL,\n'
+      r'.*? SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES \(INCLUDING, '
+        r'BUT NOT LIMITED TO,\n'
+      r'.*? PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR '
+        r'PROFITS;\n'
+      r'.*? OR BUSINESS INTERRUPTION\) HOWEVER CAUSED AND ON ANY THEORY OF '
+        r'LIABILITY,\n'
+      r'.*? WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT \(INCLUDING '
+        r'NEGLIGENCE OR\n'
+      r'.*? OTHERWISE\) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, '
+        r'EVEN IF\n'
+      r'.*? ADVISED OF THE POSSIBILITY OF SUCH DAMAGE\.\n'
+  ) % {
+      'year': years_re,
+  }
+  return license_header
+
+def _CommonChecks(input_api, output_api):
+  """Checks common to both upload and commit."""
+  results = []
+  results.extend(input_api.canned_checks.CheckLicense(
+      input_api, output_api, _LicenseHeader(input_api)))
+  return results
+
+def CheckChangeOnUpload(input_api, output_api):
+  results = []
+  results.extend(_CommonChecks(input_api, output_api))
+  return results
+
+def CheckChangeOnCommit(input_api, output_api):
+  results = []
+  results.extend(_CommonChecks(input_api, output_api))
+  return results