Use autoconf 2.5 so that we could get m4sugar macros (AS_VAR_PUSHDEF et al.) and more importantly correct macros for AC_SYS_LARGEFILE support. BTW, also fix test for <linux/if.h>
Add configure macros to check for -framework Carbon and -framwork IOKit so that we can include ../MacOSX/clip_macosx.cpp (clipboard support), ../MacOSX/sys_darwin.cpp (cdrom, floppy et al. support). Also handle new SDL keycodes file.
Performance of VOSF is heuristically determined at run-time, so have to initialize SIGSEGV handlers early, as in Basilisk II. Besides, also add missing call to vm_init() in case host system doesn't have MAP_ANON.
Add --enable-sdl-static option to use static SDL libraries. Useful e.g. on MacOS X as user might not have SDL installed and I am using self-built libraries placed into /usr/local/lib/*. Note this can add extra dependencies to unused libraries.
Check for strlcpy(). Check for "true" better with AC_PROG_PATH
SDL support in SheepShaver too, though it doesn't work in native mode on Linux/ppc as libSDL is pulling in libpthread which conflicts with our sheepthreads.
Disable VOSF on OSX, SIGSEGV recovery is too slow.
TUN/TAP support
Disable VidMode extension by default as some video cards don't support it well, thus causing a black screen. Besides, fix up sigsegv_recovery logic
16-byte aligned memory allocator will try the following functions in-order (determined at compile-time): posix_memalign, memalign, valloc, malloc.
fix auto-detection of SSE headers on x86
Don't include SSE/MMX intrinsics headers if they are not available
Add <*mmintrin.h> detection for generic SSE2/SSE/MMX optimizations
Add --with-dgcc=COMPILER to use C++ COMPILER (gcc) suitable to compile synthetic opcodes. Auto-detect ICC and force use of gcc for DYNGEN_CC.
Handle dummy files. Merge in configure stuff for Mach exception filters. Check whether struct sigaction defines sa_restorer member. Don't include posix_sem.cpp on native Linux/ppc builds.
Look for clock_gettime() as it is faster that gettime() for GetTicks_usec() implementation. Also look for extra pthread related functions.
As usual, my eye captions the error just after the commit.
Handle --with-mon=<monsrcdir> case Force definition of HAVE_PTHREAD_CANCEL in native mode
Don't set WANT_JIT if not EMULATED_PPC
Add "jit" prefs item. Fix PPC_DECODE_CACHE version to fill in new min_pc & max_pc members of block info. Increase -finline-limit to 10000 for older gcc
The JIT should work now but there is an extra bottleneck causing it to not match Kheperix speeds while executing Linux/ppc binaries. Fix x86 DYNGEN_OP_FLAGS settings. Only allocate translation cache in .data on PPC since x86 can do jumps anywhere.
Statically allocate the translation cache on PowerPC. This makes it possible to generate direct bl instructions for function invokation.
Handle "JIT1" engine but disable it for now since there are some problems with SheepShaver integration from Kheperix.
Define HAVE_PTHREADS, if available
factor out -I usage
Handle --enable-ppc-emulator. Add Kheperix cpu emulator to sources
Import VOSF from Basilisk II for faster and more accurate video refresh. There may be some bugs left though. Rework sigsegv_handler() a little to accomodate VOSF way of life. TODO: merge video drivers infrastructure from B2.
Use vm_acquire/vm_acquire_fixed/vm_release API. Prepare use of SIGSEGV handlers and instruction skippers. Fix test prior to including posix_sem.cpp.
Sync with changes from cxmon and B2. I have yet to find out why my old disk image (8.1 based) no longer boots completely. :-/
- Invert AC_CHECK_LIB for readline and termcap so that the test program for readline detection is actually linked against -ltermcap -lreadline. Also add other term libs and finally prefer ncurses over the rest.
Imported sources
Initial revision
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.