AUSTAL (modified)
rules_austal.make
# rules for making austal
# last change: 2024-01-17
#
# language file: make NLS LAN= VRS=
# e.g.: make NLS LAN=de VRS=3.3.0
#
vpath %.c $(SRC)
vpath %.h $(SRC)
vpath %.nls $(SRC)
vpath %.text $(SRC)/nls
#
OBJALL = TalDos$(OBJ) TalDtb$(OBJ) TalBlm$(OBJ) TalGrd$(OBJ) \
TalHlp$(OBJ) TalIo1$(OBJ) \
TalMat$(OBJ) TalMod$(OBJ) TalNms$(OBJ) \
TalPpm$(OBJ) TalPrm$(OBJ) TalZet$(OBJ) TalPtl$(OBJ) TalSrc$(OBJ) \
TalTmn$(OBJ) TalWrk$(OBJ) TalBds$(OBJ) \
genutl$(OBJ) genio$(OBJ) TalRnd$(OBJ) \
IBJdmng$(OBJ) IBJary$(OBJ) IBJtxt$(OBJ) IBJmsg$(OBJ) IBJgk$(OBJ) \
IBJntr$(OBJ) IBJtm$(OBJ) \
TalUtl$(OBJ) TalUti$(OBJ) TalAKT$(OBJ) TalDef$(OBJ) TalAKS$(OBJ) \
TalInp$(OBJ) TalQtl$(OBJ) TalMtm$(OBJ) TalMon$(OBJ) TalRgl$(OBJ) \
TalPrf$(OBJ) TalDMK$(OBJ) TalDMKutil$(OBJ) TalSOR$(OBJ) \
austal$(OBJ) TALdia$(OBJ) IBJstd$(OBJ) TalCfg$(OBJ) \
TalStt$(OBJ) mpisync$(OBJ) pluris$(OBJ) $(LIBS)
OBJAST = TalDos$(OBJ) TalDtb$(OBJ) TalBlm$(OBJ) TalGrd$(OBJ) \
TalHlp$(OBJ) TalIo1$(OBJ) \
TalMat$(OBJ) TalMod$(OBJ) TalNms$(OBJ) \
TalPpm$(OBJ) TalPrm$(OBJ) TalZet$(OBJ) TalPtl$(OBJ) TalSrc$(OBJ) \
TalTmn$(OBJ) TalWrk$(OBJ) TalBds$(OBJ) \
genutl$(OBJ) genio$(OBJ) TalRnd$(OBJ) \
IBJdmng$(OBJ) IBJary$(OBJ) IBJtxt$(OBJ) IBJmsg$(OBJ) IBJgk$(OBJ) \
IBJntr$(OBJ) IBJtm$(OBJ) \
TalUtl$(OBJ) TalUti$(OBJ) TalAKT$(OBJ) TalDef$(OBJ) TalAKS$(OBJ) \
TalInp$(OBJ) TalQtl$(OBJ) TalMtm$(OBJ) TalMon$(OBJ) TalRgl$(OBJ) \
TalPrf$(OBJ) \
IBJnls$(OBJ) IBJstd$(OBJ) TalCfg$(OBJ) TalStt$(OBJ) pluris$(OBJ) mpisync$(OBJ) $(LIBS)
OBJDIA = TalBlm$(OBJ) TalIo1$(OBJ) TalGrd$(OBJ) \
TalNms$(OBJ) TalTmn$(OBJ) TalMat$(OBJ) TalAdj$(OBJ) \
genutl$(OBJ) genio$(OBJ) \
IBJdmng$(OBJ) IBJary$(OBJ) IBJtxt$(OBJ) IBJmsg$(OBJ) IBJgk$(OBJ) \
IBJtm$(OBJ) \
TalInp$(OBJ) TalDef$(OBJ) TalAKT$(OBJ) TalAKS$(OBJ) TalUtl$(OBJ) \
TalRgl$(OBJ) IBJntr$(OBJ) TalDMK$(OBJ) TalBds$(OBJ) TalSOR$(OBJ) \
TalDMKutil$(OBJ) \
IBJnls$(OBJ) IBJstd$(OBJ) TalCfg$(OBJ) TalStt$(OBJ) $(LIBS)
EXEVRF = verif00$(EXE) verif01$(EXE) verif02$(EXE) \
verif11$(EXE) verif13$(EXE) verif14$(EXE) \
verif21$(EXE) verif22a$(EXE) verif22b$(EXE) \
verif23$(EXE) verif31$(EXE) \
verif41$(EXE) verif51a$(EXE) verif51b$(EXE) verif51c$(EXE) verif61$(EXE)
# programs with native language support
NLSPGM = AST DIA V00 V01 V02 V11 V13 V14 V21 V22a V22b V23 V31 V41 V51a V51b V51c V61
# modules for AST with NLS
NLSAST = austal TalInp IBJstd TalHlp TalMtm TalQtl TalDef IBJary IBJdmn \
IBJmsg IBJntr IBJtxt IBJtm TalAKS TalAKT TalBlm TalDos TalDtb TalGrd \
TalIo1 TalMod TalMon TalPpm TalPrf TalPrm TalPtl TalRgl TalSrc \
TalTmn TalUti TalUtl TalWrk TalZet TalCfg
# modules for DIA with NLS
NLSDIA = TalWnd TalInp TalDef IBJary IBJdmn IBJmsg IBJtxt IBJtm TalAdj \
TalAKS TalAKT TalBds TalBlm TalDMK TalDMKutil TalGrd \
TalIo1 TalRgl TalSOR TalTmn TalUtl TalCfg
#modules for verfication with NLS
NLSVRF = verif00 verif01 verif02 verif11 verif13 verif14 verif21 \
verif22a verif22b verif23 verif31 verif41 verif51a verif51b \
verif51c verif61 TalCfg
NLSV00 = verif00 TalCfg IBJmsg
NLSV01 = verif01 TalCfg IBJmsg
NLSV02 = verif02 TalCfg IBJmsg
NLSV11 = verif11 TalCfg IBJmsg
NLSV13 = verif13 TalCfg IBJmsg
NLSV14 = verif14 TalCfg IBJmsg
NLSV21 = verif21 TalCfg IBJmsg
NLSV22a = verif22a TalCfg IBJmsg
NLSV22b = verif22b TalCfg IBJmsg
NLSV23 = verif23 TalCfg IBJmsg
NLSV31 = verif31 TalCfg IBJmsg
NLSV41 = verif41 TalCfg IBJmsg
NLSV51a = verif51a TalCfg IBJmsg
NLSV51b = verif51b TalCfg IBJmsg
NLSV51c = verif51c TalCfg IBJmsg
NLSV61 = verif61 TalCfg IBJmsg
######################################################## main targets
all austal-system : IBJnls$(EXE) austal$(EXE) verification
NLS : AST_$(LAN).nls DIA_$(LAN).nls VRF_$(LAN).nls
######################################################## implicit rules
#
%$(OBJ) : %.c
$(CC) -c $(COPT) $(SRC)$*.c $(OUTO)$*$(OBJ)
# support for language LAN
%_$(LAN).nls : $(SRC)nls/*.text $(SRC)nls/$(LAN)/*.text IBJnls$(EXE)
IBJnls -collect$(VRS) nls/$(LAN)/$*_$(LAN) $(NLS$*)
# the NLS source code included by the modules
%.nls : %.text IBJnls$(EXE)
IBJnls -prepare $*
# the NLS client source code for usage with a program
IBJnls_%.c : IBJnls$(EXE)
IBJnls -defaults $* $(NLS$*)
IBJnls_%$(OBJ) : IBJnls_%.c
######################################################### explicit rules
austal$(EXE): austal$(OBJ) $(OBJAST) IBJnls_AST$(OBJ)
$(CC) $(COPT) -c $(SRC)IBJstamp.c
$(CC) $(COPT) $(OUTE)austal$(EXE) $(LOPT) austal$(OBJ) IBJstamp$(OBJ) \
$(OBJAST) IBJnls_AST$(OBJ) $(SYSL)
#taldia$(EXE) : TALdia$(OBJ) $(OBJDIA) IBJnls_DIA$(OBJ)
# $(CC) $(COPT) -c $(SRC)IBJstamp.c
# $(CC) $(COPT) $(OUTE)taldia$(EXE) $(LOPT) TALdia$(OBJ) IBJstamp$(OBJ) \
# IBJnls_DIA$(OBJ) $(OBJDIA) $(SYSL)
#pluris$(EXE): pluris$(OBJ)
# $(CC) $(OUTE)pluris$(EXE) $(LOPT) pluris$(OBJ)
# the NLS server
IBJnls$(EXE) : IBJnls_m$(OBJ)
$(CC) $(COPT) $(OUTE)IBJnls$(EXE) $(LOPT) IBJnls_m$(OBJ) $(SYSL)
#
GENHDR = genutl.h genio.h
IBJHDR = IBJtxt.h IBJmsg.h IBJall.h IBJary.h IBJtm.h IBJstamp.h
mpisync$(OBJ) : mpisync.c
IBJstd$(OBJ) : IBJstd.c IBJstd.h IBJmsg.h IBJstd.nls
genutl$(OBJ) : genutl.c genutl.h $(IBJHDR)
genio$(OBJ) : genio.c genio.h genutl.h $(IBJHDR)
gencnv$(OBJ) : gencnv.c gencnv.h $(IBJHDR) $(GENHDR)
IBJary$(OBJ) : IBJary.c IBJary.nls $(IBJHDR)
IBJdmng$(OBJ) : IBJdmn.c IBJdmn.nls IBJdmn.h $(IBJHDR) zlib.h zconf.h
$(CC) -c $(COPT) $(OUTO)IBJdmng$(OBJ) $(SRC)IBJdmn.c
IBJgk$(OBJ) : IBJgk.c IBJgk.h
IBJmsg$(OBJ) : IBJmsg.c IBJmsg.h IBJmsg.nls IBJall.h
IBJnls$(OBJ) : IBJnls.c IBJnls.h
IBJntr$(OBJ) : IBJntr.c IBJntr.h IBJntr.nls IBJdmn.h $(IBJHDR)
IBJstamp$(OBJ): IBJstamp.c IBJstamp.h
IBJtxt$(OBJ) : IBJtxt.c IBJtxt.h IBJtxt.nls IBJmsg.h IBJall.h
IBJtm$(OBJ) : IBJtm.c IBJtm.h IBJtm.nls
TalAdj$(OBJ) : TalAdj.c TalAdj.h TalAdj.nls $(IBJHDR) $(GENHDR)
TalAKS$(OBJ) : TalAKS.c TalAKS.h TalAKS.nls TalInp.h TalStt.h TalCfg.h $(IBJHDR)
TalAKT$(OBJ) : TalAKT.c TalAKT.h TalAKT.nls IBJdmn.h TalInp.h $(IBJHDR)
TalBds$(OBJ) : TalBds.c TalBds.h TalBds.nls TalNms.h TalMat.h TalIo1.h \
IBJdmn.h $(GENHDR)
TalBlm$(OBJ) : TalBlm.c TalBlm.h TalBlm.nls TalGrd.h TalIo1.h TalTmn.h TalNms.h \
IBJstd.h $(IBJHDR) $(GENHDR)
TalCfg$(OBJ) : TalCfg.c TalCfg.h TalCfg.nls
TalDef$(OBJ) : TalDef.c TalDef.h TalDef.nls TalAKT.h TalAKS.h TalInp.h \
TalUtl.h TalMat.h IBJdmn.h TalStt.h TalCfg.h $(IBJHDR)
TalDMK$(OBJ) : TalDMK.c TalSOR.h TalDMK.nls TalDMKutil.h TalDMK.h TalWnd.h \
IBJdmn.h $(IBJHDR)
TalDMKutil$(OBJ) : TalDMKutil.c TalDMKutil.h TalDMKutil.nls $(IBJHDR) TalWnd.h
TalDos$(OBJ) : TalDos.c TalDos.h TalDos.nls TalGrd.h TalBlm.h TalNms.h \
TalPrm.h TalPtl.h \
TalSrc.h TalTmn.h TalWrk.h IBJstd.h $(IBJHDR) $(GENHDR)
TalDtb$(OBJ) : TalDtb.c TalDtb.h TalDtb.nls TalDos.h TalGrd.h TalMod.h TalNms.h \
TalInp.h TalPrm.h TalZet.c TalZet.h \
TalTmn.h TalWrk.h TalBlm.h IBJstd.h IBJdmn.h $(IBJHDR) $(GENHDR)
TalGrd$(OBJ) : TalGrd.c TalGrd.h TalGrd.nls IBJstd.h TalNms.h TalTmn.h TalBds.h \
IBJdmn.h $(IBJHDR) $(GENHDR)
TalHlp$(OBJ) : TalHlp.c TalHlp.h TalHlp.nls TalCfg.h IBJmsg.h
TalInp$(OBJ) : TalInp.c TalInp.h TalInp.nls IBJdmn.h TalCfg.h $(IBJHDR) \
TalUtl.h TalAKT.h TalDef.h TalAKS.h IBJntr.h TalStt.h \
TalMat.h TalDMK.h TalZet.h TalRgl.h
TalIo1$(OBJ) : TalIo1.c TalIo1.h TalIo1.nls IBJmsg.h IBJary.h IBJtm.h $(GENHDR)
TalMat$(OBJ) : TalMat.c TalMat.h
TalMod$(OBJ) : TalMod.c TalMod.h TalMod.nls TalPrf.h TalGrd.h TalPrm.h TalNms.h \
TalTmn.h IBJstd.h IBJdmn.h $(IBJHDR) $(GENHDR)
TalMon$(OBJ) : TalMon.c TalMon.h TalMon.nls TalInp.h TalCfg.h TalUti.h \
IBJdmn.h $(IBJHDR)
TalMtm$(OBJ) : TalMtm.c TalMtm.h TalMtm.nls genutl.h IBJdmn.h $(IBJHDR)
TalNms$(OBJ) : TalNms.c TalNms.h
TalPpm$(OBJ) : TalPpm.c TalPpm.h TalPpm.nls TalGrd.h TalNms.h TalMod.h \
TalPrf.h TalPrm.h TalTmn.h IBJstd.h IBJdmn.h $(IBJHDR) $(GENHDR)
TalPrf$(OBJ) : TalPrf.c TalPrf.h TalPrf.nls TalBlm.h TalGrd.h TalIo1.h TalNms.h \
TalTmn.h IBJstd.h TalWnd.h TalUtl.h TalPrm.h IBJdmn.h $(GENHDR) $(IBJHDR)
TalPrm$(OBJ) : TalPrm.c TalPrm.h TalPrm.nls IBJstd.h TalNms.h TalTmn.h \
TalIo1.h TalGrd.h $(IBJHDR) $(GENHDR)
TalPtl$(OBJ) : TalPtl.c TalPtl.h TalPtl.nls TalNms.h TalTmn.h IBJstd.h \
TalInp.h $(IBJHDR) $(GENHDR)
TalQtl$(OBJ) : TalQtl.c TalQtl.h TalQtl.nls TalDtb.h TalUtl.h \
IBJstamp.h IBJdmn.h $(IBJHDR)
TalRgl$(OBJ) : TalRgl.c TalRgl.h TalRgl.nls IBJgk.h IBJdmn.h $(IBJHDR)
TalRnd$(OBJ) : TalRnd.c TalRnd.h
TalSOR$(OBJ) : TalSOR.c TalSOR.h TalSOR.nls IBJmsg.h IBJary.h TalDMKutil.h \
TalWnd.h
TalSrc$(OBJ) : TalSrc.c TalSrc.h TalSrc.nls TalGrd.h TalNms.h TalPrm.h \
TalPtl.h IBJstd.h TalRnd.h TalTmn.h IBJdmn.h $(IBJHDR) $(GENHDR)
TalStt$(OBJ) : TalStt.c TalStt.h IBJdmn.h IBJtxt.h IBJary.h IBJmsg.h
TalTmn$(OBJ) : TalTmn.c TalTmn.h TalTmn.nls IBJdmn.h $(IBJHDR) $(GENHDR)
TalUti$(OBJ) : TalUti.c TalUti.h TalUti.nls TalCfg.h IBJdmn.h $(IBJHDR)
TalUtl$(OBJ) : TalUtl.c TalUtl.h TalUtl.nls $(IBJHDR)
TalWrk$(OBJ) : TalWrk.c TalWrk.h TalWrk.nls TalGrd.h TalMat.h TalMod.h \
TalNms.h TalPrf.h TalPrm.h TalPtl.h TalPpm.h \
TalSrc.h TalTmn.h IBJstd.h IBJdmn.h pluris.h $(IBJHDR) $(GENHDR)
TalZet$(OBJ) : TalZet.c TalZet.h TalZet.nls TalGrd.h IBJstd.h TalNms.h \
TalTmn.h IBJdmn.h $(IBJHDR) $(GENHDR)
austal$(OBJ) : austal.c austal.h austal.nls IBJstd.nls\
TalDos.h TalDtb.h pluris.h \
TalGrd.h TalIo1.h TalMod.h TalNms.h \
TalPrf.h TalPrm.h TalPtl.h TalSrc.h TalTmn.h TalWrk.h \
TalInp.h TalDef.h TalMtm.h TalQtl.h TalMon.h TalUti.h \
TalUtl.h TalRnd.h $(IBJHDR) IBJstamp.h IBJstd.h $(GENHDR) \
TalCfg.h TalStt.h mpisync.h
$(CC) -DMAIN $(COPT) -c $(SRC)austal.c $(OUTO)austal$(OBJ)
pluris$(OBJ): pluris.c pluris.h
$(CC) -c $(COPT) $(SRC)pluris.c $(OUTO)pluris$(OBJ)
TALdia$(OBJ) : TalWnd.c TalWnd.h TalWnd.nls TalGrd.h TalBlm.h TalNms.h \
TalTmn.h TalMat.h IBJstd.h TalAdj.h $(IBJHDR) TalBds.h \
$(GENHDR) TalInp.h TalDef.h TalDMK.h TalDMKutil.h IBJdmn.h \
TalStt.h IBJtm.h IBJnls.h
$(CC) -DMAIN -c $(COPT) $< $(OUTO)$@
IBJnls_m$(OBJ) : IBJnls.c
$(CC) -DMAIN $(COPT) -c $(SRC)IBJnls.c $(OUTO)IBJnls_m$(OBJ)
########################################################################
verification : $(EXEVRF)
verif%$(EXE) : verif%.c verif.h verif%.nls IBJnls_V%.c TalCfg.h IBJmsg.h \
TalCfg$(OBJ) IBJmsg$(OBJ)
$(CC) -c $(COPT) $(SRC)IBJnls_V$*.c $(OUTO)IBJnls_V$*$(OBJ)
$(CC) $(COPT) $< $(LOPT) IBJnls_V$*$(OBJ) IBJnls$(OBJ) TalCfg$(OBJ) \
IBJmsg$(OBJ) $(SYSL) $(OUTE)$@
IBJnls_V%.c : $(SRC)nls/verif%.text
IBJnls -defaults V$* $(NLSV$*)
###################### remove all object files #####################
.PHONY : clean clean_nls
clean :
$(REMOVE) *$(OBJ) austal$(EXE) taldia$(EXE) IBJnls$(EXE) $(EXEVRF) \
$(SRCRM)*.nls $(SRCRM)IBJnls_*.c
clean_nls :
$(REMOVE) IBJnls_*$(OBJ) $(SRCRM)IBJnls_*.c
##########################################################################
# last change: 2024-01-17
#
# language file: make NLS LAN=
# e.g.: make NLS LAN=de VRS=3.3.0
#
vpath %.c $(SRC)
vpath %.h $(SRC)
vpath %.nls $(SRC)
vpath %.text $(SRC)/nls
#
OBJALL = TalDos$(OBJ) TalDtb$(OBJ) TalBlm$(OBJ) TalGrd$(OBJ) \
TalHlp$(OBJ) TalIo1$(OBJ) \
TalMat$(OBJ) TalMod$(OBJ) TalNms$(OBJ) \
TalPpm$(OBJ) TalPrm$(OBJ) TalZet$(OBJ) TalPtl$(OBJ) TalSrc$(OBJ) \
TalTmn$(OBJ) TalWrk$(OBJ) TalBds$(OBJ) \
genutl$(OBJ) genio$(OBJ) TalRnd$(OBJ) \
IBJdmng$(OBJ) IBJary$(OBJ) IBJtxt$(OBJ) IBJmsg$(OBJ) IBJgk$(OBJ) \
IBJntr$(OBJ) IBJtm$(OBJ) \
TalUtl$(OBJ) TalUti$(OBJ) TalAKT$(OBJ) TalDef$(OBJ) TalAKS$(OBJ) \
TalInp$(OBJ) TalQtl$(OBJ) TalMtm$(OBJ) TalMon$(OBJ) TalRgl$(OBJ) \
TalPrf$(OBJ) TalDMK$(OBJ) TalDMKutil$(OBJ) TalSOR$(OBJ) \
austal$(OBJ) TALdia$(OBJ) IBJstd$(OBJ) TalCfg$(OBJ) \
TalStt$(OBJ) mpisync$(OBJ) pluris$(OBJ) $(LIBS)
OBJAST = TalDos$(OBJ) TalDtb$(OBJ) TalBlm$(OBJ) TalGrd$(OBJ) \
TalHlp$(OBJ) TalIo1$(OBJ) \
TalMat$(OBJ) TalMod$(OBJ) TalNms$(OBJ) \
TalPpm$(OBJ) TalPrm$(OBJ) TalZet$(OBJ) TalPtl$(OBJ) TalSrc$(OBJ) \
TalTmn$(OBJ) TalWrk$(OBJ) TalBds$(OBJ) \
genutl$(OBJ) genio$(OBJ) TalRnd$(OBJ) \
IBJdmng$(OBJ) IBJary$(OBJ) IBJtxt$(OBJ) IBJmsg$(OBJ) IBJgk$(OBJ) \
IBJntr$(OBJ) IBJtm$(OBJ) \
TalUtl$(OBJ) TalUti$(OBJ) TalAKT$(OBJ) TalDef$(OBJ) TalAKS$(OBJ) \
TalInp$(OBJ) TalQtl$(OBJ) TalMtm$(OBJ) TalMon$(OBJ) TalRgl$(OBJ) \
TalPrf$(OBJ) \
IBJnls$(OBJ) IBJstd$(OBJ) TalCfg$(OBJ) TalStt$(OBJ) pluris$(OBJ) mpisync$(OBJ) $(LIBS)
OBJDIA = TalBlm$(OBJ) TalIo1$(OBJ) TalGrd$(OBJ) \
TalNms$(OBJ) TalTmn$(OBJ) TalMat$(OBJ) TalAdj$(OBJ) \
genutl$(OBJ) genio$(OBJ) \
IBJdmng$(OBJ) IBJary$(OBJ) IBJtxt$(OBJ) IBJmsg$(OBJ) IBJgk$(OBJ) \
IBJtm$(OBJ) \
TalInp$(OBJ) TalDef$(OBJ) TalAKT$(OBJ) TalAKS$(OBJ) TalUtl$(OBJ) \
TalRgl$(OBJ) IBJntr$(OBJ) TalDMK$(OBJ) TalBds$(OBJ) TalSOR$(OBJ) \
TalDMKutil$(OBJ) \
IBJnls$(OBJ) IBJstd$(OBJ) TalCfg$(OBJ) TalStt$(OBJ) $(LIBS)
EXEVRF = verif00$(EXE) verif01$(EXE) verif02$(EXE) \
verif11$(EXE) verif13$(EXE) verif14$(EXE) \
verif21$(EXE) verif22a$(EXE) verif22b$(EXE) \
verif23$(EXE) verif31$(EXE) \
verif41$(EXE) verif51a$(EXE) verif51b$(EXE) verif51c$(EXE) verif61$(EXE)
# programs with native language support
NLSPGM = AST DIA V00 V01 V02 V11 V13 V14 V21 V22a V22b V23 V31 V41 V51a V51b V51c V61
# modules for AST with NLS
NLSAST = austal TalInp IBJstd TalHlp TalMtm TalQtl TalDef IBJary IBJdmn \
IBJmsg IBJntr IBJtxt IBJtm TalAKS TalAKT TalBlm TalDos TalDtb TalGrd \
TalIo1 TalMod TalMon TalPpm TalPrf TalPrm TalPtl TalRgl TalSrc \
TalTmn TalUti TalUtl TalWrk TalZet TalCfg
# modules for DIA with NLS
NLSDIA = TalWnd TalInp TalDef IBJary IBJdmn IBJmsg IBJtxt IBJtm TalAdj \
TalAKS TalAKT TalBds TalBlm TalDMK TalDMKutil TalGrd \
TalIo1 TalRgl TalSOR TalTmn TalUtl TalCfg
#modules for verfication with NLS
NLSVRF = verif00 verif01 verif02 verif11 verif13 verif14 verif21 \
verif22a verif22b verif23 verif31 verif41 verif51a verif51b \
verif51c verif61 TalCfg
NLSV00 = verif00 TalCfg IBJmsg
NLSV01 = verif01 TalCfg IBJmsg
NLSV02 = verif02 TalCfg IBJmsg
NLSV11 = verif11 TalCfg IBJmsg
NLSV13 = verif13 TalCfg IBJmsg
NLSV14 = verif14 TalCfg IBJmsg
NLSV21 = verif21 TalCfg IBJmsg
NLSV22a = verif22a TalCfg IBJmsg
NLSV22b = verif22b TalCfg IBJmsg
NLSV23 = verif23 TalCfg IBJmsg
NLSV31 = verif31 TalCfg IBJmsg
NLSV41 = verif41 TalCfg IBJmsg
NLSV51a = verif51a TalCfg IBJmsg
NLSV51b = verif51b TalCfg IBJmsg
NLSV51c = verif51c TalCfg IBJmsg
NLSV61 = verif61 TalCfg IBJmsg
######################################################## main targets
all austal-system : IBJnls$(EXE) austal$(EXE) verification
NLS : AST_$(LAN).nls DIA_$(LAN).nls VRF_$(LAN).nls
######################################################## implicit rules
#
%$(OBJ) : %.c
$(CC) -c $(COPT) $(SRC)$*.c $(OUTO)$*$(OBJ)
# support for language LAN
%_$(LAN).nls : $(SRC)nls/*.text $(SRC)nls/$(LAN)/*.text IBJnls$(EXE)
IBJnls -collect$(VRS) nls/$(LAN)/$*_$(LAN) $(NLS$*)
# the NLS source code included by the modules
%.nls : %.text IBJnls$(EXE)
IBJnls -prepare $*
# the NLS client source code for usage with a program
IBJnls_%.c : IBJnls$(EXE)
IBJnls -defaults $* $(NLS$*)
IBJnls_%$(OBJ) : IBJnls_%.c
######################################################### explicit rules
austal$(EXE): austal$(OBJ) $(OBJAST) IBJnls_AST$(OBJ)
$(CC) $(COPT) -c $(SRC)IBJstamp.c
$(CC) $(COPT) $(OUTE)austal$(EXE) $(LOPT) austal$(OBJ) IBJstamp$(OBJ) \
$(OBJAST) IBJnls_AST$(OBJ) $(SYSL)
#taldia$(EXE) : TALdia$(OBJ) $(OBJDIA) IBJnls_DIA$(OBJ)
# $(CC) $(COPT) -c $(SRC)IBJstamp.c
# $(CC) $(COPT) $(OUTE)taldia$(EXE) $(LOPT) TALdia$(OBJ) IBJstamp$(OBJ) \
# IBJnls_DIA$(OBJ) $(OBJDIA) $(SYSL)
#pluris$(EXE): pluris$(OBJ)
# $(CC) $(OUTE)pluris$(EXE) $(LOPT) pluris$(OBJ)
# the NLS server
IBJnls$(EXE) : IBJnls_m$(OBJ)
$(CC) $(COPT) $(OUTE)IBJnls$(EXE) $(LOPT) IBJnls_m$(OBJ) $(SYSL)
#
GENHDR = genutl.h genio.h
IBJHDR = IBJtxt.h IBJmsg.h IBJall.h IBJary.h IBJtm.h IBJstamp.h
mpisync$(OBJ) : mpisync.c
IBJstd$(OBJ) : IBJstd.c IBJstd.h IBJmsg.h IBJstd.nls
genutl$(OBJ) : genutl.c genutl.h $(IBJHDR)
genio$(OBJ) : genio.c genio.h genutl.h $(IBJHDR)
gencnv$(OBJ) : gencnv.c gencnv.h $(IBJHDR) $(GENHDR)
IBJary$(OBJ) : IBJary.c IBJary.nls $(IBJHDR)
IBJdmng$(OBJ) : IBJdmn.c IBJdmn.nls IBJdmn.h $(IBJHDR) zlib.h zconf.h
$(CC) -c $(COPT) $(OUTO)IBJdmng$(OBJ) $(SRC)IBJdmn.c
IBJgk$(OBJ) : IBJgk.c IBJgk.h
IBJmsg$(OBJ) : IBJmsg.c IBJmsg.h IBJmsg.nls IBJall.h
IBJnls$(OBJ) : IBJnls.c IBJnls.h
IBJntr$(OBJ) : IBJntr.c IBJntr.h IBJntr.nls IBJdmn.h $(IBJHDR)
IBJstamp$(OBJ): IBJstamp.c IBJstamp.h
IBJtxt$(OBJ) : IBJtxt.c IBJtxt.h IBJtxt.nls IBJmsg.h IBJall.h
IBJtm$(OBJ) : IBJtm.c IBJtm.h IBJtm.nls
TalAdj$(OBJ) : TalAdj.c TalAdj.h TalAdj.nls $(IBJHDR) $(GENHDR)
TalAKS$(OBJ) : TalAKS.c TalAKS.h TalAKS.nls TalInp.h TalStt.h TalCfg.h $(IBJHDR)
TalAKT$(OBJ) : TalAKT.c TalAKT.h TalAKT.nls IBJdmn.h TalInp.h $(IBJHDR)
TalBds$(OBJ) : TalBds.c TalBds.h TalBds.nls TalNms.h TalMat.h TalIo1.h \
IBJdmn.h $(GENHDR)
TalBlm$(OBJ) : TalBlm.c TalBlm.h TalBlm.nls TalGrd.h TalIo1.h TalTmn.h TalNms.h \
IBJstd.h $(IBJHDR) $(GENHDR)
TalCfg$(OBJ) : TalCfg.c TalCfg.h TalCfg.nls
TalDef$(OBJ) : TalDef.c TalDef.h TalDef.nls TalAKT.h TalAKS.h TalInp.h \
TalUtl.h TalMat.h IBJdmn.h TalStt.h TalCfg.h $(IBJHDR)
TalDMK$(OBJ) : TalDMK.c TalSOR.h TalDMK.nls TalDMKutil.h TalDMK.h TalWnd.h \
IBJdmn.h $(IBJHDR)
TalDMKutil$(OBJ) : TalDMKutil.c TalDMKutil.h TalDMKutil.nls $(IBJHDR) TalWnd.h
TalDos$(OBJ) : TalDos.c TalDos.h TalDos.nls TalGrd.h TalBlm.h TalNms.h \
TalPrm.h TalPtl.h \
TalSrc.h TalTmn.h TalWrk.h IBJstd.h $(IBJHDR) $(GENHDR)
TalDtb$(OBJ) : TalDtb.c TalDtb.h TalDtb.nls TalDos.h TalGrd.h TalMod.h TalNms.h \
TalInp.h TalPrm.h TalZet.c TalZet.h \
TalTmn.h TalWrk.h TalBlm.h IBJstd.h IBJdmn.h $(IBJHDR) $(GENHDR)
TalGrd$(OBJ) : TalGrd.c TalGrd.h TalGrd.nls IBJstd.h TalNms.h TalTmn.h TalBds.h \
IBJdmn.h $(IBJHDR) $(GENHDR)
TalHlp$(OBJ) : TalHlp.c TalHlp.h TalHlp.nls TalCfg.h IBJmsg.h
TalInp$(OBJ) : TalInp.c TalInp.h TalInp.nls IBJdmn.h TalCfg.h $(IBJHDR) \
TalUtl.h TalAKT.h TalDef.h TalAKS.h IBJntr.h TalStt.h \
TalMat.h TalDMK.h TalZet.h TalRgl.h
TalIo1$(OBJ) : TalIo1.c TalIo1.h TalIo1.nls IBJmsg.h IBJary.h IBJtm.h $(GENHDR)
TalMat$(OBJ) : TalMat.c TalMat.h
TalMod$(OBJ) : TalMod.c TalMod.h TalMod.nls TalPrf.h TalGrd.h TalPrm.h TalNms.h \
TalTmn.h IBJstd.h IBJdmn.h $(IBJHDR) $(GENHDR)
TalMon$(OBJ) : TalMon.c TalMon.h TalMon.nls TalInp.h TalCfg.h TalUti.h \
IBJdmn.h $(IBJHDR)
TalMtm$(OBJ) : TalMtm.c TalMtm.h TalMtm.nls genutl.h IBJdmn.h $(IBJHDR)
TalNms$(OBJ) : TalNms.c TalNms.h
TalPpm$(OBJ) : TalPpm.c TalPpm.h TalPpm.nls TalGrd.h TalNms.h TalMod.h \
TalPrf.h TalPrm.h TalTmn.h IBJstd.h IBJdmn.h $(IBJHDR) $(GENHDR)
TalPrf$(OBJ) : TalPrf.c TalPrf.h TalPrf.nls TalBlm.h TalGrd.h TalIo1.h TalNms.h \
TalTmn.h IBJstd.h TalWnd.h TalUtl.h TalPrm.h IBJdmn.h $(GENHDR) $(IBJHDR)
TalPrm$(OBJ) : TalPrm.c TalPrm.h TalPrm.nls IBJstd.h TalNms.h TalTmn.h \
TalIo1.h TalGrd.h $(IBJHDR) $(GENHDR)
TalPtl$(OBJ) : TalPtl.c TalPtl.h TalPtl.nls TalNms.h TalTmn.h IBJstd.h \
TalInp.h $(IBJHDR) $(GENHDR)
TalQtl$(OBJ) : TalQtl.c TalQtl.h TalQtl.nls TalDtb.h TalUtl.h \
IBJstamp.h IBJdmn.h $(IBJHDR)
TalRgl$(OBJ) : TalRgl.c TalRgl.h TalRgl.nls IBJgk.h IBJdmn.h $(IBJHDR)
TalRnd$(OBJ) : TalRnd.c TalRnd.h
TalSOR$(OBJ) : TalSOR.c TalSOR.h TalSOR.nls IBJmsg.h IBJary.h TalDMKutil.h \
TalWnd.h
TalSrc$(OBJ) : TalSrc.c TalSrc.h TalSrc.nls TalGrd.h TalNms.h TalPrm.h \
TalPtl.h IBJstd.h TalRnd.h TalTmn.h IBJdmn.h $(IBJHDR) $(GENHDR)
TalStt$(OBJ) : TalStt.c TalStt.h IBJdmn.h IBJtxt.h IBJary.h IBJmsg.h
TalTmn$(OBJ) : TalTmn.c TalTmn.h TalTmn.nls IBJdmn.h $(IBJHDR) $(GENHDR)
TalUti$(OBJ) : TalUti.c TalUti.h TalUti.nls TalCfg.h IBJdmn.h $(IBJHDR)
TalUtl$(OBJ) : TalUtl.c TalUtl.h TalUtl.nls $(IBJHDR)
TalWrk$(OBJ) : TalWrk.c TalWrk.h TalWrk.nls TalGrd.h TalMat.h TalMod.h \
TalNms.h TalPrf.h TalPrm.h TalPtl.h TalPpm.h \
TalSrc.h TalTmn.h IBJstd.h IBJdmn.h pluris.h $(IBJHDR) $(GENHDR)
TalZet$(OBJ) : TalZet.c TalZet.h TalZet.nls TalGrd.h IBJstd.h TalNms.h \
TalTmn.h IBJdmn.h $(IBJHDR) $(GENHDR)
austal$(OBJ) : austal.c austal.h austal.nls IBJstd.nls\
TalDos.h TalDtb.h pluris.h \
TalGrd.h TalIo1.h TalMod.h TalNms.h \
TalPrf.h TalPrm.h TalPtl.h TalSrc.h TalTmn.h TalWrk.h \
TalInp.h TalDef.h TalMtm.h TalQtl.h TalMon.h TalUti.h \
TalUtl.h TalRnd.h $(IBJHDR) IBJstamp.h IBJstd.h $(GENHDR) \
TalCfg.h TalStt.h mpisync.h
$(CC) -DMAIN $(COPT) -c $(SRC)austal.c $(OUTO)austal$(OBJ)
pluris$(OBJ): pluris.c pluris.h
$(CC) -c $(COPT) $(SRC)pluris.c $(OUTO)pluris$(OBJ)
TALdia$(OBJ) : TalWnd.c TalWnd.h TalWnd.nls TalGrd.h TalBlm.h TalNms.h \
TalTmn.h TalMat.h IBJstd.h TalAdj.h $(IBJHDR) TalBds.h \
$(GENHDR) TalInp.h TalDef.h TalDMK.h TalDMKutil.h IBJdmn.h \
TalStt.h IBJtm.h IBJnls.h
$(CC) -DMAIN -c $(COPT) $< $(OUTO)$@
IBJnls_m$(OBJ) : IBJnls.c
$(CC) -DMAIN $(COPT) -c $(SRC)IBJnls.c $(OUTO)IBJnls_m$(OBJ)
########################################################################
verification : $(EXEVRF)
verif%$(EXE) : verif%.c verif.h verif%.nls IBJnls_V%.c TalCfg.h IBJmsg.h \
TalCfg$(OBJ) IBJmsg$(OBJ)
$(CC) -c $(COPT) $(SRC)IBJnls_V$*.c $(OUTO)IBJnls_V$*$(OBJ)
$(CC) $(COPT) $< $(LOPT) IBJnls_V$*$(OBJ) IBJnls$(OBJ) TalCfg$(OBJ) \
IBJmsg$(OBJ) $(SYSL) $(OUTE)$@
IBJnls_V%.c : $(SRC)nls/verif%.text
IBJnls -defaults V$* $(NLSV$*)
###################### remove all object files #####################
.PHONY : clean clean_nls
clean :
$(REMOVE) *$(OBJ) austal$(EXE) taldia$(EXE) IBJnls$(EXE) $(EXEVRF) \
$(SRCRM)*.nls $(SRCRM)IBJnls_*.c
clean_nls :
$(REMOVE) IBJnls_*$(OBJ) $(SRCRM)IBJnls_*.c
##########################################################################