From 84b04ffe02496e1255eb3f4537568fafaa114400 Mon Sep 17 00:00:00 2001 From: Michael Marineau Date: Fri, 13 Mar 2015 14:20:00 -0700 Subject: [PATCH] README: document that ebuilds are licensed under the GPLv2 This differs from a lot of our code which is Apache or BSD licensed. --- .../third_party/coreos-overlay/PRESUBMIT.py | 74 ------ .../src/third_party/coreos-overlay/README.md | 7 + .../coreos-overlay/ROOT_PRESUBMIT.py | 211 ------------------ .../src/third_party/coreos-overlay/WATCHLISTS | 28 --- .../coreos-overlay/inherit-review-settings-ok | 0 5 files changed, 7 insertions(+), 313 deletions(-) delete mode 100644 sdk_container/src/third_party/coreos-overlay/PRESUBMIT.py create mode 100644 sdk_container/src/third_party/coreos-overlay/README.md delete mode 100644 sdk_container/src/third_party/coreos-overlay/ROOT_PRESUBMIT.py delete mode 100644 sdk_container/src/third_party/coreos-overlay/WATCHLISTS delete mode 100644 sdk_container/src/third_party/coreos-overlay/inherit-review-settings-ok diff --git a/sdk_container/src/third_party/coreos-overlay/PRESUBMIT.py b/sdk_container/src/third_party/coreos-overlay/PRESUBMIT.py deleted file mode 100644 index 34810a98ff..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/PRESUBMIT.py +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -"""Top-level presubmit script for Chromium OS. - -See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts -for more details about the presubmit API built into gcl and git cl. -""" - -import difflib -import os -import re - -_EBUILD_FILES = ( - r".*\.ebuild", -) - -def _IsCrosWorkonEbuild(ebuild_contents): - pattern = re.compile('^ *inherit[-\._a-z0-9 ]*cros-workon') - for line in ebuild_contents: - if pattern.match(line): - return True - return False - -def Check9999Updated(input_api, output_api, source_file_filter=None): - """Checks that the 9999 ebuild was also modified.""" - output = [] - inconsistent = set() - missing_9999 = set() - for f in input_api.AffectedSourceFiles(source_file_filter): - ebuild_contents = f.NewContents() - # only look at non-9999 - if f.LocalPath().endswith('-9999.ebuild'): - continue - if _IsCrosWorkonEbuild(ebuild_contents): - dir = os.path.dirname(f.AbsoluteLocalPath()) - ebuild = os.path.basename(dir) - devebuild_path = os.path.join(dir, ebuild + '-9999.ebuild') - # check if 9999 ebuild exists - if not os.path.isfile(devebuild_path): - missing_9999.add(ebuild) - continue - diff = difflib.ndiff(ebuild_contents, - open(devebuild_path).read().splitlines()) - for line in diff: - if line.startswith('+') or line.startswith('-'): - # ignore empty-lines - if len(line) == 2: - continue - if not (line[2:].startswith('KEYWORDS=') or - line[2:].startswith('CROS_WORKON_COMMIT=')): - inconsistent.add(f.LocalPath()) - - if missing_9999: - output.append(output_api.PresubmitPromptWarning( - 'Missing 9999 for these cros-workon ebuilds:', items=missing_9999)) - if inconsistent: - output.append(output_api.PresubmitPromptWarning( - 'Following ebuilds are inconsistent with 9999:', items=inconsistent)) - return output - -def CheckChange(input_api, output_api, committing): - ebuilds = lambda x: input_api.FilterSourceFile(x, white_list=_EBUILD_FILES) - results = [] - results += Check9999Updated(input_api, output_api, - source_file_filter=ebuilds) - return results - -def CheckChangeOnUpload(input_api, output_api): - return CheckChange(input_api, output_api, False) - -def CheckChangeOnCommit(input_api, output_api): - return CheckChange(input_api, output_api, True) diff --git a/sdk_container/src/third_party/coreos-overlay/README.md b/sdk_container/src/third_party/coreos-overlay/README.md new file mode 100644 index 0000000000..91158fd7ce --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/README.md @@ -0,0 +1,7 @@ +This overlay contains CoreOS specific packages and Gentoo packages +that differ from their upstream Gentoo versions. + +Licensing information can be found in the respective files, so consult +them directly. Most ebuilds are licensed under the GPL version 2. + +Upstream Gentoo sources: http://sources.gentoo.org/gentoo-x86/ diff --git a/sdk_container/src/third_party/coreos-overlay/ROOT_PRESUBMIT.py b/sdk_container/src/third_party/coreos-overlay/ROOT_PRESUBMIT.py deleted file mode 100644 index a45c497d0f..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/ROOT_PRESUBMIT.py +++ /dev/null @@ -1,211 +0,0 @@ -# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -"""Top-level presubmit script for Chromium OS. - -See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts -for more details about the presubmit API built into gcl and git cl. -""" - -import re - -_EXCLUDED_PATHS = ( - r"^inherit-review-settings-ok$", - r".*[\\\/]debian[\\\/]rules$", -) - -# These match files that should contain tabs as indentation. -_TAB_OK_PATHS = ( - r"/src/third_party/kernel/", - r"/src/third_party/kernel-next/", - r"/src/third_party/u-boot/", - r"/src/third_party/u-boot-next/", - r".*\.ebuild$", - r".*\.eclass$", -) - -# These match files that are part of out "next" developemnt flow and as such -# do not require a valid BUG= field to commit, but it's still a good idea. -_NEXT_PATHS = ( - r"/src/third_party/kernel-next", - r"/src/third_party/u-boot-next", -) - -_LICENSE_HEADER = ( - r".*? Copyright \(c\) 20[-0-9]{2,7} The Chromium OS Authors\. All rights " - r"reserved\." "\n" - r".*? Use of this source code is governed by a BSD-style license that can " - "be\n" - r".*? found in the LICENSE file\." - "\n" -) - - -def CheckAndShowLicense(input_api, output_api, source_file_filter=None): - """Check that the source files have a valid License header. - - The license header must matches our template. If not also show the - header that should have been used. - - """ - results = [] - license_check = input_api.canned_checks.CheckLicense( - input_api, output_api, _LICENSE_HEADER, source_file_filter) - results.extend(license_check) - if license_check: - results.extend([output_api.PresubmitNotifyResult( - "License header should match the following:", - long_text=_LICENSE_HEADER)]) - return results - - -def CheckChangeHasMandatoryBugField(input_api, - output_api, - source_file_filter=None): - """Check that the commit contains a valid BUG= field.""" - msg = ('Changelist must reference a bug number using BUG=\n' - 'For example, BUG=chromium-os:8205\n' - 'BUG=none is allowed.') - - if (not input_api.AffectedSourceFiles(source_file_filter) or - input_api.change.BUG): - return [] - else: - return [output_api.PresubmitError(msg)] - - -def CheckChangeHasBugField(input_api, output_api, source_file_filter=None): - # This function is required because the canned BugField check doesn't - # take a source filter. - return input_api.canned_checks.CheckChangeHasBugField(input_api, - output_api) - - -def CheckChangeHasTestField(input_api, output_api, source_file_filter=None): - # This function is required because the canned TestField check doesn't - # take a source filter. - return input_api.canned_checks.CheckChangeHasTestField(input_api, - output_api) - - -def CheckTreeIsOpen(input_api, output_api, source_file_filter=None): - """Make sure the tree is 'open'. If not, don't submit.""" - return input_api.canned_checks.CheckTreeIsOpen( - input_api, - output_api, - json_url='http://chromiumos-status.appspot.com/current?format=json') - - -def CheckBuildbotPendingBuilds(input_api, output_api, source_file_filter=None): - """Check to see if there's a backlog on the pending CL queue""" - return input_api.canned_checks.CheckBuildbotPendingBuilds( - input_api, - output_api, - 'http://build.chromium.org/p/chromiumos/json/builders?filter=1', - 6, - []) - - -def FilterAbsoluteSourceFile(input_api, affected_file, white_list, black_list): - """Filters out files that aren't considered "source file". - - The lists will be compiled as regular expression and - AffectedFile.AbsoluteLocalPath() needs to pass both list. - - Note: This function was coppied from presubmit_support.py and modified to - check against (AbsoluteLocalPath - PresubmitLocalPath) instead of LocalPath - because LocalPath doesn't contain enough information to disambiguate kernel, - u-boot and -next files from the rest of ChromiumOS. - - """ - presubmit_local_path = input_api.PresubmitLocalPath() - - def RelativePath(affected_file): - absolute_local_path = affected_file.AbsoluteLocalPath() - - assert absolute_local_path.startswith(presubmit_local_path) - return absolute_local_path[len(presubmit_local_path):] - - def Find(relative_path, items): - for item in items: - if re.match(item, relative_path): - return True - - return False - - relative_path = RelativePath(affected_file) - - return (Find(relative_path, white_list) and - not Find(relative_path, black_list)) - -def RunChecklist(input_api, output_api, checklist): - """Run through a set of checks provided in a checklist. - - The checklist is a list of tuples, each of which contains the check to run - and a list of regular expressions of paths to ignore for this check - - """ - results = [] - - for check, paths in checklist: - white_list = input_api.DEFAULT_WHITE_LIST - - # Construct a black list from the DEFAULT_BLACK_LIST supplied by - # depot_tools and the paths that this check should not be applied to. - # - # We also remove the third_party rule here because our paterns are - # matching against the entire path from the root of the ChromiumOS - # project. We use the rooted paths because we want to be able to apply - # some of the presubmit checks to things like the kernel and u-boot that - # live in the third_party directory. - black_list = list(input_api.DEFAULT_BLACK_LIST) - black_list.remove(r".*\bthird_party[\\\/].*") - black_list.extend(paths) - sources = lambda path: FilterAbsoluteSourceFile(input_api, - path, - white_list, - black_list) - results.extend(check(input_api, output_api, source_file_filter=sources)) - - return results - - -def MakeCommonChecklist(input_api): - return [(input_api.canned_checks.CheckLongLines, _EXCLUDED_PATHS), - (input_api.canned_checks.CheckChangeHasNoStrayWhitespace, - _EXCLUDED_PATHS), - (CheckChangeHasTestField, _EXCLUDED_PATHS), - (CheckAndShowLicense, _EXCLUDED_PATHS), - (input_api.canned_checks.CheckChangeHasNoTabs, - _EXCLUDED_PATHS + _TAB_OK_PATHS)] - - -def MakeUploadChecklist(input_api): - return [(CheckChangeHasBugField, _EXCLUDED_PATHS)] - - -def MakeCommitChecklist(input_api): - return [(CheckChangeHasMandatoryBugField, _EXCLUDED_PATHS), - (CheckTreeIsOpen, _EXCLUDED_PATHS), - (CheckBuildbotPendingBuilds, _EXCLUDED_PATHS)] - - -def CheckChangeOnUpload(input_api, output_api): - """On upload we check against the common and upload lists.""" - return RunChecklist(input_api, - output_api, - MakeCommonChecklist(input_api) + - MakeUploadChecklist(input_api)) - - -def CheckChangeOnCommit(input_api, output_api): - """On commit we check against the common and commit lists.""" - return RunChecklist(input_api, - output_api, - MakeCommonChecklist(input_api) + - MakeCommitChecklist(input_api)) - - -def GetPreferredTrySlaves(): - return ['ChromiumOS x86'] diff --git a/sdk_container/src/third_party/coreos-overlay/WATCHLISTS b/sdk_container/src/third_party/coreos-overlay/WATCHLISTS deleted file mode 100644 index 73fa35b37e..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/WATCHLISTS +++ /dev/null @@ -1,28 +0,0 @@ -# See http://dev.chromium.org/developers/contributing-code/watchlists for -# a description of this file's format. -# Please keep these keys in alphabetical order. - -{ - 'WATCHLIST_DEFINITIONS': { - 'all': { - 'filepath': '.', - }, - 'fonts': { - 'filepath': 'media-fonts/|media-libs/(fontconfig|freetype)/', - }, - 'chromeos-image' : { - 'filepath': 'chromeos-base/chromeos(/|-dev|-test)', - }, - 'xorg' : { - 'filepath': 'chromeos-base/xorg-conf/|x11-(base|drivers|libs|misc)/', - }, - }, - 'WATCHLISTS': { - 'all': ['adlr+crosoverlay@chromium.org', - 'msb+crosoverlay@chromium.org', - 'anush@chromium.org'], - 'chromeos-image' : ['petkov@chromium.org', 'sosa@chromium.org'], - 'fonts' : ['derat@chromium.org'], - 'xorg' : ['derat@chromium.org', 'marcheu@chromium.org'], - }, -} diff --git a/sdk_container/src/third_party/coreos-overlay/inherit-review-settings-ok b/sdk_container/src/third_party/coreos-overlay/inherit-review-settings-ok deleted file mode 100644 index e69de29bb2..0000000000