You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by br...@apache.org on 2018/11/04 05:49:41 UTC
svn commit: r1845716 - in /subversion/trunk: Makefile.in build.conf
build/ac-macros/macosx.m4 build/buildcheck.sh
Author: brane
Date: Sun Nov 4 05:49:40 2018
New Revision: 1845716
URL: http://svn.apache.org/viewvc?rev=1845716&view=rev
Log:
Make only libsvn_subr directly depend on some macOS frameworks.
The comment in build/ac-macros/macosx.m4, which said that libtool 1.5.x
doesn't track transitive dependencies for macOS frameworks, has not been
true since libtlool-1.5.24.
Consequently, take the daring step of updating the requred libtool
version to 2.0, which is (*gasp!*) only 11 years old.
* Makefile.in
(SVN_MACOS_PLIST_LIBS, SVN_MACOS_KEYCHAIN_LIBS): New variables.
* build.conf
(macos-plist, macos-keychain): New external libraries.
(libsvn_subr): Links with macos-plist and macos-keychain.
* build/ac-macros/macosx.m4
(SVN_LIB_MACOS_PLIST): Remove obsolete comment.
Do not update LIBS, define SVN_MACOS_PLIST_LIBS instead.
(SVN_LIB_MACOS_KEYCHAIN): As above, but for SVN_MACOS_KEYCHAIN_LIBS.
* build/buildcheck.sh:
(LIBTOOL_WANTED_MAJOR, LIBTOOL_WANTED_MINOR, LIBTOOL_WANTED_VERSION): Update.
Remove the special version check for libtool on Solaris.
Modified:
subversion/trunk/Makefile.in
subversion/trunk/build.conf
subversion/trunk/build/ac-macros/macosx.m4
subversion/trunk/build/buildcheck.sh
Modified: subversion/trunk/Makefile.in
URL: http://svn.apache.org/viewvc/subversion/trunk/Makefile.in?rev=1845716&r1=1845715&r2=1845716&view=diff
==============================================================================
--- subversion/trunk/Makefile.in (original)
+++ subversion/trunk/Makefile.in Sun Nov 4 05:49:40 2018
@@ -56,6 +56,8 @@ SVN_XML_LIBS = @SVN_XML_LIBS@
SVN_ZLIB_LIBS = @SVN_ZLIB_LIBS@
SVN_LZ4_LIBS = @SVN_LZ4_LIBS@
SVN_UTF8PROC_LIBS = @SVN_UTF8PROC_LIBS@
+SVN_MACOS_PLIST_LIBS = @SVN_MACOS_PLIST_LIBS@
+SVN_MACOS_KEYCHAIN_LIBS = @SVN_MACOS_KEYCHAIN_LIBS@
LIBS = @LIBS@
Modified: subversion/trunk/build.conf
URL: http://svn.apache.org/viewvc/subversion/trunk/build.conf?rev=1845716&r1=1845715&r2=1845716&view=diff
==============================================================================
--- subversion/trunk/build.conf (original)
+++ subversion/trunk/build.conf Sun Nov 4 05:49:40 2018
@@ -371,7 +371,8 @@ type = lib
install = fsmod-lib
path = subversion/libsvn_subr
sources = *.c lz4/*.c
-libs = aprutil apriconv apr xml zlib apr_memcache sqlite magic intl lz4 utf8proc
+libs = aprutil apriconv apr xml zlib apr_memcache
+ sqlite magic intl lz4 utf8proc macos-plist macos-keychain
msvc-libs = kernel32.lib advapi32.lib shfolder.lib ole32.lib
crypt32.lib version.lib
msvc-export =
@@ -1470,6 +1471,14 @@ external-lib = $(SVN_KWALLET_LIBS)
type = lib
external-lib = $(SVN_MAGIC_LIBS)
+[macos-plist]
+type = lib
+external-lib = $(SVN_MACOS_PLIST_LIBS)
+
+[macos-keychain]
+type = lib
+external-lib = $(SVN_MACOS_KEYCHAIN_LIBS)
+
[sasl]
type = lib
external-lib = $(SVN_SASL_LIBS)
Modified: subversion/trunk/build/ac-macros/macosx.m4
URL: http://svn.apache.org/viewvc/subversion/trunk/build/ac-macros/macosx.m4?rev=1845716&r1=1845715&r2=1845716&view=diff
==============================================================================
--- subversion/trunk/build/ac-macros/macosx.m4 (original)
+++ subversion/trunk/build/ac-macros/macosx.m4 Sun Nov 4 05:49:40 2018
@@ -55,19 +55,8 @@ AC_DEFUN(SVN_LIB_MACOS_PLIST,
#error ProperyList API unavailable.
#endif
]],[[]])],[
- dnl ### Hack. We should only need to pass the -framework options when
- dnl linking libsvn_subr, since it is the only library that uses Keychain.
- dnl
- dnl Unfortunately, libtool 1.5.x doesn't track transitive dependencies for
- dnl OS X frameworks like it does for normal libraries, so we need to
- dnl explicitly pass the option to all the users of libsvn_subr to allow
- dnl static builds to link successfully.
- dnl
- dnl This does mean that all executables we link will be linked directly
- dnl to these frameworks - even when building shared libraries - but that
- dnl shouldn't cause any problems.
-
- LIBS="$LIBS -framework CoreFoundation"
+ SVN_MACOS_PLIST_LIBS="-framework CoreFoundation"
+ AC_SUBST(SVN_MACOS_PLIST_LIBS)
AC_DEFINE([SVN_HAVE_MACOS_PLIST], [1],
[Is Mac OS property list API available?])
AC_MSG_RESULT([yes])
@@ -97,9 +86,8 @@ AC_DEFUN(SVN_LIB_MACOS_KEYCHAIN,
#error KeyChain API unavailable.
#endif
]],[[]])],[
- dnl ### Hack, see SVN_LIB_MACOS_PLIST
- LIBS="$LIBS -framework Security"
- LIBS="$LIBS -framework CoreServices"
+ SVN_MACOS_KEYCHAIN_LIBS="-framework Security -framework CoreServices"
+ AC_SUBST(SVN_MACOS_KEYCHAIN_LIBS)
AC_DEFINE([SVN_HAVE_KEYCHAIN_SERVICES], [1], [Is Mac OS KeyChain support enabled?])
AC_MSG_RESULT([yes])
],[
Modified: subversion/trunk/build/buildcheck.sh
URL: http://svn.apache.org/viewvc/subversion/trunk/build/buildcheck.sh?rev=1845716&r1=1845715&r2=1845716&view=diff
==============================================================================
--- subversion/trunk/build/buildcheck.sh (original)
+++ subversion/trunk/build/buildcheck.sh Sun Nov 4 05:49:40 2018
@@ -76,26 +76,12 @@ fi
echo "buildcheck: autoheader version $ah_version (ok)"
#--------------------------------------------------------------------------
-# libtool 1.4 or newer
+# libtool 2.0 or newer
#
-LIBTOOL_WANTED_MAJOR=1
-LIBTOOL_WANTED_MINOR=4
+LIBTOOL_WANTED_MAJOR=2
+LIBTOOL_WANTED_MINOR=0
LIBTOOL_WANTED_PATCH=
-LIBTOOL_WANTED_VERSION=1.4
-
-# The minimum version for source releases is 1.4.3,
-# because it's required by (at least) Solaris.
-if test "$VERSION_CHECK" = "--release"; then
- LIBTOOL_WANTED_PATCH=3
- LIBTOOL_WANTED_VERSION=1.4.3
-else
- case `uname -sr` in
- SunOS\ 5.*)
- LIBTOOL_WANTED_PATCH=3
- LIBTOOL_WANTED_VERSION=1.4.3
- ;;
- esac
-fi
+LIBTOOL_WANTED_VERSION=2.0
# Much like APR except we do not prefer libtool 1 over libtool 2.
libtoolize=${LIBTOOLIZE:-`./build/PrintPath glibtoolize libtoolize glibtoolize1 libtoolize15 libtoolize14`}
Re: svn commit: r1845716 - in /subversion/trunk: Makefile.in
build.conf build/ac-macros/macosx.m4 build/buildcheck.sh
Posted by Branko Čibej <br...@apache.org>.
On 04.11.2018 06:49, brane@apache.org wrote:
> Author: brane
> Date: Sun Nov 4 05:49:40 2018
> New Revision: 1845716
>
> URL: http://svn.apache.org/viewvc?rev=1845716&view=rev
> Log:
> Make only libsvn_subr directly depend on some macOS frameworks.
>
> The comment in build/ac-macros/macosx.m4, which said that libtool 1.5.x
> doesn't track transitive dependencies for macOS frameworks, has not been
> true since libtlool-1.5.24.
>
> Consequently, take the daring step of updating the requred libtool
> version to 2.0, which is (*gasp!*) only 11 years old.
If anyone objects to this version bump, we could require libtool 1.5.24
or 1.5.28 instead and get essentially the same support for the
-framework option on macOS.
-- Brane