https://git.reactos.org/?p=reactos.git;a=commitdiff;h=a91899a6a1cc369223768…
commit a91899a6a1cc3692237688254a1787d731b62c39
Author: Mark Jansen <mark.jansen(a)reactos.org>
AuthorDate: Sat Apr 21 18:55:57 2018 +0200
Commit: Mark Jansen <mark.jansen(a)reactos.org>
CommitDate: Sat Apr 21 18:56:33 2018 +0200
[APISETS] Fix data forwarding.
Thanks to Timo for the help :)
---
dll/apisets/api-ms-win-core-crt-l2-1-0.spec | 3 +--
dll/apisets/api-ms-win-crt-multibyte-l1-1-0.spec | 3 +--
dll/apisets/update.py | 11 ++---------
3 files changed, 4 insertions(+), 13 deletions(-)
diff --git a/dll/apisets/api-ms-win-core-crt-l2-1-0.spec
b/dll/apisets/api-ms-win-core-crt-l2-1-0.spec
index 68cf57de66..3acd1f58db 100644
--- a/dll/apisets/api-ms-win-core-crt-l2-1-0.spec
+++ b/dll/apisets/api-ms-win-core-crt-l2-1-0.spec
@@ -13,8 +13,7 @@
@ stdcall _onexit() msvcrt._onexit
@ stdcall _purecall() msvcrt._purecall
@ stdcall _time64() msvcrt._time64
-@ extern -arch=arm64,i386,arm atexit msvcrt._imp__atexit
-@ extern -arch=x86_64 atexit msvcrt.__imp_atexit
+@ extern -stub atexit msvcrt.atexit # the -stub is a HACK to fix VS < 2017 build!
@ stdcall exit() msvcrt.exit
@ stub hgets
@ stub hwprintf
diff --git a/dll/apisets/api-ms-win-crt-multibyte-l1-1-0.spec
b/dll/apisets/api-ms-win-crt-multibyte-l1-1-0.spec
index e723f9d23b..3e169a7401 100644
--- a/dll/apisets/api-ms-win-crt-multibyte-l1-1-0.spec
+++ b/dll/apisets/api-ms-win-crt-multibyte-l1-1-0.spec
@@ -69,8 +69,7 @@
@ stub _mbbtombc_l
@ stdcall _mbbtype() msvcrt._mbbtype
@ stub _mbbtype_l
-@ extern -arch=arm64,i386,arm _mbcasemap msvcrt._imp___mbcasemap
-@ extern -arch=x86_64 _mbcasemap msvcrt.__imp__mbcasemap
+@ extern -stub _mbcasemap msvcrt._mbcasemap # the -stub is a HACK to fix VS < 2017
build!
@ stdcall _mbccpy() msvcrt._mbccpy
@ stub _mbccpy_l
@ stub _mbccpy_s
diff --git a/dll/apisets/update.py b/dll/apisets/update.py
index dc14a162aa..05915532e6 100644
--- a/dll/apisets/update.py
+++ b/dll/apisets/update.py
@@ -247,15 +247,8 @@ class SpecEntry(object):
arch = self.arch
if self.callconv == 'extern':
args = ''
- callconv = 'extern'
- if arch.has(Arch.x86_64):
- fwd = '{}.__imp_{}'.format(*self._forwarder)
- self.arch = arch - Arch(Arch.x86_64)
- estimate_size += self.write(spec_file)
- self.arch = arch
- arch = Arch(Arch.x86_64)
- else:
- fwd = '{}._imp__{}'.format(*self._forwarder)
+ callconv = 'extern -stub' # HACK
+ fwd += ' # the -stub is a HACK to fix VS < 2017 build!'
if arch != Arch(Arch.Any):
opts = '{} -arch={}'.format(opts, arch.to_str())
spec_file.write('{ord} {cc}{opts} {name}{args}
{fwd}{nl}'.format(ord=self._ord,