summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/subversion
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-07-16 12:31:59 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-07-17 12:28:50 +0100
commit76f75e91ce1ad51a2c669d2b4d2fbddf1a113428 (patch)
treecf6db13eb6eee0b9eeeb66c05202e813fe5dd626 /meta/recipes-devtools/subversion
parent24bee503bf306bc3dab24cff837eee054c783e0f (diff)
downloadast2050-yocto-poky-76f75e91ce1ad51a2c669d2b4d2fbddf1a113428.zip
ast2050-yocto-poky-76f75e91ce1ad51a2c669d2b4d2fbddf1a113428.tar.gz
subversion: Upgrade 1.7.7 -> 1.8.9
Dropped neon patches as neon support was dropped. Dropped CVE patches as applied in later version Added patch to avoid OS-X check which doesn't cross compile Add PACKAGECONFIG for gnome-keyring Addition to license: For the file subversion/libsvn_subr/utf_width.c * Markus Kuhn -- 2007-05-26 (Unicode 5.0) * * Permission to use, copy, modify, and distribute this software * for any purpose and without fee is hereby granted. The author * disclaims all warranties with regard to this software. (From OE-Core rev: 99c3225cfe39f8de89555df5bd3f1e93cd731269) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/subversion')
-rw-r--r--meta/recipes-devtools/subversion/subversion-1.7.10/allow-updated-neon.patch20
-rw-r--r--meta/recipes-devtools/subversion/subversion-1.7.10/fix-install-depends.patch48
-rw-r--r--meta/recipes-devtools/subversion/subversion-1.7.10/neon.m4-fix-includes-and-cflags.patch32
-rw-r--r--meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4131.patch42
-rw-r--r--meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4277.patch15
-rw-r--r--meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4505.patch130
-rw-r--r--meta/recipes-devtools/subversion/subversion-1.8.9/disable_macos.patch68
-rw-r--r--meta/recipes-devtools/subversion/subversion-1.8.9/libtool2.patch (renamed from meta/recipes-devtools/subversion/subversion-1.7.10/libtool2.patch)0
-rw-r--r--meta/recipes-devtools/subversion/subversion_1.8.9.bb (renamed from meta/recipes-devtools/subversion/subversion_1.7.10.bb)15
9 files changed, 74 insertions, 296 deletions
diff --git a/meta/recipes-devtools/subversion/subversion-1.7.10/allow-updated-neon.patch b/meta/recipes-devtools/subversion/subversion-1.7.10/allow-updated-neon.patch
deleted file mode 100644
index e8acb12..0000000
--- a/meta/recipes-devtools/subversion/subversion-1.7.10/allow-updated-neon.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-
-Allow neon 0.30 to be usable also
-
-Upstream-Status: Pending
-
-Signed-off-by: Saul Wold <sgw@linux.intel.com>
-
-Index: subversion-1.7.10/configure.ac
-===================================================================
---- subversion-1.7.10.orig/configure.ac
-+++ subversion-1.7.10/configure.ac
-@@ -118,7 +118,7 @@ AC_PATH_PROG(PKG_CONFIG, pkg-config)
-
- # Either a space-separated list of allowable Neon versions, or "any" to
- # mean allow anything.
--NEON_ALLOWED_LIST="0\.25 0\.26 0\.27\.2 0\.28 0\.29"
-+NEON_ALLOWED_LIST="0\.25 0\.26 0\.27\.2 0\.28 0\.29 0\.30"
- NEON_RECOMMENDED_VER="0.29.6"
- NEON_URL="http://www.webdav.org/neon/neon-${NEON_RECOMMENDED_VER}.tar.gz"
- dnl You can skip the neon version check only if you know what you are doing
diff --git a/meta/recipes-devtools/subversion/subversion-1.7.10/fix-install-depends.patch b/meta/recipes-devtools/subversion/subversion-1.7.10/fix-install-depends.patch
deleted file mode 100644
index fb79b8c..0000000
--- a/meta/recipes-devtools/subversion/subversion-1.7.10/fix-install-depends.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-install-neon-lib should depend on libsvn_delta's installation
-
-install-neon-lib needs libsvn_delta-1.la which will be regenerated
-during libsvn_delta-1.la's installation, if libsvn_delta-1.la is
-in regenerating and at the same time install-neon-lib links it, the
-error willl happen.
-
-Let install-neon-lib run after libsvn_delta-1.la is installed will fix
-the problem.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- build-outputs.mk | 2 +-
- build.conf | 2 ++
- 2 files changed, 3 insertions(+), 1 deletion(-)
-
---- subversion-1.7.6.orig/build-outputs.mk
-+++ subversion-1.7.6/build-outputs.mk
-@@ -983,11 +983,11 @@ install-locale: subversion/po/de.mo subv
- $(MKDIR) $(DESTDIR)$(localedir)/zh_CN/LC_MESSAGES
- cd subversion/po ; $(INSTALL_LOCALE) zh_CN.mo $(DESTDIR)$(localedir)/zh_CN/LC_MESSAGES/$(PACKAGE_NAME).mo
- $(MKDIR) $(DESTDIR)$(localedir)/zh_TW/LC_MESSAGES
- cd subversion/po ; $(INSTALL_LOCALE) zh_TW.mo $(DESTDIR)$(localedir)/zh_TW/LC_MESSAGES/$(PACKAGE_NAME).mo
-
--install-neon-lib: subversion/libsvn_ra_neon/libsvn_ra_neon-1.la
-+install-neon-lib: subversion/libsvn_ra_neon/libsvn_ra_neon-1.la $(SVN_FS_LIB_INSTALL_DEPS)
- $(MKDIR) $(DESTDIR)$(neon_libdir)
- cd subversion/libsvn_ra_neon ; $(INSTALL_NEON_LIB) libsvn_ra_neon-1.la $(DESTDIR)$(neon_libdir)/libsvn_ra_neon-1.la
-
- install-ramod-lib: subversion/libsvn_fs/libsvn_fs-1.la subversion/libsvn_ra_svn/libsvn_ra_svn-1.la subversion/libsvn_repos/libsvn_repos-1.la subversion/libsvn_ra_local/libsvn_ra_local-1.la
- $(MKDIR) $(DESTDIR)$(ramod_libdir)
---- subversion-1.7.6.orig/build.conf
-+++ subversion-1.7.6/build.conf
-@@ -270,10 +270,12 @@ msvc-export = svn_ra.h private\svn_ra_pr
- [libsvn_ra_neon]
- type = ra-module
- path = subversion/libsvn_ra_neon
- install = neon-lib
- libs = libsvn_delta libsvn_subr aprutil apriconv apr neon
-+# conditionally add more dependencies
-+add-install-deps = $(SVN_FS_LIB_INSTALL_DEPS)
- msvc-static = yes
-
- # Accessing repositories via DAV through serf
- [libsvn_ra_serf]
- type = ra-module
diff --git a/meta/recipes-devtools/subversion/subversion-1.7.10/neon.m4-fix-includes-and-cflags.patch b/meta/recipes-devtools/subversion/subversion-1.7.10/neon.m4-fix-includes-and-cflags.patch
deleted file mode 100644
index 013d0c3..0000000
--- a/meta/recipes-devtools/subversion/subversion-1.7.10/neon.m4-fix-includes-and-cflags.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Fix to get correct SVN_NEON_CONFIG and CFLAGS when sysroot path contains '-D' and '-I'
-characters.
-
-Upstream-Status: Pending
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-
-index f951039..a813145 100644
---- a/build/ac-macros/neon.m4
-+++ b/build/ac-macros/neon.m4
-@@ -105,8 +105,8 @@ AC_DEFUN(SVN_NEON_CONFIG,
- test "$svn_allowed_neon" = "any"; then
- svn_allowed_neon_on_system="yes"
- if test "$NEON_PKG_CONFIG" = "yes"; then
-- SVN_NEON_INCLUDES=[`$PKG_CONFIG neon --cflags | $SED -e 's/-D[^ ]*//g'`]
-- CFLAGS=["$CFLAGS `$PKG_CONFIG neon --cflags | $SED -e 's/-I[^ ]*//g'`"]
-+ SVN_NEON_INCLUDES=["`$PKG_CONFIG neon --cflags | $SED -e 's/^-D[^ ]*//g' -e 's/ -D[^ ]*//g'`"]
-+ CFLAGS=["$CFLAGS `$PKG_CONFIG neon --cflags | $SED -e 's/^-I[^ ]*//g' -e 's/ -I[^ ]*//g'`"]
- old_CFLAGS="$CFLAGS"
- old_LIBS="$LIBS"
- NEON_LIBS=`$PKG_CONFIG neon --libs`
-@@ -126,8 +126,8 @@ int main()
- CFLAGS="$old_CFLAGS"
- LIBS="$old_LIBS"
- else
-- SVN_NEON_INCLUDES=[`$neon_config --cflags | $SED -e 's/-D[^ ]*//g'`]
-- CFLAGS=["$CFLAGS `$neon_config --cflags | $SED -e 's/-I[^ ]*//g'`"]
-+ SVN_NEON_INCLUDES=[`$neon_config --cflags | $SED -e 's/^-D[^ ]*//g' -e 's/ -D[^ ]*//g'`]
-+ CFLAGS=["$CFLAGS `$neon_config --cflags | $SED -e 's/^-I[^ ]*//g' -e 's/ -I[^ ]*//g'`"]
- NEON_LIBS=`$neon_config --libs`
- fi
- svn_lib_neon="yes"
diff --git a/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4131.patch b/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4131.patch
deleted file mode 100644
index 88bd25e..0000000
--- a/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4131.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-Upstream-Status: Backport
-
-Index: subversion/mod_dav_svn/repos.c
-===================================================================
---- a/subversion/mod_dav_svn/repos.c (revision 1503527)
-+++ b/subversion/mod_dav_svn/repos.c (revision 1503528)
-@@ -2408,21 +2408,12 @@
- svn_boolean_t is_urlpath,
- apr_pool_t *pool)
- {
-- apr_size_t len;
-- char *tmp = apr_pstrdup(pool, path);
--
-- len = strlen(tmp);
--
-- if (len > 0)
-+ if (*path != '\0') /* not an empty string */
- {
-- /* Remove any trailing slash; else svn_path_dirname() asserts. */
-- if (tmp[len-1] == '/')
-- tmp[len-1] = '\0';
--
- if (is_urlpath)
-- return svn_urlpath__dirname(tmp, pool);
-+ return svn_urlpath__dirname(path, pool);
- else
-- return svn_fspath__dirname(tmp, pool);
-+ return svn_fspath__dirname(path, pool);
- }
-
- return path;
-@@ -2458,7 +2449,9 @@
- parent->versioned = 1;
- parent->hooks = resource->hooks;
- parent->pool = resource->pool;
-- parent->uri = get_parent_path(resource->uri, TRUE, resource->pool);
-+ parent->uri = get_parent_path(svn_urlpath__canonicalize(resource->uri,
-+ resource->pool),
-+ TRUE, resource->pool);
- parent->info = parentinfo;
-
- parentinfo->uri_path =
diff --git a/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4277.patch b/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4277.patch
deleted file mode 100644
index a5900d8..0000000
--- a/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4277.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream-Status: Backport
-
---- a/subversion/svnserve/main.c
-+++ b/subversion/svnserve/main.c
-@@ -403,8 +403,9 @@ static svn_error_t *write_pid_file(const
- const char *contents = apr_psprintf(pool, "%" APR_PID_T_FMT "\n",
- getpid());
-
-+ SVN_ERR(svn_io_remove_file2(filename, TRUE, pool));
- SVN_ERR(svn_io_file_open(&file, filename,
-- APR_WRITE | APR_CREATE | APR_TRUNCATE,
-+ APR_WRITE | APR_CREATE | APR_EXCL,
- APR_OS_DEFAULT, pool));
- SVN_ERR(svn_io_file_write_full(file, contents, strlen(contents), NULL,
- pool));
diff --git a/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4505.patch b/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4505.patch
deleted file mode 100644
index a54d694..0000000
--- a/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4505.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-Upstream-Status: Backport
-
-Index: tools/server-side/mod_dontdothat/mod_dontdothat.c
-===================================================================
---- a/tools/server-side/mod_dontdothat/mod_dontdothat.c (revision 1239695)
-+++ b/tools/server-side/mod_dontdothat/mod_dontdothat.c (revision 1542078)
-@@ -30,12 +30,15 @@
- #include <util_filter.h>
- #include <ap_config.h>
- #include <apr_strings.h>
-+#include <apr_uri.h>
-
- #include <expat.h>
-
- #include "mod_dav_svn.h"
- #include "svn_string.h"
- #include "svn_config.h"
-+#include "svn_path.h"
-+#include "private/svn_fspath.h"
-
- module AP_MODULE_DECLARE_DATA dontdothat_module;
-
-@@ -161,26 +164,71 @@
- }
- }
-
-+/* duplicate of dav_svn__log_err() from mod_dav_svn/util.c */
-+static void
-+log_dav_err(request_rec *r,
-+ dav_error *err,
-+ int level)
-+{
-+ dav_error *errscan;
-+
-+ /* Log the errors */
-+ /* ### should have a directive to log the first or all */
-+ for (errscan = err; errscan != NULL; errscan = errscan->prev) {
-+ apr_status_t status;
-+
-+ if (errscan->desc == NULL)
-+ continue;
-+
-+#if AP_MODULE_MAGIC_AT_LEAST(20091119,0)
-+ status = errscan->aprerr;
-+#else
-+ status = errscan->save_errno;
-+#endif
-+
-+ ap_log_rerror(APLOG_MARK, level, status, r,
-+ "%s [%d, #%d]",
-+ errscan->desc, errscan->status, errscan->error_id);
-+ }
-+}
-+
- static svn_boolean_t
- is_this_legal(dontdothat_filter_ctx *ctx, const char *uri)
- {
- const char *relative_path;
- const char *cleaned_uri;
- const char *repos_name;
-+ const char *uri_path;
- int trailing_slash;
- dav_error *derr;
-
-- /* Ok, so we need to skip past the scheme, host, etc. */
-- uri = ap_strstr_c(uri, "://");
-- if (uri)
-- uri = ap_strchr_c(uri + 3, '/');
-+ /* uri can be an absolute uri or just a path, we only want the path to match
-+ * against */
-+ if (uri && svn_path_is_url(uri))
-+ {
-+ apr_uri_t parsed_uri;
-+ apr_status_t rv = apr_uri_parse(ctx->r->pool, uri, &parsed_uri);
-+ if (APR_SUCCESS != rv)
-+ {
-+ /* Error parsing the URI, log and reject request. */
-+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, ctx->r,
-+ "mod_dontdothat: blocked request after failing "
-+ "to parse uri: '%s'", uri);
-+ return FALSE;
-+ }
-+ uri_path = parsed_uri.path;
-+ }
-+ else
-+ {
-+ uri_path = uri;
-+ }
-
-- if (uri)
-+ if (uri_path)
- {
- const char *repos_path;
-
- derr = dav_svn_split_uri(ctx->r,
-- uri,
-+ uri_path,
- ctx->cfg->base_path,
- &cleaned_uri,
- &trailing_slash,
-@@ -194,7 +242,7 @@
- if (! repos_path)
- repos_path = "";
-
-- repos_path = apr_psprintf(ctx->r->pool, "/%s", repos_path);
-+ repos_path = svn_fspath__canonicalize(repos_path, ctx->r->pool);
-
- /* First check the special cases that are always legal... */
- for (idx = 0; idx < ctx->allow_recursive_ops->nelts; ++idx)
-@@ -228,7 +276,20 @@
- }
- }
- }
-+ else
-+ {
-+ log_dav_err(ctx->r, derr, APLOG_ERR);
-+ return FALSE;
-+ }
-+
- }
-+ else
-+ {
-+ ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, ctx->r,
-+ "mod_dontdothat: empty uri passed to is_this_legal(), "
-+ "module bug?");
-+ return FALSE;
-+ }
-
- return TRUE;
- }
diff --git a/meta/recipes-devtools/subversion/subversion-1.8.9/disable_macos.patch b/meta/recipes-devtools/subversion/subversion-1.8.9/disable_macos.patch
new file mode 100644
index 0000000..ec3be49
--- /dev/null
+++ b/meta/recipes-devtools/subversion/subversion-1.8.9/disable_macos.patch
@@ -0,0 +1,68 @@
+These tests don't work in cross compiling, just disable them for now, we don't
+build subversion on OS-X at this time.
+
+RP 1014/7/16
+
+Upstream-Status: Pending [needs a rewrite to support a cache value]
+
+Index: subversion-1.8.9/build/ac-macros/macosx.m4
+===================================================================
+--- subversion-1.8.9.orig/build/ac-macros/macosx.m4 2012-11-26 03:04:27.000000000 +0000
++++ subversion-1.8.9/build/ac-macros/macosx.m4 2014-07-16 12:28:58.357300403 +0000
+@@ -24,21 +24,7 @@
+ AC_DEFUN(SVN_LIB_MACHO_ITERATE,
+ [
+ AC_MSG_CHECKING([for Mach-O dynamic module iteration functions])
+- AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+- #include <mach-o/dyld.h>
+- #include <mach-o/loader.h>
+- ]],[[
+- const struct mach_header *header = _dyld_get_image_header(0);
+- const char *name = _dyld_get_image_name(0);
+- if (name && header) return 0;
+- return 1;
+- ]])],[
+- AC_DEFINE([SVN_HAVE_MACHO_ITERATE], [1],
+- [Is Mach-O low-level _dyld API available?])
+- AC_MSG_RESULT([yes])
+- ],[
+ AC_MSG_RESULT([no])
+- ])
+ ])
+
+ dnl SVN_LIB_MACOS_PLIST
+@@ -46,34 +32,7 @@
+ AC_DEFUN(SVN_LIB_MACOS_PLIST,
+ [
+ AC_MSG_CHECKING([for Mac OS property list utilities])
+-
+- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+- #include <AvailabilityMacros.h>
+- #if !defined(MAC_OS_X_VERSION_MAX_ALLOWED) \
+- || !defined(MAC_OS_X_VERSION_10_0) \
+- || (MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_0)
+- #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"
+- AC_DEFINE([SVN_HAVE_MACOS_PLIST], [1],
+- [Is Mac OS property list API available?])
+- AC_MSG_RESULT([yes])
+- ],[
+ AC_MSG_RESULT([no])
+- ])
+ ])
+
+ dnl SVN_LIB_MACOS_KEYCHAIN
diff --git a/meta/recipes-devtools/subversion/subversion-1.7.10/libtool2.patch b/meta/recipes-devtools/subversion/subversion-1.8.9/libtool2.patch
index 5cd572b..5cd572b 100644
--- a/meta/recipes-devtools/subversion/subversion-1.7.10/libtool2.patch
+++ b/meta/recipes-devtools/subversion/subversion-1.8.9/libtool2.patch
diff --git a/meta/recipes-devtools/subversion/subversion_1.7.10.bb b/meta/recipes-devtools/subversion/subversion_1.8.9.bb
index e745ce7..b1eee6a 100644
--- a/meta/recipes-devtools/subversion/subversion_1.7.10.bb
+++ b/meta/recipes-devtools/subversion/subversion_1.8.9.bb
@@ -11,24 +11,21 @@ inherit gettext
SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
file://libtool2.patch \
- file://fix-install-depends.patch \
- file://allow-updated-neon.patch \
- file://neon.m4-fix-includes-and-cflags.patch \
- file://subversion-CVE-2013-4505.patch \
- file://subversion-CVE-2013-4131.patch \
- file://subversion-CVE-2013-4277.patch \
+ file://disable_macos.patch \
"
-SRC_URI[md5sum] = "4088a77e14232876c9b4ff1541e6e200"
-SRC_URI[sha256sum] = "c1df222bec83d014d17785e2ceba6bc80962f64b280967de0285836d8d77a8e7"
+SRC_URI[md5sum] = "bd495517a760ddd764ce449a891971db"
+SRC_URI[sha256sum] = "45d708a5c3ffbef4b2a1044c4716a053e680763743d1f7ba99d0369f6da49e33"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=4a14fd2da3134e40a087eb4326a4ecd4"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1c2f0119e478700b5428e26386cff923"
PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl"
+PACKAGECONFIG[gnome-keyring] = "--with-gnome-keyring,--without-gnome-keyring,glib-2.0 gnome-keyring"
EXTRA_OECONF = " \
--without-berkeley-db --without-apxs \
--without-swig --with-apr=${STAGING_BINDIR_CROSS} \
--with-apr-util=${STAGING_BINDIR_CROSS} \
+ --disable-keychain \
ac_cv_path_RUBY=none"
inherit autotools
OpenPOWER on IntegriCloud