home *** CD-ROM | disk | FTP | other *** search
- GNU Make v3.68 for the Amiga
- ============================
-
- Short: Amiga port of GNU Make 3.68
-
- 1. Contents of this archive:
-
- glob (dir)
- Makefile
- bin (dir)
- make
- build.sh
- config.h
- config.status
- COPYING
- make.diff
- Makefile
- README
-
- 2. Installation
-
- Just copy bin/make to a place in your path (e.g. BIN:). You will also
- need ixemul.library in LIBS:, which is available on aminet.
-
- GNU make is free software. See the file COPYING for copying permission.
-
- Currently, the vfork() system call from ixemul.library, as used by GNU
- make, requires OS2.x. I have not been able to test make under 1.x, it
- *might* work in some simple cases, but will certainly not if vfork() is
- invoked. Full functionality is available at least under 2.x. With 3.0,
- however, there should be no problems, but I couldn't test that, too.
-
- 3. Recompile
-
- Source and documentation of GNU make-3.68 are available via anonymous
- ftp from various sites, most probably from the site you got this archive
- from. Please check make.diff for modifications! Eg. you will probably
- want to adjust the stuff around INCLUDEDIR and LIBDIR in read.c and
- remake.c if your gcc: tree layout diverges from the standard one.
-
- There are several ways to recompile:
-
- (1) use 'config.status' to recreate 'build.sh' and the Makefiles
- > sh config.status
-
- (2) use 'build.sh' in the current dir to rebuild 'make' without a
- make-tool
- > sh build.sh
-
- (3) use the original 'configure' shell script:
- > sh configure
-
- (4) use 'bin/make' or your (up to now) favorite make-tool and the
- included Makefiles :); ./Makefile might need editing for correct
- pathes and binaries on your machine
-
- Except for (4) the following binaries are required in your path,
- which are available from the gcc-release, SKsh, pdksh, GNU
- file- and textutils, GNU-grep etc.: sh, rm, tr, chmod, sed, cat,
- egrep, grep, mv, gcc/v.
-
- HINT: if you have an 'install'-programm in your path (e.g from
- GNU-fileutils), please rename ./INSTALL; if the current directory is
- in your path before the location the 'install'-programm resides,
- 'configure' inserts ./INSTALL as install-programm, because AmigaOS is
- not case-sensitive. Also beware of C:Install.
-
- If sh cannot find your binaries: '"set" or "setenv" PATH <where the
- bins reside>' (you could also recompile pdksh with your preferred path
- builtin).
-
- IMPORTANT: check make.diff for the modifications to the
- 'configure'-script. It will only work with gccv instead of gcc!
-
- The created 'config.h' sometimes contains wrong '#define's' and needs
- editing by hand. I have no idea if this arises from pdksh or is a
- deficiency of 'configure'. So check carefully or use the included
- config.h.
-
- 4. Documentation
-
- There are no docs included. Full documentation is available via
- anonymous ftp (make-doc-3.68.tar.gz). Using 'makeinfo' (see
- aminet:text/hyper/mkguide*) with 'make.texinfo' from the source
- distribution you can create a plain ASCII-file, a 'TeX'-ed
- documentation, the make.info-?-files for use with InfoView or even an
- AmigaGuide-style docfile.
-
- GNU make offers several features not provided by other make utilities:
- - recursive make (descending directory trees, make, ascend)
- - multiple concurrent make jobs (really works, but needs LOTS of ram!)
- - a lot of additional implicit rules
-
- 5. Hints (Hi Rainer and Ed!)
-
- - RAM, RAM, RAM and more RAM! Using make recursively on nested
- directories, such as often found inside GNU-distributions, requires
- several MB of RAM (several > 5, usually). Eg., when compiling groff or
- libg++, at some point of execution you may find two or more instances
- of each make and pdksh running concurrently, additionally to the
- compilers. Since gcc requires at least around 250k of stack you must
- have set your current shell's stack to that value. Unfortunately,
- *all* of the executables started by make will have that large stack
- allocated, resulting in 1--3 MB of RAM for stack only! To save you
- some RAM, it might be exciting to find out how *small* the stacksize
- may be but have gcc still working ... :). Maybe GigaMem or something
- similar provides you a satisfactory solution. I have tried 'Virtual'
- from the german 'Amiga-Magazin' PD-Disk, but this does work with
- resident'ed executables.
- - make often starts subprocesses via pdksh ($SH = /bin/sh). Therefore it
- is quite useful to have 'sh' resident.
- - To save some memory when using make recursively I tried to compile
- 'make' with '-resident'; it compiled properly, but the resulting
- binary ignored all command line options and was likely to meet the
- guru. Any idea on this?
-
- Send bugs, comments, needles and pins, A5000's, SPARC-2-Notebooks to
- <st000002@hrz1.hrz.th-darmstadt.de>
-
- And, as always, have fun! (>;-))
- Lars Hecking
-