home *** CD-ROM | disk | FTP | other *** search
- This is the README file for the GNU native/cross compiler. Diffs are
- with respect to GCC V2.5.5
-
- -configuration:
- copy all the files from the gcc v2.5.5 distribution
- into a directory called SRC (i created symbolic links between
- the files).
- copy all the files from the gcc v2.5.5 distribution
- sub-directory config into SRC/config
- copy all the files in this directory into SRC.
- copy xm-atari.h and atari.h into SRC/config/m68k
- cd to SRC
- Apply the diffs using larry walls patch program
- patch -p < gcc-255.diff
- make the following links in SRC
- config.h to config/m68k/xm-atari.h
- tconfig.h to config/m68k/xm-atari.h
- hconfig.h to config/m68k/xm-atari.h
- tm.h to config/m68k/atari.h
- aux-output.c to config/m68k/m68k.c
- md to config/m68k/m68k.md
-
- edit Makefile.* to make sure the following
- are defined appro.:
- CROSSDIR -- the home directory of the cross dev. system
-
- look over atari.h and xm-atari.h
-
- edit config/m68k/atari.h and at the top of the file set
- TARGET_DEFAULT appropriately. this file is now
- conditionalized for various combinations of
- 68000/68020/68881
-
- -if you already have a native tos-gcc and want to use
- that to make new tos executables, skip the next few
- steps that make the cross-compiler system.
- Please note that you will not be able to compile the
- compiler itself on a St with less that 2.5 M of memory.
-
- -make cross compiler by
- make -f Makefile.cross
- will make and install gcc-cpp.ttp, gcc-cc1.ttp and gcc.ttp
-
- -clean out the directory by
- make -f Makefile.cross clean
- - go and make a cross-gas cross-ld and cross-as
- - make the tos gcc libraries using the cross-compiler
- system you made above.
-
- - to make atari st executables
- - make and install cross compiler as above (or use your native
- tos-gcc compiler)
- - make by
- make -f Makefile.st
-
- Please note: *.c files in this directory are the already patched files
- for the gcc-src directory.
-
- which makefile to use:
-
-
- On a (BSD unix host) On a HPUX host
- (Only sun sparc tested)
-
- Makefile.cross Makefile.hp to make CROSS-gcc parts
- Makefile.st Makefile.st.hp to make NATIVE-gcc parts
-
- NOTE: Gmakefile* do NOT exist any more
-
- NATIVE parts are 68k code that run on the atari.
- CROSS parts run on the HOST and not on the atari.
-
- --
- bang: uunet!cadence!bammi jwahar r. bammi
- domain: bammi@cadence.com
- GEnie: J.Bammi
- CIS: 71515,155
-
- note about gcc/precompiled headers/unixmode:
-
- Return-Path: <uunet!iti.informatik.th-darmstadt.de!alexlehm>
- From: uunet!iti.informatik.th-darmstadt.de!alexlehm
- Subject: GCC 2.x problem with 'precompiled headers' solved
- To: bammi
- Date: Fri, 19 Jun 92 14:30:19 MET DST
- X-Mailer: ELM [version 2.3 PL11]
-
- Hi Jwahar,
-
- I just build a cross compiler for GCC2.2.2 for my new NeXTstation and I must
- say I'm rather pleased with the speed I get with this hardware.
- I explored the problem with include filesname and I think I came up with a
- solution:
-
- The new GCC already accepts precompiled headers even if he cannot create any.
- This is done by searching for file with an added number to the normal include
- name. e.g. config.h becomed config.h0, config.h1 etc. This works just fine
- with the native compiler as long as the extension of the name is less than
- three chars. If this is the case, a filename becomes something like this:
- atari.trm0. If UNIXMODE is set right this will result in no problem since the
- name can be distinguished from the normal name, but if only normal TOS filenames
- are allowed, the original header file is found under this name and he tries to
- load the file as precompiled header. This of course fails and he reties with
- atari.trm1 and so on. In other words, the compiler just hangs up.
- I changed the code to check whether UNIXMODE is set and if the filename has
- a too long extension. In this case the name if converted to something like
- atari.tr0. The same conversion will have to be made when dumping headers, but
- as far as I tried this feature doesn't work up to now.
-
- the diff is with respect to gcc.2.2.1 pl1 (the one that came with update22).
-
- bye ... Alexander
-
-