aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/requirements
diff options
context:
space:
mode:
authorMike McQuaid2017-10-18 09:43:45 +0100
committerGitHub2017-10-18 09:43:45 +0100
commitc7d21dadfef2b1d629c9e7de034cc99afea5b2b4 (patch)
tree532f6cb210068cbddaca3efa9c363335237a0cbf /Library/Homebrew/requirements
parentc4e8c7906d12399b34188cd3395b8f9d30dc89b3 (diff)
parent230c87aff006e36bd65bb6dcc8a3877aad2c9290 (diff)
downloadbrew-c7d21dadfef2b1d629c9e7de034cc99afea5b2b4.tar.bz2
Merge pull request #3270 from sjackman/os-requirement
Add depends_on :linux and :macos
Diffstat (limited to 'Library/Homebrew/requirements')
-rw-r--r--Library/Homebrew/requirements/linux_requirement.rb9
-rw-r--r--Library/Homebrew/requirements/macos_requirement.rb31
-rw-r--r--Library/Homebrew/requirements/minimum_macos_requirement.rb20
3 files changed, 40 insertions, 20 deletions
diff --git a/Library/Homebrew/requirements/linux_requirement.rb b/Library/Homebrew/requirements/linux_requirement.rb
new file mode 100644
index 000000000..cb4666e56
--- /dev/null
+++ b/Library/Homebrew/requirements/linux_requirement.rb
@@ -0,0 +1,9 @@
+class LinuxRequirement < Requirement
+ fatal true
+
+ satisfy(build_env: false) { OS.linux? }
+
+ def message
+ "Linux is required."
+ end
+end
diff --git a/Library/Homebrew/requirements/macos_requirement.rb b/Library/Homebrew/requirements/macos_requirement.rb
new file mode 100644
index 000000000..c89144d2c
--- /dev/null
+++ b/Library/Homebrew/requirements/macos_requirement.rb
@@ -0,0 +1,31 @@
+require "requirement"
+
+class MacOSRequirement < Requirement
+ fatal true
+
+ def initialize(tags = [])
+ @version = MacOS::Version.from_symbol(tags.first) unless tags.empty?
+ super
+ end
+
+ def minimum_version_specified?
+ OS.mac? && @version
+ end
+
+ satisfy(build_env: false) do
+ next MacOS.version >= @version if minimum_version_specified?
+ next true if OS.mac?
+ next true if @version
+ false
+ end
+
+ def message
+ return "macOS is required." unless minimum_version_specified?
+ "macOS #{@version.pretty_name} or newer is required."
+ end
+
+ def display_s
+ return "macOS is required" unless minimum_version_specified?
+ "macOS >= #{@version}"
+ end
+end
diff --git a/Library/Homebrew/requirements/minimum_macos_requirement.rb b/Library/Homebrew/requirements/minimum_macos_requirement.rb
deleted file mode 100644
index 2cb63f740..000000000
--- a/Library/Homebrew/requirements/minimum_macos_requirement.rb
+++ /dev/null
@@ -1,20 +0,0 @@
-require "requirement"
-
-class MinimumMacOSRequirement < Requirement
- fatal true
-
- def initialize(tags)
- @version = MacOS::Version.from_symbol(tags.first)
- super
- end
-
- satisfy(build_env: false) { MacOS.version >= @version }
-
- def message
- "macOS #{@version.pretty_name} or newer is required."
- end
-
- def display_s
- "macOS >= #{@version}"
- end
-end