Work on both shared and static linking.
This commit is contained in:
parent
0005e70632
commit
3dd329af5b
1 changed files with 40 additions and 20 deletions
60
Makefile
60
Makefile
|
@ -28,87 +28,107 @@ all: brmsaptool brmsaptool-static
|
||||||
|
|
||||||
CSC=csc
|
CSC=csc
|
||||||
|
|
||||||
BRMSAPTOOL-SOURCES=brmsaptool.o testing.o listing.o month.o period.o \
|
BRMSAPTOOL-OBJS=brmsaptool.o testing.o listing.o month.o period.o \
|
||||||
ansi.o member-file.o dictionary.o command-line.o \
|
ansi.o member-file.o dictionary.o command-line.o \
|
||||||
members-base.o utils.o
|
members-base.o utils.o
|
||||||
|
|
||||||
brmsaptool: $(BRMSAPTOOL-SOURCES)
|
BRMSAPTOOL-SHARED=brmsaptool.so testing.so listing.so month.so \
|
||||||
$(CSC) -o $@ $^
|
period.so ansi.so member-file.so dictionary.so \
|
||||||
|
command-line.so members-base.so utils.so
|
||||||
|
|
||||||
brmsaptool-static: brmsaptool.scm $(BRMSAPTOOL-SOURCES)
|
brmsaptool: $(BRMSAPTOOL-OBJS) $(BRMSAPTOOL-SHARED)
|
||||||
|
$(CSC) -o $@ $(BRMSAPTOOL-OBJS)
|
||||||
|
|
||||||
|
brmsaptool-static: brmsaptool.scm $(BRMSAPTOOL-OBJS)
|
||||||
$(CSC) -static -o $@ $<
|
$(CSC) -static -o $@ $<
|
||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
clean:
|
clean:
|
||||||
rm -f *.link *.o *.import.scm brmsaptool brmsaptool-static
|
rm -f *.so *.link *.o *.import.scm brmsaptool brmsaptool-static
|
||||||
|
|
||||||
################################################################
|
################################################################
|
||||||
# Module shared object and import source compilation
|
# Module static and shared object and import source compilation
|
||||||
|
|
||||||
%.o: %.scm
|
%.o: %.scm
|
||||||
$(CSC) -c $<
|
$(CSC) -c $<
|
||||||
|
|
||||||
|
%.so: %.scm
|
||||||
|
$(CSC) -s $<
|
||||||
|
|
||||||
%.import.scm: %.scm
|
%.import.scm: %.scm
|
||||||
$(CSC) -c -J $<
|
$(CSC) -t -J $<
|
||||||
|
|
||||||
################################################################
|
################################################################
|
||||||
# Modules
|
# Modules
|
||||||
|
|
||||||
brmsaptool.o: brmsaptool.scm testing.import.scm listing.import.scm \
|
BRMSAPTOOL-SOURCES=brmsaptool.scm testing.import.scm \
|
||||||
dictionary.import.scm month.import.scm period.import.scm \
|
listing.import.scm dictionary.import.scm month.import.scm \
|
||||||
ansi.import.scm member-file.import.scm \
|
period.import.scm ansi.import.scm member-file.import.scm \
|
||||||
command-line.import.scm members-base.import.scm \
|
command-line.import.scm members-base.import.scm \
|
||||||
utils.import.scm
|
utils.import.scm
|
||||||
|
|
||||||
|
brmsaptool.so: $(BRMSAPTOOL-SOURCES)
|
||||||
|
brmsaptool.o: $(BRMSAPTOOL-SOURCES) brmsaptool.so
|
||||||
|
|
||||||
TESTING-SOURCES=testing.scm
|
TESTING-SOURCES=testing.scm
|
||||||
|
|
||||||
testing.o: $(TESTING-SOURCES)
|
testing.so: $(TESTING-SOURCES)
|
||||||
|
testing.o: $(TESTING-SOURCES) testing.so
|
||||||
testing.import.scm: $(TESTING-SOURCES)
|
testing.import.scm: $(TESTING-SOURCES)
|
||||||
|
|
||||||
LISTING-SOURCES=listing.scm testing.import.scm
|
LISTING-SOURCES=listing.scm testing.import.scm
|
||||||
|
|
||||||
listing.o: $(LISTING-SOURCES)
|
listing.so: $(LISTING-SOURCES)
|
||||||
|
listing.o: $(LISTING-SOURCES) listing.so
|
||||||
listing.import.scm: $(LISTING-SOURCES)
|
listing.import.scm: $(LISTING-SOURCES)
|
||||||
|
|
||||||
DICTIONARY-SOURCES=dictionary.scm testing.import.scm
|
DICTIONARY-SOURCES=dictionary.scm testing.import.scm
|
||||||
|
|
||||||
dictionary.o: $(DICTIONARY-SOURCES)
|
dictionary.so: $(DICTIONARY-SOURCES)
|
||||||
|
dictionary.o: $(DICTIONARY-SOURCES) dictionary.so
|
||||||
dictionary.import.scm: $(DICTIONARY-SOURCES)
|
dictionary.import.scm: $(DICTIONARY-SOURCES)
|
||||||
|
|
||||||
MONTH-SOURCES=month.scm testing.import.scm
|
MONTH-SOURCES=month.scm testing.import.scm
|
||||||
|
|
||||||
month.o: $(MONTH-SOURCES)
|
month.so: $(MONTH-SOURCES)
|
||||||
|
month.o: $(MONTH-SOURCES) month.so
|
||||||
month.import.scm: $(MONTH-SOURCES)
|
month.import.scm: $(MONTH-SOURCES)
|
||||||
|
|
||||||
PERIOD-SOURCES=period.scm testing.import.scm month.import.scm
|
PERIOD-SOURCES=period.scm testing.import.scm month.import.scm
|
||||||
|
|
||||||
period.o: $(PERIOD-SOURCES)
|
period.so: $(PERIOD-SOURCES)
|
||||||
|
period.o: $(PERIOD-SOURCES) period.so
|
||||||
period.import.scm: $(PERIOD-SOURCES)
|
period.import.scm: $(PERIOD-SOURCES)
|
||||||
|
|
||||||
ANSI-SOURCES=ansi.scm testing.import.scm utils.import.scm
|
ANSI-SOURCES=ansi.scm testing.import.scm utils.import.scm
|
||||||
|
|
||||||
ansi.o: $(ANSI-SOURCES)
|
ansi.so: $(ANSI-SOURCES)
|
||||||
|
ansi.o: $(ANSI-SOURCES) ansi.so
|
||||||
ansi.import.scm: $(ANSI-SOURCES)
|
ansi.import.scm: $(ANSI-SOURCES)
|
||||||
|
|
||||||
MEMBER-FILE-SOURCES=member-file.scm dictionary.import.scm \
|
MEMBER-FILE-SOURCES=member-file.scm dictionary.import.scm \
|
||||||
ansi.import.scm month.import.scm period.import.scm \
|
ansi.import.scm month.import.scm period.import.scm \
|
||||||
listing.import.scm testing.import.scm
|
listing.import.scm testing.import.scm
|
||||||
|
|
||||||
member-file.o: $(MEMBER-FILE-SOURCES)
|
member-file.so: $(MEMBER-FILE-SOURCES)
|
||||||
|
member-file.o: $(MEMBER-FILE-SOURCES) member-file.so
|
||||||
member-file.import.scm: $(MEMBER-FILE-SOURCES)
|
member-file.import.scm: $(MEMBER-FILE-SOURCES)
|
||||||
|
|
||||||
COMMAND-LINE-SOURCES=command-line.scm testing.import.scm
|
COMMAND-LINE-SOURCES=command-line.scm testing.import.scm
|
||||||
|
|
||||||
command-line.o: $(COMMAND-LINE-SOURCES)
|
command-line.so: $(COMMAND-LINE-SOURCES)
|
||||||
|
command-line.o: $(COMMAND-LINE-SOURCES) command-line.so
|
||||||
command-line.import.scm: $(COMMAND-LINE-SOURCES)
|
command-line.import.scm: $(COMMAND-LINE-SOURCES)
|
||||||
|
|
||||||
MEMBERS-BASE-SOURCES=members-base.scm testing.import.scm \
|
MEMBERS-BASE-SOURCES=members-base.scm testing.import.scm \
|
||||||
utils.import.scm dictionary.import.scm member-file.import.scm
|
utils.import.scm dictionary.import.scm member-file.import.scm
|
||||||
|
|
||||||
members-base.o: $(MEMBERS-BASE-SOURCES)
|
members-base.so: $(MEMBERS-BASE-SOURCES)
|
||||||
|
members-base.o: $(MEMBERS-BASE-SOURCES) members-base.so
|
||||||
members-base.import.scm: $(MEMBERS-BASE-SOURCES)
|
members-base.import.scm: $(MEMBERS-BASE-SOURCES)
|
||||||
|
|
||||||
UTILS-SOURCES=utils.scm testing.import.scm
|
UTILS-SOURCES=utils.scm testing.import.scm
|
||||||
|
|
||||||
utils.o: $(UTILS-SOURCES)
|
utils.so: $(UTILS-SOURCES)
|
||||||
|
utils.o: $(UTILS-SOURCES) utils.so
|
||||||
utils.import.scm: $(UTILS-SOURCES)
|
utils.import.scm: $(UTILS-SOURCES)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue