<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/53bbcfac6c32320ee4421989c809a7497077a47b">https://github.com/macports/macports-ports/commit/53bbcfac6c32320ee4421989c809a7497077a47b</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 53bbcfac6c3 game-porting-toolkit: Simplify & cleanup
</span>53bbcfac6c3 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 53bbcfac6c32320ee4421989c809a7497077a47b
</span>Author: Dean M Greer <38226388+Gcenx@users.noreply.github.com>
AuthorDate: Sat Jun 22 07:56:13 2024 -0400
<span style='display:block; white-space:pre;color:#404040;'> game-porting-toolkit: Simplify & cleanup
</span>---
devel/game-porting-toolkit/Portfile | 30 +++---
.../files/0003-game_porting_toolkit_1.0_beta3.diff | 78 --------------
.../files/1006-build_fixes.diff | 115 +++++++++++++++++++++
3 files changed, 127 insertions(+), 96 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/game-porting-toolkit/Portfile b/devel/game-porting-toolkit/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0355e6f7398..b86ae179a6d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/game-porting-toolkit/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/game-porting-toolkit/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -51,21 +51,21 @@ depends_run \
</span>
patch.pre_args-replace -p0 -p1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# game-porting-toolkit changes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Patches made from game-porting-toolkit commits
</span> patchfiles-append \
0001-game_porting_toolkit_1.0_beta1.diff \
0002-game_porting_toolkit_1.0_beta2.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 0003-game_porting_toolkit_1.0_beta3.diff \
</span> 0004-game_porting_toolkit_1.0_beta4.diff \
0005-game_porting_toolkit_1.1.diff
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Some additional tweaks to make it easier to deal with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Additional patchsets
</span> patchfiles-append \
1001-configure-remove-cross_compiling-check.diff \
1002-server-remove-cxhack-21217.diff \
1003-default-win10-19043.diff \
1004-mscoree-update-wine-mono-to-7.4.1.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 1005-ntdll-d3dmetal-env.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1005-ntdll-d3dmetal-env.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1006-build_fixes.diff
</span>
post-patch {
reinplace -q "s|;(cw)||g" ${worksrcpath}/loader/wine.inf.in
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -128,21 +128,13 @@ configure.args \
</span> configure.ldflags-append -Wl,-rpath,${compiler.library_path} -Wl,-rpath,${prefix}/libexec/d3dmetal/external
# Xcode15 linker requires -ld_classic to enable legacy behaviours required to build wine
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set clt150 [expr { ${xcodeversion} eq "none" && ${xcodecltversion} ne "none" && [vercmp ${xcodecltversion} >= "15.0"] } ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set xcode150 [expr { ${xcodeversion} ne "none" && [vercmp ${xcodeversion} >= "15.0"] } ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if { ${clt150} || ${xcode150} } {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.ldflags-prepend -Wl,-ld_classic
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.ldflags-prepend -Wl,-ld_classic
</span>
# Xcode15.3 default SDK causes the build to fail so fallback to a working SDK
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set clt153 [expr { ${xcodeversion} eq "none" && ${xcodecltversion} ne "none" && [vercmp ${xcodecltversion} >= "15.3"] } ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set xcode153 [expr { ${xcodeversion} ne "none" && [vercmp ${xcodeversion} >= "15.3"] } ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if { ${clt153} || ${xcode153} } {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.sdk_version 13
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {${configure.sdkroot} eq ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- pre-fetch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- error "Building ${name} requires the MacOSX13.sdk to be present in ${developer_dir}/SDKs/"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.sdk_version 13
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${configure.sdkroot} eq ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pre-fetch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ error "Building ${name} requires the MacOSX13.sdk to be present in ${developer_dir}/SDKs/"
</span> }
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -173,7 +165,7 @@ configure.ldflags-delete -L${compiler.library_path}
</span> configure.optflags -O3
# Compiler flags for PE binaries.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.env-append "CROSSCFLAGS=${configure.optflags} -Wno-incompatible-pointer-types -Wno-int-conversion"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.env-append "CROSSCFLAGS=${configure.optflags} -Wno-error=incompatible-pointer-types -Wno-error=int-conversion"
</span>
# Were only installing wine not the development files
destroot.target install-lib
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -239,3 +231,5 @@ platform darwin i386 {
</span> }
}
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck none
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/game-porting-toolkit/files/0003-game_porting_toolkit_1.0_beta3.diff b/devel/game-porting-toolkit/files/0003-game_porting_toolkit_1.0_beta3.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index c3a7afc5e15..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/game-porting-toolkit/files/0003-game_porting_toolkit_1.0_beta3.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,78 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 1e0b0fddce1c762c4504c948d198ec4e95d4d6c9 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: Dean M Greer <38226388+Gcenx@users.noreply.github.com>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Tue, 1 Aug 2023 20:04:59 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] Game Porting Toolkit 1.0 (beta 3)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-based on commit https://github.com/apple/homebrew-apple/commit/0a64b418db78b60f9a887b25fb7a0b11d46fbf82
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure | 35 +++++++++++++++++++++++++++++++++++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.ac | 10 ++++++++++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 2 files changed, 45 insertions(+)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/configure b/configure
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index bfa6e1885..475f1229f 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/configure
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/configure
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -9937,6 +9937,41 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- wine_can_build_preloader=yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- WINEPRELOADER_LDFLAGS="-nostartfiles -nodefaultlibs -e _start -ldylib1.o -Wl,-image_base,0x7d400000,-segalign,0x1000,-pagezero_size,0x1000,-sectcreate,__TEXT,__info_plist,loader/wine_info.plist,-segaddr,WINE_4GB_RESERVE,0x100000000"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,-ld_classic" >&5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+printf %s "checking whether the compiler supports -Wl,-ld_classic... " >&6; }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+if test ${ac_cv_cflags__Wl__ld_classic+y}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+then :
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ printf %s "(cached) " >&6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+else $as_nop
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ac_wine_try_cflags_saved=$CFLAGS
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+CFLAGS="$CFLAGS -Wl,-ld_classic"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* end confdefs.h. */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int main(int argc, char **argv) { return 0; }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+_ACEOF
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+if ac_fn_c_try_link "$LINENO"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+then :
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ac_cv_cflags__Wl__ld_classic=yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+else $as_nop
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ac_cv_cflags__Wl__ld_classic=no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+fi
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+rm -f core conftest.err conftest.$ac_objext conftest.beam \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ conftest$ac_exeext conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+CFLAGS=$ac_wine_try_cflags_saved
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+fi
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cflags__Wl__ld_classic" >&5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+printf "%s\n" "$ac_cv_cflags__Wl__ld_classic" >&6; }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+if test "x$ac_cv_cflags__Wl__ld_classic" = xyes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+then :
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ld_classic_flags="-Wl,-ld_classic"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ld_classic_flags="-Wl,-ld_classic"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+fi
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ WINELOADER_LDFLAGS="$ld_classic_flags $WINELOADER_LDFLAGS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ WINEPRELOADER_LDFLAGS="$ld_classic_flags $WINEPRELOADER_LDFLAGS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ UNIXLDFLAGS="$ld_classic_flags $WINEPRELOADER_LDFLAGS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ LDDLLFLAGS="$ld_classic_flags $LDDLLFLAGS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,-no_new_main -e _main" >&5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- printf %s "checking whether the compiler supports -Wl,-no_new_main -e _main... " >&6; }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if test ${ac_cv_cflags__Wl__no_new_main__e__main+y}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/configure.ac b/configure.ac
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 8fad7462d..c57664857 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/configure.ac
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/configure.ac
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -724,6 +724,16 @@ case $host_os in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- wine_can_build_preloader=yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- WINEPRELOADER_LDFLAGS="-nostartfiles -nodefaultlibs -e _start -ldylib1.o -Wl,-image_base,0x7d400000,-segalign,0x1000,-pagezero_size,0x1000,-sectcreate,__TEXT,__info_plist,loader/wine_info.plist,-segaddr,WINE_4GB_RESERVE,0x100000000"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ dnl The linker that ships with Xcode 15 beta 4 doesn’t support -segaddr unless you also pass -ld_classic.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ WINE_TRY_CFLAGS([-Wl,-ld_classic],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ [ld_classic_flags="-Wl,-ld_classic"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ld_classic_flags="-Wl,-ld_classic"])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ WINELOADER_LDFLAGS="$ld_classic_flags $WINELOADER_LDFLAGS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ WINEPRELOADER_LDFLAGS="$ld_classic_flags $WINEPRELOADER_LDFLAGS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ UNIXLDFLAGS="$ld_classic_flags $WINEPRELOADER_LDFLAGS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ LDDLLFLAGS="$ld_classic_flags $LDDLLFLAGS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- WINE_TRY_CFLAGS([-Wl,-no_new_main -e _main],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- [WINEPRELOADER_LDFLAGS="-Wl,-no_new_main $WINEPRELOADER_LDFLAGS"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- WINE_TRY_CFLAGS([-Wl,-no_new_main -e _main -mmacosx-version-min=10.7 -nostartfiles -nodefaultlibs],
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/game-porting-toolkit/files/1006-build_fixes.diff b/devel/game-porting-toolkit/files/1006-build_fixes.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..a9aa1ac65cd
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/game-porting-toolkit/files/1006-build_fixes.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,115 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/include/Makefile.in b/include/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 99d74bae..4d8a59e5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/include/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/include/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -506,6 +506,7 @@ SOURCES = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/setjmp.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/share.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/signal.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ msvcrt/stdarg.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/stdbool.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/stddef.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/stdint.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -521,6 +522,7 @@ SOURCES = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/time.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/uchar.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/unistd.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ msvcrt/vadefs.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/wchar.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ msvcrt/wctype.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mswsock.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/include/msvcrt/stdarg.h b/include/msvcrt/stdarg.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000..6c6b6048
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/include/msvcrt/stdarg.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,31 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * Variable argument definitions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * Copyright 2022 Jacek Caban
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * This library is free software; you can redistribute it and/or
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * modify it under the terms of the GNU Lesser General Public
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * License as published by the Free Software Foundation; either
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * version 2.1 of the License, or (at your option) any later version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * This library is distributed in the hope that it will be useful,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * Lesser General Public License for more details.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * You should have received a copy of the GNU Lesser General Public
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * License along with this library; if not, write to the Free Software
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef _INC_STDARG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _INC_STDARG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <vadefs.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define va_start(v,l) _crt_va_start(v,l)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define va_arg(v,l) _crt_va_arg(v,l)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define va_end(v) _crt_va_end(v)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define va_copy(d,s) _crt_va_copy(d,s)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* _INC_STDARG */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/include/msvcrt/vadefs.h b/include/msvcrt/vadefs.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000..2a612fc0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/include/msvcrt/vadefs.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,52 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * Variable argument definitions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * Copyright 2022 Jacek Caban
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * This library is free software; you can redistribute it and/or
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * modify it under the terms of the GNU Lesser General Public
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * License as published by the Free Software Foundation; either
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * version 2.1 of the License, or (at your option) any later version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * This library is distributed in the hope that it will be useful,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * Lesser General Public License for more details.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * You should have received a copy of the GNU Lesser General Public
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * License along with this library; if not, write to the Free Software
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef _INC_VADEFS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _INC_VADEFS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __cplusplus
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _ADDRESSOF(v) (&reinterpret_cast<const char &>(v))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _ADDRESSOF(v) (&(v))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__GNUC__) || defined(__clang__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef __builtin_va_list va_list;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _crt_va_start(v,l) __builtin_va_start(v,l)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _crt_va_arg(v,l) __builtin_va_arg(v,l)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _crt_va_end(v) __builtin_va_end(v)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _crt_va_copy(d,s) __builtin_va_copy(d,s)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef char *va_list;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__i386__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _INTSIZEOF(n) ((sizeof(n) + sizeof(int) - 1) & ~(sizeof(int) - 1))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _crt_va_start(v,l) ((v) = (va_list)_ADDRESSOF(l) + _INTSIZEOF(l))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _crt_va_arg(v,l) (*(l *)(((v) += _INTSIZEOF(l)) - _INTSIZEOF(l)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _crt_va_end(v) ((v) = (va_list)0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _crt_va_copy(d,s) ((d) = (s))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* _INC_VADEFS */
</span></pre><pre style='margin:0'>
</pre>