1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-25 19:11:56 +00:00

Adapt the recent 'num_processors' change to MS-Windows

* nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_nproc): Omit nproc.

* src/w32.c (num_processors): New function.
* src/w32proc.c (Fw32_get_nproc): Remove.
This commit is contained in:
Eli Zaretskii 2021-10-11 15:56:31 +03:00
parent 7cb4637923
commit 1a1b206a8b
3 changed files with 12 additions and 11 deletions

View File

@ -73,3 +73,4 @@ OMIT_GNULIB_MODULE_lchmod = true
OMIT_GNULIB_MODULE_futimens = true
OMIT_GNULIB_MODULE_utimensat = true
OMIT_GNULIB_MODULE_file-has-acl = true
OMIT_GNULIB_MODULE_nproc = true

View File

@ -39,6 +39,7 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
#include <sys/time.h>
#include <sys/utime.h>
#include <math.h>
#include <nproc.h>
/* Include (most) CRT headers *before* ms-w32.h. */
#include <ms-w32.h>
@ -1962,6 +1963,16 @@ w32_get_nproc (void)
return num_of_processors;
}
/* Emulate Gnulib's 'num_processors'. We cannot use the Gnulib
version because it unconditionally calls APIs that aren't available
on old MS-Windows versions. */
unsigned long
num_processors (enum nproc_query query)
{
/* We ignore QUERY. */
return w32_get_nproc ();
}
static void
sample_system_load (ULONGLONG *idle, ULONGLONG *kernel, ULONGLONG *user)
{

View File

@ -3878,15 +3878,6 @@ w32_compare_strings (const char *s1, const char *s2, char *locname,
return val - 2;
}
/* FIXME: Remove, merging any of its special features into num-processors. */
DEFUN ("w32-get-nproc", Fw32_get_nproc,
Sw32_get_nproc, 0, 0, 0,
doc: /* Return the number of system's processor execution units. */)
(void)
{
return make_fixnum (w32_get_nproc ());
}
void
syms_of_ntproc (void)
@ -3921,8 +3912,6 @@ syms_of_ntproc (void)
defsubr (&Sw32_get_keyboard_layout);
defsubr (&Sw32_set_keyboard_layout);
defsubr (&Sw32_get_nproc);
DEFVAR_LISP ("w32-quote-process-args", Vw32_quote_process_args,
doc: /* Non-nil enables quoting of process arguments to ensure correct parsing.
Because Windows does not directly pass argv arrays to child processes,