home *** CD-ROM | disk | FTP | other *** search
-
- IXEMUL LIBRARY INSTALLATION NOTES
-
- (last updated 10/4/95)
-
-
- =====================
- DISTRIBUTION CONTENTS
- =====================
-
- The net ixemul library distribution consists of several archives, where XXYY
- are the major and minor version numbers:
-
- ixemulXXYY-bin.lha utils for gnu/bin, like ixtrace and ixconfig
-
- ixemulXXYY-sdk.lha files needed to build ixemul.library using apps
-
- ixemulXXYY-doc.lha various documentation, such as this file
-
- ixemulXXYY-src.lha Complete source code for ixemul library
-
- ixemulXXYY-CF.lha Specific flavors of the library, where 'C'
- is one of 0, 2, 3, or 4, for 68000, 68020,
- 68030, and 68040 respectively, and 'F' is either
- 'f' or 's' for FPU support or soft floating point
- respectively.
-
- Note that version 41.0 would be 4100 and 41.10 would be 4110.
-
- The ixemulXXYY-doc.lha archive contains various readme and copyright files
- that do not need to be installed anywhere. The ixemulXXYY-src.lha archive
- contains the source tree that can be installed anywhere. The rest of the
- archives should simply be extracted relative to the gnu: directory to put
- all the files in their standard location.
-
- ========================
- INSTALLING RUNTIME FILES
- ========================
-
- For the moment, you must manually install the files. Eventually there will
- be an installer script available that you can use with the standard AmigaDOS
- installer program to make installation more WorkBench friendly.
-
- First backup any files in gnu: that will get overwritten during the install,
- if you wish to preserve them. These files typically are:
-
- gnu:bin/ixconfig
- gnu:bin/ixtrace
- gnu:lib/bcrt0.o
- gnu:lib/crt0.o
- gnu:lib/rcrt0.o
- gnu:lib/libc.a
- gnu:lib/libb/libc.a
- gnu:include (lots of files, but probably not all)
- gnu:man (lots of files, but probably not all)
- gnu:Sys/libs/ixemul* (all the old versions of the library)
-
- Extract the contents of ixemulXXYY-bin.lha, ixemul-XXYY-sdk.lha (if you
- expect to be building any ixemul.library using applications), and any
- ixemul-XXYY-CF.lha archives that you want, overwriting any existing copies
- of the files in your gnu tree. For example, to install the utils, sdk, and
- both the 68000 and 68040+68881 versions of the library, do the following:
-
- lha -mraxe x ixemulXXYY-bin.lha gnu:
- lha -mraxe x ixemulXXYY-sdk.lha gnu:
- lha -mraxe x ixemulXXYY-0.lha gnu:
- lha -mraxe x ixemulXXYY-4f.lha gnu:
-
- Now you need to decide which version of the library to use, based on what
- sort of machine you have (68000, 68020, 68030, 68040) and whether or not it
- has an FPU (68020+68881, 68030 with FPU, or 68040 with FPU). Do something
- like the following:
-
- cd gnu:Sys/libs
- copy ixemul040fpu.library ixemul.library clone
-
- Then either reboot or run a program to flush the existing ixemul.library (if
- any) from memory.
-
- =======================
- INSTALLING SOURCE FILES
- =======================
-
- To extract the source code, simply cd to a directory where you would like
- the source code directory to be created, and extract the source archive
- there:
-
- cd gnu-src:
- lha -mraxe x ixemulXX.YY-src.lha
-
- Note that this will create the directory ixemul-XX.YY and populate it with
- all the source files.
-
- To rebuild the library, all that is needed is to run the configure script
- and then run make. Note that at the moment, you have to use separate build
- and source directories and the path you use to run "configure" has to be
- an absolute one, not a relative one (see below). That is, you leave the
- source tree untouched and create a separate build tree in which all the
- compiled files will be placed:
-
- cd gnu-build:
- makedir ixemul-XX.YY (must not be source directory at the moment)
- cd ixemul-XX.YY
- sh /gnu-src/ixemul-XX.YY/configure m68k-cbm-amigados
-
- This will create a Makefile and several subdirectories with other Makefiles.
- Note the section in the Makefile that looks like:
-
- all:
- $(MAKE) build CPU=68000 FPU=soft-float BASE=no-baserel
- $(MAKE) build CPU=68000 FPU=soft-float BASE=baserel
- $(MAKE) build CPU=68020 FPU=68881 BASE=no-baserel
- $(MAKE) build CPU=68020 FPU=68881 BASE=baserel
- $(MAKE) build CPU=68020 FPU=soft-float BASE=no-baserel
- $(MAKE) build CPU=68020 FPU=soft-float BASE=baserel
- $(MAKE) build CPU=68030 FPU=68881 BASE=no-baserel
- $(MAKE) build CPU=68030 FPU=68881 BASE=baserel
- $(MAKE) build CPU=68030 FPU=soft-float BASE=no-baserel
- $(MAKE) build CPU=68030 FPU=soft-float BASE=baserel
- $(MAKE) build CPU=68040 FPU=68881 BASE=no-baserel
- $(MAKE) build CPU=68040 FPU=68881 BASE=baserel
- @(cd libsrc && $(MAKE) $(FLAGS_TO_PASS))
-
- By default, all of the versions of ixemul.library are build by make. This
- can take a very long time (about a day on a 40MHz 040 WarpEngine for
- example, probably much longer on other machines).
-
- If you only want to build one particular version of the library and runtime
- files to test, just comment out the lines you don't want. I.E. to build a
- 68040+68881 version, the above lines should be changed to:
-
- all:
- $(MAKE) build CPU=68000 FPU=soft-float BASE=no-baserel
- $(MAKE) build CPU=68000 FPU=soft-float BASE=baserel
- # $(MAKE) build CPU=68020 FPU=68881 BASE=no-baserel
- # $(MAKE) build CPU=68020 FPU=68881 BASE=baserel
- # $(MAKE) build CPU=68020 FPU=soft-float BASE=no-baserel
- # $(MAKE) build CPU=68020 FPU=soft-float BASE=baserel
- # $(MAKE) build CPU=68030 FPU=68881 BASE=no-baserel
- # $(MAKE) build CPU=68030 FPU=68881 BASE=baserel
- # $(MAKE) build CPU=68030 FPU=soft-float BASE=no-baserel
- # $(MAKE) build CPU=68030 FPU=soft-float BASE=baserel
- $(MAKE) build CPU=68040 FPU=68881 BASE=no-baserel
- $(MAKE) build CPU=68040 FPU=68881 BASE=baserel
- @(cd libsrc && $(MAKE) $(FLAGS_TO_PASS))
-
- Note that you have to build the 68000 version in any case, since the
- compiler runtime files (*crt*.o, libc.a, libbc.a) are generic 68000 code.
-
- Then just run "make" in the build directory:
-
- cd gnu-build:ixemul-XX.YY
- make
-
- ==============
- REPORTING BUGS
- ==============
-
- Please report problems or bugs to Fred Fish (fnf@amigalib.com), who is the
- current ixemul library coordinator. Even better than a bug report is a bug
- fix, which typically would be a context diff file for one or more ixemul
- source files.
-
- -Fred Fish (fnf@amigalib.com)
-