b4c64e37fd9b9cfbcc98fb524bda9cbd11df15af
[packages.git] / net / nfs-kernel-server / Makefile
1 # Copyright (C) 2009 OpenWrt.org
2 #
3 # This is free software, licensed under the GNU General Public License v2.
4 # See /LICENSE for more information.
5 #
6
7 include $(TOPDIR)/rules.mk
8
9 PKG_NAME:=nfs-kernel-server
10 PKG_VERSION:=1.2.9
11 PKG_RELEASE:=1
12 PKG_MD5SUM:=18869d16db3f49c053f8c68eba3fe2e0
13
14 PKG_SOURCE_URL:=@SF/nfs
15 PKG_SOURCE:=nfs-utils-$(PKG_VERSION).tar.bz2
16
17 HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/nfs-utils-$(PKG_VERSION)
18 PKG_BUILD_DIR:=$(BUILD_DIR)/nfs-utils-$(PKG_VERSION)
19 PKG_INSTALL:=1
20 PKG_BUILD_PARALLEL:=1
21 PKG_BUILD_DEPENDS:=$(PKG_NAME)/host
22
23 include $(INCLUDE_DIR)/host-build.mk
24 include $(INCLUDE_DIR)/package.mk
25
26 define Package/nfs-kernel-server/Default
27   SECTION:=net
28   CATEGORY:=Network
29   SUBMENU:=Filesystem
30   DEPENDS:=+libwrap +libblkid +libuuid $(LIBRPC_DEPENDS)
31   URL:=http://nfs.sourceforge.net/
32 endef
33
34 define Package/nfs-kernel-server
35   $(call Package/nfs-kernel-server/Default)
36   TITLE:=Kernel NFS server support
37   DEPENDS+= +kmod-fs-nfsd +kmod-fs-nfs +portmap
38 endef
39
40 define Package/nfs-kernel-server/description
41   Kernel NFS server support
42 endef
43
44 define Package/nfs-kernel-server-utils
45   $(call Package/nfs-kernel-server/Default)
46   TITLE:=NFS server utils
47   DEPENDS:=nfs-kernel-server
48 endef
49
50 define Package/nfs-kernel-server-utils/description
51   NFS server utils
52 endef
53
54 define Package/nfs-kernel-server/conffiles
55 /etc/exports
56 endef
57
58 define Package/nfs-utils
59   $(call Package/nfs-kernel-server/Default)
60   SECTION:=utils
61   CATEGORY:=Utilities
62   DEPENDS+= +libevent +USE_UCLIBC:librpc
63   TITLE:=updated mount utility (includes nfs4)
64 endef
65
66 define Package/nfs-utils/description
67   Updated mount.nfs command - allows mounting nfs4 volumes
68 endef
69
70 TARGET_CFLAGS += -I$(PKG_BUILD_DIR)/lib -I$(STAGING_DIR)/usr/include/libevent \
71                  -I$(STAGING_DIR)/usr/include/ -Drpc_uint=uint
72 TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib $(LIBRPC) \
73                   -L$(STAGING_DIR)/usr/lib/libevent
74
75 CONFIGURE_ARGS += \
76         --disable-gss \
77         --disable-nfsv4 \
78         --disable-nfsv41 \
79         --enable-static \
80         --enable-shared \
81         --disable-caps \
82         --disable-tirpc \
83         --disable-nfsdcld
84
85 CONFIGURE_VARS += \
86         CONFIG_SQLITE3_TRUE="\#" \
87         CONFIG_NFSDCLD_TRUE="\#"
88
89 MAKE_FLAGS += \
90         OPT="$(TARGET_CFLAGS)" \
91         INSTALLSUID="install -m 4755" \
92         DESTDIR="$(PKG_INSTALL_DIR)" \
93         RPCGEN_PATH=$(STAGING_DIR_HOST)/bin/rpcgen \
94         RPCGEN=$(STAGING_DIR_HOST)/bin/rpcgen
95
96 HOST_CFLAGS += -Dlinux
97
98 HOST_CONFIGURE_ARGS += \
99         --disable-gss \
100         --disable-nfsv4 \
101         --disable-nfsv41 \
102         --without-tcp-wrappers
103
104 HOST_CONFIGURE_VARS += \
105         ac_cv_lib_event_event_dispatch=yes \
106         ac_cv_lib_nfsidmap_nfs4_init_name_mapping=yes \
107         ac_cv_lib_blkid_blkid_get_library_version=yes \
108         ac_cv_header_event_h=yes \
109         ac_cv_header_nfsidmap_h=yes \
110         ac_cv_header_blkid_blkid_h=yes \
111         GSSGLUE_CFLAGS=" " \
112         GSSGLUE_LIBS=" " \
113         RPCSECGSS_CFLAGS=" " \
114         RPCSECGSS_LIBS=" " \
115         CONFIG_SQLITE3_TRUE="\#" \
116         CONFIG_NFSDCLD_TRUE="\#"
117
118 define Host/Compile
119         $(MAKE) -C $(HOST_BUILD_DIR)/tools/rpcgen all
120 endef
121
122 define Host/Install
123         $(INSTALL_BIN) $(HOST_BUILD_DIR)/tools/rpcgen/rpcgen $(STAGING_DIR_HOST)/bin/rpcgen
124 endef
125
126 define Package/nfs-kernel-server/install
127         $(INSTALL_DIR) $(1)/etc/init.d $(1)/usr/sbin
128         $(INSTALL_DATA) ./files/nfsd.exports $(1)/etc/exports
129         $(INSTALL_BIN) ./files/nfsd.init $(1)/etc/init.d/nfsd
130         $(INSTALL_BIN) $(PKG_BUILD_DIR)/utils/statd/sm-notify $(1)/usr/sbin/
131         $(INSTALL_BIN) $(PKG_BUILD_DIR)/utils/statd/statd $(1)/usr/sbin/rpc.statd
132         $(INSTALL_BIN) $(PKG_BUILD_DIR)/utils/nfsd/nfsd $(1)/usr/sbin/rpc.nfsd
133         $(INSTALL_BIN) $(PKG_BUILD_DIR)/utils/mountd/mountd $(1)/usr/sbin/rpc.mountd
134         $(INSTALL_BIN) $(PKG_BUILD_DIR)/utils/exportfs/exportfs $(1)/usr/sbin/
135 endef
136
137 define Package/nfs-kernel-server-utils/install
138         $(INSTALL_DIR) $(1)/usr/sbin
139         $(INSTALL_BIN) $(PKG_BUILD_DIR)/utils/showmount/showmount $(1)/usr/sbin
140         $(INSTALL_BIN) $(PKG_BUILD_DIR)/utils/nfsstat/nfsstat $(1)/usr/sbin
141 endef
142
143 define Package/nfs-utils/install
144         $(INSTALL_DIR) $(1)/sbin
145         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/mount.nfs $(1)/sbin/
146         (cd $(1)/sbin; ln -sf mount.nfs mount.nfs4; ln -sf mount.nfs umount.nfs; ln -sf mount.nfs umount.nfs4)
147 endef
148
149 $(eval $(call HostBuild))
150 $(eval $(call BuildPackage,nfs-kernel-server))
151 $(eval $(call BuildPackage,nfs-kernel-server-utils))
152 $(eval $(call BuildPackage,nfs-utils))