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

[PATCH 1/3] Compile fix for MSVC: Do not include sys/resources.h

From
Vincent van Ravesteijn <vfr@lyx.org>
Date
Oct 31, 2011, 19:12 UTC
Message-ID
<1320088364-25916-2-git-send-email-vfr@lyx.org>
In-Reply-To
<1320088364-25916-1-git-send-email-vfr@lyx.org>

Do not include header files when compiling with MSVC that do not exist and which are also not included when compiling with MINGW. A direct consequence is that git can be compiled again with MSVC because the missing "sys/resources.h" is no longer included.

Instead of current
	#ifndef mingw32 is the only one that is strange
        ... everything for systems that is not strange ...
        #else
        ... include mingw specific tweaks ...
        #endif
        #ifdef msvc is also strange
        ... include msvc specific tweaks ...
        #endif

it turns things around and says what it wants to achieve in a more direct way, i.e.

	#if mingw32
        #include "compat/mingw.h"
	#elif msvc
        #include "compat/msvc.h"
	#else
        ... all the others ...
	#endif
which makes it look simpler.
Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org>
Helped-by: Junio C Hamano <gitster@pobox.com>
---
 git-compat-util.h |   13 ++++++-------
 1 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/git-compat-util.h b/git-compat-util.h
index 5ef8ff7..53186da 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -116,7 +116,12 @@
 #else
 #include <poll.h>
 #endif
-#ifndef __MINGW32__
+#if defined(__MINGW32__)
+/* pull in Windows compatibility stuff */
+#include "compat/mingw.h"
+#elif defined(_MSC_VER)
+#include "compat/msvc.h"
+#else
 #include <sys/wait.h>
 #include <sys/resource.h>
 #include <sys/socket.h>
@@ -145,12 +150,6 @@
 #include <grp.h>
 #define _ALL_SOURCE 1
 #endif
-#else 	/* __MINGW32__ */
-/* pull in Windows compatibility stuff */
-#include "compat/mingw.h"
-#endif	/* __MINGW32__ */
-#ifdef _MSC_VER
-#include "compat/msvc.h"
 #endif
 
 #ifndef NO_LIBGEN_H
-- 
1.7.4.1
Previous: Vincent van RavesteijnNext: Vincent van Ravesteijn
Message 2 of 22 in “[PATCHv2] Compile fix for MSVC”
  1. Vincent van RavesteijnOct 31, 2011
  2. 1/3 Compile fix for MSVC: Do not include sys/resources.hVincent van Ravesteijn, Oct 31, 2011
  3. 2/3 Compile fix for MSVC: Include <io.h>Vincent van Ravesteijn, Oct 31, 2011
  4. 3/3 MSVC: Remove unneeded header stubsVincent van Ravesteijn, Oct 31, 2011
  5. Junio C HamanoOct 31, 2011
  6. Johannes SchindelinNov 1, 2011
  7. Junio C HamanoNov 1, 2011
  8. Erik Faye-LundNov 1, 2011
  9. Junio C HamanoNov 1, 2011
  10. Erik Faye-LundNov 1, 2011
  11. Junio C HamanoNov 1, 2011
  12. Johannes SchindelinNov 1, 2011
  13. Erik Faye-LundNov 1, 2011
  14. Johannes SchindelinNov 1, 2011
  15. Vincent van RavesteijnNov 1, 2011
  16. Johannes SchindelinNov 1, 2011
  17. Vincent van RavesteijnNov 1, 2011
  18. Pat ThoytsNov 2, 2011
  19. Vincent van RavesteijnNov 2, 2011
  20. Sebastian SchuberthNov 4, 2011
  21. Erik Faye-LundNov 1, 2011
  22. Junio C HamanoNov 1, 2011

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.