1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- # Global rules for building shared libraries -*-Makefile-*-
- #
- # Each individual makefile should define the following variables:
- # LIBRARY : name of the library being built (without the lib prefix)
- # SOVERSION : the .so file version
- #
- # plus all variables required by the global Make.rules.in
- #
- DEFS = $(EXTRADEFS)
- DLLFLAGS = @DLLFLAGS@
- LIBEXT = @LIBEXT@
- LIBNAME = lib$(LIBRARY)
- DEFNAME = $(LIBRARY).def
- SONAME = $(LIBNAME).so.$(SOVERSION)
- MODULE = $(LIBNAME).$(LIBEXT)
- all: $(MODULE) $(MODULE:.dll=.a)
- @MAKE_RULES@
- $(LIBNAME).so.$(SOVERSION): $(OBJS) $(VERSCRIPT) Makefile.in
- $(LDSHARED) $(OBJS) $(EXTRALIBS) $(LDFLAGS) $(LIBS) -o $@
- $(LIBNAME).so: $(LIBNAME).so.$(SOVERSION)
- $(RM) $@ && $(LN_S) $(LIBNAME).so.$(SOVERSION) $@
- $(LIBNAME).a: $(DEFNAME)
- $(DLLTOOL) -l $@ -d $(SRCDIR)/$(DEFNAME)
- $(LIBNAME).dll: $(OBJS) $(DEFNAME) Makefile.in
- $(DLLWRAP) --def $(SRCDIR)/$(DEFNAME) -o $@ $(OBJS) $(EXTRALIBS)
- $(LIBNAME).$(SOVERSION).dylib: $(OBJS) Makefile.in
- $(LDSHARED) -install_name $(libdir)/$(LIBNAME).$(SOVERSION).dylib $(OBJS) $(EXTRALIBS) $(LDFLAGS) $(LIBS) -o $@
- $(LIBNAME).dylib: $(LIBNAME).$(SOVERSION).dylib
- $(RM) $@ && $(LN_S) $(LIBNAME).$(SOVERSION).dylib $@
- .PHONY: install-lib-so install-lib-dll install-lib-dylib install-dev-so install-dev-dll install-dev-dylib
- install-lib-so: $(LIBNAME).so.$(SOVERSION) dummy
- $(MKINSTALLDIRS) $(libdir)
- $(INSTALL_PROGRAM) $(LIBNAME).so.$(SOVERSION) $(libdir)/$(LIBNAME).so.$(SOVERSION)
- install-lib-dll: $(LIBNAME).dll dummy
- $(MKINSTALLDIRS) $(libdir)
- $(INSTALL_DATA) $(LIBNAME).dll $(libdir)/$(LIBNAME).dll
- install-lib-dylib: $(LIBNAME).$(SOVERSION).dylib dummy
- $(MKINSTALLDIRS) $(libdir)
- $(INSTALL_PROGRAM) $(LIBNAME).$(SOVERSION).dylib $(libdir)/$(LIBNAME).$(SOVERSION).dylib
- install-dev-so: dummy
- $(MKINSTALLDIRS) $(libdir)
- cd $(libdir) && $(RM) $(LIBNAME).so && $(LN_S) $(LIBNAME).so.$(SOVERSION) $(LIBNAME).so
- install-dev-dll: $(LIBNAME).a dummy
- $(MKINSTALLDIRS) $(libdir)
- $(INSTALL_DATA) $(LIBNAME).a $(libdir)/$(LIBNAME).a
- install-dev-dylib: dummy
- $(MKINSTALLDIRS) $(libdir)
- cd $(libdir) && $(RM) $(LIBNAME).dylib && $(LN_S) $(LIBNAME).$(SOVERSION).dylib $(LIBNAME).dylib
- install install-lib:: $(LIBEXT:%=install-lib-%)
- install install-dev:: $(LIBEXT:%=install-dev-%)
- uninstall::
- $(RM) $(libdir)/$(LIBNAME).a $(libdir)/$(LIBNAME).dll $(libdir)/$(LIBNAME).so $(libdir)/$(LIBNAME).so.$(SOVERSION) $(libdir)/$(LIBNAME).dylib $(libdir)/$(LIBNAME).$(SOVERSION).dylib
- clean::
- $(RM) $(LIBNAME).so.$(SOVERSION) $(LIBNAME).dll $(LIBNAME).$(SOVERSION).dylib
|