S       = src
I       = include
O       = obj

GSTFILE = $O/NetProbe.gst

STARTUP = LIB:c.o
STDLIBS = LIB:sc.lib LIB:envoy.lib LIB:envoysupport.lib LIB:amiga.lib LIB:debug.lib



#
#   Flags halt
#

CFLAGS_1    = NoVersion AutoRegister StringMerge NoIcons nostkchk
CFLAGS_2    = IDIR=include/ NOMINC STREQ

CFLAGS      = $(CFLAGS_1) $(CFLAGS_2) Debug=Line # Debug=FullFlush


#
#   Client
#

OBJ         = $O/main.o $O/stuff.o $O/Timer.o $O/Envoy.o $O/Version.o

PROG        = bin/NetProbe
PROGVERS    = 3



#
#   Targets
#

all: $(GSTFILE) $(PROG)-MUI $(PROG)-Shell
#   $(PROG)-MUI &
#   start_shell


$(GSTFILE): $I/makegst.h
    @echo "\#include <makegst.h>" > $S/makegst.c
    @sc noobjname MakeGst=$(GSTFILE) $(CFLAGS) $S/makegst.c
    @rm $S/makegst.c


archive:
    -delete /NetProbe.lha
    -delete obj/*.o
    -delete obj/*.gst
    "'/';'lha -r a NetProbe.lha NetProbe';'lha v NetProbe.lha'"
    lha d /NetProbe.lha *tmp*

release:
    lha d /NetProbe.lha *RCS*



#
#   Executables
#

bump:
    @"'cd include';'bumprev $(PROGVERS) NetProbe';'popcd'"
    @sc OBJNAME=obj/Version.o src/Version.c $(CFLAGS) GSTImmediate GST=$(GSTFILE)


$(PROG)-MUI: $(OBJ) $O/ui-MUI.o
    @slink TO $@ FROM $(STARTUP) $(OBJ) $O/ui-MUI.o LIB $(STDLIBS) quiet batch noicons ADDSYM

$(PROG)-Shell: $(OBJ) $O/ui-Shell.o
    @slink TO $@ FROM $(STARTUP) $(OBJ) $O/ui-Shell.o LIB $(STDLIBS) quiet batch noicons ADDSYM



#
#   Catch-all rule
#

.c.o:
    @sc OBJNAME=$@ $*.c $(CFLAGS) GSTImmediate GST=$(GSTFILE)




$O/main.o:              $S/main.c       $I/config.h
$O/Timer.o:             $S/Timer.c      $I/config.h
$O/Envoy.o:             $S/Envoy.c      $I/config.h
$O/stuff.o:             $S/stuff.c      $I/config.h
$O/Version.o:           $S/Version.c

$O/ui-MUI.o:            $S/ui-MUI.c     $I/config.h $I/ui-MUI.h
$O/ui-Shell.o:          $S/ui-Shell.c   $I/config.h $I/ui-Shell.h
