aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Sven Neumann <s.neumann@raumfeld.com>2009-09-21 23:26:51 +0200
committerGravatar Peter Korsgaard <jacmet@sunsite.dk>2009-09-21 23:26:51 +0200
commit1d9178db29be6eeeccf437949013d50d5241e4f1 (patch)
tree96f96602853bbc72c1e8bdc1be2c2e8b298267d8
parent5fda7023ff87c3103f4eb52b4205fb2549e17423 (diff)
downloadbuildroot-1d9178db29be6eeeccf437949013d50d5241e4f1.tar.gz
buildroot-1d9178db29be6eeeccf437949013d50d5241e4f1.tar.bz2
samba: add option to install libsmbclient
Closes #301 The libsmbclient library is part of the samba package. It can be used to build applications that access Samba shares without the need to mount them. Currently the library is explicitly not installed by buildroot. Here's a patch that adds a config option to install it. Signed-off-by: Sven Neumann <s.neumann@raumfeld.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-rw-r--r--CHANGES1
-rw-r--r--package/samba/Config.in9
-rw-r--r--package/samba/samba.mk17
3 files changed, 25 insertions, 2 deletions
diff --git a/CHANGES b/CHANGES
index ce09610979..e0b572026e 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,7 @@
Issues resolved (http://bugs.uclibc.org):
+ #301: allow to install libsmbclient
#477: Add sdl_sound package
#487: Make kismet package sexier
#527: misc fixes for dnsmasq package
diff --git a/package/samba/Config.in b/package/samba/Config.in
index 40161b6e3f..cb4c4f62dd 100644
--- a/package/samba/Config.in
+++ b/package/samba/Config.in
@@ -40,6 +40,15 @@ config BR2_PACKAGE_SAMBA_FINDSMB
comment "findsmb - disabled (requires nmblookup, smbclient and perl)"
depends on !BR2_PACKAGE_SAMBA_SMBCLIENT || !BR2_PACKAGE_SAMBA_NMBLOOKUP || !BR2_PACKAGE_MICROPERL
+config BR2_PACKAGE_SAMBA_LIBSMBCLIENT
+ bool "libsmbclient"
+ depends on BR2_PACKAGE_SAMBA
+ help
+ libsmbclient is a library toolset that permits applications
+ to manipulate CIFS/SMB network resources using many of the
+ standards POSIX functions available for manipulating local
+ files.
+
config BR2_PACKAGE_SAMBA_NET
bool "net"
default y
diff --git a/package/samba/samba.mk b/package/samba/samba.mk
index 82bf152e23..c4ecebf2d6 100644
--- a/package/samba/samba.mk
+++ b/package/samba/samba.mk
@@ -11,6 +11,14 @@ SAMBA_CAT:=$(ZCAT)
SAMBA_BINARY:=bin/smbd
SAMBA_TARGET_BINARY:=usr/sbin/smbd
+ifeq ($(BR2_PACKAGE_SAMBA_LIBSMBCLIENT),y)
+SAMBA_LIBSMBCLIENT := libsmbclient
+SAMBA_CONF_OPTIONS := --enable-libsmbclient
+else
+SAMBA_LIBSMBCLIENT :=
+SAMBA_CONF_OPTIONS := --disable-libsmbclient
+endif
+
$(DL_DIR)/$(SAMBA_SOURCE):
$(call DOWNLOAD,$(SAMBA_SITE),$(SAMBA_SOURCE))
@@ -58,6 +66,7 @@ $(SAMBA_DIR)/.configured: $(SAMBA_DIR)/.unpacked
--disable-static \
--disable-cups \
$(DISABLE_LARGEFILE) \
+ $(SAMBA_CONF_OPTIONS) \
)
touch $@
@@ -112,7 +121,6 @@ $(TARGET_DIR)/$(SAMBA_TARGET_BINARY): $(SAMBA_DIR)/$(SAMBA_BINARY)
rm -f $(addprefix $(TARGET_DIR)/usr/bin/ldb, add del edit modify search)
# Remove not used library by Samba binaries
rm -f $(TARGET_DIR)/usr/lib/libnetapi*
- rm -f $(TARGET_DIR)/usr/lib/libsmbclient*
rm -f $(TARGET_DIR)/usr/lib/libtalloc*
rm -f $(TARGET_DIR)/usr/lib/libtdb*
# Remove not wanted Samba binaries
@@ -134,7 +142,12 @@ endif
rm -rf $(TARGET_DIR)/var/cache/samba
rm -rf $(TARGET_DIR)/var/lib/samba
-samba: libiconv $(TARGET_DIR)/$(SAMBA_TARGET_BINARY)
+libsmbclient: $(SAMBA_DIR)/bin/libsmbclient.so
+ $(MAKE) $(TARGET_CONFIGURE_OPTS) \
+ DESTDIR="$(STAGING_DIR)" \
+ -C $(SAMBA_DIR) installlibs
+
+samba: libiconv $(TARGET_DIR)/$(SAMBA_TARGET_BINARY) $(SAMBA_LIBSMBCLIENT)
samba-source: $(DL_DIR)/$(SAMBA_SOURCE)