# Sendanor -- Generic library Makefile # $Id: Makefile 3454 2007-10-18 16:29:54Z jheusala $ all: build SRCDIR := $(shell /bin/sh -c 'set -e; dir=`pwd`; while test ! -f "$$dir/Makefile.global"; do dir="`dirname "$$dir"`"; test "x$$dir" != x/; done; echo $$dir') -include $(SRCDIR)/Makefile.global -include Makefile.local build: $(LIBNAME).a $(LIBNAME).so."$(VERSION)" subdirs-build subdirs-build: $(SUBDIRS:=-build) subdirs-install: $(SUBDIRS:=-install) subdirs-clean: $(SUBDIRS:=-clean) $(LIBNAME).a: $(SOURCES:.cc=.o) $(AR) rc $@ $(SOURCES:.cc=.o) ranlib $@ $(LIBNAME).so."$(VERSION)": $(SOURCES:.cc=.o) $(CXX) -shared -Wl,-soname,"$(LIBNAME)".so."$(VERSION)" -o $@ $(SOURCES:.cc=.o) %.o: %.cc $(CXX) $(CXXFLAGS) -c -o $@ $< %.d: %.cc @set -e; $(RM) -f $@; \ $(CXX) -MM $(CXXFLAGS) $< > $@.$$$$.t; \ sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$.t > $@; \ $(RM) -f $@.$$$$.t clean: subdirs-clean $(RM) -f *.a *.o *.so *.d *.t $(LIBNAME).so."$(VERSION)" -include $(SOURCES:.cc=.d) install: subdirs-install install-library install-headers install-library: install-$(LIBNAME).a install-$(LIBNAME).so.$(VERSION) install-$(LIBNAME).so install-headers: $(addprefix install-,$(HEADERS)) installdirs: mkdir -p "$(DESTDIR)$(LIBDIR)" chmod 755 "$(DESTDIR)$(LIBDIR)" mkdir -p "$(DESTDIR)$(INCLUDEDIR)/$(INCLUDESUBDIR)" chmod 755 "$(DESTDIR)$(INCLUDEDIR)/$(INCLUDESUBDIR)" install-$(LIBNAME).a: $(LIBNAME).a installdirs cp -f "$<" "$(DESTDIR)$(LIBDIR)/$<" chmod 644 "$(DESTDIR)$(LIBDIR)/$<" install-$(LIBNAME).so.$(VERSION): $(LIBNAME).so.$(VERSION) installdirs cp -f "$<" "$(DESTDIR)$(LIBDIR)/$<" chmod 644 "$(DESTDIR)$(LIBDIR)/$<" install-$(LIBNAME).so: installdirs ln -s "$(LIBNAME).so.$(VERSION)" "$(DESTDIR)$(LIBDIR)/$(LIBNAME).so" install-%: % installdirs cp -f "$<" "$(DESTDIR)$(INCLUDEDIR)/$(INCLUDESUBDIR)/$<" chmod 644 "$(DESTDIR)$(INCLUDEDIR)/$(INCLUDESUBDIR)/$<" %-build: % $(MAKE) -C $< build %-clean: % $(MAKE) -C $< clean %-install: % $(MAKE) -C $< install # EOF