Edit

IABSD.fr/xenocara/lib/libXaw/src/OS.c

Branch :

  • Show log

    Commit

  • Author : matthieu
    Date : 2021-08-09 17:51:45
    Hash : d31678eb
    Message : Update to libXaw 1.0.14

  • lib/libXaw/src/OS.c
  • /* Some OS-dependent utility code */
    
    #ifdef HAVE_CONFIG_H
    #include <config.h>
    #endif
    #include <X11/Xosdefs.h>
    #include <X11/IntrinsicP.h>
    #include "Private.h"
    
    #ifdef HAVE_UNISTD_H
    #include <unistd.h>	/* for sysconf(), and getpagesize() */
    #endif
    
    #if defined(_WIN32) && !defined(__CYGWIN__)
    /* AC_CHECK_FUNCS([getpagesize]) may report a false positive for
       getpagesize() when using MinGW gcc, since it's present in libgcc.a */
    #undef HAVE_GETPAGESIZE
    #endif
    
    #if defined(linux)
    /* kernel header doesn't work with -ansi */
    /* #include <asm/page.h> *//* for PAGE_SIZE */
    #define HAS_SC_PAGESIZE	/* _SC_PAGESIZE may be an enum for Linux */
    #endif
    
    int
    _XawGetPageSize(void)
    {
        static int pagesize = -1;
    
        if (pagesize != -1)
    	return pagesize;
    
        /* Try each supported method in the preferred order */
    
    #if defined(_SC_PAGESIZE) || defined(HAS_SC_PAGESIZE)
        pagesize = (int) sysconf(_SC_PAGESIZE);
    #endif
    
    #ifdef _SC_PAGE_SIZE
        if (pagesize == -1)
    	pagesize = (int) sysconf(_SC_PAGE_SIZE);
    #endif
    
    #ifdef HAVE_GETPAGESIZE
        if (pagesize == -1)
    	pagesize = getpagesize();
    #endif
    
    #ifdef PAGE_SIZE
        if (pagesize == -1)
    	pagesize = PAGE_SIZE;
    #endif
    
        if (pagesize == -1)
    	pagesize = 0;
    
        return pagesize;
    }