Add .exe to Win32 stat calls. Don't symlink postmaster on Win32.

This commit is contained in:
Bruce Momjian 2003-11-11 03:53:33 +00:00
parent 580fb7fb41
commit 0a2c82b5f7
2 changed files with 19 additions and 4 deletions

View File

@ -4,7 +4,7 @@
# #
# Copyright (c) 1994, Regents of the University of California # Copyright (c) 1994, Regents of the University of California
# #
# $Header: /cvsroot/pgsql/src/backend/Makefile,v 1.95 2003/03/21 17:18:34 petere Exp $ # $Header: /cvsroot/pgsql/src/backend/Makefile,v 1.96 2003/11/11 03:53:32 momjian Exp $
# #
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
@ -138,8 +138,12 @@ endif
install-bin: postgres $(POSTGRES_IMP) installdirs install-bin: postgres $(POSTGRES_IMP) installdirs
$(INSTALL_PROGRAM) postgres$(X) $(DESTDIR)$(bindir)/postgres$(X) $(INSTALL_PROGRAM) postgres$(X) $(DESTDIR)$(bindir)/postgres$(X)
@rm -f $(DESTDIR)$(bindir)/postmaster ifneq ($(PORTNAME), win32)
ln -s postgres$(X) $(DESTDIR)$(bindir)/postmaster @rm -f $(DESTDIR)$(bindir)/postmaster$(X)
ln -s postgres$(X) $(DESTDIR)$(bindir)/postmaster$(X)
else
$(INSTALL_PROGRAM) postgres$(X) $(DESTDIR)$(bindir)/postmaster$(X)
endif
ifeq ($(MAKE_EXPORTS), true) ifeq ($(MAKE_EXPORTS), true)
$(INSTALL_DATA) $(POSTGRES_IMP) $(DESTDIR)$(pkglibdir)/$(POSTGRES_IMP) $(INSTALL_DATA) $(POSTGRES_IMP) $(DESTDIR)$(pkglibdir)/$(POSTGRES_IMP)
endif endif

View File

@ -7,7 +7,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/init/Attic/findbe.c,v 1.37 2003/08/04 02:40:06 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/utils/init/Attic/findbe.c,v 1.38 2003/11/11 03:53:33 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
@ -49,12 +49,23 @@ ValidateBinary(char *path)
uid_t euid; uid_t euid;
struct group *gp; struct group *gp;
struct passwd *pwp; struct passwd *pwp;
char path_exe[MAXPGPATH + 2 + strlen(".exe")];
#endif #endif
int i; int i;
int is_r = 0; int is_r = 0;
int is_x = 0; int is_x = 0;
int in_grp = 0; int in_grp = 0;
#ifdef WIN32
/* Win32 requires a .exe suffix for stat() */
if (strlen(path) >= 4 && strcmp(path + strlen(path) - strlen(".exe"), ".exe") != 0)
{
strcpy(path_exe, path);
strcat(path_exe, ".exe");
path = path_exe;
}
#endif
/* /*
* Ensure that the file exists and is a regular file. * Ensure that the file exists and is a regular file.
* *