2 # Copyright (C) 2007-2014 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR)/rules.mk
14 PKG_SOURCE_URL:=http://ftp.samba.org/pub/samba \
15 http://ftp.samba.org/pub/samba/stable
16 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
17 PKG_MD5SUM:=76da2fa64edd94a0188531e7ecb27c4e
20 PKG_LICENSE_FILES:=COPYING
22 PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
26 include $(INCLUDE_DIR)/package.mk
29 CONFIGURE_PATH:=source3
31 PKG_BUILD_BIN:=$(PKG_BUILD_DIR)/$(MAKE_PATH)/bin
33 define Package/samba36-server
36 TITLE:=Samba 3.6 SMB/CIFS server
37 URL:=http://www.samba.org/
38 DEPENDS:=+USE_GLIBC:librt $(ICONV_DEPENDS)
41 define Package/samba36-client
44 TITLE:=Samba 3.6 SMB/CIFS client
45 URL:=http://www.samba.org/
46 DEPENDS:=+libreadline +libncurses
49 define Package/samba36-server/config
50 config PACKAGE_SAMBA_MAX_DEBUG_LEVEL
51 int "Maximum level of compiled-in debug messages"
52 depends on PACKAGE_samba36-server || PACKAGE_samba36-client
57 define Package/samba36-server/description
58 The Samba software suite is a collection of programs that implements the
59 SMB protocol for UNIX systems, allowing you to serve files and printers to
60 Windows, NT, OS/2 and DOS clients. This protocol is sometimes also referred
61 to as the LanManager or Netbios protocol.
64 TARGET_CFLAGS += -DMAX_DEBUG_LEVEL=$(CONFIG_PACKAGE_SAMBA_MAX_DEBUG_LEVEL) -D__location__=\\\"\\\" -ffunction-sections -fdata-sections
65 TARGET_LDFLAGS += -Wl,--gc-sections
68 ac_cv_lib_attr_getxattr=no \
69 ac_cv_search_getxattr=no \
70 ac_cv_file__proc_sys_kernel_core_pattern=yes \
71 libreplace_cv_HAVE_C99_VSNPRINTF=yes \
72 libreplace_cv_HAVE_GETADDRINFO=yes \
73 libreplace_cv_HAVE_IFACE_IFCONF=yes \
74 LINUX_LFS_SUPPORT=yes \
75 samba_cv_CC_NEGATIVE_ENUM_VALUES=yes \
76 samba_cv_HAVE_GETTIMEOFDAY_TZ=yes \
77 samba_cv_HAVE_IFACE_IFCONF=yes \
78 samba_cv_HAVE_KERNEL_OPLOCKS_LINUX=yes \
79 samba_cv_HAVE_SECURE_MKSTEMP=yes \
80 samba_cv_HAVE_WRFILE_KEYTAB=no \
81 samba_cv_USE_SETREUID=yes \
82 samba_cv_USE_SETRESUID=yes \
83 samba_cv_have_setreuid=yes \
84 samba_cv_have_setresuid=yes \
85 ac_cv_header_zlib_h=no \
86 samba_cv_zlib_1_2_3=no \
87 ac_cv_path_PYTHON="" \
88 ac_cv_path_PYTHON_CONFIG=""
99 --disable-shared-libs \
100 --with-libiconv="$(ICONV_PREFIX)" \
101 --with-codepagedir=/etc/samba \
102 --with-configdir=/etc/samba \
103 --with-included-iniparser \
104 --with-included-popt \
105 --with-lockdir=/var/lock \
106 --with-logfilebase=/var/log \
107 --with-nmbdsocketdir=/var/nmbd \
108 --with-piddir=/var/run \
109 --with-privatedir=/etc/samba \
110 --with-sendfile-support \
111 --without-acl-support \
112 --without-cluster-support \
119 --without-libtalloc \
120 --without-libnetapi \
121 --without-libsmbclient \
122 --without-libsmbsharemodes \
123 --without-libtevent \
125 --with-shared-modules=pdb_tdbsam,pdb_wbc_sam,idmap_nss,nss_info_template,auth_winbind,auth_wbc,auth_domain
127 MAKE_FLAGS += DYNEXP= PICFLAG= MODULES=
129 define Package/samba36-server/conffiles
131 /etc/samba/smb.conf.template
135 define Package/samba36-server/install
136 $(INSTALL_DIR) $(1)/etc/config
137 $(INSTALL_CONF) ./files/samba.config $(1)/etc/config/samba
138 $(INSTALL_DIR) $(1)/etc/samba
139 $(INSTALL_DATA) ./files/smb.conf.template $(1)/etc/samba
140 $(INSTALL_DATA) $(PKG_BUILD_DIR)/codepages/lowcase.dat $(1)/etc/samba
141 $(INSTALL_DATA) $(PKG_BUILD_DIR)/codepages/upcase.dat $(1)/etc/samba
142 $(INSTALL_DATA) $(PKG_BUILD_DIR)/codepages/valid.dat $(1)/etc/samba
143 $(INSTALL_DIR) $(1)/etc/init.d
144 $(INSTALL_BIN) ./files/samba.init $(1)/etc/init.d/samba
145 $(INSTALL_DIR) $(1)/usr/sbin
146 $(INSTALL_BIN) $(PKG_BUILD_BIN)/samba_multicall $(1)/usr/sbin
147 $(LN) samba_multicall $(1)/usr/sbin/smbd
148 $(LN) samba_multicall $(1)/usr/sbin/nmbd
149 $(LN) samba_multicall $(1)/usr/sbin/smbpasswd
152 define Package/samba36-client/install
153 $(INSTALL_DIR) $(1)/usr/sbin
154 $(INSTALL_BIN) $(PKG_BUILD_BIN)/smbclient $(1)/usr/sbin
155 $(INSTALL_BIN) $(PKG_BUILD_BIN)/nmblookup $(1)/usr/sbin
158 $(eval $(call BuildPackage,samba36-client))
159 $(eval $(call BuildPackage,samba36-server))