/* * microfocus cobol package setup */ COBOLFLAGS = $(COBOLDIALECT) $(-debug-symbols|"$(CCFLAGS:N=-g|$(CC.DEBUG))":?$(CC.DEBUG)?$(CC.OPTIMIZE)?) COBOLLIBRARIES = -lmfcob COBOL.PLUGIN.LIBRARIES = -lcobrts -lcobcrtn -lcobmisc if "$(COBDIR:P=X)" .SOURCE.h : $(COBDIR)/include end /* * scope CC.* probe vars for cobol links */ .COBOL.LD. : .FUNCTION if "$(!!:A=.SCAN.cob|.SCAN.sqb:O=1)$(!!:N=?(*/)libcob.h:O=1)$(.PACKAGE.cobol.option.always:N!=0)" CC.REQUIRE.ast = -lc -last CC.DYNAMIC = CC.EXPORT.DYNAMIC = CC.SHARED = -Z return $(COBOL) else CC.DYNAMIC := $(.CC.DYNAMIC.ORIGINAL:V) CC.EXPORT.DYNAMIC := $(.CC.EXPORT.DYNAMIC.ORIGINAL:V) CC.SHARED := $(.CC.SHARED.ORIGINAL:V) return $(.$(%).ORIGINAL) end if .PACKAGE.cobol.option.always .MAKEINIT : .COBOL.INIT.AFTER .COBOL.INIT.AFTER : .MAKE .VIRTUAL .FORCE .AFTER .COBOL.INIT end .COBOL.INIT : .MAKE .VIRTUAL .FORCE .IGNORE .CCLD.ORIGINAL := $(CCLD:V) .CC.SHARED.LD.ORIGINAL := $(CC.SHARED.LD:V) .CC.DYNAMIC.ORIGINAL := $(CC.DYNAMIC:V) .CC.EXPORT.DYNAMIC.ORIGINAL := $(CC.EXPORT.DYNAMIC:V) .CC.SHARED.ORIGINAL := $(CC.SHARED:V) CCLD = $(.COBOL.LD. CCLD) CC.SHARED.LD = $(.COBOL.LD. CC.SHARED.LD) LDFLAGS += $$("$$(!:A=.SCAN.cob|.SCAN.sqb:O=1)$$(!:N=?(*/)libcob.h:O=1)":@?$$(COBOLFLAGS:N=-[lLsO]*) $$(CC.EXPORT.DYNAMIC)??) LDLIBRARIES += $$("$$(!:A=.SCAN.cob|.SCAN.sqb:O=1)$$(!:N=?(*/)libcob.h:O=1)":@?$$(COBOLLIBRARIES)??) $(COBOLLIBRARIES) : .DONTCARE for .S. $(.SUFFIX.cob) %.o : %$(.S.) (COBOL) (COBOLDIALECT) (COBOLFLAGS) .COBOL.INIT $(COBOL) -c $(COBOLFLAGS) $(>) end OBJCOPY = objcopy OBJCOPYFLAGS = .COBOL.DEMANGLE : .VIRTUAL .FORCE .REPEAT .AFTER $(OBJCOPY) $(OBJCOPYFLAGS) --redefine-sym $(%%:B:/#/\\$23/)=$(%%:B) $(<<) 1.$(tmp).o && $(MV) 1.$(tmp).o $(<<) %.o : %.c $$(<:B:N=*#*:+.COBOL.DEMANGLE) VACC = varargcc VACCFLAGS = $(CC) $(CCFLAGS) .VACC : .USE $(VACC) $(VACCFLAGS) -c $(*) ":VARARGS:" : .MAKE .OPERATOR local I for I $(>:G=%.o) $(I) : .VACC end