mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-24 22:24:37 +02:00
EmulatorPkg/Unix/Host: Fix XCODE5 IA32/X64 build failure
https://bugzilla.tianocore.org/show_bug.cgi?id=2046 * Clean up XCODE5 IA32 [BuildOptions] and fix IA32 X11 include path. * Add -DEFIAPI=__attribute__((ms_abi)) to X64 XCODE5 [BuildOptions] * Use -target x86_64-apple-darwin for X64 XCODE5 [BuildOptions] * Add Wl,-no_pie to X64 XCODE5 [BuildOptions] * Address function type mismatch reported by XCODE5 in reverse gasket callback between UEFI ABI and MacOS ABI. Use a UINTN to pass function address to assembly code. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Andrew Fish <afish@apple.com> Cc: Ray Ni <ray.ni@intel.com> Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Ray Ni <ray.ni@intel.com>
This commit is contained in:
parent
b98504b514
commit
538d8aaaf3
@ -30,7 +30,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
|
|||||||
|
|
||||||
int settimer_initialized;
|
int settimer_initialized;
|
||||||
struct timeval settimer_timeval;
|
struct timeval settimer_timeval;
|
||||||
void (*settimer_callback)(UINT64 delta);
|
UINTN settimer_callback = 0;
|
||||||
|
|
||||||
BOOLEAN gEmulatorInterruptEnabled = FALSE;
|
BOOLEAN gEmulatorInterruptEnabled = FALSE;
|
||||||
|
|
||||||
@ -194,7 +194,7 @@ SecSetTimer (
|
|||||||
if (setitimer (ITIMER_REAL, &timerval, NULL) != 0) {
|
if (setitimer (ITIMER_REAL, &timerval, NULL) != 0) {
|
||||||
printf ("SetTimer: setitimer error %s\n", strerror (errno));
|
printf ("SetTimer: setitimer error %s\n", strerror (errno));
|
||||||
}
|
}
|
||||||
settimer_callback = CallBack;
|
settimer_callback = (UINTN)CallBack;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
|
|
||||||
Copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR>
|
Copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR>
|
||||||
Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2011 - 2019, Intel Corporation. All rights reserved.<BR>
|
||||||
|
|
||||||
SPDX-License-Identifier: BSD-2-Clause-Patent
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||||
|
|
||||||
@ -195,7 +195,7 @@ void
|
|||||||
|
|
||||||
UINTN
|
UINTN
|
||||||
ReverseGasketUint64 (
|
ReverseGasketUint64 (
|
||||||
CALL_BACK CallBack,
|
UINTN CallBack,
|
||||||
UINT64 a
|
UINT64 a
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# Entry Point of Emu Emulator
|
# Entry Point of Emu Emulator
|
||||||
#
|
#
|
||||||
# Main executable file of Unix Emulator that loads PEI core after initialization finished.
|
# Main executable file of Unix Emulator that loads PEI core after initialization finished.
|
||||||
# Copyright (c) 2008 - 2018, Intel Corporation. All rights reserved.<BR>
|
# Copyright (c) 2008 - 2019, Intel Corporation. All rights reserved.<BR>
|
||||||
# Portions copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR>
|
# Portions copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR>
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||||
@ -132,11 +132,11 @@
|
|||||||
# Need to do this link via gcc and not ld as the pathing to libraries changes from OS version to OS version
|
# Need to do this link via gcc and not ld as the pathing to libraries changes from OS version to OS version
|
||||||
#
|
#
|
||||||
XCODE:*_*_IA32_DLINK_PATH == gcc
|
XCODE:*_*_IA32_DLINK_PATH == gcc
|
||||||
XCODE:*_*_IA32_CC_FLAGS == -arch i386 -O0 -g -include $(DEST_DIR_DEBUG)/AutoGen.h -c -fshort-wchar -fno-strict-aliasing
|
XCODE:*_*_IA32_CC_FLAGS = -I$(WORKSPACE)/EmulatorPkg/Unix/Host/X11IncludeHack
|
||||||
XCODE:*_*_IA32_DLINK_FLAGS == -arch i386 -o $(BIN_DIR)/Host -L/usr/X11R6/lib -lXext -lX11 -framework Carbon
|
XCODE:*_*_IA32_DLINK_FLAGS == -arch i386 -o $(BIN_DIR)/Host -L/usr/X11R6/lib -lXext -lX11 -framework Carbon
|
||||||
XCODE:*_*_IA32_ASM_FLAGS == -arch i386 -g
|
XCODE:*_*_IA32_ASM_FLAGS == -arch i386 -g
|
||||||
|
|
||||||
XCODE:*_*_X64_DLINK_PATH == gcc
|
XCODE:*_*_X64_DLINK_PATH == gcc
|
||||||
XCODE:*_*_X64_DLINK_FLAGS == -o $(BIN_DIR)/Host -L/usr/X11R6/lib -lXext -lX11 -framework Carbon
|
XCODE:*_*_X64_DLINK_FLAGS == -L/usr/X11R6/lib -lXext -lX11 -framework Carbon -Wl,-no_pie
|
||||||
XCODE:*_*_X64_ASM_FLAGS == -g
|
XCODE:*_*_X64_ASM_FLAGS == -g
|
||||||
XCODE:*_*_X64_CC_FLAGS = -I$(WORKSPACE)/EmulatorPkg/Unix/Host/X11IncludeHack
|
XCODE:*_*_X64_CC_FLAGS = -target x86_64-apple-darwin -I$(WORKSPACE)/EmulatorPkg/Unix/Host/X11IncludeHack "-DEFIAPI=__attribute__((ms_abi))"
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
POSIX Pthreads to emulate APs and implement threads
|
POSIX Pthreads to emulate APs and implement threads
|
||||||
|
|
||||||
Copyright (c) 2011, Apple Inc. All rights reserved.
|
Copyright (c) 2011, Apple Inc. All rights reserved.
|
||||||
Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2011 - 2019, Intel Corporation. All rights reserved.<BR>
|
||||||
|
|
||||||
SPDX-License-Identifier: BSD-2-Clause-Patent
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||||
|
|
||||||
@ -109,7 +109,7 @@ SecFakePthreadStart (
|
|||||||
// This is a great example of how all problems in computer
|
// This is a great example of how all problems in computer
|
||||||
// science can be solved by adding another level of indirection
|
// science can be solved by adding another level of indirection
|
||||||
//
|
//
|
||||||
return (VOID *)ReverseGasketUint64 ((CALL_BACK)Start, (UINTN)Context);
|
return (VOID *)ReverseGasketUint64 ((UINTN)Start, (UINTN)Context);
|
||||||
}
|
}
|
||||||
|
|
||||||
UINTN
|
UINTN
|
||||||
|
Loading…
x
Reference in New Issue
Block a user