Xref: utzoo comp.os.msdos.apps:813 comp.os.msdos.misc:883 comp.os.msdos.programmer:2577 Path: utzoo!utgpu!news-server.csri.toronto.edu!rutgers!cs.utexas.edu!uunet!munnari.oz.au!yoyo.aarnet.edu.au!sirius.ucs.adelaide.edu.au!levels!marwk From: marwk@levels.sait.edu.au Newsgroups: comp.os.msdos.apps,comp.os.msdos.misc,comp.os.msdos.programmer Subject: Re: TURBOC make with command lines > 127 chars - SOLVED!! Message-ID: <15789.277ce62a@levels.sait.edu.au> Date: 29 Dec 90 18:53:30 GMT References: <15782.27753f1b@levels.sait.edu.au> <997@pdxgate.UUCP> Organization: Sth Australian Inst of Technology Lines: 60 In article <997@pdxgate.UUCP>, berggren@eecs.cs.pdx.edu (Eric Berggren) writes: > marwk@levels.sait.edu.au writes: > >>I have a makefile which has: >>OBJS = a.obj b.obj c.obj \ >> (several more files here ...) \ >> x.obj y.obj z.obj > >>$(EFILE): $(OBJS) >> tcc -c -m$(MM) $(OBJS) > > >>The tcc line gets converted to: > >> tcc -emain.exe -ms a.obj b.obj ... >>x.obj y.obj z.obj > >>and the message >>Fatal: Cammand arguments too long >>appears. > >>In the reference manual Appendix D it states that the command line cannot >>be longer than 127 characters a DOS limitation. > >>How can I produce the desired exe file using make with this limitation? > The problem originated (by me) arose as I did not realise that TCC automatically called TLINK - having been informed of this the solution is easy, to use TLINK and a response file. Note that TCC does not allow the use of response files. In OBJ_LIST.RSP: a.obj + b.obj + c.obj + ... z.obj Instead of >>$(EFILE): $(OBJS) >> tcc -c -m$(MM) $(OBJS) I now use $(EFILE): $(OBJS) tlink /x/c d:\tc\lib\C0$(MM) @obj_list.rsp, $(EFILE),, d:\tc\lib\C$(MM) which allows as many .obj files as one wishes. As pointed out by one of the respondents this requires the maintenance of 2 lists: one in the response file and another in the OBJS list defined in the makefile itself. I can live with this minor inconvenience; change the .rsp file and read it into the makefile and reorganise lines. Ray