empty= space=$(empty) $(empty) ## Operating system specification: # linux - Linux (1.3.37) # amiga - Amiga (customized 40.62) OS_NAME=linux ## C compiler specification: # gcc - GCC (2.7.0) # sasc - SAS/C (6.55) CC_NAME=gcc ## Windowing system specification: # x11 - X Window System, Version 11(tm) (Release 6, Implementation: XFree 3.1.2) # amiga - Amiga native windowing system (customized 40.62) # svga - svgalib - low level gfx (1.2.8) - only for Linux, as far as I know # none - Without any graphics support WS_NAME=x11 ### ifndef WS_NAME WS_NAME=none endif ### ifeq "$(CC_NAME)" "gcc" # C compiler: GCC CC_CFLAGS=-Wall -O6 -fomit-frame-pointer -finline-functions -fexpensive-optimizations #-ansi -pedantic CC_LDFLAGS=-lm -s DEFKWD=-D LDTO=-o LDTOO=-c -o endif ifeq "$(CC_NAME)" "sasc" # C compiler: SAS/C CC_CFLAGS= CC_LDFLAGS=LINK DEFKWD=DEF$(space) LDTO=PNAME LDTOO=OBJNAME endif ### ifeq "$(OS_NAME)" "linux" # Operating system: Linux OS_CFLAGS=$(DEFKWD)_BSD_SOURCE $(DEFKWD)HAVE_RINT OS_LDFLAGS= CP=cp RM=rm -f endif ifeq "$(OS_NAME)" "amiga" # Operating system: Amiga OS_CFLAGS= OS_LDFLAGS= CP=copy RM=delete >NIL: endif ### ifeq "$(WS_NAME)" "x11" # Windowing system: X Window System, Version 11(tm) WS_CFLAGS=$(DEFKWD)FOR_X11 WS_LDFLAGS=-L/usr/X11/lib -lX11 -lXext -lXpm WS_LIBSUFF=X11 endif ifeq "$(WS_NAME)" "amiga" # Windowing system: Amiga native windowing system WS_CFLAGS=$(DEFKWD)FOR_AMIGA WS_LDFLAGS= WS_LIBSUFF=Amiga endif ifeq "$(WS_NAME)" "svga" # Windowing system: svgalib - low level gfx WS_CFLAGS=$(DEFKWD)FOR_SVGA WS_LDFLAGS=-lvga WS_LIBSUFF=SVGA endif ifeq "$(WS_NAME)" "none" # Windowing system: Without any graphics support WS_CFLAGS=$(DEFKWD)FOR_NONE WS_LDFLAGS= WS_LIBSUFF=none endif ### CFLAGS=$(OS_CFLAGS) $(CC_CFLAGS) $(WS_CFLAGS) LDFLAGS=$(OS_LDFLAGS) $(CC_LDFLAGS) $(WS_LDFLAGS) WLLIB=wllib-$(WS_LIBSUFF).c TARGETS=mop451 mop453 ## Examples-related .PHONY: all clean all: Makefile $(TARGETS) clean: -$(RM) $(TARGETS) *.o *.lnk *.npg gmk2mk distclean: clean -$(RM) Makefile # Compatibility-related ####################### gmk2mk: gmk2mk.c $(CC) $(CFLAGS) $(LDFLAGS) $(LDTO) $@ $< Makefile: GNUmakefile gmk2mk gmk2mk Makefile # Examples-related ################## mop451: mop451.o wllib.o $(CC) $(LDFLAGS) $(LDTO) $@ $< wllib.o mop451.o: mop451.c mop451.xpm dyna-add.c wllib.h $(CC) $(CFLAGS) $(LDTOO) $@ $< mop453: mop453.o wllib.o $(CC) $(LDFLAGS) $(LDTO) $@ $< wllib.o mop453.o: mop453.c mop453.xpm dyna-add.c wllib.h $(CC) $(CFLAGS) $(LDTOO) $@ $< wllib.o: $(WLLIB) wllib.h $(CC) $(CFLAGS) $(LDTOO) $@ $<