Check for SYS/GL during library init. Reason is that
[AROS.git] / workbench / devs / AHI / README
blob69b522ad3b82cbe801c167aa465168aa8a7f7db3
2 AHI version 6
3 ¯¯¯¯¯¯¯¯¯¯¯¯¯
4 This is AHI version 6.  Yeah, really.  It's been a long road but it's
5 finally here. No more excuses. :-)
7 If you have installed earlier beta versions of the AHI preference program,
8 MUST install the new one, go to the "advanced" page, reset the default
9 anti-click time and save your preferences; a data structure has changed.
11 Developers, take care with the new include files!  A couple of things have
12 changed there as well:
14 * In the audio mode requester structure, ahiam_UserData has been moved to
15   become 32-bit aligned.  AHI still works with old programs, of course, but
16   NEW programs will not work with the old device, unless you use the tag
17   AHIR_ObsoleteUserData instead of AHIR_UserData.
19 * In the preference file structure, ahigp_AntiClickTime has been 32-bit
20   aligned as well.  Since this was added in a beta version, this
21   modification is not backward compatible.
23 I'd estimate that exactly one program is affected by these changes (the AHI
24 preferences program), but maybe there are a few more.  Sorry about that.
27 Things I'd like to do now
28 ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
29  · Fix all the bugs you find.
30  · Rethink everything while still maintaining full backward
31    compatibility. See you in V7!
34 How to make your very own version of AHI
35 ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
36 To configure on an Amiga (for building the AmigaOS version):
38 sh configure --host=m68k-amigaos
41 To configure on an Amiga (for building the MorphOS version):
43 sh configure --host=ppc-morphos
46 To configure on a PC running Linux (for building the AmigaOS version):
48 ./configure --host=m68k-amigaos
51 Yeah, it's that easy.
53 You can build in separate directories, which is very useful when building
54 several versions from the same source tree (note:  this requires
55 UnixDirs3!):
57 mkdir build060
58 cd build060
59 sh ../ahisrc/configure --host=m68k-amigaos --with-cpu=68060
62 There are also a few configure options to set:
64   --with-os-includedir    Path to AmigaOS include directory [/gg/os-include]
65   --with-cpu              The CPU to optimize for
67 --with-os-includedir specifies where the AmigaOS include files are located.
68 If unspecified, /gg/os-include is assumed.
70 --with-cpu lets you specify what CPU to generate code and optimize for. Some
71 legal values include 68020, 68030, 68040 or 68060 for m68k and 603 or 604
72 for PPC. The default is either 68020 or 603, depending on the host.
75 The following make targets are available:
77 all:
78         Makes all binaries, but only one version of the device.
80 clean:
81         Removes all binaries and temporary files.
83 distclean:
84         Like clean, but also removes files created by 'configure'.
86 maintainer-clean:
87         Removes all machine-generated files, including the autoconf files.
89 bindist:
90         Builds the binary distribution.  You can change the directory in
91         which the binary distribution will be created, by setting the
92         variable DISTDIR. The default is '/tmp/ahi'. This will build all
93         possible versions of the device, including the PowerPC version.
95 revup:
96         Increases the revision of the distribution.
99 When you add code, please remember a few things:
101   · Avoid TAB characters, if possible.
102   · The TAB size is 8.
103   · The indent level is 2.
104   · Compiler warnings are NOT acceptable.
107 Required programs/packages
108 ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
109 Here is a short list of required tools that I'm aware of:
111 From GeekGadgets:
113 autoconf        autoconf-2.13-bin.tgz
114 gcc/egcs        gcc-2.95.1-bin020.tgz
115 make            make-3.77-bin.tgz
116 unixtex         unixtex-6.1b-bin?.tgz
117 texinfo         texinfo-3.12-bin.tgz
119 Other tools from Aminet:
121 FD2Pragma       dev/misc/fd2pragma.lha
122 FlexCat         dev/misc/FlexCat.lha
123 PhxAss          dev/asm/PhxAss.lha
124 RoboDoc         dev/misc/robodoc.lha
125 SFDC            dev/gcc/sfdc.lha
126 UnixDirs3       util/boot/UnixDirs3.lha (when using separate build directories)