]> git.lyx.org Git - lyx.git/commitdiff
Rearrange preprocessor guards and improve commentary.
authorAngus Leeming <leeming@lyx.org>
Fri, 30 Sep 2005 21:19:31 +0000 (21:19 +0000)
committerAngus Leeming <leeming@lyx.org>
Fri, 30 Sep 2005 21:19:31 +0000 (21:19 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10503 a592a061-630c-0410-9148-cb99ea01b6c8

src/support/os_win32.C
src/support/os_win32.h

index d80c2aa1fad153316723743641e01eadb80749e2..bb840a9cc38120df0c8b96f1829495f2d8d97d61 100644 (file)
 
 #include <config.h>
 
-/* The GetLongPathNameA function declaration in
- * <winbase.h> under MinGW or Cygwin is protected
- * by the WINVER macro which is defined in <windef.h>
- *
- * SHGFP_TYPE_CURRENT is defined in <shlobj.h> for __W32API_VERSION >= 3.2
- * where it is protected by _WIN32_IE.
- * It is missing in earlier versions of the MinGW w32api headers.
- */
-#if defined(__MINGW32__)  || defined(__CYGWIN__) || defined(__CYGWIN32__)
-# include <w32api.h>
-# define WINVER 0x0500
-# define _WIN32_IE 0x0500
-#endif
-
 #include "support/os.h"
 #include "support/os_win32.h"
 #include "support/lstrings.h"
 #include <direct.h> // _getdrive
 #include <shlobj.h>  // SHGetFolderPath
 
-// Needed by older versions of MinGW.
-#if defined (__W32API_MAJOR_VERSION) && \
-    defined (__W32API_MINOR_VERSION) && \
-    (__W32API_MAJOR_VERSION < 3 || \
-     __W32API_MAJOR_VERSION == 3 && __W32API_MINOR_VERSION  < 2)
-# define SHGFP_TYPE_CURRENT 0
+// Must define SHGFP_TYPE_CURRENT for older versions of MinGW.
+#if defined(__MINGW32__)  || defined(__CYGWIN__) || defined(__CYGWIN32__)
+# include <w32api.h>
+# if __W32API_MAJOR_VERSION < 3 || \
+     __W32API_MAJOR_VERSION == 3 && __W32API_MINOR_VERSION  < 2
+#  define SHGFP_TYPE_CURRENT 0
+# endif
 #endif
 
 using std::endl;
index 7bb2800737009d2e177a1969e9c9300aba0bae6b..4933a2482e6456da937ff3aeec9b310ce5accbb1 100644 (file)
 #endif
 
 /* The GetLongPathNameA function declaration in
- * winbase.h under MinGW or Cygwin is protected
- * by the WINVER macro which is defined in windef.h
+ * <winbase.h> is protected by the WINVER macro which is
+ * defined to a default value in <windef.h> under MinGW and Cygwin.
  *
- * We need to #include this file to make available the
- * DWORD, HMODULE et al. typedefs, so check WINVER now.
+ * SHGFP_TYPE_CURRENT is defined in <shlobj.h> for __W32API_VERSION >= 3.2
+ * where it is protected by _WIN32_IE, also defined to a default value
+ * in <windef.h> under MinGW and Cygwin.
+ * It is missing in earlier versions of the MinGW w32api headers.
+ *
+ * We need to #include <windef.h> now to make available the
+ * DWORD, HMODULE et al. typedefs, so first define WINVER, _WIN32_IE.
  *
  * Note: __CYGWIN__ can be defined here if building in _WIN32 mode.
  */
 #if defined(__MINGW32__)  || defined(__CYGWIN__) || defined(__CYGWIN32__)
-# if !defined(WINVER) || WINVER < 0x0500
+# if defined(WINVER) && WINVER < 0x0500
 #  error WINVER must be >= 0x0500
 # endif
+# define WINVER 0x0500
+# define _WIN32_IE 0x0500
 #endif
 
 #include <windef.h>