add fuse and nfs-3g packages
authorIvan Kuten <ivan.kuten@promwad.com>
Sat, 24 Nov 2007 16:09:25 +0000 (16:09 -0000)
committerIvan Kuten <ivan.kuten@promwad.com>
Sat, 24 Nov 2007 16:09:25 +0000 (16:09 -0000)
package/Config.in
package/fuse/Config.in [new file with mode: 0644]
package/fuse/libfuse.mk [new file with mode: 0644]
package/fuse/patch/disable_symvers_22.patch [new file with mode: 0644]
package/ntfs-3g/Config.in [new file with mode: 0644]
package/ntfs-3g/ntfs-3g.mk [new file with mode: 0644]

index b0a42eeebe57719df4ee8bcb92b286e12a82239a..116eecd0a270bad657e76a56980d4c8215c497d1 100644 (file)
@@ -224,6 +224,7 @@ source "package/dbus-glib/Config.in"
 source "package/dm/Config.in"
 source "package/dmraid/Config.in"
 source "package/e2fsprogs/Config.in"
+source "package/fuse/Config.in"
 source "package/gadgetfs-test/Config.in"
 source "package/hal/Config.in"
 if !BR2_PACKAGE_BUSYBOX_HIDE_OTHERS
@@ -241,6 +242,7 @@ source "package/mdadm/Config.in"
 source "package/memtester/Config.in"
 source "package/mkdosfs/Config.in"
 source "package/mtd/Config.in"
+source "package/ntfs-3g/Config.in"
 source "package/pciutils/Config.in"
 source "package/pcmcia/Config.in"
 source "package/raidtools/Config.in"
diff --git a/package/fuse/Config.in b/package/fuse/Config.in
new file mode 100644 (file)
index 0000000..b3b245a
--- /dev/null
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_LIBFUSE
+        bool "libfuse"
+        default n
+        help
+         FUSE (Filesystem in UserSpacE)
+
+         http://fuse.sourceforge.net/
diff --git a/package/fuse/libfuse.mk b/package/fuse/libfuse.mk
new file mode 100644 (file)
index 0000000..4c24eb9
--- /dev/null
@@ -0,0 +1,83 @@
+#############################################################
+#
+# libfuse
+#
+#############################################################
+LIBFUSE_VERSION:=2.7.0
+LIBFUSE_SOURCE:=fuse-$(LIBFUSE_VERSION).tar.gz
+LIBFUSE_SITE:=http://downloads.sourceforge.net/fuse
+LIBFUSE_DIR:=$(BUILD_DIR)/fuse-$(LIBFUSE_VERSION)
+LIBFUSE_BINARY:=libfuse
+$(DL_DIR)/$(LIBFUSE_SOURCE):
+       $(WGET) -P $(DL_DIR) $(LIBFUSE_SITE)/$(LIBFUSE_SOURCE)
+
+$(LIBFUSE_DIR)/.source: $(DL_DIR)/$(LIBFUSE_SOURCE)
+       $(ZCAT) $(DL_DIR)/$(LIBFUSE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+       toolchain/patch-kernel.sh $(LIBFUSE_DIR) package/fuse/ patch/*.patch
+       touch $@
+
+
+$(LIBFUSE_DIR)/.configured: $(LIBFUSE_DIR)/.source
+       (cd $(LIBFUSE_DIR); rm -rf config.cache ; \
+       $(TARGET_CONFIGURE_OPTS) \
+       CFLAGS="$(TARGET_CFLAGS)" \
+               ./configure \
+               --target=$(GNU_TARGET_NAME) \
+               --host=$(GNU_TARGET_NAME) \
+               --build=$(GNU_HOST_NAME) \
+               --enable-shared \
+               --enable-static \
+               --program-prefix="" \
+               --disable-nls \
+               --disable-example \
+               --enable-kernel-module \
+               --enable-lib \
+               --enable-util \
+               --with-kernel="$(LINUX_DIR)" \
+       );
+       touch $@
+#              --disable-example
+#              --disable-mtab
+#              --disable-rpath
+
+$(LIBFUSE_DIR)/.compiled: $(LIBFUSE_DIR)/.configured
+       $(MAKE) CC=$(TARGET_CC) -C $(LIBFUSE_DIR)
+       touch $@
+#              CROSS_COMPILE="$(TARGET_CROSS)"
+#              AM_CFLAGS="$(TARGET_CFLAGS) -DDISABLE_COMPAT=1" \
+#              EXTRA_DIST=""
+
+
+$(STAGING_DIR)/usr/lib/libfuse.so: $(LIBFUSE_DIR)/.compiled
+       $(MAKE) prefix=$/usr -C $(LIBFUSE_DIR) DESTDIR=$(STAGING_DIR)/ install
+       touch -c $@
+
+$(TARGET_DIR)/usr/lib/libfuse.so: $(STAGING_DIR)/usr/lib/libfuse.so
+       mkdir -p $(TARGET_DIR)/usr/lib
+       mkdir -p $(TARGET_DIR)/usr/bin
+       cp -dpf $(STAGING_DIR)/usr/bin/fusermount $(TARGET_DIR)/usr/bin/
+       cp -dpf $(STAGING_DIR)/usr/lib/libfuse.so.* $(TARGET_DIR)/usr/lib/
+#      cp -dpf $(STAGING_DIR)/lib/modules/(uname-r)/kernel/fs/fuse/fuse.pc $(TARGET_DIR)/usr/lib/
+       touch -c $@
+
+libfuse: uclibc $(TARGET_DIR)/usr/lib/libfuse.so
+
+libfuse-source: $(DL_DIR)/$(LIBFUSE_SOURCE)
+
+libfuse-clean:
+       -$(MAKE) -C $(LIBFUSE_DIR) DESTDIR=$(STAGING_DIR) uninstall
+       -$(MAKE) -C $(LIBFUSE_DIR) clean
+       rm -f $(TARGET_DIR)/usr/lib/libfuse.so*
+
+libfuse-dirclean:
+       rm -rf $(LIBFUSE_DIR)
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_LIBFUSE)),y)
+TARGETS+=libfuse
+endif
diff --git a/package/fuse/patch/disable_symvers_22.patch b/package/fuse/patch/disable_symvers_22.patch
new file mode 100644 (file)
index 0000000..02efd32
--- /dev/null
@@ -0,0 +1,56 @@
+diff -urp fuse-2.7.0-orig/lib/fuse.c fuse-2.7.0/lib/fuse.c
+--- fuse-2.7.0-orig/lib/fuse.c 2007-07-02 14:33:08.000000000 +0300
++++ fuse-2.7.0/lib/fuse.c      2007-08-22 19:31:39.000000000 +0300
+@@ -3294,7 +3294,7 @@ __asm__(".symver fuse_process_cmd,__fuse
+ __asm__(".symver fuse_read_cmd,__fuse_read_cmd@");
+ __asm__(".symver fuse_set_getcontext_func,__fuse_set_getcontext_func@");
+ __asm__(".symver fuse_new_compat2,fuse_new@");
+-__asm__(".symver fuse_new_compat22,fuse_new@FUSE_2.2");
++//__asm__(".symver fuse_new_compat22,fuse_new@FUSE_2.2");
+ #endif /* __FreeBSD__ */
+diff -urp fuse-2.7.0-orig/lib/helper.c fuse-2.7.0/lib/helper.c
+--- fuse-2.7.0-orig/lib/helper.c       2007-07-02 14:32:17.000000000 +0300
++++ fuse-2.7.0/lib/helper.c    2007-08-22 19:32:40.000000000 +0300
+@@ -391,10 +391,10 @@ int fuse_mount_compat1(const char *mount
+ }
+ __asm__(".symver fuse_setup_compat2,__fuse_setup@");
+-__asm__(".symver fuse_setup_compat22,fuse_setup@FUSE_2.2");
++//__asm__(".symver fuse_setup_compat22,fuse_setup@FUSE_2.2");
+ __asm__(".symver fuse_teardown,__fuse_teardown@");
+ __asm__(".symver fuse_main_compat2,fuse_main@");
+-__asm__(".symver fuse_main_real_compat22,fuse_main_real@FUSE_2.2");
++//__asm__(".symver fuse_main_real_compat22,fuse_main_real@FUSE_2.2");
+ #endif /* __FreeBSD__ */
+@@ -428,6 +428,6 @@ int fuse_mount_compat25(const char *moun
+ }
+ __asm__(".symver fuse_setup_compat25,fuse_setup@FUSE_2.5");
+-__asm__(".symver fuse_teardown_compat22,fuse_teardown@FUSE_2.2");
++//__asm__(".symver fuse_teardown_compat22,fuse_teardown@FUSE_2.2");
+ __asm__(".symver fuse_main_real_compat25,fuse_main_real@FUSE_2.5");
+ __asm__(".symver fuse_mount_compat25,fuse_mount@FUSE_2.5");
+diff -urp fuse-2.7.0-orig/lib/mount_bsd.c fuse-2.7.0/lib/mount_bsd.c
+--- fuse-2.7.0-orig/lib/mount_bsd.c    2006-05-03 17:46:04.000000000 +0300
++++ fuse-2.7.0/lib/mount_bsd.c 2007-08-22 19:31:55.000000000 +0300
+@@ -360,4 +360,4 @@ int fuse_kern_mount(const char *mountpoi
+     return res;
+ }
+-__asm__(".symver fuse_unmount_compat22,fuse_unmount@FUSE_2.2");
++//__asm__(".symver fuse_unmount_compat22,fuse_unmount@FUSE_2.2");
+diff -urp fuse-2.7.0-orig/lib/mount.c fuse-2.7.0/lib/mount.c
+--- fuse-2.7.0-orig/lib/mount.c        2007-07-02 14:32:17.000000000 +0300
++++ fuse-2.7.0/lib/mount.c     2007-08-22 19:31:19.000000000 +0300
+@@ -579,5 +579,5 @@ int fuse_kern_mount(const char *mountpoi
+     return res;
+ }
+-__asm__(".symver fuse_mount_compat22,fuse_mount@FUSE_2.2");
+-__asm__(".symver fuse_unmount_compat22,fuse_unmount@FUSE_2.2");
++//__asm__(".symver fuse_mount_compat22,fuse_mount@FUSE_2.2");
++//__asm__(".symver fuse_unmount_compat22,fuse_unmount@FUSE_2.2");
diff --git a/package/ntfs-3g/Config.in b/package/ntfs-3g/Config.in
new file mode 100644 (file)
index 0000000..5cf006c
--- /dev/null
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_NTFS-3G
+        bool "ntfs-3g"
+        default n
+        help
+         The NTFS-3G driver is an open source, freely available read/write NTFS driver for Linux, FreeBSD, Mac OS X, NetBSD, and Haiku. It provides safe and fast handling of the Windows XP, Windows Server 2003, Windows 2000 and Windows Vista file systems. Most POSIX file system operations are supported, with the exception of full file ownership and access right support.
+
+         http://www.ntfs-3g.org/
diff --git a/package/ntfs-3g/ntfs-3g.mk b/package/ntfs-3g/ntfs-3g.mk
new file mode 100644 (file)
index 0000000..aa1435c
--- /dev/null
@@ -0,0 +1,82 @@
+#############################################################
+#
+# ntfs-3g
+#
+#############################################################
+NTFS-3G_VERSION:=1.810
+NTFS-3G_SOURCE:=ntfs-3g-$(NTFS-3G_VERSION).tgz
+NTFS-3G_SITE:=www.ntfs-3g.org
+NTFS-3G_DIR:=$(BUILD_DIR)/ntfs-3g-$(NTFS-3G_VERSION)
+NTFS-3G_BINARY:=ntfs-3g
+
+
+$(DL_DIR)/$(NTFS-3G_SOURCE):
+       $(WGET) -P $(DL_DIR) $(NTFS-3G_SITE)/$(NTFS-3G_SOURCE)
+
+$(NTFS-3G_DIR)/.source: $(DL_DIR)/$(NTFS-3G_SOURCE)
+       $(ZCAT) $(DL_DIR)/$(NTFS-3G_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+       touch $@
+
+$(NTFS-3G_DIR)/.configured: $(NTFS-3G_DIR)/.source
+       (cd $(NTFS-3G_DIR); rm -rf config.cache ; \
+       $(TARGET_CONFIGURE_OPTS) \
+       CFLAGS="$(TARGET_CFLAGS)" \
+               ./configure \
+               --target=$(GNU_TARGET_NAME) \
+               --host=$(GNU_TARGET_NAME) \
+               --build=$(GNU_HOST_NAME) \
+               --prefix=/usr \
+               --libdir=/usr/lib \
+               --bindir=/usr/bin \
+               --sbindir=/usr/sbin \
+               --libexecdir=/usr/lib \
+               --sysconfdir=/etc \
+               --datadir=/usr/share \
+               --localstatedir=/var \
+               --includedir=/usr/include \
+               --program-prefix="" \
+               --with-gnu-ld \
+               --enable-shared \
+               --enable-static \
+               , \
+               ac_cv_path_LDCONFIG=""\
+       );
+       touch $@
+$(NTFS-3G_DIR)/.compiled: $(NTFS-3G_DIR)/.configured
+       $(MAKE) prefix=$/usr CC=$(TARGET_CC)-C $(NTFS-3G_DIR)
+       touch $@
+#              CROSS_COMPILE="$(TARGET_CROSS)"
+
+
+$(STAGING_DIR)/usr/bin/ntfs-3g: $(NTFS-3G_DIR)/.compiled
+       $(MAKE) prefix=$/usr -C $(NTFS-3G_DIR) DESTDIR=$(STAGING_DIR)/ install
+       touch -c $@
+
+$(TARGET_DIR)/usr/bin/ntfs-3g: $(STAGING_DIR)/usr/bin/ntfs-3g
+       cp -dpf $(STAGING_DIR)/usr/lib/libntfs-3g.so.* $(TARGET_DIR)/usr/lib/
+       cp -dpf $(STAGING_DIR)/usr/bin/ntfs-3g $(TARGET_DIR)/usr/bin/
+       touch -c $@
+
+ntfs-3g: uclibc pkgconfig libfuse $(TARGET_DIR)/usr/bin/ntfs-3g
+
+ntfs-3g-source: $(DL_DIR)/$(NTFS-3G_SOURCE)
+
+ntfs-3g-clean:
+       $(MAKE) prefix=$(STAGING_DIR)/usr -C $(NTFS-3G_DIR) uninstall
+       rm -f $(TARGET_DIR)/usr/lib/libntfs-3g*
+       rm -f $(TARGET_DIR)/usr/bin/ntfs-3g
+       -$(MAKE) -C $(NTFS-3G_DIR) clean
+
+ntfs-3g-dirclean:
+       rm -rf $(NTFS-3G_DIR)
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+#ifeq ($(strip $(BR2_PACKAGE_NTFS-3G)),y)
+TARGETS+=ntfs-3g
+#endif