samba-ads: Add 3.3.0 and centralise common stuff from 3.2.7 into an include. Also...
authorTim 'timtim' Ellis <tim.ellis@foonas.org>
Sun, 1 Feb 2009 00:35:33 +0000 (00:35 +0000)
committerTim 'timtim' Ellis <tim.ellis@foonas.org>
Sun, 1 Feb 2009 00:35:33 +0000 (00:35 +0000)
packages/samba/files/configure-3.3.0.patch [new file with mode: 0644]
packages/samba/samba-ads.inc
packages/samba/samba-ads_3.2.7.bb
packages/samba/samba-ads_3.3.0.bb [new file with mode: 0644]

diff --git a/packages/samba/files/configure-3.3.0.patch b/packages/samba/files/configure-3.3.0.patch
new file mode 100644 (file)
index 0000000..19fb986
--- /dev/null
@@ -0,0 +1,85 @@
+diff -urN source.old//configure source//configure
+--- source.old//configure      2009-01-27 07:53:11.000000000 +0000
++++ source//configure  2009-01-31 21:07:25.811887936 +0000
+@@ -43860,13 +43860,7 @@
+     *linux*)
+        # glibc <= 2.3.2 has a broken getgrouplist
+        if test "$cross_compiling" = yes; then
+-  { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+-{ { $as_echo "$as_me:$LINENO: error: cannot run test program while cross compiling
+-See \`config.log' for more details." >&5
+-$as_echo "$as_me: error: cannot run test program while cross compiling
+-See \`config.log' for more details." >&2;}
+-   { (exit 1); exit 1; }; }; }
++linux_getgrouplist_ok=no
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
+diff -urN source.old//configure.in source//configure.in
+--- source.old//configure.in   2009-01-26 13:56:34.000000000 +0000
++++ source//configure.in       2009-01-31 21:04:39.051889949 +0000
+@@ -280,6 +280,8 @@
+ fi
+ AC_SUBST(BROKEN_CC)
++AC_TRY_COMPILE([],[(void)sizeof(char[-1])],AC_MSG_ERROR([configure's compilation assert doesn't work with $CC]))
++
+ dnl Check if the C compiler understands -Werror
+ AC_CACHE_CHECK([that the C compiler understands -Werror],samba_cv_HAVE_Werror, [
+  AC_TRY_RUN_STRICT([
+@@ -330,25 +332,11 @@
+ # a runtime test is needed here
+ AC_SUBST(PIDL_ARGS)
+ AC_CACHE_CHECK([that the C compiler understands negative enum values],samba_cv_CC_NEGATIVE_ENUM_VALUES, [
+-    AC_TRY_RUN(
++    AC_TRY_COMPILE([],
+ [
+-      #include <stdio.h>
+       enum negative_values { NEGATIVE_VALUE = 0xFFFFFFFF };
+-      int main(void) {
+-              enum negative_values v1 = NEGATIVE_VALUE;
+-              unsigned v2 = NEGATIVE_VALUE;
+-
+-              if (v1 != 0xFFFFFFFF) {
+-                      printf("%u != 0xFFFFFFFF\n", v1);
+-                      return 1;
+-              }
+-              if (v2 != 0xFFFFFFFF) {
+-                      printf("%u != 0xFFFFFFFF\n", v2);
+-                      return 1;
+-              }
+-
+-              return 0;
+-      }
++      (void)sizeof(char[1-2*(            (unsigned)NEGATIVE_VALUE != 0xFFFFFFFF)]);
++      (void)sizeof(char[1-2*((enum negative_values)NEGATIVE_VALUE != 0xFFFFFFFF)]);
+ ],
+       samba_cv_CC_NEGATIVE_ENUM_VALUES=yes,samba_cv__CC_NEGATIVE_ENUM_VALUES=no)])
+ if test x"$samba_cv_CC_NEGATIVE_ENUM_VALUES" != x"yes"; then
+@@ -1224,22 +1212,12 @@
+ case "$host_os" in
+     *linux*)
+        # glibc <= 2.3.2 has a broken getgrouplist
+-       AC_TRY_RUN([
+-#include <unistd.h>
++      AC_TRY_COMPILE([ 
+ #include <sys/utsname.h>
+-main() {
+-       /* glibc up to 2.3 has a broken getgrouplist */
++],[
+ #if defined(__GLIBC__) && defined(__GLIBC_MINOR__)
+-       int libc_major = __GLIBC__;
+-       int libc_minor = __GLIBC_MINOR__;
+-
+-       if (libc_major < 2)
+-              exit(1);
+-       if ((libc_major == 2) && (libc_minor <= 3))
+-              exit(1);
++      (void)sizeof(char[1-2*(__GLIBC__ < 2 || __GLIBC__ == 2 && __GLIBC_MINOR__ <= 3)]);
+ #endif
+-       exit(0);
+-}
+ ], [linux_getgrouplist_ok=yes], [linux_getgrouplist_ok=no])
+        if test x"$linux_getgrouplist_ok" = x"yes"; then
+           AC_DEFINE(HAVE_GETGROUPLIST, 1, [Have good getgrouplist])
index 78e7a9d..1249528 100644 (file)
@@ -1,4 +1,22 @@
-PACKAGES =+ "libsmbclient-ads libsmbclient-ads-dev cifs-ads cifs-ads-doc smbfs-ads smbfs-ads-doc swat-ads"
+DEPENDS += " openldap krb5"
+
+EXTRA_OECONF += "\
+        SMB_BUILD_CC_NEGATIVE_ENUM_VALUES=yes \
+        samba_cv_CC_NEGATIVE_ENUM_VALUES=yes \
+        linux_getgrouplist_ok=no \
+        samba_cv_HAVE_BROKEN_GETGROUPS=no \
+        samba_cv_HAVE_FTRUNCATE_EXTEND=yes \
+        ac_cv_path_KRB5CONFIG=${STAGING_BINDIR_CROSS}/krb5-config \
+        samba_cv_have_setresuid=yes \
+        samba_cv_have_setresgid=yes \
+        samba_cv_HAVE_WRFILE_KEYTAB=yes \
+        smb_krb5_cv_enctype_to_string_takes_krb5_context_arg=yes \
+        smb_krb5_cv_enctype_to_string_takes_size_t_arg=yes \
+        --with-krb5=${STAGING_LIBDIR} \
+        --with-ads \
+        "
+
+PACKAGES =+ "libsmbclient-ads libsmbclient-ads-dev cifs-ads cifs-ads-doc smbfs-ads swat-ads"
 
 RCONFLICTS_${PN} = "samba"
 RCONFLICTS_libsmbclient-ads = "libsmbclient"
@@ -6,7 +24,6 @@ RCONFLICTS_libsmbclient-ads-dev = "libsmbclient-dev"
 RCONFLICTS_cifs-ads = "cifs"
 RCONFLICTS_cifs-ads-doc = "cifs-doc"
 RCONFLICTS_smbfs-ads = "smbfs"
-RCONFLICTS_smbfs-ads-doc = "smbfs-doc"
 RCONFLICTS_swat-ads = "swat"
 
 FILES_cifs-ads= "${base_sbindir}/mount.cifs ${base_sbindir}/umount.cifs"
@@ -14,5 +31,8 @@ FILES_cifs-ads-doc = "${mandir}/man8/mount.cifs.8 ${mandir}/man8/umount.cifs.8"
 FILES_libsmbclient-ads = "${libdir}/libsmbclient.so.*"
 FILES_libsmbclient-ads-dev = "${libdir}/libsmbclient.so ${includedir}"
 FILES_smbfs-ads = "${bindir}/smbmount ${bindir}/smbumount ${bindir}/smbmnt ${base_sbindir}/mount.smbfs ${base_sbindir}/mount.smb"
-FILES_smbfs-ads-doc = "${mandir}/man8/smbmount.8 ${mandir}/man8/smbumount.8 ${mandir}/man8/smbmnt.8"
 FILES_swat-ads       = "${sbindir}/swat ${datadir}/swat ${libdir}/*.msg"
+
+do_configure() {
+        oe_runconf
+}
index 8311c35..9a9bd12 100644 (file)
@@ -2,30 +2,9 @@ require samba.inc
 require samba-ads.inc
 
 PR = "r0"
-DEPENDS += " openldap krb5"
 SRC_URI += "file://config-lfs.patch;patch=1 \
             file://quota.patch;patch=1;pnum=0 \
             file://configure-3.2.7.patch;patch=1 \
             file://config-h.patch;patch=1 \
             file://mtab.patch;patch=1 \
                "
-
-EXTRA_OECONF += "\
-       SMB_BUILD_CC_NEGATIVE_ENUM_VALUES=yes \
-       samba_cv_CC_NEGATIVE_ENUM_VALUES=yes \
-       linux_getgrouplist_ok=no \
-       samba_cv_HAVE_BROKEN_GETGROUPS=no \
-       samba_cv_HAVE_FTRUNCATE_EXTEND=yes \
-       ac_cv_path_KRB5CONFIG=${STAGING_BINDIR_CROSS}/krb5-config \
-       samba_cv_have_setresuid=yes \
-       samba_cv_have_setresgid=yes \
-       samba_cv_HAVE_WRFILE_KEYTAB=yes \
-       smb_krb5_cv_enctype_to_string_takes_krb5_context_arg=yes \
-       smb_krb5_cv_enctype_to_string_takes_size_t_arg=yes \
-       --with-krb5=${STAGING_LIBDIR} \
-       --with-ads \
-       "
-
-do_configure() {
-       oe_runconf
-}
diff --git a/packages/samba/samba-ads_3.3.0.bb b/packages/samba/samba-ads_3.3.0.bb
new file mode 100644 (file)
index 0000000..afbea8b
--- /dev/null
@@ -0,0 +1,14 @@
+require samba.inc
+require samba-ads.inc
+
+PR = "r0"
+SRC_URI += "file://config-lfs.patch;patch=1 \
+            file://quota.patch;patch=1;pnum=0 \
+            file://configure-3.3.0.patch;patch=1 \
+            file://config-h.patch;patch=1 \
+            file://mtab.patch;patch=1 \
+               "
+
+do_compile () {
+        base_do_compile
+}