[SCM] Samba Shared Repository - branch master updated

Andreas Schneider asn at samba.org
Mon Jan 9 11:47:01 UTC 2023


The branch, master has been updated
       via  7779050a676 source3/wscript: Remove implicit int and implicit function declarations
       via  d0ee9d5a430 source3/wscript: Fix detection of major/minor macros
       via  75db84b1e59 buildtools/wafsamba: Avoid calling lib_func without a prototype
      from  7545e2c77b6 nsswitch: avoid calling pthread_getspecific() on an uninitialized key

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 7779050a6765a37cc0c6438309e512782220dcb3
Author: Florian Weimer <fweimer at redhat.com>
Date:   Mon Nov 21 14:12:43 2022 +0100

    source3/wscript: Remove implicit int and implicit function declarations
    
    This should fix the remaining C89isms in these configure checks.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=15281
    
    Signed-off-by: Florian Weimer <fweimer at redhat.com>
    Reviewed-by: Andreas Schneider <asn at samba.org>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    
    Autobuild-User(master): Andreas Schneider <asn at cryptomilk.org>
    Autobuild-Date(master): Mon Jan  9 11:46:35 UTC 2023 on sn-devel-184

commit d0ee9d5a43072ecbd37327f5dc936c546f97ba34
Author: Florian Weimer <fweimer at redhat.com>
Date:   Mon Nov 21 13:53:17 2022 +0100

    source3/wscript: Fix detection of major/minor macros
    
    These macros are only available via <sys/sysmacros.h> as of glibc
    commit e16deca62e16f645213dffd4ecd1153c37765f17 ("[BZ #19239] Don't
    include sys/sysmacros.h from sys/types.h."), which went into
    glibc 2.28.
    
    This is different from the usual C99 cleanups because it changes
    the configure check result with existing compilers that usually
    accept implicit function declarations.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=15281
    
    Signed-off-by: Florian Weimer <fweimer at redhat.com>
    Reviewed-by: Andreas Schneider <asn at samba.org>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>

commit 75db84b1e59a42737343445c43c41494460c89f0
Author: Florian Weimer <fweimer at redhat.com>
Date:   Mon Nov 21 13:37:41 2022 +0100

    buildtools/wafsamba: Avoid calling lib_func without a prototype
    
    This is a backport of commit f4c0a750d4adebcf2342a44e85f04526c34
    ("WAF: Fix detection of linker features")
    to buildtools/wafsamba/samba_conftests.py.  It fixes the check for
    rpath support with compilers in strict C99 mode.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=15281
    
    Signed-off-by: Florian Weimer <fweimer at redhat.com>
    Reviewed-by: Andreas Schneider <asn at samba.org>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>

-----------------------------------------------------------------------

Summary of changes:
 buildtools/wafsamba/samba_waf18.py |  3 ++-
 source3/wscript                    | 15 ++++++++-------
 2 files changed, 10 insertions(+), 8 deletions(-)


Changeset truncated at 500 lines:

diff --git a/buildtools/wafsamba/samba_waf18.py b/buildtools/wafsamba/samba_waf18.py
index e2a078bd3a0..cfdceea14ca 100644
--- a/buildtools/wafsamba/samba_waf18.py
+++ b/buildtools/wafsamba/samba_waf18.py
@@ -209,7 +209,8 @@ def CHECK_LIBRARY_SUPPORT(conf, rpath=False, version_script=False, msg=None):
         lib_node.parent.mkdir()
         lib_node.write('int lib_func(void) { return 42; }\n', 'w')
         main_node = bld.srcnode.make_node('main.c')
-        main_node.write('int main(void) {return !(lib_func() == 42);}', 'w')
+        main_node.write('int lib_func(void);\n'
+                        'int main(void) {return !(lib_func() == 42);}', 'w')
         linkflags = []
         if version_script:
             script = bld.srcnode.make_node('ldscript')
diff --git a/source3/wscript b/source3/wscript
index 22be17a1a6f..e77cd127e60 100644
--- a/source3/wscript
+++ b/source3/wscript
@@ -603,11 +603,11 @@ msg.msg_accrightslen = sizeof(fd);
     conf.CHECK_HEADERS('asm/types.h')
 
     conf.CHECK_CODE('dev_t dev; int i = major(dev); return 0', "HAVE_DEVICE_MAJOR_FN",
-                    headers='unistd.h sys/types.h',
+                    headers='sys/sysmacros.h unistd.h sys/types.h',
                     msg="Checking for major macro")
 
     conf.CHECK_CODE('dev_t dev; int i = minor(dev); return 0', "HAVE_DEVICE_MINOR_FN",
-                    headers='unistd.h sys/types.h',
+                    headers='sys/sysmacros.h unistd.h sys/types.h',
                     msg="Checking for minor macro")
 
     conf.CHECK_STRUCTURE_MEMBER('struct dirent', 'd_off',
@@ -1314,7 +1314,7 @@ syscall(SYS_initgroups, 16, NULL, NULL, 0);
 
     if conf.CHECK_CODE('''
 #include <time.h>
-main() {
+int main() {
         struct tm *tm;
         if (sizeof(time_t) == 8) {
                 time_t max_time = 0x7fffffffffffffffll;
@@ -1345,7 +1345,7 @@ main() {
 #if defined(HAVE_SYS_SYSMACROS_H)
 #include <sys/sysmacros.h>
 #endif
-main() { dev_t dev = makedev(1,2); return 0; }
+int main() { dev_t dev = makedev(1,2); return 0; }
 ''',
         'HAVE_MAKEDEV',
         addmain=False,
@@ -1355,12 +1355,13 @@ main() { dev_t dev = makedev(1,2); return 0; }
 #include <stdio.h>
 #include <limits.h>
 #include <signal.h>
+#include <stdlib.h>
 
 void exit_on_core(int ignored) {
         exit(1);
 }
 
-main() {
+int main() {
         char *newpath;
         signal(SIGSEGV, exit_on_core);
         newpath = realpath("/tmp", NULL);
@@ -1517,9 +1518,9 @@ main() {
     # Check for getcwd allowing a NULL arg.
     conf.CHECK_CODE('''
 #include <unistd.h>
-main() {
+int main() {
         char *s = getcwd(NULL,0);
-        exit(s != NULL ?  0 : 1);
+        return s != NULL ?  0 : 1;
 }''', 'GETCWD_TAKES_NULL', addmain=False, execute=True,
         msg="getcwd takes a NULL argument")
 


-- 
Samba Shared Repository



More information about the samba-cvs mailing list