Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(670)

Unified Diff: third_party/dpkg-dev/scripts/Dpkg/BuildOptions.pm

Issue 2425693003: Revert of Linux build: Use sysroot when calculating dependencies (Closed)
Patch Set: Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/dpkg-dev/scripts/Dpkg/BuildFlags.pm ('k') | third_party/dpkg-dev/scripts/Dpkg/BuildProfiles.pm » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/dpkg-dev/scripts/Dpkg/BuildOptions.pm
diff --git a/third_party/dpkg-dev/scripts/Dpkg/BuildOptions.pm b/third_party/dpkg-dev/scripts/Dpkg/BuildOptions.pm
deleted file mode 100644
index 90213aab0f40587677953fc796ef752ed169b203..0000000000000000000000000000000000000000
--- a/third_party/dpkg-dev/scripts/Dpkg/BuildOptions.pm
+++ /dev/null
@@ -1,204 +0,0 @@
-# Copyright © 2007 Frank Lichtenheld <djpig@debian.org>
-# Copyright © 2010 Raphaël Hertzog <hertzog@debian.org>
-#
-# 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 2 of the License, 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 <https://www.gnu.org/licenses/>.
-
-package Dpkg::BuildOptions;
-
-use strict;
-use warnings;
-
-our $VERSION = '1.01';
-
-use Dpkg::Gettext;
-use Dpkg::ErrorHandling;
-use Dpkg::BuildEnv;
-
-=encoding utf8
-
-=head1 NAME
-
-Dpkg::BuildOptions - parse and update build options
-
-=head1 DESCRIPTION
-
-The Dpkg::BuildOptions object can be used to manipulate options stored
-in environment variables like DEB_BUILD_OPTIONS and
-DEB_BUILD_MAINT_OPTIONS.
-
-=head1 FUNCTIONS
-
-=over 4
-
-=item my $bo = Dpkg::BuildOptions->new(%opts)
-
-Create a new Dpkg::BuildOptions object. It will be initialized based
-on the value of the environment variable named $opts{envvar} (or
-DEB_BUILD_OPTIONS if that option is not set).
-
-=cut
-
-sub new {
- my ($this, %opts) = @_;
- my $class = ref($this) || $this;
-
- my $self = {
- options => {},
- source => {},
- envvar => $opts{envvar} // 'DEB_BUILD_OPTIONS',
- };
- bless $self, $class;
- $self->merge(Dpkg::BuildEnv::get($self->{envvar}), $self->{envvar});
- return $self;
-}
-
-=item $bo->reset()
-
-Reset the object to not have any option (it's empty).
-
-=cut
-
-sub reset {
- my ($self) = @_;
- $self->{options} = {};
- $self->{source} = {};
-}
-
-=item $bo->merge($content, $source)
-
-Merge the options set in $content and record that they come from the
-source $source. $source is mainly used in warning messages currently
-to indicate where invalid options have been detected.
-
-$content is a space separated list of options with optional assigned
-values like "nocheck parallel=2".
-
-=cut
-
-sub merge {
- my ($self, $content, $source) = @_;
- return 0 unless defined $content;
- my $count = 0;
- foreach (split(/\s+/, $content)) {
- unless (/^([a-z][a-z0-9_-]*)(?:=(\S*))?$/) {
- warning(_g('invalid flag in %s: %s'), $source, $_);
- next;
- }
- $count += $self->set($1, $2, $source);
- }
- return $count;
-}
-
-=item $bo->set($option, $value, [$source])
-
-Store the given option in the objet with the given value. It's legitimate
-for a value to be undefined if the option is a simple boolean (its
-presence means true, its absence means false). The $source is optional
-and indicates where the option comes from.
-
-The known options have their values checked for sanity. Options without
-values have their value removed and options with invalid values are
-discarded.
-
-=cut
-
-sub set {
- my ($self, $key, $value, $source) = @_;
-
- # Sanity checks
- if ($key =~ /^(noopt|nostrip|nocheck)$/ && defined($value)) {
- $value = undef;
- } elsif ($key eq 'parallel') {
- $value //= '';
- return 0 if $value !~ /^\d*$/;
- }
-
- $self->{options}{$key} = $value;
- $self->{source}{$key} = $source;
-
- return 1;
-}
-
-=item $bo->get($option)
-
-Return the value associated to the option. It might be undef even if the
-option exists. You might want to check with $bo->has($option) to verify if
-the option is stored in the object.
-
-=cut
-
-sub get {
- my ($self, $key) = @_;
- return $self->{options}{$key};
-}
-
-=item $bo->has($option)
-
-Returns a boolean indicating whether the option is stored in the object.
-
-=cut
-
-sub has {
- my ($self, $key) = @_;
- return exists $self->{options}{$key};
-}
-
-=item $string = $bo->output($fh)
-
-Return a string representation of the build options suitable to be
-assigned to an environment variable. Can optionnaly output that string to
-the given filehandle.
-
-=cut
-
-sub output {
- my ($self, $fh) = @_;
- my $o = $self->{options};
- my $res = join(' ', map { defined($o->{$_}) ? $_ . '=' . $o->{$_} : $_ } sort keys %$o);
- print { $fh } $res if defined $fh;
- return $res;
-}
-
-=item $bo->export([$var])
-
-Export the build options to the given environment variable. If omitted,
-the environment variable defined at creation time is assumed. The value
-set to the variable is also returned.
-
-=cut
-
-sub export {
- my ($self, $var) = @_;
- $var = $self->{envvar} unless defined $var;
- my $content = $self->output();
- Dpkg::BuildEnv::set($var, $content);
- return $content;
-}
-
-=back
-
-=head1 CHANGES
-
-=head2 Version 1.01
-
-Enable to use another environment variable instead of DEB_BUILD_OPTIONS.
-Thus add support for the "envvar" option at creation time.
-
-=head1 AUTHOR
-
-Raphaël Hertzog <hertzog@debian.org>
-
-=cut
-
-1;
« no previous file with comments | « third_party/dpkg-dev/scripts/Dpkg/BuildFlags.pm ('k') | third_party/dpkg-dev/scripts/Dpkg/BuildProfiles.pm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698