558 |
|
|
559 |
|
fi dnl HAVE_MMAP_VM |
560 |
|
|
561 |
+ |
dnl Check if we can modify the __PAGEZERO segment for use as Low Memory |
562 |
+ |
AC_CACHE_CHECK([whether __PAGEZERO can be Low Memory area 0x0000-0x2000], |
563 |
+ |
ac_cv_pagezero_hack, [ |
564 |
+ |
ac_cv_pagezero_hack=no |
565 |
+ |
if AC_TRY_COMMAND([Darwin/testlmem.sh 0x2000]); then |
566 |
+ |
ac_cv_pagezero_hack=yes |
567 |
+ |
dnl might as well skip the test for mmap-able low memory |
568 |
+ |
ac_cv_can_map_lm=no |
569 |
+ |
fi |
570 |
+ |
]) |
571 |
+ |
AC_TRANSLATE_DEFINE(PAGEZERO_HACK, "$ac_cv_pagezero_hack", |
572 |
+ |
[Define if the __PAGEZERO Mach-O Low Memory Globals hack works on this system.]) |
573 |
+ |
|
574 |
|
dnl Check if we can mmap 0x2000 bytes from 0x0000 |
575 |
|
AC_CACHE_CHECK([whether we can map Low Memory area 0x0000-0x2000], |
576 |
|
ac_cv_can_map_lm, [ |
756 |
|
CAN_VOSF=yes |
757 |
|
fi |
758 |
|
|
759 |
+ |
dnl A dummy program that returns always true |
760 |
+ |
BLESS=/bin/true |
761 |
+ |
|
762 |
|
dnl Determine the addressing mode to use |
763 |
|
if [[ "x$WANT_NATIVE_M68K" = "xyes" ]]; then |
764 |
|
ADDRESSING_MODE="real" |
769 |
|
case $am in |
770 |
|
real) |
771 |
|
dnl Requires ability to mmap() Low Memory globals |
772 |
< |
if [[ "x$ac_cv_can_map_lm" = "xno" ]]; then |
772 |
> |
if [[ "x$ac_cv_can_map_lm$ac_cv_pagezero_hack" = "xnono" ]]; then |
773 |
|
continue |
774 |
|
fi |
775 |
< |
dnl Requires VOSF screen updates |
775 |
> |
dnl Requires VOSF screen updates |
776 |
|
if [[ "x$CAN_VOSF" = "xno" ]]; then |
777 |
|
continue |
778 |
|
fi |
780 |
|
ADDRESSING_MODE="real" |
781 |
|
WANT_VOSF=yes dnl we can use VOSF and we need it actually |
782 |
|
DEFINES="$DEFINES -DREAL_ADDRESSING" |
783 |
+ |
if [[ "x$ac_cv_pagezero_hack" = "xyes" ]]; then |
784 |
+ |
BLESS=Darwin/lowmem |
785 |
+ |
LDFLAGS="$LDFLAGS -pagezero_size 0x2000" |
786 |
+ |
fi |
787 |
|
break |
788 |
|
;; |
789 |
|
direct) |
1172 |
|
AC_SUBST(SYSSRCS) |
1173 |
|
AC_SUBST(CPUINCLUDES) |
1174 |
|
AC_SUBST(CPUSRCS) |
1175 |
+ |
AC_SUBST(BLESS) |
1176 |
|
AC_CONFIG_FILES([Makefile]) |
1177 |
|
AC_OUTPUT |
1178 |
|
|