Added support for compiling C++ files. It isn't included for all
[AROS.git] / arch / all-darwin / README.txt
blobee8ab5d9c0c8e8fae42360d7a81431542f083f58
1  This file contains various notes about Darwin-hosted port of AROS.
3  1. COMPILING
5  In order to compile it natively under MacOS X you need:
7 a) Xcode, for MacOS developer tools like gcc, get it on
8    http://developer.apple.com.
9 b) MacPorts. From it you need to install iconv, gmp, mpfr and netpbm.
10    Three former packages are needed by cross-gcc.
11 c) AROS-targetted crosscompiler. x86-64 version (running on MacOS X Snow
12    Leopard) can be found on AROS Archives:
13  http://archives.aros-exec.org/index.php?function=browse&cat=development/cross
15  That's all. Execute "./configure", then "make".
16  Note that current MacOS X uname still replies 'i386' about machine's 
17 architecture despite it's actually x86-64. So by default configure will 
18 set up i386 build. There is currently no x86-64 Darwin-hosted, this is 
19 in my TODO list.
20  If at some point you notice that configure started selecting x86-64 
21 version, you may specify target explicitly.
22  Supported targets are:
24  darwin-arm 
25  darwin-i386
26  darwin-ppc
27  darwin-x86_64
29  If you're cross-compiling (your host CPU differs from target CPU, for example
30 you're building PPC AROS on i386 Mac), you'll likely have to specify gcc version
31 explicitly. This is because Apple provides gcc binaries only with version suffix
32 (for example ppc-apple-darwin10-gcc-4.2.1 instead of just ppc-apple-darwin10-gcc).
33 This can be done using --with-gcc-version=x.y argument for configure. For example:
35  ./configure --target=darwin-x86_64 --with-gcc-version=4.2.1
37  Currently only x86_64 and i386 versions are complete. PowerPC version compiles,
38 but there is ABI incompatibility between AROS and Darwin. Darwin calls clobber some
39 register which is expected to be preserved by AROS. A volunteer is needed to research
40 the problem and implement correct AROS_HOST_BARRIER macro (similar to ARM version).
41  ARM version makes sense only for iOS variant (using
42 --enable-target-variant=ios switch). iOS port is incomplete and is described separately.
44  Building on Mac is verified to be succesful using MacOS X v10.6 (Snow 
45 Leopard), + gcc 4.2.1 (bundled with Xcode) + aros-binutils v2.20.1
46 + aros-gcc v4.4.2. Cross-compilation on non-Mac should be possible provided that
47 you get Darwin-targetted crosstoolchain up and running. I haven't tried this.
49  2. RUNNING
51  In order to run AROS open a command line, go to root AROS directory 
52 ("AROS"), and run "boot/AROSBootstrap.exe". This port behaves like 
53 any other UNIX-hosted, it uses emul.handler, which makes your current
54 directory to be root of your SYS:. X11 server is used for display.
55  You can specify some options on the command line for bootstrap and 
56 AROS. Enter "boot/AROSBootstrap.exe -h" to learn about bootstrap's 
57 options. Also you may check AROSBootstrap.conf file for some settings. 
58 There are also some other useful options understood by AROS itself:
60  vblank=xx - set emulated vertical blank frequency to xx Hz. Default is 50.
61  eclock=xx - set master system's timer to xx Hz. Default value is 50. Old
62              Linux-hosted version had builtin default equivalent to
63              eclock=100. This may impact time measurement quality.
65  If you like some particular settings (like eclock=100) you may enter this
66 in AROSBootstrap.conf file after "arguments" keyword. What you specify there
67 will be always appended to the command line you give to the bootstrap in the
68 shell.
70  09.09.2011, Pavel Fedin <pavel_fedin@mail.ru>