aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/requirements/osxfuse_requirement.rb
diff options
context:
space:
mode:
Diffstat (limited to 'Library/Homebrew/requirements/osxfuse_requirement.rb')
-rw-r--r--Library/Homebrew/requirements/osxfuse_requirement.rb30
1 files changed, 30 insertions, 0 deletions
diff --git a/Library/Homebrew/requirements/osxfuse_requirement.rb b/Library/Homebrew/requirements/osxfuse_requirement.rb
new file mode 100644
index 000000000..190d71cde
--- /dev/null
+++ b/Library/Homebrew/requirements/osxfuse_requirement.rb
@@ -0,0 +1,30 @@
+require "requirement"
+
+class OsxfuseRequirement < Requirement
+ fatal true
+ default_formula "osxfuse"
+ cask "osxfuse"
+ download "https://osxfuse"
+
+ satisfy { Formula["osxfuse"].installed? || self.class.binary_osxfuse_installed? }
+
+ def self.binary_osxfuse_installed?
+ File.exist?("/usr/local/include/osxfuse/fuse.h") && !File.symlink?("/usr/local/include/osxfuse")
+ end
+
+ env do
+ ENV.append_path "PKG_CONFIG_PATH", HOMEBREW_PREFIX/"Library/ENV/pkgconfig/fuse"
+ end
+end
+
+class NonBinaryOsxfuseRequirement < Requirement
+ fatal true
+ satisfy { HOMEBREW_PREFIX.to_s != "/usr/local" || !OsxfuseRequirement.binary_osxfuse_installed? }
+
+ def message
+ <<-EOS.undent
+ osxfuse is already installed from the binary distribution and
+ conflicts with this formula.
+ EOS
+ end
+end