d11cb84929
Build `i386` for Leopard and a fat binary for everything else. Failing to be explicit can cause `xcodebuild` to attempt building for more architectures than it really should. Fixes Homebrew/homebrew#7619.
42 lines
1.1 KiB
Ruby
42 lines
1.1 KiB
Ruby
require 'formula'
|
|
|
|
def kext_prefix
|
|
prefix + 'Library' + 'Extensions'
|
|
end
|
|
|
|
class Fuse4xKext < Formula
|
|
homepage 'http://fuse4x.org/'
|
|
url 'https://github.com/fuse4x/kext.git', :tag => "fuse4x_0_8_12"
|
|
version "0.8.12"
|
|
|
|
def install
|
|
ENV.delete('CC')
|
|
ENV.delete('CXX')
|
|
|
|
args = [
|
|
"-sdk",
|
|
"macosx#{MACOS_VERSION}",
|
|
"-configuration", "Release",
|
|
"-alltargets",
|
|
"MACOSX_DEPLOYMENT_TARGET=#{MACOS_VERSION}",
|
|
"SYMROOT=build",
|
|
# Build a 32-bit kernel extension on Leopard and a fat binary for Snow
|
|
# Leopard/Lion.
|
|
"ARCHS=i386 #{'x86_64' unless MacOS.leopard?}", 'ONLY_ACTIVE_ARCH=NO'
|
|
]
|
|
|
|
system "/usr/bin/xcodebuild", *args
|
|
system "/bin/mkdir -p build/Release/fuse4x.kext/Support"
|
|
system "/bin/cp build/Release/load_fuse4x build/Release/fuse4x.kext/Support"
|
|
|
|
kext_prefix.install "build/Release/fuse4x.kext"
|
|
end
|
|
|
|
def caveats
|
|
<<-EOS.undent
|
|
In order for FUSE-based filesystems to work, the fuse4x kernel extension
|
|
must be installed by the root user:
|
|
sudo cp -rfX #{kext_prefix}/fuse4x.kext /System/Library/Extensions
|
|
EOS
|
|
end
|
|
end
|