1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-30 08:09:04 +00:00
emacs/lib-src/ntlib.h

105 lines
2.6 KiB
C
Raw Normal View History

1996-05-03 18:29:10 +00:00
/* Utility and Unix shadow routines for GNU Emacs support programs on NT.
Copyright (C) 1994, 2002-2017 Free Software Foundation, Inc.
1996-05-03 18:29:10 +00:00
This file is part of GNU Emacs.
1996-05-03 18:29:10 +00:00
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or (at
your option) any later version.
1996-05-03 18:29:10 +00:00
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
1996-05-03 18:29:10 +00:00
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1996-05-03 18:29:10 +00:00
#include <pwd.h>
#include <malloc.h>
/* Include these headers now so we don't have to worry about include
order dependencies in common source files. */
#include <direct.h>
#include <fcntl.h>
#include <io.h>
#include <stdio.h>
#ifdef sleep
#undef sleep
#endif
unsigned sleep (unsigned seconds);
1996-07-15 19:57:11 +00:00
char *getwd (char *dir);
Make building under stricter warning flags somewhat cleaner. Flags used: -Wold-style-declaration -Wunused-function -Wstrict-prototypes * lib-src/emacsclient.c (getcwd, w32_getenv): * lib-src/ntlib.h (getlogin, getuid, getegid, getgid): Fix prototypes. * nt/runemacs.c (set_user_model_id): Fix prototype. * src/callproc.c (relocate_fd): Set inside #ifndef WINDOWSNT. * src/dired.c (opendir, readdir): Fix prototypes. * src/editfns.c (w32_get_internal_run_time): Fix prototypes. * src/keyboard.c (input_available_signal): Declare inside #ifdef SIGIO. * src/ndir.h (opendir, readdir, seekdir, closedir): Fix prototypes. (telldir): Remove declaration. * src/ralloc.c (real_morecore, __morecore): Fix prototypes. * src/sound.c (alsa_sound_perror): Declare inside #ifdef HAVE_ALSA. * src/syssignal.h (strsignal): Fix prototype. * src/term.c (tparam): Fix prototype. (term_get_fkeys_address, term_get_fkeys_kboard, term_get_fkeys_1) (term_get_fkeys): Set inside "#ifndef DOS_NT". * src/vm-limit.c (check_memory_limits): Fix prototypes of real_morecore and __morecore. * src/w32gui.h (XParseGeometry): Fix prototype. * src/w32heap.h (get_data_start, get_data_end, init_heap): Fix prototypes. * src/w32term.c (my_set_focus): Declare inside #if 0. * src/w32term.h (x_window_to_frame, x_display_info_for_name, w32_term_init) (w32_fill_rect, w32_clear_window, init_crit, delete_crit, signal_quit) (drain_message_queue, get_next_msg, post_msg, parse_button) (ClipboardSequence_Proc): Fix prototypes. (wait_for_sync): Remove declaration.
2010-07-25 00:20:51 +00:00
int getppid (void);
char * getlogin (void);
1996-05-03 18:29:10 +00:00
char * cuserid (char * s);
Make building under stricter warning flags somewhat cleaner. Flags used: -Wold-style-declaration -Wunused-function -Wstrict-prototypes * lib-src/emacsclient.c (getcwd, w32_getenv): * lib-src/ntlib.h (getlogin, getuid, getegid, getgid): Fix prototypes. * nt/runemacs.c (set_user_model_id): Fix prototype. * src/callproc.c (relocate_fd): Set inside #ifndef WINDOWSNT. * src/dired.c (opendir, readdir): Fix prototypes. * src/editfns.c (w32_get_internal_run_time): Fix prototypes. * src/keyboard.c (input_available_signal): Declare inside #ifdef SIGIO. * src/ndir.h (opendir, readdir, seekdir, closedir): Fix prototypes. (telldir): Remove declaration. * src/ralloc.c (real_morecore, __morecore): Fix prototypes. * src/sound.c (alsa_sound_perror): Declare inside #ifdef HAVE_ALSA. * src/syssignal.h (strsignal): Fix prototype. * src/term.c (tparam): Fix prototype. (term_get_fkeys_address, term_get_fkeys_kboard, term_get_fkeys_1) (term_get_fkeys): Set inside "#ifndef DOS_NT". * src/vm-limit.c (check_memory_limits): Fix prototypes of real_morecore and __morecore. * src/w32gui.h (XParseGeometry): Fix prototype. * src/w32heap.h (get_data_start, get_data_end, init_heap): Fix prototypes. * src/w32term.c (my_set_focus): Declare inside #if 0. * src/w32term.h (x_window_to_frame, x_display_info_for_name, w32_term_init) (w32_fill_rect, w32_clear_window, init_crit, delete_crit, signal_quit) (drain_message_queue, get_next_msg, post_msg, parse_button) (ClipboardSequence_Proc): Fix prototypes. (wait_for_sync): Remove declaration.
2010-07-25 00:20:51 +00:00
unsigned getuid (void);
unsigned geteuid (void);
Make building under stricter warning flags somewhat cleaner. Flags used: -Wold-style-declaration -Wunused-function -Wstrict-prototypes * lib-src/emacsclient.c (getcwd, w32_getenv): * lib-src/ntlib.h (getlogin, getuid, getegid, getgid): Fix prototypes. * nt/runemacs.c (set_user_model_id): Fix prototype. * src/callproc.c (relocate_fd): Set inside #ifndef WINDOWSNT. * src/dired.c (opendir, readdir): Fix prototypes. * src/editfns.c (w32_get_internal_run_time): Fix prototypes. * src/keyboard.c (input_available_signal): Declare inside #ifdef SIGIO. * src/ndir.h (opendir, readdir, seekdir, closedir): Fix prototypes. (telldir): Remove declaration. * src/ralloc.c (real_morecore, __morecore): Fix prototypes. * src/sound.c (alsa_sound_perror): Declare inside #ifdef HAVE_ALSA. * src/syssignal.h (strsignal): Fix prototype. * src/term.c (tparam): Fix prototype. (term_get_fkeys_address, term_get_fkeys_kboard, term_get_fkeys_1) (term_get_fkeys): Set inside "#ifndef DOS_NT". * src/vm-limit.c (check_memory_limits): Fix prototypes of real_morecore and __morecore. * src/w32gui.h (XParseGeometry): Fix prototype. * src/w32heap.h (get_data_start, get_data_end, init_heap): Fix prototypes. * src/w32term.c (my_set_focus): Declare inside #if 0. * src/w32term.h (x_window_to_frame, x_display_info_for_name, w32_term_init) (w32_fill_rect, w32_clear_window, init_crit, delete_crit, signal_quit) (drain_message_queue, get_next_msg, post_msg, parse_button) (ClipboardSequence_Proc): Fix prototypes. (wait_for_sync): Remove declaration.
2010-07-25 00:20:51 +00:00
unsigned getegid (void);
unsigned getgid (void);
int setuid (unsigned uid);
Fix the MS-Windows build broken by 2011-01-17T19:01:01Z!eggert@cs.ucla.edu and emacs-23/2010-05-21T19:51:48Z!acm@muc.de. lib/makefile.w32-in: lib/getopt_.h: New files. src/s/ms-w32.h (HAVE_MKTIME): Remove. src/makefile.w32-in (LOCAL_FLAGS): Add -I../lib. (GNULIB): New variable. (LIBS): Add $(GNULIB). $(TEMACS): Depend on $(GNULIB). <top-level>: Fix font-lock disrupted by a lone `"'. src/makefile.w32-in (LOCAL_FLAGS): Add -I../lib. (GETOPTOBJS, GETOPTDEPS): Remove targets. (MOVEMAILOBJS): Replace $(GETOPTOBJS) with ../lib/$(BLD)/libgnu.$(A). ($(BLD)/movemail.exe): Depend on ../lib/getopt.h. (ECLIENTOBJS, ETAGSOBJ, CTAGSOBJ, EBROWSEOBJ): Replace getopt.o and getopt1.o with ../lib/$(BLD)/libgnu.$(A). (clean): Don't remove getopt.h. (getopt.h, $(BLD)/getopt.$(O), $(BLD)/getopt1.$(O)): Remove targets. ($(BLD)/ctags.$(O), $(BLD)/etags.$(O)): Replace getopt.h with $(EMACS_ROOT)/lib/getopt.h. nt/makefile.w32-in (all-other-dirs-nmake, all-other-dirs-gmake) (bootstrap-nmake, bootstrap-gmake, bootstrap-clean-nmake) (bootstrap-clean-gmake, clean-other-dirs-nmake) (clean-other-dirs-gmake, cleanall-other-dirs-nmake) (cleanall-other-dirs-gmake, distclean-other-dirs-nmake) (distclean-other-dirs-gmake, maintainer-clean-other-dirs-nmake) (maintainer-clean-other-dirs-gmake): Recurse into ../lib as well. nt/configure.bat: Create lib/makefile. nt/config.nt (HAVE_MKTIME, BROKEN_MKTIME): Remove. (HAVE_ATTRIBUTE_ALIGNED, HAVE_C99_STRTOLD, HAVE_DECL_GETENV) (HAVE_DECL_LOCALTIME_R, HAVE_WCHAR_T, PACKAGE, VERSION, inline) (_GL_UNUSED, _UNUSED_PARAMETER_): Add definitions, for gnulib.
2011-01-29 12:36:11 +00:00
int setregid (unsigned rgid, unsigned gid);
1996-05-03 18:29:10 +00:00
char * getpass (const char * prompt);
int fchown (int fd, unsigned uid, unsigned gid);
int mkostemp (char * template, int flags);
1996-05-03 18:29:10 +00:00
1998-06-01 14:01:14 +00:00
/* redirect or undo interceptions created by config.h */
#undef access
#define access _access
#undef chdir
#define chdir _chdir
#undef chmod
#define chmod _chmod
#undef close
#define close _close
#undef creat
#define creat _creat
#undef ctime
#undef dup
#define dup _dup
#undef dup2
#define dup2 _dup2
#undef fopen
#undef mkdir
#define mkdir _mkdir
#undef open
#define open _open
#undef pipe
#define pipe _pipe
#undef read
#define read _read
#undef rmdir
#define rmdir _rmdir
#undef unlink
#define unlink _unlink
#undef write
#define write _write
/* map to MSVC names */
#define execlp _execlp
#define execvp _execvp
#define fdopen _fdopen
#ifndef fileno
#define fileno _fileno
#endif
#define getcwd _getcwd
#define getw _getw
#define getpid _getpid
#define isatty _isatty
#define locking _locking
#define logb _logb
#define _longjmp longjmp
#define popen _popen
#define pclose _pclose
#define umask _umask
#define utime _utime
#define index strchr
#define rindex strrchr
1998-06-01 14:01:14 +00:00
/* Make standard winsock definitions available if needed. */
#undef _WINSOCKAPI_
#undef _WINSOCK_H
1998-06-01 14:01:14 +00:00
1996-05-03 18:29:10 +00:00
/* end of ntlib.h */