git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 08/17] Test for WIN32 instead of __MINGW32_

From
Junio C Hamano <gitster@pobox.com>
Date
Sep 14, 2009, 19:31 UTC
Message-ID
<7v1vm9cohd.fsf@alter.siamese.dyndns.org>
In-Reply-To
<8da5dcea21ce49b3a57fd224c088785a9f98e867.1252925290.git.mstormo@gmail.com>
Marius Storm-Olsen <mstormo@gmail.com> writes:
Show 8 quoted lines
> From: Frank Li <lznuaa@gmail.com>
>
> The code which is conditional on MinGW32 is actually conditional on Windows.
> Use the WIN32 symbol, which is defined by the MINGW32 and MSVC environments,
> but not by Cygwin.
>
> Signed-off-by: Frank Li <lznuaa@gmail.com>
> Signed-off-by: Marius Storm-Olsen <mstormo@gmail.com>

The description sounds very sensible; I wish I read this one first, before wasting time scratching my head while reading 03/17. Shouldn't that patch be squashed into this one?

Show 111 quoted lines
> ---
>  help.c        |    2 +-
>  pager.c       |    4 ++--
>  run-command.c |    8 ++++----
>  run-command.h |    2 +-
>  setup.c       |    2 +-
>  5 files changed, 9 insertions(+), 9 deletions(-)
>
> diff --git a/help.c b/help.c
> index fd51b8e..e8db31f 100644
> --- a/help.c
> +++ b/help.c
> @@ -126,7 +126,7 @@ static int is_executable(const char *name)
>  	    !S_ISREG(st.st_mode))
>  		return 0;
>  
> -#ifdef __MINGW32__
> +#ifdef WIN32
>  {	/* cannot trust the executable bit, peek into the file instead */
>  	char buf[3] = { 0 };
>  	int n;
> diff --git a/pager.c b/pager.c
> index f416d38..86facec 100644
> --- a/pager.c
> +++ b/pager.c
> @@ -9,7 +9,7 @@
>  
>  static int spawned_pager;
>  
> -#ifndef __MINGW32__
> +#ifndef WIN32
>  static void pager_preexec(void)
>  {
>  	/*
> @@ -72,7 +72,7 @@ void setup_pager(void)
>  		static const char *env[] = { "LESS=FRSX", NULL };
>  		pager_process.env = env;
>  	}
> -#ifndef __MINGW32__
> +#ifndef WIN32
>  	pager_process.preexec_cb = pager_preexec;
>  #endif
>  	if (start_command(&pager_process))
> diff --git a/run-command.c b/run-command.c
> index 91f6d2e..cb006e7 100644
> --- a/run-command.c
> +++ b/run-command.c
> @@ -75,7 +75,7 @@ fail_pipe:
>  
>  	trace_argv_printf(cmd->argv, "trace: run_command:");
>  
> -#ifndef __MINGW32__
> +#ifndef WIN32
>  	fflush(NULL);
>  	cmd->pid = fork();
>  	if (!cmd->pid) {
> @@ -315,7 +315,7 @@ int run_command_v_opt_cd_env(const char **argv, int opt, const char *dir, const
>  	return run_command(&cmd);
>  }
>  
> -#ifdef __MINGW32__
> +#ifdef WIN32
>  static unsigned WINAPI run_thread(void *data)
>  {
>  	struct async *async = data;
> @@ -331,7 +331,7 @@ int start_async(struct async *async)
>  		return error("cannot create pipe: %s", strerror(errno));
>  	async->out = pipe_out[0];
>  
> -#ifndef __MINGW32__
> +#ifndef WIN32
>  	/* Flush stdio before fork() to avoid cloning buffers */
>  	fflush(NULL);
>  
> @@ -360,7 +360,7 @@ int start_async(struct async *async)
>  
>  int finish_async(struct async *async)
>  {
> -#ifndef __MINGW32__
> +#ifndef WIN32
>  	int ret = wait_or_whine(async->pid, "child process", 0);
>  #else
>  	DWORD ret = 0;
> diff --git a/run-command.h b/run-command.h
> index 0c00b25..fb34209 100644
> --- a/run-command.h
> +++ b/run-command.h
> @@ -70,7 +70,7 @@ struct async {
>  	int (*proc)(int fd, void *data);
>  	void *data;
>  	int out;	/* caller reads from here and closes it */
> -#ifndef __MINGW32__
> +#ifndef WIN32
>  	pid_t pid;
>  #else
>  	HANDLE tid;
> diff --git a/setup.c b/setup.c
> index e3781b6..029371e 100644
> --- a/setup.c
> +++ b/setup.c
> @@ -41,7 +41,7 @@ const char *prefix_path(const char *prefix, int len, const char *path)
>  const char *prefix_filename(const char *pfx, int pfx_len, const char *arg)
>  {
>  	static char path[PATH_MAX];
> -#ifndef __MINGW32__
> +#ifndef WIN32
>  	if (!pfx || !*pfx || is_absolute_path(arg))
>  		return arg;
>  	memcpy(path, pfx, pfx_len);
> -- 
> 1.6.2.1.418.g33d56.dirty
Previous: Junio C HamanoNext: Marius Storm-Olsen
Message 24 of 35 in “Build Git with MSVC”
  1. 00/17 Build Git with MSVCMarius Storm-Olsen, Sep 14, 2009
  2. 01/17 Avoid declaration after statementMarius Storm-Olsen, Sep 14, 2009
  3. 02/17 boolean is a typedef under MSVC, so rename variable to 'i_boolean'Marius Storm-Olsen, Sep 14, 2009
  4. 03/17 Define SNPRINTF_SIZE_CORR=1 for Microsoft Visual C++Marius Storm-Olsen, Sep 14, 2009
  5. 04/17 Add define guards to compat/win32.hMarius Storm-Olsen, Sep 14, 2009
  6. 05/17 Change regerror() declaration from K&R style to ANSI C (C89)Marius Storm-Olsen, Sep 14, 2009
  7. 06/17 mingw.c: Use the O_BINARY flag to open filesMarius Storm-Olsen, Sep 14, 2009
  8. 07/17 Fix __stdcall/WINAPI placement and function prototypeMarius Storm-Olsen, Sep 14, 2009
  9. 08/17 Test for WIN32 instead of __MINGW32_Marius Storm-Olsen, Sep 14, 2009
  10. 09/17 Add empty header files for MSVC portMarius Storm-Olsen, Sep 14, 2009
  11. 10/17 Add MinGW header files to build git with MSVCMarius Storm-Olsen, Sep 14, 2009
  12. 11/17 Add platform files for MSVC portingMarius Storm-Olsen, Sep 14, 2009
  13. 12/17 Make usage of windows.h lean and meanMarius Storm-Olsen, Sep 14, 2009
  14. 13/17 Define strncasecmp as _strnicmp for MSVCMarius Storm-Olsen, Sep 14, 2009
  15. 14/17 Add ftruncate implementation for MSVCMarius Storm-Olsen, Sep 14, 2009
  16. 15/17 Add MSVC to MakefileMarius Storm-Olsen, Sep 14, 2009
  17. 16/17 Add README for MSVC buildMarius Storm-Olsen, Sep 14, 2009
  18. 17/17 Add scripts to generate projects for other buildsystems (MSVC vcproj, QMake)Marius Storm-Olsen, Sep 14, 2009
  19. Alex RiesenSep 14, 2009
  20. Marius Storm-OlsenSep 14, 2009
  21. Alex RiesenSep 14, 2009
  22. Marius Storm-OlsenSep 14, 2009
  23. Junio C HamanoSep 14, 2009
  24. Junio C HamanoSep 14, 2009
  25. Marius Storm-OlsenSep 14, 2009
  26. Johannes SixtSep 14, 2009
  27. Johannes SchindelinSep 15, 2009
  28. Marius Storm-OlsenSep 15, 2009
  29. Alexey BorzenkovSep 14, 2009
  30. Marius Storm-OlsenSep 14, 2009
  31. Alex RiesenSep 14, 2009
  32. Marius Storm-OlsenSep 14, 2009
  33. Frank LiSep 14, 2009
  34. Alex RiesenSep 14, 2009
  35. Marius Storm-OlsenSep 14, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.