Use inline versions of APIs only internally in Wine.

diff --git a/include/winbase.h b/include/winbase.h
index d3cb11b..0c773a5 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -1856,7 +1856,7 @@
 
 /* a few optimizations for i386/gcc */
 
-#if defined(__i386__) && defined(__GNUC__)
+#if defined(__i386__) && defined(__GNUC__) && defined(__WINESRC__)
 
 extern inline LONG WINAPI InterlockedCompareExchange( PLONG dest, LONG xchg, LONG compare );
 extern inline LONG WINAPI InterlockedCompareExchange( PLONG dest, LONG xchg, LONG compare )
@@ -1935,7 +1935,8 @@
     return pdb[0x18 / sizeof(HANDLE)];  /* get dword at offset 0x18 in pdb */
 }
 
-#elif defined(__GNUC__) && defined(__powerpc__)
+#elif defined(__GNUC__) && defined(__powerpc__) && defined(__WINESRC__)
+
 extern inline LONG WINAPI InterlockedCompareExchange( PLONG dest, LONG xchg, LONG compare );
 extern inline LONG WINAPI InterlockedCompareExchange( PLONG dest, LONG xchg, LONG compare )
 {
@@ -2004,8 +2005,10 @@
 DWORD       WINAPI GetCurrentProcessId(void);
 DWORD       WINAPI GetCurrentThreadId(void);
 void        WINAPI SetLastError( DWORD err );
-HANDLE	    WINAPI GetProcessHeap(void);
-#else  /* __i386__ && __GNUC__ */
+HANDLE      WINAPI GetProcessHeap(void);
+
+#else  /* __powerpc__ && __GNUC__ && __WINESRC__ */
+
 DWORD       WINAPI GetCurrentProcessId(void);
 DWORD       WINAPI GetCurrentThreadId(void);
 DWORD       WINAPI GetLastError(void);
@@ -2016,7 +2019,8 @@
 LONG        WINAPI InterlockedExchangeAdd(PLONG,LONG);
 LONG        WINAPI InterlockedIncrement(PLONG);
 VOID        WINAPI SetLastError(DWORD);
-#endif  /* __i386__ && __GNUC__ */
+
+#endif  /* __i386__ && __GNUC__ && __WINESRC__ */
 
 /* FIXME: should handle platforms where sizeof(void*) != sizeof(long) */
 static inline PVOID WINAPI InterlockedCompareExchangePointer( PVOID *dest, PVOID xchg, PVOID compare )