https://git.reactos.org/?p=reactos.git;a=commitdiff;h=81bdf4e36023aa9cd7d71…
commit 81bdf4e36023aa9cd7d71ccdb9a6d1d09666406f
Author: Timo Kreuzer <timo.kreuzer(a)reactos.org>
AuthorDate: Sun Apr 28 11:28:24 2019 +0200
Commit: Hervé Poussineau <hpoussin(a)reactos.org>
CommitDate: Mon May 27 13:22:40 2019 +0200
[CRT] Add missing posix error codes
These are required by latest mingw-w64 stl and we are mixing this with our crt
headers.
Define _CRT_NO_POSIX_ERROR_CODES in all modules that define their own constants.
---
dll/win32/dnsapi/CMakeLists.txt | 2 +-
dll/win32/iphlpapi/CMakeLists.txt | 5 +++-
drivers/filesystems/ext2/CMakeLists.txt | 2 +-
drivers/filesystems/reiserfs/CMakeLists.txt | 2 +-
sdk/include/crt/errno.h | 44 +++++++++++++++++++++++++++++
sdk/lib/3rdparty/adns/CMakeLists.txt | 3 +-
sdk/lib/3rdparty/libmpg123/CMakeLists.txt | 3 +-
7 files changed, 55 insertions(+), 6 deletions(-)
diff --git a/dll/win32/dnsapi/CMakeLists.txt b/dll/win32/dnsapi/CMakeLists.txt
index 89b47e370c..2dcfaa0a84 100644
--- a/dll/win32/dnsapi/CMakeLists.txt
+++ b/dll/win32/dnsapi/CMakeLists.txt
@@ -4,7 +4,7 @@ include_directories(
${REACTOS_SOURCE_DIR}/sdk/lib/3rdparty/adns/src
${REACTOS_SOURCE_DIR}/sdk/lib/3rdparty/adns/adns_win32)
-add_definitions(-DADNS_JGAA_WIN32)
+add_definitions(-DADNS_JGAA_WIN32 -D_CRT_NO_POSIX_ERROR_CODES)
spec2def(dnsapi.dll dnsapi.spec ADD_IMPORTLIB)
list(APPEND SOURCE
diff --git a/dll/win32/iphlpapi/CMakeLists.txt b/dll/win32/iphlpapi/CMakeLists.txt
index 61f9112d76..4bd60a87ca 100644
--- a/dll/win32/iphlpapi/CMakeLists.txt
+++ b/dll/win32/iphlpapi/CMakeLists.txt
@@ -6,7 +6,10 @@ include_directories(
spec2def(iphlpapi.dll iphlpapi.spec ADD_IMPORTLIB)
-add_definitions(-DGetAdaptersAddressesV2)
+add_definitions(
+ -DGetAdaptersAddressesV2
+ -D_CRT_NO_POSIX_ERROR_CODES)
+
list(APPEND SOURCE
address.c
dhcp_reactos.c
diff --git a/drivers/filesystems/ext2/CMakeLists.txt
b/drivers/filesystems/ext2/CMakeLists.txt
index 62541e1c34..f5bb339ca9 100644
--- a/drivers/filesystems/ext2/CMakeLists.txt
+++ b/drivers/filesystems/ext2/CMakeLists.txt
@@ -109,7 +109,7 @@ else()
endif()
target_link_libraries(ext2fs memcmp ${PSEH_LIB})
-add_definitions(-D__KERNEL__)
+add_definitions(-D__KERNEL__ -D_CRT_NO_POSIX_ERROR_CODES)
set_module_type(ext2fs kernelmodedriver)
add_importlibs(ext2fs ntoskrnl hal)
diff --git a/drivers/filesystems/reiserfs/CMakeLists.txt
b/drivers/filesystems/reiserfs/CMakeLists.txt
index 60429d9812..e9e4603f3c 100644
--- a/drivers/filesystems/reiserfs/CMakeLists.txt
+++ b/drivers/filesystems/reiserfs/CMakeLists.txt
@@ -91,7 +91,7 @@ else()
endif()
target_link_libraries(reiserfs memcmp ${PSEH_LIB})
-add_definitions(-D__KERNEL__)
+add_definitions(-D__KERNEL__ -D_CRT_NO_POSIX_ERROR_CODES)
set_module_type(reiserfs kernelmodedriver)
add_importlibs(reiserfs ntoskrnl hal)
add_pch(reiserfs inc/rfsd.h SOURCE)
diff --git a/sdk/include/crt/errno.h b/sdk/include/crt/errno.h
index 48f749f6d6..a0522428a3 100644
--- a/sdk/include/crt/errno.h
+++ b/sdk/include/crt/errno.h
@@ -57,6 +57,50 @@ extern "C" {
#define ENOSYS 40
#define ENOTEMPTY 41
+#ifndef _CRT_NO_POSIX_ERROR_CODES
+ #define EADDRINUSE 100
+ #define EADDRNOTAVAIL 101
+ #define EAFNOSUPPORT 102
+ #define EALREADY 103
+ #define EBADMSG 104
+ #define ECANCELED 105
+ #define ECONNABORTED 106
+ #define ECONNREFUSED 107
+ #define ECONNRESET 108
+ #define EDESTADDRREQ 109
+ #define EHOSTUNREACH 110
+ #define EIDRM 111
+ #define EINPROGRESS 112
+ #define EISCONN 113
+ #define ELOOP 114
+ #define EMSGSIZE 115
+ #define ENETDOWN 116
+ #define ENETRESET 117
+ #define ENETUNREACH 118
+ #define ENOBUFS 119
+ #define ENODATA 120
+ #define ENOLINK 121
+ #define ENOMSG 122
+ #define ENOPROTOOPT 123
+ #define ENOSR 124
+ #define ENOSTR 125
+ #define ENOTCONN 126
+ #define ENOTRECOVERABLE 127
+ #define ENOTSOCK 128
+ #define ENOTSUP 129
+ #define EOPNOTSUPP 130
+ #define EOTHER 131
+ #define EOVERFLOW 132
+ #define EOWNERDEAD 133
+ #define EPROTO 134
+ #define EPROTONOSUPPORT 135
+ #define EPROTOTYPE 136
+ #define ETIME 137
+ #define ETIMEDOUT 138
+ #define ETXTBSY 139
+ #define EWOULDBLOCK 140
+#endif
+
#ifndef RC_INVOKED
#if !defined(_SECURECRT_ERRCODE_VALUES_DEFINED)
#define _SECURECRT_ERRCODE_VALUES_DEFINED
diff --git a/sdk/lib/3rdparty/adns/CMakeLists.txt b/sdk/lib/3rdparty/adns/CMakeLists.txt
index 058cf73f62..ff18daf5db 100644
--- a/sdk/lib/3rdparty/adns/CMakeLists.txt
+++ b/sdk/lib/3rdparty/adns/CMakeLists.txt
@@ -5,7 +5,8 @@ include_directories(
add_definitions(
-D_DLL -D__USE_CRTIMP
- -DADNS_JGAA_WIN32)
+ -DADNS_JGAA_WIN32
+ -D_CRT_NO_POSIX_ERROR_CODES)
list(APPEND SOURCE
adns_win32/adns_unix_calls.c
diff --git a/sdk/lib/3rdparty/libmpg123/CMakeLists.txt
b/sdk/lib/3rdparty/libmpg123/CMakeLists.txt
index 32b24ebebf..867e928691 100644
--- a/sdk/lib/3rdparty/libmpg123/CMakeLists.txt
+++ b/sdk/lib/3rdparty/libmpg123/CMakeLists.txt
@@ -9,7 +9,8 @@ add_definitions(
-Dread=_read
-Dstrdup=_strdup
-D_CRT_NONSTDC_NO_DEPRECATE
- -D_DLL -D__USE_CRTIMP)
+ -D_DLL -D__USE_CRTIMP
+ -D_CRT_NO_POSIX_ERROR_CODES)
include_directories(BEFORE ${REACTOS_SOURCE_DIR}/sdk/include/reactos/libs/libmpg123)