blob: 2161a13832a847c5d9a49b0f2b9b94d5bbe045f0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
include ../../Makefile.include
DEPS= ../../Makefile.include Makefile samba30-3.0.37-configure.in.patch \
samba30-3.0.37-CVE-2010-2063.patch \
samba30-3.0.37-silence-receive-warning.patch \
samba30-3.0.37-vfs_default.c.patch samba30-3.0.37-wle-fix.patch \
samba_android.patch
# lib name, version
LIBNAME=samba
VERSION=3.0.37
SOURCE=$(LIBNAME)-$(VERSION)
ARCHIVE=$(SOURCE).tar.gz
# configuration settings
# android does not really support LFS but we can force it
# in libsmbclient by defining off_t to off64_t and changing
# libsmbclient.h to match. Defining _OFF_T_DEFINED_ allows
# us to change the typedef of off_t in android's sys/type.h.
# Then xbmc will correctly access smb shares with LFS enabled
# using the altered libsmbclient.h.
ifeq ($(OS),android)
export CFLAGS+=-D_FILE_OFFSET_BITS=64 -D_OFF_T_DEFINED_ -Doff_t=off64_t -Dlseek=lseek64
ANDROID_OFF_T_FIX=sed -ie "s|off_t|off64_t|g" "$(PLATFORM)/source/include/libsmbclient.h"
endif
CONFIGURE= cp -f $(CONFIG_SUB) $(CONFIG_GUESS) .; \
./configure --prefix=$(PREFIX) \
--disable-cups \
--enable-static \
--disable-shared \
--disable-pie \
--disable-iprint \
--disable-fam \
--without-cluster-support \
--without-cifsupcall \
--without-ads \
--without-ldap \
--with-included-popt \
--with-included-iniparser \
--without-sys-quotas \
--without-krb5 \
--without-automount \
--without-sendfile-support \
--with-libiconv=$(STAGING_DIR) \
--without-cifsmount \
--without-winbind \
LIBDYLIB=$(PLATFORM)/source/bin/libsmbclient.a
all: .installed-$(PLATFORM)
$(TARBALLS_LOCATION)/$(ARCHIVE):
cd $(TARBALLS_LOCATION); $(RETRIEVE_TOOL) $(RETRIEVE_TOOL_FLAGS) $(BASE_URL)/$(ARCHIVE)
$(PLATFORM): $(TARBALLS_LOCATION)/$(ARCHIVE) $(DEPS)
rm -rf $(PLATFORM); mkdir -p $(PLATFORM)
cd $(PLATFORM); $(ARCHIVE_TOOL) $(ARCHIVE_TOOL_FLAGS) $(TARBALLS_LOCATION)/$(ARCHIVE)
cd $(PLATFORM); patch -p1 < ../samba30-3.0.37-configure.in.patch
cd $(PLATFORM); patch -p1 < ../samba30-3.0.37-CVE-2010-2063.patch
cd $(PLATFORM); patch -p1 < ../samba30-3.0.37-silence-receive-warning.patch
cd $(PLATFORM); patch -p1 < ../samba30-3.0.37-vfs_default.c.patch
cd $(PLATFORM); patch -p1 < ../samba30-3.0.37-wle-fix.patch
cd $(PLATFORM); patch -p0 < ../samba_android.patch
$(ANDROID_OFF_T_FIX)
cd $(PLATFORM)/source && ./autogen.sh
cd $(PLATFORM)/source; $(CONFIGURE)
$(LIBDYLIB): $(PLATFORM)
$(MAKE) -C $(PLATFORM)/source headers
mkdir -p $(PLATFORM)/source/bin
$(MAKE) -C $(PLATFORM)/source libsmbclient
.installed-$(PLATFORM): $(LIBDYLIB)
$(MAKE) -C $(PLATFORM)/source installclientlib
touch $@
clean:
$(MAKE) -C $(PLATFORM)/source clean
rm -f .installed-$(PLATFORM)
distclean::
rm -rf $(PLATFORM) .installed-$(PLATFORM)
|