Makefile 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. #
  2. # Copyright (C) 2006 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. # $Id$
  8. include $(TOPDIR)/rules.mk
  9. include $(INCLUDE_DIR)/kernel.mk
  10. PKG_NAME:=fuse
  11. PKG_VERSION:=2.6.3
  12. PKG_RELEASE:=1
  13. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  14. PKG_SOURCE_URL:=@SF/$(PKG_NAME)
  15. PKG_MD5SUM:=3f4f5d07d12dedc0a3fd23472171fe94
  16. include $(INCLUDE_DIR)/package.mk
  17. define Package/fuse/Default
  18. TITLE:=FUSE
  19. DEPENDS:=@LINUX_2_6
  20. DESCRIPTION:=\
  21. FUSE (Filesystem in UserSpacE)
  22. URL:=http://fuse.sourceforge.net/
  23. endef
  24. define Package/fuse-utils
  25. $(call Package/fuse/Default)
  26. SECTION:=utils
  27. CATEGORY:=Utilities
  28. DEPENDS:=+libfuse +kmod-fuse @LINUX_2_6
  29. TITLE+= (utilities)
  30. DESCRIPTION+=\\\
  31. \\\
  32. This package contains the FUSE utilities.
  33. endef
  34. define KernelPackage/fuse
  35. SUBMENU:=Filesystems
  36. $(call Package/fuse/Default)
  37. DEPENDS:=@LINUX_2_6
  38. TITLE+= (kernel module)
  39. DESCRIPTION+=\\\
  40. \\\
  41. This package contains the FUSE kernel module.
  42. FILES:=$(PKG_INSTALL_DIR)/lib/modules/$(LINUX_VERSION)/kernel/fs/fuse/fuse.$(LINUX_KMOD_SUFFIX)
  43. VERSION:=$(LINUX_VERSION)+$(PKG_VERSION)-$(BOARD)-$(PKG_RELEASE)
  44. AUTOLOAD:=$(call AutoLoad,80,fuse)
  45. endef
  46. define Package/libfuse
  47. $(call Package/fuse/Default)
  48. SECTION:=libs
  49. CATEGORY:=Libraries
  50. DEPENDS:=@LINUX_2_6
  51. TITLE+= (library)
  52. DESCRIPTION+=\\\
  53. \\\
  54. This package contains the FUSE shared library, needed by other programs.
  55. endef
  56. CONFIGURE_ARGS += \
  57. --enable-shared \
  58. --enable-static \
  59. --disable-rpath \
  60. --enable-kernel-module \
  61. --enable-lib \
  62. --enable-util \
  63. --disable-example \
  64. --disable-auto-modprobe \
  65. --with-kernel="$(LINUX_DIR)" \
  66. --disable-mtab
  67. define Build/Configure
  68. (cd $(PKG_BUILD_DIR); rm -f config.cache; \
  69. touch configure.in ; \
  70. touch aclocal.m4 ; \
  71. touch Makefile.in ; \
  72. touch include/config.h.in ; \
  73. touch configure ; \
  74. )
  75. $(call Build/Configure/Default)
  76. endef
  77. define Build/Compile
  78. $(MAKE) -C $(PKG_BUILD_DIR) \
  79. ARCH="$(LINUX_KARCH)" \
  80. CROSS_COMPILE="$(TARGET_CROSS)" \
  81. DESTDIR="$(PKG_INSTALL_DIR)" \
  82. AM_CFLAGS="$(TARGET_CFLAGS) -DDISABLE_COMPAT=1" \
  83. EXTRA_DIST="" \
  84. all install
  85. endef
  86. define Build/InstallDev
  87. mkdir -p $(STAGING_DIR)/usr/include
  88. $(CP) $(PKG_INSTALL_DIR)/usr/include/fuse{,.h} $(STAGING_DIR)/usr/include/
  89. mkdir -p $(STAGING_DIR)/usr/lib
  90. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfuse.{a,so*} $(STAGING_DIR)/usr/lib/
  91. mkdir -p $(STAGING_DIR)/usr/lib/pkgconfig
  92. $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/fuse.pc $(STAGING_DIR)/usr/lib/pkgconfig/
  93. $(SED) 's,-I$$$${includedir}/fuse,,g' $(STAGING_DIR)/usr/lib/pkgconfig/fuse.pc
  94. $(SED) 's,-L$$$${libdir},,g' $(STAGING_DIR)/usr/lib/pkgconfig/fuse.pc
  95. endef
  96. define Build/UninstallDev
  97. rm -rf $(STAGING_DIR)/usr/include/fuse{,.h} \
  98. $(STAGING_DIR)/usr/lib/libfuse.{a,so*} \
  99. $(STAGING_DIR)/usr/lib/pkgconfig/fuse.pc
  100. endef
  101. define Package/fuse-utils/install
  102. $(INSTALL_DIR) $(1)/usr/bin
  103. $(CP) $(PKG_INSTALL_DIR)/usr/bin/fusermount $(1)/usr/bin/
  104. endef
  105. define Package/libfuse/install
  106. $(INSTALL_DIR) $(1)/usr/lib
  107. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfuse.so.* $(1)/usr/lib/
  108. endef
  109. $(eval $(call BuildPackage,fuse-utils))
  110. $(eval $(call BuildPackage,libfuse))
  111. $(eval $(call KernelPackage,fuse))