Add install targets.
[eruntime.git] / src / Makefile
blob3d5a2bef63424d009b5292a63daa4b4b82f8d99a
1 topdir = ..
2 include $(topdir)/Makefile.top
4 all_LIBS = liberuntime.a liberuntime.so
6 common_SOURCES = version.c
8 liberuntime_a_OBJECTS = $(patsubst %.c,%.static.o,$(common_SOURCES))
9 liberuntime_so_OBJECTS = $(patsubst %.c,%.shared.o,$(common_SOURCES))
11 .PHONY: all
12 all: $(all_LIBS)
14 .PHONY: deps
15 deps:
16 $(MKDEPS) $(CC) '$(CFLAGS)' '$(common_SOURCES)'
18 %.static.o: %.c
19 $(call wrap_CC,,$<,$@)
20 %.shared.o: %.c
21 $(call wrap_CC,-fpic -fPIC,$<,$@)
23 liberuntime.a: $(liberuntime_a_OBJECTS)
24 $(call wrap_AR,$@,$^)
25 $(call wrap_RANLIB,$@)
27 liberuntime.so: $(liberuntime_so_OBJECTS)
28 $(call wrap_LD,$@,$^,-shared)
30 .PHONY: install install-libs install-headers
31 install: install-libs install-headers
33 install-libs: $(all_LIBS)
34 @$(INSTALL_DIR) $(DESTDIR)$(libdir) || exit 1; \
35 list='$(all_LIBS)'; for lib in $$list; do \
36 echo "Installing $$lib into $(DESTDIR)$(libdir)..."; \
37 $(INSTALL_BIN) $$lib $(DESTDIR)$(libdir) || exit 1; \
38 done
40 install-headers: install-libs
41 @$(INSTALL_DIR) $(DESTDIR)$(includedir) || exit 1; \
42 list='$(wildcard *.h)'; for hdr in $$list; do \
43 echo "Installing $$hdr into $(DESTDIR)$(includedir)..."; \
44 $(INSTALL_DATA) $$hdr $(DESTDIR)$(includedir) || exit 1; \
45 done
47 .PHONY: clean
48 clean:
49 -rm -f $(all_LIBS) $(liberuntime_a_OBJECTS) $(liberuntime_so_OBJECTS)
51 -include Makefile.deps
53 # vim: ts=8 sw=8 noet fdm=marker tw=80