summaryrefslogtreecommitdiff
path: root/patches/non-linux-ports.patch
blob: b290dafaadbd9f6e15a0e2bb692e34abbed635fa (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
Goal: Support non Linux ports

Fixes: 266693

Status wrt upstream: Forwarded, will be in 3.0.26

Note: Upstream would probably welcome patches allowing to build on new architectures. 
      As this patch is the most often broken by new upstream releases, everybody would benefit from it.

Index: samba-3.0.27a/source/configure.in
===================================================================
--- samba-3.0.27a.orig/source/configure.in
+++ samba-3.0.27a/source/configure.in
@@ -769,6 +769,15 @@
       fi
     ;;
 
+# Systems with LFS support.
+#
+    gnu* | k*bsd*-gnu)
+	CPPFLAGS="-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE $CPPFLAGS"
+	AC_DEFINE(_LARGEFILE64_SOURCE, 1, [Whether to enable large file support])
+	AC_DEFINE(_FILE_OFFSET_BITS, 64, [File offset bits])
+	AC_DEFINE(_GNU_SOURCE, 1, [Whether to use GNU libc extensions])
+	;;
+
 # Tests for linux LFS support. Need kernel 2.4 and glibc2.2 or greater support.
 #
     *linux*)
@@ -1391,7 +1400,7 @@
 #
 #
 case "$host_os" in
-    *linux*)
+    linux*-gnu* | gnu* | k*bsd*-gnu)
        # glibc <= 2.3.2 has a broken getgrouplist
        AC_TRY_RUN([
 #include <unistd.h>
@@ -1700,7 +1709,10 @@
 
   # and these are for particular systems
   case "$host_os" in
-		*linux*)   AC_DEFINE(LINUX,1,[Whether the host os is linux])
+		linux*-gnu* | gnu* | k*bsd*-gnu)
+			case "$host_os" in linux*)
+				AC_DEFINE(LINUX,1,[Whether the host os is linux]) ;;
+			esac
 			BLDSHARED="true"
 			if test "${ac_cv_gnu_ld_no_default_allow_shlib_undefined}" = "yes"; then
 				LDSHFLAGS="-shared -Wl,-Bsymbolic -Wl,--allow-shlib-undefined"
@@ -5428,7 +5440,7 @@
 	AC_MSG_RESULT(yes);
 
 	case "$host_os" in
-	*linux*)
+	linux*-gnu* | gnu* | k*bsd*-gnu)
 		AC_CACHE_CHECK([for linux sendfile64 support],samba_cv_HAVE_SENDFILE64,[
 		AC_TRY_LINK([#include <sys/sendfile.h>],
 [\
@@ -5733,11 +5745,11 @@
 SMB_KRB5_LOCATOR="bin/smb_krb5_locator.$SHLIBEXT"
 
 case "$host_os" in
-	*linux*)
+	linux*-gnu* | gnu* | k*bsd*-gnu)
 		NSSSONAMEVERSIONSUFFIX=".2"
 		WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_linux.o"
 		;;
-	*freebsd[[5-9]]*)
+	freebsd5*|*freebsd[[6-9]]*)
 		# FreeBSD winbind client is implemented as a wrapper around
 		# the Linux version.
 		NSSSONAMEVERSIONSUFFIX=".1"