#
# $VER: xreftools-makefile 1.4 (09.07.94)
#
# makefile for all xref-tools for xref.library by Stefan Ruppert
#
# (C) Copyright 1994
#

VERSION  = 1

TOOLS    = loadxref expungexref makexref parsexref xrefconvert statxref \
           xrefattrs makeaguideindex aguidexrefv37 aguidexrefv39

OD       = otmp:xref/tools
ROD      = otmp:xref/rtools

# SRCS       = $(FILE)
# OBJS       = $(FILE:"*.c":"$(OD)/*.o")
# EXE        = $(FILE:"*.c":"*.ld")

SRCS     = $(TOOLS:"*":"*.c")
OBJS     = $(TOOLS:"*":"$(OD)/*.o")
EXE      = $(TOOLS:"*":"//debug/*.ld")

LIB      = /lib/xrefsupport.lib //Goodies/extrdargs/extrdargs.o
HEADER   = /lib/xrefsupport.h

TEXT     = xref-tools.txt
TEXTSRCS = strings.c

CATNAME  = xref-tools
CATLANG  = deutsch
CATSUFF  = _D

CATALOG  = $(CATLANG:"*":"//catalogs/*/$(CATNAME).catalog")
CPYCAT   = $(CATLANG:"*":"Locale:Catalogs/*/$(CATNAME).catalog")
CATTRANS = $(CATSUFF:"*":"$(CATNAME)*.ct")

RELSRCS  = $(TOOLS:"*":"*.c")
RELOBJS  = $(TOOLS:"*":"$(ROD)/*.o")
RELEXE   = $(TOOLS:"*":"/c/*")
RELDOC   = $(TOOLS:"*":"//doc/english/*.doc")
RELGUIDE = $(TOOLS:"*":"//help/english/*.guide")
GUIDEDIR = //help/english

DIRS     = $(OD) $(ROD)

DEBUG    = DEBUG=LINE DEFINE=DEBUG_CODE
OPTIMIZE = OPT OPTTIME
CFLAGS   = GST=sc:def.m NOSTKCHK IGNORE=73

LDFLAGS  = SMALLDATA SMALLCODE NOICONS LIB lib:amiga.lib lib:sc.lib lib:debug.lib $(LIB)

all: $(DIRS) $(TEXTSRCS) $(CATALOG) $(CPYCAT) $(EXE)

#############
#
# create all object files
#

$(OBJS) : $(SRCS)
   sc $(DEBUG) $(CFLAGS) CSRC %(right) OBJNAME $(OD)/

$(OBJS) :: $(HEADER)

#############
#
# link the tool
#

$(EXE) : $(OBJS)
   -slink lib:c.o %(right) TO %(left) $(LDFLAGS)
   copy %(left) c:swtools/%(left:"//debug/*.ld":"*")

$(EXE) :: $(LIB)

#############
#
# generate the language catalogs
#

$(TEXTSRCS) : $(TEXT)
   makelocale -d %(right) -s %(left) -cd xref-tools.cd -ct "" \
              -cat xref-tools -inc xref-tools.h -v 1.1

$(CATALOG) : $(CATTRANS)
   catcomp $(CATNAME).cd %(right) CATALOG %(left)

$(CPYCAT) : $(CATALOG)
   copy %(right) to %(left)

#
# bumbrev entry point
#

bumprev:
   bumprev $(VERSION) $(FILE:"*.c":"*")_rev

#
# release entry point
#

release: scpath $(TEXTSRCS) $(RELEXE) $(RELDOC) $(RELGUIDE) clean

$(RELOBJS) : $(RELSRCS)
   sc $(CFLAGS) $(OPTIMIZE) CSRC %(right) OBJNAME $(ROD)/

$(RELOBJS) :: $(HEADER)

$(RELEXE) : $(RELOBJS)
   -slink lib:c.o %(right) TO %(left) $(LDFLAGS)
   copy %(left) c:swtools/

$(RELEXE) :: $(LIB)

$(RELDOC) : $(RELSRCS)
   makedoc %(right) AUTODOC %(left) BEGIN "/**LL******" END "******" \
           CONVERTCOMMENTS VERSION $(VERSION) REVISIONFILE %(right:"*.c":"*_rev.rev") \
           LINELENGTH 79 VERBOSE

guides: $(RELGUIDE)

$(RELGUIDE) : $(RELDOC)
   xrefconvert FROM %(right) TO $(GUIDEDIR) VERBOSE INDENT 0 KEYWORDFILE keywords

clean:
   delete #?.ld #?.lnk #?_rev.i

scpath:
   path sc:c

$(DIRS) : $(DIRS)
   makedir %(left)

