4 MCS_FLAGS = --target library --noconfig
5 INSTALL = /usr/bin/install
10 ! \( $(SOURCES_INCLUDE:%=! -path '%' ) \) -a \
11 \( $(SOURCES_EXCLUDE:%=! -path '%' ) ! -path '/dev/null' \) -a \
15 all: .makefrag $(LIBRARY)
18 -rm -rf $(LIBRARY) .response .makefrag library-deps.stamp
21 ifdef USE_SOURCE_RULES
25 @echo -n "SOURCES=" >$@
26 @$(SOURCES_CMD) | tee .response | sed -e 's/$$/ \\/' >>$@
30 .response: $(LIB_LIST)
31 cat $^ |egrep '\.cs[[:space:]]*$$' >$@
33 .makefrag: $(LIB_LIST) $(topdir)/class/library.make
34 echo -n "library-deps.stamp: $(LIB_LIST) " >$@.new
35 cat $< |egrep '\.cs$$' | sed -e 's,\.cs,.cs \\,' >>$@.new
36 cat $@.new |sed -e '$$s, \\$$,,' >$@
37 echo -e "\ttouch library-deps.stamp" >>$@
44 ifdef USE_SOURCE_RULES
45 $(LIBRARY): makefile.gnu $(SOURCES) $(topdir)/class/library.make
47 $(LIBRARY): .response library-deps.stamp
49 MONO_PATH=$(MONO_PATH_PREFIX)$(MONO_PATH) $(MCS) $(MCS_FLAGS) -o $(LIBRARY) $(LIB_FLAGS) @.response
52 mkdir -p $(prefix)/lib/
53 $(INSTALL) -m 644 $(LIBRARY) $(prefix)/lib/
57 $(MAKE) -C $(TEST_DIR) -f makefile.gnu $@