Port of GNU Make with SAS/C (no ixemul)

   Author:       GNU, Amiga port by Aaron "Optimizer" Digulla, 4.4.1 updates by Darren Coles
   Uploader:     Darren Coles (darren_m_coles yahoo co uk)
   Type:         dev/c
   Architecture: m68k-amigaos
   Date:         2024-04-30
   Readme:       http://aminet.net/dev/c/make-4.4.1.readme
   Downloads:    4

http://aminet.net/dev/c/make-4.4.1.lha

----------------------------------------------------------------------------

Update to GNU Make to 4.4.1 - this is the very last commit before all Amiga

support was removed from the code. Therefore this is likely the last update

we will ever see on the Amiga unless someone reinstates all of the changes.

I made a few updates to get everything working again on the Amiga since it

had not been built on the Amiga for some years. My changes are available

here:

https://github.com/dmcoles/gnu_make_amiga

Darren Coles

----------------------------------------------------------------------------

This is a pure Amiga port of GNU Make. It needs no extra libraries or

anything. It has the following features (in addition to any features of

GNU Make):

- Runs Amiga-Commands with SystemTags() (Execute)

- Can run multi-line statements

- Allows to use Device-Names in targets:

c:make : make.o

is ok. To distinguish between device-names and target : or ::, MAKE

looks for spaces. If there are any around :, it's taken as a target

delimiter, if there are none, it's taken as the name of a device. Note

that "make:make.o" tries to create "make.o" on the device "make:".

- Replaces @ at by a newline in any command line:

if exists make @ at \

delete make.bak quiet @ at \

rename make make.bak @ at \

endif @ at \

$(CC) Link Make.o To make

works. Note that the @ at must stand alone (i.e., "make@ at \" is illegal).

Also be careful that there is a space after the "\" (i.e., at the

beginning of the next line).

- Can be made resident to save space and time

- Amiga specific wildcards can be used in $(wildcard ...)

BUGS:

- The line

dummy.h : src/*.c

tries to make dummy.h from "src/*.c" (i.e., no wildcard-expansion takes

place). You have to use "$(wildcard src/*.c)" instead.

COMPILING FROM SCRATCH

----------------------

To recompile, you need SAS/C 6.51.

As of GNU Make 4.3, the build environment has been cleaned up and alternate

make files (including smakefiles) have been removed. If you have an existing

version of GNU Make available you _should_ be able to run:

make -f Basic.mk

However this is untested.

If you have an Amiga system and would like to collaborate on getting

bootstrapping to work properly please contact bug-make at gnu.org.

INSTALLATION

Copy make somewhere in your search path (e.g., sc:c or sc:bin).

If you plan to use recursive makes, install make resident:

Resident make Add

-------------------------------------------------------------------------------

Copyright (C) 1995-2023 Free Software Foundation, Inc.

This file is part of GNU Make.

GNU Make is free software; you can redistribute it and/or modify it under the

terms of the GNU General Public License as published by the Free Software

Foundation; either version 3 of the License, or (at your option) any later

version.

GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY

WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR

A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with

this program. If not, see <https://www.gnu.org/licenses/>.

Contents of dev/c/make-4.4.1.lha

PERMISSION  UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP     NAME
---------- ----------- ------- ------- ------ ---------- ------------ ----------
[unknown]                90448  165084  54.8% -lh5- b4f7 Mar  6 14:38 make
---------- ----------- ------- ------- ------ ---------- ------------ ----------
 Total         1 file    90448  165084  54.8%            May  1 03:11

Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminet aminet net>