aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/extend/os/linux
diff options
context:
space:
mode:
authorBob W. Hogg2017-02-20 09:42:43 -0800
committerBob W. Hogg2017-04-15 21:20:09 -0700
commit608d72a35fc437a0cf3e8da53729e479cde0be3d (patch)
tree3f7534ed8fb65da220b7a6a227f7d27d53b0f678 /Library/Homebrew/extend/os/linux
parent02f0189335907805d422c817462674081f48ab60 (diff)
downloadbrew-608d72a35fc437a0cf3e8da53729e479cde0be3d.tar.bz2
OsxfuseRequirement: Port to Linux
Diffstat (limited to 'Library/Homebrew/extend/os/linux')
-rw-r--r--Library/Homebrew/extend/os/linux/requirements/osxfuse_requirement.rb39
1 files changed, 39 insertions, 0 deletions
diff --git a/Library/Homebrew/extend/os/linux/requirements/osxfuse_requirement.rb b/Library/Homebrew/extend/os/linux/requirements/osxfuse_requirement.rb
new file mode 100644
index 000000000..3fd847bc4
--- /dev/null
+++ b/Library/Homebrew/extend/os/linux/requirements/osxfuse_requirement.rb
@@ -0,0 +1,39 @@
+require "requirement"
+
+class OsxfuseRequirement < Requirement
+ download "https://github.com/libfuse/libfuse"
+
+ satisfy(build_env: false) do
+ next true if libfuse_formula_exists? && Formula["libfuse"].installed?
+ includedirs = %w[
+ /usr/include
+ /usr/local/include
+ ]
+ next true if (includedirs.map do |dir|
+ File.exist? "#{dir}/fuse.h"
+ end).any?
+ false
+ end
+
+ def message
+ msg = "libfuse is required to install this formula.\n"
+ if libfuse_formula_exists?
+ msg + <<-EOS.undent
+ Run "brew install libfuse" to install it.
+ EOS
+ else
+ msg + super
+ end
+ end
+
+ private
+
+ def libfuse_formula_exists?
+ begin
+ Formula["libfuse"]
+ rescue FormulaUnavailableError
+ return false
+ end
+ true
+ end
+end