mirror of
https://github.com/kanjitalk755/macemu.git
synced 2024-07-05 09:28:57 +00:00
Enable real addressing by disabling PIE
This commit is contained in:
parent
a89bb77bde
commit
4b5f3bd87b
@ -72,6 +72,11 @@ void pagezero_32(struct mach_header *machhead)
|
|||||||
/* change the permissions */
|
/* change the permissions */
|
||||||
sc_cmd->maxprot = target_uint32(VM_PROT_ALL);
|
sc_cmd->maxprot = target_uint32(VM_PROT_ALL);
|
||||||
sc_cmd->initprot = target_uint32(VM_PROT_ALL);
|
sc_cmd->initprot = target_uint32(VM_PROT_ALL);
|
||||||
|
|
||||||
|
#ifdef MH_PIE
|
||||||
|
/* disable pie in header */
|
||||||
|
machhead->flags = target_uint32(target_uint32(machhead->flags) & ~MH_PIE);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(MH_MAGIC_64)
|
#if defined(MH_MAGIC_64)
|
||||||
|
@ -936,6 +936,18 @@ AC_TRANSLATE_DEFINE(HAVE_MMAP_VM, $have_mmap_vm,
|
|||||||
|
|
||||||
fi dnl HAVE_MMAP_VM
|
fi dnl HAVE_MMAP_VM
|
||||||
|
|
||||||
|
dnl Check if we can disable position-independent code
|
||||||
|
AC_CACHE_CHECK([how to disable position-independent code],
|
||||||
|
ac_cv_no_pie, [
|
||||||
|
ac_cv_no_pie='-Wl,-no_pie'
|
||||||
|
saved_LDFLAGS="$LDFLAGS"
|
||||||
|
LDFLAGS="$LDFLAGS $ac_cv_no_pie"
|
||||||
|
AC_TRY_LINK(,,,[ac_cv_no_pie="cannot"])
|
||||||
|
if [[ "$ac_cv_no_pie" = "cannot" ]]; then
|
||||||
|
LDFLAGS="$saved_LDFLAGS"
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
dnl Check if we can modify the __PAGEZERO segment for use as Low Memory
|
dnl Check if we can modify the __PAGEZERO segment for use as Low Memory
|
||||||
AC_CACHE_CHECK([whether __PAGEZERO can be Low Memory area 0x0000-0x3000],
|
AC_CACHE_CHECK([whether __PAGEZERO can be Low Memory area 0x0000-0x3000],
|
||||||
ac_cv_pagezero_hack, [
|
ac_cv_pagezero_hack, [
|
||||||
|
Loading…
Reference in New Issue
Block a user