[21623] trunk/dports
source_changes at macosforge.org
source_changes at macosforge.org
Tue Jan 30 21:45:40 PST 2007
Revision: 21623
http://trac.macosforge.org/projects/macports/changeset/21623
Author: eridius at macports.org
Date: 2007-01-30 21:45:40 -0800 (Tue, 30 Jan 2007)
Log Message:
-----------
At last, the long-awaited MacFUSE portfile!
Creating a fuse/ toplevel category because I anticipate more fuse filesystems to be added soon, and there's no other real good place for them.
New port: fusefs. This is the kernel-level support for MacFUSE, including fusefs.kext, fusefs.fs, load_fusefs, and mount_fusefs. Source is a tarball created from the fusefs-0.1.9 svn tag, hosted by the macports svn repo, as MacFUSE itself does not provide source drops.
New port: libfuse. This is the user-level support for MacFUSE, including libfuse.dylib and the fuse headers. Theoretically this could compile on linux systems as well, but the portfile explicitly checks for darwin as I don't know how this would work under linux.
New port: sshfs. This is the sshfs FUSE filesystem. Depends on libfuse and fusefs. Theoretically it should just depend on libfuse, but the dependency graph wasn't working right and fusefs wasn't being built this way. I wonder if the graph uses the PortIndex?
For all you home users: do a `sudo port install sshfs` and everything will Just Work.
Added Paths:
-----------
trunk/dports/fuse/
trunk/dports/fuse/fusefs/
trunk/dports/fuse/fusefs/Portfile
trunk/dports/fuse/libfuse/
trunk/dports/fuse/libfuse/Portfile
trunk/dports/fuse/sshfs/
trunk/dports/fuse/sshfs/Portfile
Added: trunk/dports/fuse/fusefs/Portfile
===================================================================
--- trunk/dports/fuse/fusefs/Portfile (rev 0)
+++ trunk/dports/fuse/fusefs/Portfile 2007-01-31 05:45:40 UTC (rev 21623)
@@ -0,0 +1,80 @@
+# $Id$
+
+PortSystem 1.0
+PortGroup xcode 1.0
+
+name fusefs
+version 0.1.9
+categories fuse devel
+platforms darwin
+maintainers eridius at macports.org
+description A FUSE-Compliant File System Implementation Mechanism for Mac OS X
+long_description MacFUSE implements a mechanism that makes it possible to implement \
+ a fully functional file system in a user-space program on Mac OS X \
+ (10.4 and above). It aims to be API-compliant with the FUSE \
+ (File-system in USErspace) mechanism that originated on Linux. \
+ Therefore, many existing FUSE file systems become readily usable on \
+ Mac OS X. The core of MacFUSE is in a dynamically loadable kernel extension.
+
+homepage http://code.google.com/p/macfuse/
+master_sites http://svn.macosforge.org/repository/macports/distfiles/eridius/
+distname fusefs-${version}
+worksrcdir fusefs
+checksums md5 eedef271f36d72f4b29d91c9b1501d83 \
+ sha1 ffb88859122cbc0725ddcb26eb27c88587f4a820
+extract.suffix .tar.bz2
+
+use_bzip2 yes
+
+xcode.configuration Release
+xcode.target fusefs load_fusefs fusefs.fs mount_fusefs
+xcode.build.settings OBJROOT=build/ SYMROOT=build/
+
+# ensure that user is running OS X 10.4
+platform darwin {}
+pre-fetch {
+ if {[variant_isset darwin]} {
+ set vers [split [exec sw_vers -productVersion] .]
+ set majorVersion [lindex $vers 0]
+ set minorVersion [lindex $vers 1]
+ if {"$majorVersion.$minorVersion" < 10.4} {
+ return -code error "MacFUSE requires at least Mac OS X 10.4 to run"
+ }
+ } else {
+ return -code error "MacFUSE is for Mac OS X only"
+ }
+}
+
+destroot {
+ set libdir ${destroot}/Library
+ set extdir ${libdir}/Extensions
+ set syslibdir ${destroot}/System/Library
+ set sysfsdir ${syslibdir}/Filesystems
+
+ set builddir ${worksrcpath}/build/${xcode.configuration}
+
+ # ensure appropriate permissions
+ xinstall -d -m 1774 -o root -g admin ${libdir}
+ xinstall -d -m 1755 -o root -g wheel ${extdir}
+
+ # copy fusefs.kext
+ file copy -- ${builddir}/fusefs.kext ${extdir}/
+ find ${extdir}/fusefs.kext {expr 1} {
+ file attributes $filename -owner root -group wheel
+ }
+
+ # copy load_fusefs
+ xinstall -o root -g wheel -m 4555 ${builddir}/load_fusefs \
+ ${extdir}/fusefs.kext/Contents/Resources/
+
+ # copy fusefs.fs
+ xinstall -d -m 755 -o root -g wheel ${sysfsdir}
+ file copy -- ${builddir}/fusefs.fs ${sysfsdir}
+ find ${sysfsdir}/fusefs.fs {expr 1} {
+ file attributes $filename -owner root -group wheel
+ }
+
+ # copy mount_fusefs
+ xinstall -o root -g wheel ${builddir}/mount_fusefs \
+ ${sysfsdir}/fusefs.fs/mount_fusefs
+}
\ No newline at end of file
Added: trunk/dports/fuse/libfuse/Portfile
===================================================================
--- trunk/dports/fuse/libfuse/Portfile (rev 0)
+++ trunk/dports/fuse/libfuse/Portfile 2007-01-31 05:45:40 UTC (rev 21623)
@@ -0,0 +1,41 @@
+# $Id$
+
+PortSystem 1.0
+
+name libfuse
+version 2.6.1
+categories fuse devel
+platforms darwin
+maintainers eridius at macports.org
+description Filesystem in Userspace
+long_description See the fusefs port for more information
+
+homepage http://fuse.sourceforge.net/
+
+distname fuse-${version}
+master_sites sourceforge:fuse
+checksums ${distfiles} md5 13e1873086a1d7a95f470bbc7428c528 \
+ sha1 85ec4458d0ab2647b6b43605f0200006d89981ed
+
+depends_lib bin:pkg-config:pkgconfig
+
+platform darwin {
+ depends_run port:fusefs
+ patch_sites http://macfuse.googlecode.com/svn/tags/macfuse-0.1.9/libfuse/
+ patchfiles fuse-2.6.1-macosx.patch
+ checksums-append fuse-2.6.1-macosx.patch md5 a1356f9cd7538e005199ca52d695fffa \
+ sha1 76b5b1bf01ee87c866d86d77c2c2cefeaae1fd71
+
+ configure.post_args-append CFLAGS="-D__FreeBSD__=10 -D_POSIX_C_SOURCE=200112L"
+
+ # override patch.pre_args since it defaults to -p0
+ patch.pre_args -p1
+}
+
+pre-fetch {
+ # LibFUSE currently only works on OS X
+ # so error out if attempting to install elsewhere
+ if {![variant_isset darwin]} {
+ return -code error "LibFUSE is only supported for Mac OS X"
+ }
+}
\ No newline at end of file
Added: trunk/dports/fuse/sshfs/Portfile
===================================================================
--- trunk/dports/fuse/sshfs/Portfile (rev 0)
+++ trunk/dports/fuse/sshfs/Portfile 2007-01-31 05:45:40 UTC (rev 21623)
@@ -0,0 +1,39 @@
+# $Id$
+
+PortSystem 1.0
+
+name sshfs
+version 1.7
+categories fuse devel
+platforms darwin
+maintainers eridius at macports.org
+description Filesystem in Userspace
+long_description This is a filesystem client based on the \
+ SSH File Transfer Protocol. Since most SSH \
+ servers already support this protocol it is \
+ very easy to set up: i.e. on the server side \
+ there's nothing to do. On the client side \
+ mounting the filesystem is as easy as logging \
+ into the server with ssh.
+
+homepage http://fuse.sourceforge.net/sshfs.html
+
+distname sshfs-fuse-${version}
+master_sites sourceforge:fuse
+checksums ${distfiles} md5 e91a2fed1da952a375798408dc6e41a0 \
+ sha1 c68fa99e9127b59141a5ac5babec39d5bb541141
+
+depends_lib bin:pkg-config:pkgconfig lib:libglib-2.0:glib2 lib:libfuse:libfuse
+
+platform darwin {
+ depends_run port:fusefs
+ patch_sites http://macfuse.googlecode.com/svn/tags/macfuse-0.1.9/filesystems/sshfs
+ patchfiles sshfs-fuse-1.7-macosx.patch
+ checksums-append sshfs-fuse-1.7-macosx.patch md5 ded7579df87a384d2b74cf6413ba923f \
+ sha1 50d036dc57fb560f011d598852576a446ba3842b
+
+ configure.post_args-append CFLAGS="-D__FreeBSD__=10"
+
+ # override patch.pre_args since it defaults to -p0
+ patch.pre_args -p1
+}
\ No newline at end of file
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20070130/609e78be/attachment.html
More information about the macports-changes
mailing list