1# 2# Makefile for wav2cdr (MS-DOS) 3# 4# Platforms / compilers supported: 5# MSDOS 6.2, Borland Turbo C 3.1, make/maker 3.6 or 4.0 6# Note: make 4.0 seems to crash. Use maker 4.0, or make/maker 3.6. 7# 8# Volker Kuhlmann 9# 10 11 12## where executable and man page is installed 13 14 15## where to find chelp.h, vkclib.h 16INCLUDEDIR = ../include 17INCLUDEDIR = . 18 19## which getopt to use and where to find it 20# 21# uncomment this for GNU getopt in the C library: 22#GETOPTFLAGS = -DHAS_GNUGETOPT 23#GETOPTSRCS = 24# 25# uncomment this for GNU getopt, this needs getopt.c, getopt1.c, getopt.h 26# which can be taken from e.g. GNU tar 1.12: 27#GETOPTDIR = . 28#GETOPTDIR = getopt 29#GETOPTFLAGS = -DHAS_GNUGETOPT -I$(GETOPTDIR) 30#GETOPTSRCS = $(GETOPTDIR)/getopt.c $(GETOPTDIR)/getopt1.c 31# 32# uncomment this for the quick and dirty getopt which comes with wav2cdr: 33GETOPTSRCS = mygetopt.c 34 35MYNAME = wav2cdr 36 37 38## CC 39CC = bcc 40CDEFS = -DMSDOS_BC 41#CDEFS = -DMSDOS_BC -DDEBUG 42#CDEFS = -DMSDOS_BC -DNO_ASSERTMANY 43#CDEFS = -DMSDOS_BC -DDEBUG -DNO_ASSERTMANY 44CINC = -I$(INCLUDEDIR) 45CFLAGS = $(CDEFS) $(CINC) \ 46 -3 -a -A -ff- -Ff=32767 -G -k -ml -N -p- -r -u -v -vi- -w -Y- -y 47#CFLAGS = -DMSDOS_BC -DDEBUG -I$(INCLUDEDIR) -ml -N 48CFLAGS = $(CDEFS) $(CINC)\ 49 -ml -3 -a -f287 -ff- -Ff -A -N -v -y -Oc -Ob -d -vi- -w 50 51## LD 52#LD = tlink 53#LDFLAGS = /c /d /l /P- /Tde /v 54#LDFLAGS = /c /l /x 55# running tlink manually: must give runtime libs, ... 56LD = bcc 57LDFLAGS = -a -ff- -k -mc -N -u -Y- -y 58LDFLAGS = $(CFLAGS) 59# must at least give -mc - otherwise tlink doesn't hack it! 60 61 62 63HSRCS1 = $(INCLUDEDIR)/chelp.h mygetopt.h 64HSRCS2 = wav2cdr.h 65HSRCS = $(HSRCS1) $(HSRCS2) 66 67CSRCS = wav2cdr.c cmdarg.c data.c fileio.c process.c 68 69MADESRCS = usage.-c help.-c version.-c 70 71OBJS = $(CSRCS:.c=.obj) $(GETOPTSRCS:.c=.obj) 72 73 74 75 76# Implicit Rules 77 78#.c.obj: 79# $(CC) $(CFLAGS) $(XCFLAGS) /c $&.c 80.c.obj: 81 $(CC) $(CFLAGS) $(XCFLAGS) -c {$< } 82.SUFFIXES: 83.SUFFIXES: .exe .obj .asm .c .res .rc 84 85 86# Explicit Rules and Individual File Dependencies 87 88all: $(MYNAME).exe 89 90build: veryclean all 91 92$(MYNAME).exe: $(OBJS) 93# $(LD) $(LDFLAGS) $(XLDFLAGS) $(OBJS) 94 echo $(LDFLAGS)+ >bcc.tmp 95!if d$(XLDFLAGS) 96 echo $(XLDFLAGS)+ >>bcc.tmp 97!endif 98 echo $(OBJS) >>bcc.tmp 99 @echo ***** If bcc can't run tlink, try running make with target link 100 $(CC) @bcc.tmp 101 102link: 103# make/maker 3.6 don't interpret $$ correctly, haha... 104 if exist turboc.$$ln tlink @turboc.$$ln 105 if exist turboc.$ln tlink @turboc.$ln 106 107showvar: 108 @echo "CC =" $(CC) 109 @echo "CFLAGS =" $(CFLAGS) 110 @echo "CCFLAGS =" $(CCFLAGS) 111 @echo "XCFLAGS =" $(XCFLAGS) 112 @echo "XCCFLAGS =" $(XCCFLAGS) 113 @echo "LD =" $(LD) 114 @echo "LDFLAGS =" $(LDFLAGS) 115 @echo "XLDFLAGS =" $(XLDFLAGS) 116 @echo "AR =" $(AR) 117 @echo "ARFLAGS =" $(ARFLAGS) 118 119clean: 120 del *.obj 121 del bcc.tmp 122 123veryclean vclean: clean 124 del $(MYNAME).exe 125 del $(MYNAME).sym 126 del $(MYNAME).map 127 del tc0000.swp 128 del turboc.$$ln 129 del turboc.$ln 130