diff options
-rw-r--r-- | packages/samba/files/configure-3.3.0.patch | 85 | ||||
-rw-r--r-- | packages/samba/samba-ads.inc | 26 | ||||
-rw-r--r-- | packages/samba/samba-ads_3.2.7.bb | 21 | ||||
-rw-r--r-- | packages/samba/samba-ads_3.3.0.bb | 14 |
4 files changed, 122 insertions, 24 deletions
diff --git a/packages/samba/files/configure-3.3.0.patch b/packages/samba/files/configure-3.3.0.patch new file mode 100644 index 0000000000..19fb9864da --- /dev/null +++ b/packages/samba/files/configure-3.3.0.patch @@ -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]) diff --git a/packages/samba/samba-ads.inc b/packages/samba/samba-ads.inc index 78e7a9d770..1249528fdb 100644 --- a/packages/samba/samba-ads.inc +++ b/packages/samba/samba-ads.inc @@ -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 +} diff --git a/packages/samba/samba-ads_3.2.7.bb b/packages/samba/samba-ads_3.2.7.bb index 8311c35046..9a9bd12e0e 100644 --- a/packages/samba/samba-ads_3.2.7.bb +++ b/packages/samba/samba-ads_3.2.7.bb @@ -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 index 0000000000..afbea8b8d0 --- /dev/null +++ b/packages/samba/samba-ads_3.3.0.bb @@ -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 +} |