delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2003/05/11/13:39:37

Date: Sun, 11 May 2003 20:35:17 +0300
From: "Eli Zaretskii" <eliz AT elta DOT co DOT il>
Sender: halo1 AT zahav DOT net DOT il
To: djgpp AT delorie DOT com
Message-Id: <8011-Sun11May2003203516+0300-eliz@elta.co.il>
X-Mailer: emacs 21.3.50 (via feedmail 8 I) and Blat ver 1.8.9
In-reply-to: <3EBE6C88.4050800@hotmail.com> (message from Bill Hart on Sun, 11
May 2003 15:27:55 GMT)
Subject: Re: database engine?
References: <3EB0676B DOT 5030501 AT hotmail DOT com> <3EB22B01 DOT 2040707 AT geninfor DOT com> <3EB56728 DOT 1040008 AT hotmail DOT com> <3EB622B6 DOT 1030404 AT geninfor DOT com> <3EBE6C88 DOT 4050800 AT hotmail DOT com>
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> From: Bill Hart <willymo AT hotmail DOT com>
> Newsgroups: comp.os.msdos.djgpp
> Date: Sun, 11 May 2003 15:27:55 GMT
> 
> Original Mix Turbo C makefile
> 
> OBJ=   isaminit.obj isamexit.obj copydb.obj newindex.obj destrydb.obj \
>        renamedb.obj dbhandle.obj findrec.obj findtail.obj getfldct.obj \
>        getidxnm.obj isammsg.obj prterr.obj matchkey.obj modrec.obj \
>        rmindex.obj delrec.obj holes.obj showkey.obj addrec.obj \
>        createdb.obj findkey.obj findprev.obj mkindex.obj namelist.obj \
>        progress.obj ihandle.obj showdb.obj findmark.obj findnext.obj \
>        findhead.obj getrec.obj getrlen.obj markrec.obj matpre.obj \
>        showdesc.obj getdesc.obj showfld.obj getfldnm.obj showidx.obj \
>        showrec.obj upindex.obj mkkey.obj opendb.obj closedb.obj path.obj \
>        filename.obj chgextnt.obj flushdb.obj

Change every .obj to .o in this list.

> HEADER= isam.i ..\cbtree.h isamerr.h isam.h ..\cbt\member.h isam.cfg   (1)
> 
> CFLAGS= -mm -c -I.. -I..\cbt                                         (2)

Change all backslashes to forward slashes: GNU Make doesn't cope well
with backslashes, since they serve for quoting special characters
such as $ and *.

> isam.lib: $(OBJ)                                                     (3)
> 	del isam.lib
> 	tlib isam.lib @isam.rsp
> 
> $(OBJ): $(HEADER)
> 	tcc $(CFLAGS) $*.c                                           (4)
> 
> (1) I can move the .h files around so the compiler can find them.
> (2) I remove the memory model switch & fix the include dir
> (3) Don't have a clue what to use for "tlib"

`tlib' is an object library manager; the DJGPP equivalent is `ar'.
See section 8.22 of the DJGPP FAQ list for more about this.

> (4) Change to gcc, and "$*.c" doesn't work.

You don't need the "tcc $(CFLAGS) $*.c" rule at all, with GNU Make:
it already knows how to produce an object file from a .c file.  Just
leave the dependency:

  $(OBJ): $(HEADER)

and remove the rule that it runs, and things should work.


> I change the $*.c to *.c and all my source files compile without error
> over and over.

That's what you ask for when you say *.c.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019