| # | |
| # A simple Makefile to demonstrate how the compat/lib programs are used. | |
| # | |
| COBC = gcobol -g -O0 | |
| CFLAGS = -fPIC | |
| COBCFLAGS = -fPIC -ffixed-form | |
| INCLUDE = ../../posix/cpy ../../posix/udf ../gnu/cpy | |
| FLAGS = -dialect mf $(addprefix -I,$(INCLUDE)) | |
| COMPAT = $(subst .cbl,.o,$(wildcard ../gnu/lib/*.cbl)) \ | |
| $(subst .cbl,.o,$(wildcard ../gnu/udf/*.cbl)) \ | |
| $(subst .c,.o,$(wildcard ../gnu/udf/*.c)) | |
| POSIXOBJS = $(subst .cbl,.o,$(wildcard ../../posix/udf/posix-*.cbl)) | |
| test: smoke | |
| ./$^ | |
| smoke: smoke.cbl libcompat.so libposix.so | |
| $(ENV) $(COBC) -o $@ $(FLAGS) $(COBCFLAGS) $< $(LDFLAGS) \ | |
| -L. -lcompat -lposix -Wl,-rpath=$(PWD) | |
| smoke-old: smoke.cbl $(COMPAT) | |
| $(ENV) $(COBC) -o $@ $(FLAGS) $(COBCFLAGS) $(LDFLAGS) $^ | |
| byte: byte-stream-test.cbl libcompat.so libposix.so | |
| $(ENV) $(COBC) -o $@ $(FLAGS) $(COBCFLAGS) $< $(LDFLAGS) \ | |
| -L. -lcompat -lposix -Wl,-rpath=$(PWD) | |
| libcompat.so: $(COMPAT) | |
| $(ENV) $(COBC) -o $@ -shared $(FLAGS) $(COBCFLAGS) $(LDFLAGS) $(COMPAT) | |
| libposix.so: $(POSIXOBJS) | |
| $(ENV) $(COBC) -o $@ -shared -ffixed-form \ | |
| $(FLAGS) $(COBCFLAGS) $(LDFLAGS) $^ | |
| %.o : %.cbl | |
| $(ENV) $(COBC) -c -o $@ $(FLAGS) $(COBCFLAGS) $^ | |
| % : %.cbl | |
| $(ENV) $(COBC) -o $@ $(FLAGS) $(COBCFLAGS) $(LDFLAGS) $^ | |
| echo: | |
| @echo wildcard is $(wildcard ../lib/gnu/*.cbl) | |
| @echo COMPAT is $(COMPAT) | |
| clean: | |
| rm -f smoke libcompat.so libposix.so $(COMPAT) $(POSIXOBJS) |