+TARGETLIB_SONAME = @WX_TARGET_LIBRARY_SONAME@
+
+LDFLAGS_VERSIONING = @LDFLAGS_VERSIONING@
+
+# NB: see remark in Makefile.in as to why we don't use %.foo: %.bar rules
+.SUFFIXES: .o .c .cpp .cxx
+
+.c.o:
+ $(CC) -c $(CFLAGS) $(PICFLAGS) -o $@ $<
+
+.cpp.o:
+ $(CXX) -c $(CXXFLAGS) $(PICFLAGS) -o $@ $<
+
+.cxx.o:
+ $(CXX) -c $(CXXFLAGS) $(PICFLAGS) -o $@ $<
+
+# the comment at the end of the next line is needed because otherwise autoconf
+# would remove this line completely - it contains a built-in hack to remove
+# any VPATH assignment not containing ':'
+VPATH = @PATH_IFS@$(top_srcdir)/$(libsrc_dir) # ':' for autoconf
+
+include $(top_builddir)/src/make.env
+
+all: libtype_@WX_TARGET_LIBRARY_TYPE@
+
+libtype_so: $(top_builddir)/lib/$(TARGETLIB_SHARED)
+
+libtype_a: $(top_builddir)/lib/$(TARGETLIB_STATIC)
+
+$(top_builddir)/lib/$(TARGETLIB_SHARED): $(OBJECTS)
+ @$(INSTALL) -d $(top_builddir)/lib
+ $(SHARED_LD) $@ $(TARGETLIB_SONAME) $(OBJECTS) $(LDFLAGS_VERSIONING)
+ cd $(top_builddir)/lib \
+ && $(RM) $(TARGETLIB_LINK1) $(TARGETLIB_LINK2) \
+ && $(LN_S) $(TARGETLIB_SHARED) $(TARGETLIB_LINK1) \
+ && $(LN_S) $(TARGETLIB_SHARED) $(TARGETLIB_LINK2)
+
+$(top_builddir)/lib/$(TARGETLIB_STATIC): $(OBJECTS)
+ @$(INSTALL) -d $(top_builddir)/lib
+ @$(RM) $@
+ $(AR) $(AROPTIONS) $@ $(OBJECTS)