1# Makefile for jam 2 3CC = cc 4CFLAGS = -O 5EXENAME = ./jam0 6TARGET = -o $(EXENAME) 7HOST_SYSTEM=$(shell uname) 8 9# Special flavors - uncomment appropriate lines 10 11# NCR seems to have a broken readdir() -- use gnu 12#CC = gcc 13 14# AIX needs -lbsd, and has no identifying cpp symbol 15# Use _AIX41 if you're not on 3.2 anymore. 16#LINKLIBS = -lbsd 17#CFLAGS = -D_AIX 18 19# NT (with Microsoft compiler) 20# Use FATFS if building on a DOS FAT file system 21#Lib = $(MSVCNT)/lib 22#Include = $(MSVCNT)/include 23#CC = cl /nologo 24#CFLAGS = -I $(Include) -DNT 25#TARGET = /Fejam0 26#LINKLIBS = $(Lib)/oldnames.lib $(Lib)/kernel32.lib $(Lib)/libc.lib 27#EXENAME = .\jam0.exe 28 29# NT (with Microsoft compiler) 30# People with DevStudio settings already in shell environment. 31#CC = cl /nologo 32#CFLAGS = -DNT 33#TARGET = /Fejam0 34#EXENAME = .\jam0.exe 35 36# Interix - gcc 37#CC = gcc 38 39# Cygwin - gcc & cygwin 40#CC = gcc 41#CFLAGS = -D__cygwin__ 42 43# MingW32 44#CC = gcc 45#CFLAGS = -DMINGW 46 47# MPEIX 48#CC = gcc 49#CFLAGS = -I/usr/include -D_POSIX_SOURCE 50 51# QNX rtp (neutrino) 52#CC = gcc 53 54# BeOS (R5 only, actually, but who cares) 55ifeq ($(HOST_SYSTEM), BeOS) 56 ifeq ($(shell sh -c "strings /system/lib/libroot.so | grep uname"), ) 57 LINKLIBS = -lnet 58 endif 59endif 60 61SOURCES = \ 62 builtins.c \ 63 command.c compile.c execunix.c execvms.c expand.c \ 64 filent.c fileos2.c fileunix.c filevms.c glob.c hash.c \ 65 headers.c jam.c jambase.c jamgram.c lists.c make.c make1.c \ 66 newstr.c option.c parse.c pathunix.c pathvms.c regexp.c \ 67 rules.c scan.c search.c timestamp.c variable.c 68 69all: $(EXENAME) 70 LINKLIBS=$(LINKLIBS) $(EXENAME) 71 72$(EXENAME): 73 $(CC) $(TARGET) $(CFLAGS) $(SOURCES) $(LINKLIBS) 74