an SONAME bump.
AC_MSG_RESULT(no)
)
+dnl ************************************************************
+dnl enforce SONAME bump
+dnl
+
+soname_bump=no
+
+AC_MSG_CHECKING([whether to enforce SONAME bump])
+AC_ARG_ENABLE(soname-bump,
+AC_HELP_STRING([--enable-soname-bump],[Enable enforced SONAME bump])
+AC_HELP_STRING([--disable-soname-bump],[Disable enforced SONAME bump]),
+[ case "$enableval" in
+ yes) AC_MSG_RESULT(yes)
+ soname_bump=yes
+ ;;
+ *)
+ AC_MSG_RESULT(nope: $enableval)
+ ;;
+ esac ],
+ AC_MSG_RESULT(nono)
+)
+AM_CONDITIONAL(SONAME_BUMP, test x$soname_bump = xyes)
+
+
dnl ************************************************************
if test ! -z "$winsock_LIB"; then
-I$(top_builddir)/lib \
-I$(top_srcdir)/lib
-VERSION=-version-info 5:0:1
+if SONAME_BUMP
+#
+# Bumping of SONAME conditionally may seem like a weird thing to do, and yeah
+# it is. The problem is that we try to avoid the bump as hard as possible, but
+# yet it is still necessary for a few rare situations. The configure script will
+# attempt to figure out these situations, and it can be forced to consider this
+# to be such a case! See README.curl_off_t for further details.
+#
+# This conditional soname bump SHOULD be removed at next "proper" bump.
+#
+VERSIONINFO=-version-info 6:0:1
+else
+VERSIONINFO=-version-info 5:0:1
+endif
# This flag accepts an argument of the form current[:revision[:age]]. So,
# passing -version-info 3:12:1 sets current to 3, revision to 12, and age to
MIMPURE = -mimpure-text
endif
-libcurl_la_LDFLAGS = $(UNDEF) $(VERSION) $(MIMPURE) $(LIBCURL_LIBS)
+libcurl_la_LDFLAGS = $(UNDEF) $(VERSIONINFO) $(MIMPURE) $(LIBCURL_LIBS)
# Makefile.inc provides the CSOURCES and HHEADERS defines
include Makefile.inc
SONAME
------
-We opted to not bump the soname for the library, simply because soname bumping
-is causing a lot of grief and moaning all over the community so we try to keep
-that at minimum. Also, our selected design path should be 100% backwards
-compatible for the vast majority of all libcurl users.
+We opted to not bump the soname for the library unconditionally, simply
+because soname bumping is causing a lot of grief and moaning all over the
+community so we try to keep that at minimum. Also, our selected design path
+should be 100% backwards compatible for the vast majority of all libcurl
+users.
+
+Enforce SONAME bump
+-------------------
+
+If configure doesn't detect your case where a bump is necessary, re-run it
+with the --enable-soname-bump command line option!