1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-25 04:43:33 +00:00

Upgrade subversion to 1.8.0.

Re-enable ruby-subversion, as it supports ruby 1.9
This commit is contained in:
Lev A. Serebryakov 2013-06-19 17:29:44 +00:00
parent 410d313e86
commit 78c30b9192
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=321298
8 changed files with 1628 additions and 569 deletions

View File

@ -6,9 +6,6 @@ PKGNAMEPREFIX= ruby-
MAINTAINER= lev@FreeBSD.org
COMMENT= Ruby bindings for version control system
DEPRECATED= Does not work with Ruby 1.9
EXPIRATION_DATE= 2013-05-02
.if defined(WITH_SUBVERSION_VER) && ${WITH_SUBVERSION_VER} == 16
MASTERDIR= ${.CURDIR}/../../devel/subversion16
.else
@ -16,7 +13,7 @@ MASTERDIR= ${.CURDIR}/../../devel/subversion
.endif
PKGDIR= ${.CURDIR}
USE_RUBY= yes
USE_RUBY= yes
SVN_BUILD_BINDINGS=yes
@ -30,8 +27,4 @@ do-build:
do-install:
cd ${WRKSRC} ; ${MAKE} install-swig-rb
.if ${RUBY_VER} == 1.9
BROKEN= does not work with ruby 1.9
.endif
.include <bsd.port.post.mk>

View File

@ -4,39 +4,36 @@
MAINTAINER= lev@FreeBSD.org
COMMENT= Version control system
CONFLICTS_INSTALL= subversion-1.[6|8].[0-9]*
CONFLICTS_INSTALL= subversion-1.[6|7].[0-9]*
USE_RC_SUBR= svnserve
MAN1= svn.1 svnadmin.1 svnlook.1 svndumpfilter.1 svnrdump.1 \
svnsync.1 svnversion.1
svnsync.1 svnversion.1 svnmucc.1
MAN5= svnserve.conf.5
MAN8= svnserve.8
TXT_DOCS= BUGS CHANGES COMMITTERS INSTALL README
OPTIONS_DEFINE= P4_STYLE_MARKERS ENHANCED_KEYWORD FREEBSD_TEMPLATE \
OPTIONS_DEFINE= P4_STYLE_MARKERS FREEBSD_TEMPLATE \
MOD_DAV_SVN MOD_DONTDOTHAT SVNAUTHZ_VALIDATE \
NEON SERF \
SERF \
SASL BDB \
MAINTAINER_DEBUG \
SVNSERVE_WRAPPER SVNMUCC \
SVNSERVE_WRAPPER \
STATIC \
GNOME_KEYRING KDE_KWALLET \
BOOK TEST
OPTIONS_DEFAULT=P4_STYLE_MARKERS ENHANCED_KEYWORD FREEBSD_TEMPLATE NEON
OPTIONS_DEFAULT=P4_STYLE_MARKERS FREEBSD_TEMPLATE SERF
P4_STYLE_MARKERS_DESC= Perforce-style conflict markers
ENHANCED_KEYWORD_DESC= Enhanced svn:keyword support
FREEBSD_TEMPLATE_DESC= FreeBSD Project log template
MOD_DAV_SVN_DESC= mod_dav_svn module for Apache 2.X
MOD_DONTDOTHAT_DESC= mod_dontdothat for Apache 2.X
NEON_DESC= WebDAV/Delta-V repo access module (neon)
SERF_DESC= WebDAV/Delta-V repo access module (serf)
MAINTAINER_DEBUG_DESC= Build debug version
SVNSERVE_WRAPPER_DESC= Enable svnserve wrapper
SVNMUCC_DESC= Install Multiple URL Command Client
SVNAUTHZ_VALIDATE_DESC= install svnauthz-validate
STATIC_DESC= Build static version (no shared libs)
GNOME_KEYRING_DESC= Build with GNOME Keyring auth support
@ -54,7 +51,7 @@ SVNFSTYPE?= fsfs
SUB_FILES= pkg-install \
pkg-deinstall
BOOK_VERSION= 4304
BOOK_VERSION= 4515
.if make(repository)
WITH_REPOSITORY_CREATION= yes
@ -68,9 +65,6 @@ MKREPOS_TARGET= _mkrepos
.if ${PORT_OPTIONS:MP4_STYLE_MARKERS}
EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-3way-conflict-markers
.endif
.if ${PORT_OPTIONS:MENHANCED_KEYWORD}
EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-enhanced-keyword
.endif
.if ${PORT_OPTIONS:MFREEBSD_TEMPLATE}
EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-fbsd-template
.endif
@ -88,12 +82,6 @@ PLIST_SUB+= SVNSERVE_WRAPPER="@comment "
SUB_LIST+= SVNSERVE_BIN_EXT=""
.endif
.if ${PORT_OPTIONS:MSVNMUCC}
PLIST_SUB+= SVNMUCC=""
.else
PLIST_SUB+= SVNMUCC="@comment "
.endif
.if ${PORT_OPTIONS:MDOCS} && ${PORT_OPTIONS:MBOOK}
BOOK_HTML= svn-book-html-r${BOOK_VERSION}.tar.bz2
BOOK_PDF= svn-book-r${BOOK_VERSION}.pdf
@ -133,12 +121,6 @@ LIB_DEPENDS=
pre-everything::
@${ECHO_MSG} ""
.if ${PORT_OPTIONS:MNEON}
@${ECHO_MSG} "WebDAV/Delta-V repository access module enabled."
.else
@${ECHO_MSG} "WebDAV/Delta-V repository access module disabled."
.endif
@${ECHO_MSG} ""
.if ${PORT_OPTIONS:MBDB}
@${ECHO_MSG} "Berkeley DB (4 or 5) repository backend enabled."
.else
@ -293,13 +275,6 @@ post-install: ${MKREPOS_TARGET}
.if ${PORT_OPTIONS:MSVNSERVE_WRAPPER}
@${INSTALL_SCRIPT} ${FILESDIR}/svnserve.wrapper ${PREFIX}/bin/svnserve
.endif
.if ${PORT_OPTIONS:MSVNMUCC}
. if ${PORT_OPTIONS:MSTATIC}
@${INSTALL} ${WRKSRC}/tools/client-side/svnmucc/svnmucc ${PREFIX}/bin
. else
@${INSTALL} ${WRKSRC}/tools/client-side/svnmucc/.libs/svnmucc ${PREFIX}/bin
. endif
.endif
repository: _mkrepos

View File

@ -2,13 +2,13 @@
# $FreeBSD$
PORTNAME= subversion
PORTVERSION= 1.7.10
PORTVERSION= 1.8.0
PORTREVISION?= 0
CATEGORIES+= devel
MASTER_SITES= ${MASTER_SITE_APACHE:S/$/:main/} \
${MASTER_SITE_LOCAL:S/$/:book/}
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:main
DIST_SUBDIR= subversion17
DIST_SUBDIR= subversion18
MASTER_SITE_SUBDIR= subversion/:main \
lev/:book
@ -19,18 +19,17 @@ USE_KDE4= # Used below if KWallet support is enabled
LICENSE= AL2
CONFLICTS_INSTALL+= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-1.[6|8].[0-9]*
CONFLICTS_INSTALL+= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-1.[6|7].[0-9]*
LIB_DEPENDS+= sqlite3.8:${PORTSDIR}/databases/sqlite3 \
expat:${PORTSDIR}/textproc/expat2
CONFIGURE_ARGS+= --with-ssl \
--without-swig \
CONFIGURE_ARGS+= --without-swig \
--with-sqlite=${LOCALBASE} \
--with-expat=/usr/local/include:/usr/local/lib:expat
.if defined(SVN_BUILD_BINDINGS)
CONFLICTS_BUILD+= ${PORTNAME}-1.[6|8].[0-9]*
CONFLICTS_BUILD+= ${PORTNAME}-1.[6|7].[0-9]*
LIB_DEPENDS+= svn_client-1.0:${PORTSDIR}/devel/subversion
OPTIONSFILE= ${PORT_DBDIR}/${PORTNAME}/options
OPTIONS= # Dirty hack: if OPTIONS is not defined, OPTIONSFILE will not be included
@ -38,15 +37,6 @@ OPTIONS= # Dirty hack: if OPTIONS is not defined, OPTIONSFILE will not be inclu
.include <bsd.port.options.mk>
# Default is "on"
.if ${PORT_OPTIONS:MNEON}
LIB_DEPENDS+= neon.27:${PORTSDIR}/www/neon29
PLIST_SUB+= NEON=""
.else
CONFIGURE_ARGS+=--without-neon
PLIST_SUB+= NEON="@comment "
.endif
.if ${PORT_OPTIONS:MSASL}
LIB_DEPENDS+= sasl2:${PORTSDIR}/security/cyrus-sasl2
CONFIGURE_ARGS+=--with-sasl=${LOCALBASE}

View File

@ -1,6 +1,6 @@
SHA256 (subversion17/subversion-1.7.10.tar.bz2) = c1df222bec83d014d17785e2ceba6bc80962f64b280967de0285836d8d77a8e7
SIZE (subversion17/subversion-1.7.10.tar.bz2) = 5952121
SHA256 (subversion17/svn-book-html-r4304.tar.bz2) = a63d958b1ae70daf2ac93a53ece70a0ba0f8f7de7af3f74a665fe44b8f50ca14
SIZE (subversion17/svn-book-html-r4304.tar.bz2) = 467806
SHA256 (subversion17/svn-book-r4304.pdf) = 1b2cada79db8268fd6cd55fac4e5ee04c1e2977bbc587fa1098bd3613b9689b2
SIZE (subversion17/svn-book-r4304.pdf) = 1921443
SHA256 (subversion18/subversion-1.8.0.tar.bz2) = a470803293a8aced445cff0f7b24b95ad276600af55d4b24b1e196fd2de87f10
SIZE (subversion18/subversion-1.8.0.tar.bz2) = 6711904
SHA256 (subversion18/svn-book-html-r4515.tar.bz2) = 666cef147abc9b917a6bb6527da4f4869221d793126289c715f002bfb2baa508
SIZE (subversion18/svn-book-html-r4515.tar.bz2) = 473182
SHA256 (subversion18/svn-book-r4515.pdf) = 962d524ae2c861ec48a45723c484f4f5e1826ee2f9ccfe58b07b96af67b0bf5e
SIZE (subversion18/svn-book-r4515.pdf) = 1943481

View File

@ -1,457 +0,0 @@
diff -ruN subversion/include/private/svn_subst_private.h subversion/include/private/svn_subst_private.h
--- subversion/include/private/svn_subst_private.h 1970-01-01 03:00:00.000000000 +0300
+++ subversion/include/private/svn_subst_private.h 2012-04-02 18:49:12.000000000 +0400
@@ -0,0 +1,68 @@
+/**
+ * @copyright
+ * ====================================================================
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ * ====================================================================
+ * @endcopyright
+ *
+ * @file svn_subst_private.h
+ * @brief Non-public subst utility functions.
+ */
+
+
+#ifndef SVN_SUBST_PRIVATE_H
+#define SVN_SUBST_PRIVATE_H
+
+#include "svn_subst.h" /* for svn_boolean_t, svn_error_t */
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+/**
+ * Set @a *kw to a new keywords hash filled with the appropriate contents
+ * given a @a keywords_string (the contents of the svn:keywords
+ * property for the file in question), the revision @a rev, the @a url,
+ * the url of the root of the @a repos, the @a date the file was committed
+ * on, and the @a author of the last commit. Any of these can be @c NULL
+ * to indicate that the information is not present, or @c 0 for @a date.
+ *
+ * Hash keys are of type <tt>const char *</tt>.
+ * Hash values are of type <tt>svn_string_t *</tt>.
+ *
+ * All memory is allocated out of @a pool.
+ *
+ * @since New in 1.6
+ */
+svn_error_t *
+svn_subst_build_keywords3(apr_hash_t **kw,
+ const char *keywords_string,
+ const char *rev,
+ const char *url,
+ const char *repos,
+ apr_time_t date,
+ const char *author,
+ apr_pool_t *pool);
+
+
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* SVN_SUBST_PRIVATE_H */
diff -ruN subversion/libsvn_client/cat.c subversion/libsvn_client/cat.c
--- subversion/libsvn_client/cat.c 2011-08-18 18:05:35.000000000 +0400
+++ subversion/libsvn_client/cat.c 2012-04-02 18:46:56.000000000 +0400
@@ -40,6 +40,7 @@
#include "svn_private_config.h"
#include "private/svn_wc_private.h"
+#include "private/svn_subst_private.h"
/*** Code. ***/
@@ -137,12 +138,15 @@
const char *rev_str;
const char *author;
const char *url;
+ const char *repos;
SVN_ERR(svn_wc__node_get_changed_info(&changed_rev, NULL, &author, wc_ctx,
local_abspath, scratch_pool,
scratch_pool));
SVN_ERR(svn_wc__node_get_url(&url, wc_ctx, local_abspath, scratch_pool,
scratch_pool));
+ SVN_ERR(svn_wc__node_get_repos_info(&repos, NULL, wc_ctx, local_abspath,
+ scratch_pool, scratch_pool));
if (local_mod)
{
@@ -158,8 +162,8 @@
rev_str = apr_psprintf(scratch_pool, "%ld", changed_rev);
}
- SVN_ERR(svn_subst_build_keywords2(&kw, keywords->data, rev_str, url, tm,
- author, scratch_pool));
+ SVN_ERR(svn_subst_build_keywords3(&kw, keywords->data, rev_str, url,
+ repos, tm, author, scratch_pool));
}
/* Wrap the output stream if translation is needed. */
@@ -188,6 +192,7 @@
svn_string_t *keywords;
apr_hash_t *props;
const char *url;
+ const char *repos_root_url;
svn_stream_t *output = out;
svn_error_t *err;
@@ -231,6 +236,8 @@
&url, path_or_url, NULL,
peg_revision,
revision, ctx, pool));
+ /* Find the repos root URL */
+ SVN_ERR(svn_ra_get_repos_root2(ra_session, &repos_root_url, pool));
/* Grab some properties we need to know in order to figure out if anything
special needs to be done with this file. */
@@ -281,10 +288,11 @@
if (cmt_date)
SVN_ERR(svn_time_from_cstring(&when, cmt_date->data, pool));
- SVN_ERR(svn_subst_build_keywords2
+ SVN_ERR(svn_subst_build_keywords3
(&kw, keywords->data,
cmt_rev->data,
url,
+ repos_root_url,
when,
cmt_author ? cmt_author->data : NULL,
pool));
diff -ruN subversion/libsvn_client/commit.c subversion/libsvn_client/commit.c
--- subversion/libsvn_client/commit.c 2011-11-28 21:04:12.000000000 +0400
+++ subversion/libsvn_client/commit.c 2012-04-02 18:46:52.000000000 +0400
@@ -50,6 +50,7 @@
#include "client.h"
#include "private/svn_wc_private.h"
#include "private/svn_magic.h"
+#include "private/svn_subst_private.h"
#include "svn_private_config.h"
@@ -126,9 +127,9 @@
}
if (keywords_val)
- SVN_ERR(svn_subst_build_keywords2(&keywords, keywords_val->data,
+ SVN_ERR(svn_subst_build_keywords3(&keywords, keywords_val->data,
APR_STRINGIFY(SVN_INVALID_REVNUM),
- "", 0, "", pool));
+ "", "", 0, "", pool));
else
keywords = NULL;
diff -ruN subversion/libsvn_client/export.c subversion/libsvn_client/export.c
--- subversion/libsvn_client/export.c 2012-02-10 08:00:30.000000000 +0400
+++ subversion/libsvn_client/export.c 2012-04-02 18:46:47.000000000 +0400
@@ -43,6 +43,7 @@
#include "svn_private_config.h"
#include "private/svn_wc_private.h"
+#include "private/svn_subst_private.h"
/*** Code. ***/
@@ -274,6 +275,7 @@
svn_revnum_t changed_rev;
const char *suffix;
const char *url;
+ const char *repos;
const char *author;
SVN_ERR(svn_wc__node_get_changed_info(&changed_rev, NULL, &author,
@@ -296,11 +298,13 @@
SVN_ERR(svn_wc__node_get_url(&url, wc_ctx, from_abspath,
scratch_pool, scratch_pool));
+ SVN_ERR(svn_wc__node_get_repos_info(&repos, NULL, wc_ctx, from_abspath,
+ scratch_pool, scratch_pool));
- SVN_ERR(svn_subst_build_keywords2
+ SVN_ERR(svn_subst_build_keywords3
(&kw, keywords->data,
apr_psprintf(scratch_pool, "%ld%s", changed_rev, suffix),
- url, tm, author, scratch_pool));
+ url, repos, tm, author, scratch_pool));
}
/* For atomicity, we translate to a tmp file and then rename the tmp file
@@ -702,6 +706,7 @@
/* Any keyword vals to be substituted */
const char *revision;
const char *url;
+ const char *repos;
const char *author;
apr_time_t date;
@@ -823,6 +828,7 @@
fb->edit_baton = eb;
fb->path = full_path;
fb->url = full_url;
+ fb->repos = eb->root_url;
fb->pool = pool;
*baton = fb;
@@ -987,8 +993,8 @@
}
if (fb->keywords_val)
- SVN_ERR(svn_subst_build_keywords2(&final_kw, fb->keywords_val->data,
- fb->revision, fb->url, fb->date,
+ SVN_ERR(svn_subst_build_keywords3(&final_kw, fb->keywords_val->data,
+ fb->revision, fb->url, fb->repos, fb->date,
fb->author, pool));
SVN_ERR(svn_subst_copy_and_translate4(fb->tmppath, fb->path,
diff -ruN subversion/libsvn_subr/subst.c subversion/libsvn_subr/subst.c
--- subversion/libsvn_subr/subst.c 2011-07-29 21:28:11.000000000 +0400
+++ subversion/libsvn_subr/subst.c 2012-04-02 18:47:06.000000000 +0400
@@ -49,6 +49,7 @@
#include "svn_private_config.h"
#include "private/svn_string_private.h"
+#include "private/svn_subst_private.h"
/**
* The textual elements of a detranslated special file. One of these
@@ -135,8 +136,11 @@
* %b basename of the URL of this file
* %d short format of date of this revision
* %D long format of date of this revision
+ * %P path relative to root of repos
* %r number of this revision
+ * %R root url of repository
* %u URL of this file
+ * %_ a space
* %% a literal %
*
* All memory is allocated out of @a pool.
@@ -145,12 +149,14 @@
keyword_printf(const char *fmt,
const char *rev,
const char *url,
+ const char *repos,
apr_time_t date,
const char *author,
apr_pool_t *pool)
{
svn_stringbuf_t *value = svn_stringbuf_ncreate("", 0, pool);
const char *cur;
+ const char *relative;
size_t n;
for (;;)
@@ -203,6 +209,23 @@
svn_stringbuf_appendcstr(value,
svn_time_to_human_cstring(date, pool));
break;
+ case 'P': /* relative path of this file */
+ relative = url;
+ if (relative && repos)
+ {
+ int len = strlen(repos);
+
+ if (strncmp(repos, relative, len) == 0
+ && relative[len] == '/')
+ relative += len + 1;
+ }
+ if (relative)
+ svn_stringbuf_appendcstr(value, relative);
+ break;
+ case 'R': /* root of repos */
+ if (repos)
+ svn_stringbuf_appendcstr(value, repos);
+ break;
case 'r': /* number of this revision */
if (rev)
svn_stringbuf_appendcstr(value, rev);
@@ -211,6 +234,9 @@
if (url)
svn_stringbuf_appendcstr(value, url);
break;
+ case '_': /* '%_' => a space */
+ svn_stringbuf_appendbytes(value, " ", 1);
+ break;
case '%': /* '%%' => a literal % */
svn_stringbuf_appendbyte(value, *cur);
break;
@@ -246,8 +272,8 @@
apr_hash_t *kwhash;
const svn_string_t *val;
- SVN_ERR(svn_subst_build_keywords2(&kwhash, keywords_val, rev,
- url, date, author, pool));
+ SVN_ERR(svn_subst_build_keywords3(&kwhash, keywords_val, rev,
+ url, "", date, author, pool));
/* The behaviour of pre-1.3 svn_subst_build_keywords, which we are
* replicating here, is to write to a slot in the svn_subst_keywords_t
@@ -286,6 +312,21 @@
const char *author,
apr_pool_t *pool)
{
+ SVN_ERR(svn_subst_build_keywords3(kw, keywords_val, rev,
+ url, "", date, author, pool));
+ return SVN_NO_ERROR;
+}
+
+svn_error_t *
+svn_subst_build_keywords3(apr_hash_t **kw,
+ const char *keywords_val,
+ const char *rev,
+ const char *url,
+ const char *repos,
+ apr_time_t date,
+ const char *author,
+ apr_pool_t *pool)
+{
apr_array_header_t *keyword_tokens;
int i;
*kw = apr_hash_make(pool);
@@ -296,6 +337,24 @@
for (i = 0; i < keyword_tokens->nelts; ++i)
{
const char *keyword = APR_ARRAY_IDX(keyword_tokens, i, const char *);
+ apr_array_header_t *keyword_tokens2;
+
+ keyword_tokens2 = svn_cstring_split(keyword, "=", TRUE /* chop */, pool);
+ if (keyword_tokens2->nelts == 2)
+ {
+ svn_string_t *custom_val;
+ const char *custom_expand;
+
+ keyword = APR_ARRAY_IDX(keyword_tokens2, 0, const char*);
+ custom_expand = APR_ARRAY_IDX(keyword_tokens2, 1, const char*);
+ if (! strcmp(custom_expand, "%H"))
+ custom_expand = "%P %r %d %a";
+ else if (! strcmp(custom_expand, "%I"))
+ custom_expand = "%b %r %d %a";
+ custom_val = keyword_printf(custom_expand, rev, url, repos, date, author, pool);
+ apr_hash_set(*kw, keyword, APR_HASH_KEY_STRING, custom_val);
+ return SVN_NO_ERROR;
+ }
if ((! strcmp(keyword, SVN_KEYWORD_REVISION_LONG))
|| (! strcmp(keyword, SVN_KEYWORD_REVISION_MEDIUM))
@@ -303,7 +362,7 @@
{
svn_string_t *revision_val;
- revision_val = keyword_printf("%r", rev, url, date, author, pool);
+ revision_val = keyword_printf("%r", rev, url, repos, date, author, pool);
apr_hash_set(*kw, SVN_KEYWORD_REVISION_LONG,
APR_HASH_KEY_STRING, revision_val);
apr_hash_set(*kw, SVN_KEYWORD_REVISION_MEDIUM,
@@ -316,7 +375,7 @@
{
svn_string_t *date_val;
- date_val = keyword_printf("%D", rev, url, date, author, pool);
+ date_val = keyword_printf("%D", rev, url, repos, date, author, pool);
apr_hash_set(*kw, SVN_KEYWORD_DATE_LONG,
APR_HASH_KEY_STRING, date_val);
apr_hash_set(*kw, SVN_KEYWORD_DATE_SHORT,
@@ -327,7 +386,7 @@
{
svn_string_t *author_val;
- author_val = keyword_printf("%a", rev, url, date, author, pool);
+ author_val = keyword_printf("%a", rev, url, repos, date, author, pool);
apr_hash_set(*kw, SVN_KEYWORD_AUTHOR_LONG,
APR_HASH_KEY_STRING, author_val);
apr_hash_set(*kw, SVN_KEYWORD_AUTHOR_SHORT,
@@ -338,7 +397,7 @@
{
svn_string_t *url_val;
- url_val = keyword_printf("%u", rev, url, date, author, pool);
+ url_val = keyword_printf("%u", rev, url, repos, date, author, pool);
apr_hash_set(*kw, SVN_KEYWORD_URL_LONG,
APR_HASH_KEY_STRING, url_val);
apr_hash_set(*kw, SVN_KEYWORD_URL_SHORT,
@@ -348,7 +407,7 @@
{
svn_string_t *id_val;
- id_val = keyword_printf("%b %r %d %a", rev, url, date, author,
+ id_val = keyword_printf("%b %r %d %a", rev, url, repos, date, author,
pool);
apr_hash_set(*kw, SVN_KEYWORD_ID,
APR_HASH_KEY_STRING, id_val);
@@ -357,7 +416,7 @@
{
svn_string_t *header_val;
- header_val = keyword_printf("%u %r %d %a", rev, url, date, author,
+ header_val = keyword_printf("%u %r %d %a", rev, url, repos, date, author,
pool);
apr_hash_set(*kw, SVN_KEYWORD_HEADER,
APR_HASH_KEY_STRING, header_val);
diff -ruN subversion/libsvn_wc/translate.c subversion/libsvn_wc/translate.c
--- subversion/libsvn_wc/translate.c 2011-07-07 15:29:08.000000000 +0400
+++ subversion/libsvn_wc/translate.c 2012-04-02 18:47:00.000000000 +0400
@@ -46,6 +46,7 @@
#include "svn_private_config.h"
#include "private/svn_wc_private.h"
+#include "private/svn_subst_private.h"
@@ -313,10 +314,10 @@
apr_time_t changed_date;
const char *changed_author;
const char *url;
+ const char *repos_root_url;
if (! for_normalization)
{
- const char *repos_root_url;
const char *repos_relpath;
SVN_ERR(svn_wc__db_read_info(NULL, NULL, NULL, &repos_relpath,
@@ -341,13 +342,23 @@
changed_rev = SVN_INVALID_REVNUM;
changed_date = 0;
changed_author = "";
+
+ SVN_ERR(svn_wc__db_read_info(NULL, NULL, NULL, NULL,
+ &repos_root_url, NULL, NULL,
+ NULL, NULL, NULL,
+ NULL, NULL, NULL, NULL, NULL, NULL,
+ NULL, NULL, NULL, NULL, NULL, NULL, NULL,
+ NULL, NULL, NULL, NULL,
+ db, local_abspath,
+ scratch_pool, scratch_pool));
}
- SVN_ERR(svn_subst_build_keywords2(keywords,
+ SVN_ERR(svn_subst_build_keywords3(keywords,
keyword_list,
apr_psprintf(scratch_pool, "%ld",
changed_rev),
url,
+ repos_root_url,
changed_date,
changed_author,
result_pool));

View File

@ -1,6 +1,6 @@
--- configure.orig 2011-11-29 20:16:31.000000000 +0400
+++ configure 2011-12-05 23:43:08.000000000 +0400
@@ -4326,7 +4326,7 @@
--- configure.orig 2013-06-13 13:08:08.000000000 +0400
+++ configure 2013-06-19 19:54:23.000000000 +0400
@@ -4496,7 +4496,7 @@
# ==== Libraries, for which we may have source to build ======================
@ -8,37 +8,27 @@
+APR_VER_REGEXES="0\.9\.[7-9] 0\.9\.[12][0-9] 1\. 2\."
do_subdir_config="yes"
@@ -19106,11 +19106,11 @@
SVN_KWALLET_INCLUDES="$DBUS_CPPFLAGS $qt_include_dirs -I$kde_dir/include"
qt_libs_other_options="`$PKG_CONFIG --libs-only-other QtCore QtDBus QtGui`"
SVN_KWALLET_LIBS="$DBUS_LIBS -lQtCore -lQtDBus -lQtGui -lkdecore -lkdeui $qt_libs_other_options"
- CXXFLAGS="$CXXFLAGS $SVN_KWALLET_INCLUDES"
+ CXXFLAGS="$SVN_KWALLET_INCLUDES $CXXFLAGS"
LIBS="$LIBS $SVN_KWALLET_LIBS"
qt_lib_dirs="`$PKG_CONFIG --libs-only-L QtCore QtDBus QtGui`"
kde_lib_suffix="`$KDE4_CONFIG --libsuffix`"
- LDFLAGS="$old_LDFLAGS `
+ LDFLAGS="`
APR_WANTED_REGEXES="$APR_VER_REGEXES"
@@ -18971,11 +18971,11 @@
SVN_KWALLET_INCLUDES="$DBUS_CPPFLAGS $qt_include_dirs -I$kde_dir/include"
qt_libs_other_options="`$PKG_CONFIG --libs-only-other QtCore QtDBus QtGui`"
SVN_KWALLET_LIBS="$DBUS_LIBS -lQtCore -lQtDBus -lQtGui -lkdecore -lkdeui $qt_libs_other_options"
- CXXFLAGS="$CXXFLAGS $SVN_KWALLET_INCLUDES"
+ CXXFLAGS="$SVN_KWALLET_INCLUDES $CXXFLAGS"
LIBS="$LIBS $SVN_KWALLET_LIBS"
qt_lib_dirs="`$PKG_CONFIG --libs-only-L QtCore QtDBus QtGui`"
kde_lib_suffix="`$KDE4_CONFIG --libsuffix`"
- LDFLAGS="$old_LDFLAGS `
+ LDFLAGS="`
input_flags="$qt_lib_dirs -L$kde_dir/lib$kde_lib_suffix"
output_flags=""
filtered_dirs="/lib /lib64 /usr/lib /usr/lib64"
@@ -19129,7 +19129,7 @@
@@ -18994,7 +18994,7 @@
if test -n "$output_flags"; then
printf "%s" "${output_flags# }"
fi
-`"
+` $old_LDFLAGS"
ac_ext=cpp
ac_ext=cpp
ac_cpp='$CXXCPP $CPPFLAGS'
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -20762,6 +20762,9 @@
fi
if test "$RUBY" != "none"; then
+ if [ -z "$PTHREAD_LIBS" ]; then
+ PTHREAD_LIBS=-pthread
+ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking rb_hash_foreach" >&5
$as_echo_n "checking rb_hash_foreach... " >&6; }
if "$RUBY" -r mkmf -e 'exit(have_func("rb_hash_foreach") ? 0 : 1)' >/dev/null; then

File diff suppressed because it is too large Load Diff

View File

@ -3,13 +3,13 @@ bin/svn
bin/svnadmin
bin/svndumpfilter
bin/svnlook
bin/svnmucc
bin/svnrdump
bin/svnserve
bin/svnsync
%%ASVN%%bin/asvn
%%SVNAUTHZ_VALIDATE%%bin/svnauthz-validate
%%SVNSERVE_WRAPPER%%bin/svnserve.bin
%%SVNMUCC%%bin/svnmucc
bin/svnversion
include/subversion-1/mod_authz_svn.h
include/subversion-1/mod_dav_svn.h
@ -96,10 +96,6 @@ lib/libsvn_ra-1.a
lib/libsvn_ra-1.la
%%DYNAMIC_ENABLED%%lib/libsvn_ra-1.so
%%DYNAMIC_ENABLED%%lib/libsvn_ra-1.so.0
%%NEON%%lib/libsvn_ra_neon-1.a
%%NEON%%lib/libsvn_ra_neon-1.la
%%DYNAMIC_ENABLED%%%%NEON%%lib/libsvn_ra_neon-1.so
%%DYNAMIC_ENABLED%%%%NEON%%lib/libsvn_ra_neon-1.so.0
lib/libsvn_ra_local-1.a
lib/libsvn_ra_local-1.la
%%DYNAMIC_ENABLED%%lib/libsvn_ra_local-1.so
@ -162,6 +158,66 @@ lib/libsvn_wc-1.la
%%WITHOUT_GETTEXT%%share/locale/sv/LC_MESSAGES/subversion.mo
%%WITHOUT_GETTEXT%%share/locale/zh_CN/LC_MESSAGES/subversion.mo
%%WITHOUT_GETTEXT%%share/locale/zh_TW/LC_MESSAGES/subversion.mo
%%DATADIR%%/client-side/detach.py
%%DATADIR%%/client-side/mergeinfo-sanitizer.py
%%DATADIR%%/client-side/svn-bench/cl.h
%%DATADIR%%/client-side/svn-bench/client_errors.h
%%DATADIR%%/client-side/svn-bench/help-cmd.c
%%DATADIR%%/client-side/svn-bench/notify.c
%%DATADIR%%/client-side/svn-bench/null-export-cmd.c
%%DATADIR%%/client-side/svn-bench/null-list-cmd.c
%%DATADIR%%/client-side/svn-bench/null-log-cmd.c
%%DATADIR%%/client-side/svn-bench/svn-bench.c
%%DATADIR%%/client-side/svn-bench/util.c
%%DATADIR%%/dev/aprerr.txt
%%DATADIR%%/dev/benchmarks/suite1/generate_charts
%%DATADIR%%/dev/fsfs-access-map.c
%%DATADIR%%/dev/fsfs-reorg.c
%%DATADIR%%/dev/gdb-py/README
%%DATADIR%%/dev/gdb-py/svndbg/__init__.py
%%DATADIR%%/dev/gdb-py/svndbg/printers.py
%%DATADIR%%/dev/histogram.py
%%DATADIR%%/dev/merge-graph.py
%%DATADIR%%/dev/mergegraph/__init__.py
%%DATADIR%%/dev/mergegraph/mergegraph.py
%%DATADIR%%/dev/mergegraph/save_as_sh.py
%%DATADIR%%/dev/remove-trailing-whitespace.sh
%%DATADIR%%/dev/sbox-ospath.py
%%DATADIR%%/dev/svnraisetreeconflict/svnraisetreeconflict.c
%%DATADIR%%/dist/_gnupg.py
%%DATADIR%%/dist/make-deps-tarball.sh
%%DATADIR%%/dist/templates/download.ezt
%%DATADIR%%/dist/templates/stable-news.ezt
%%DATADIR%%/examples/walk-config-auth.py
%%DATADIR%%/hook-scripts/control-chars.py
%%DATADIR%%/hook-scripts/persist-ephemeral-txnprops.py
%%DATADIR%%/hook-scripts/validate-files.conf.example
%%DATADIR%%/hook-scripts/validate-files.py
%%DATADIR%%/server-side/fsfs-stats.c
%%DATADIR%%/server-side/mod_dontdothat/mod_dontdothat.la
%%DATADIR%%/server-side/svnauthz.c
%%DATADIR%%/server-side/svnpredumpfilter.py
%%DATADIR%%/server-side/svnpubsub/README.txt
%%DATADIR%%/server-side/svnpubsub/commit-hook.py
%%DATADIR%%/server-side/svnpubsub/daemonize.py
%%DATADIR%%/server-side/svnpubsub/irkerbridge.py
%%DATADIR%%/server-side/svnpubsub/rc.d/svnpubsub
%%DATADIR%%/server-side/svnpubsub/rc.d/svnpubsub.debian
%%DATADIR%%/server-side/svnpubsub/rc.d/svnpubsub.freebsd
%%DATADIR%%/server-side/svnpubsub/rc.d/svnpubsub.solaris
%%DATADIR%%/server-side/svnpubsub/rc.d/svnwcsub
%%DATADIR%%/server-side/svnpubsub/rc.d/svnwcsub.debian
%%DATADIR%%/server-side/svnpubsub/rc.d/svnwcsub.freebsd
%%DATADIR%%/server-side/svnpubsub/rc.d/svnwcsub.solaris
%%DATADIR%%/server-side/svnpubsub/svnpubsub.tac
%%DATADIR%%/server-side/svnpubsub/svnpubsub/__init__.py
%%DATADIR%%/server-side/svnpubsub/svnpubsub/client.py
%%DATADIR%%/server-side/svnpubsub/svnpubsub/server.py
%%DATADIR%%/server-side/svnpubsub/svntweet.py
%%DATADIR%%/server-side/svnpubsub/svnwcsub.conf.example
%%DATADIR%%/server-side/svnpubsub/svnwcsub.py
%%DATADIR%%/server-side/svnpubsub/testserver.py
%%DATADIR%%/server-side/svnpubsub/watcher.py
%%DATADIR%%/backup/hot-backup.py
%%DATADIR%%/bdb/erase-all-text-data.py
%%DATADIR%%/bdb/skel.py
@ -230,8 +286,6 @@ lib/libsvn_wc-1.la
%%DATADIR%%/client-side/svn-graph.pl
%%DATADIR%%/client-side/svn-ssl-fingerprints.sh
%%DATADIR%%/client-side/svn-viewspec.py
%%DATADIR%%/client-side/svnmucc/svnmucc.c
%%DATADIR%%/client-side/svnmucc/svnmucc-test.py
%%DATADIR%%/client-side/wcfind
%%DATADIR%%/dev/analyze-svnlogs.py
%%DATADIR%%/dev/benchmarks/large_dirs/create_bigdir.sh
@ -245,7 +299,6 @@ lib/libsvn_wc-1.la
%%DATADIR%%/dev/datecheck.py
%%DATADIR%%/dev/find-bad-style.py
%%DATADIR%%/dev/find-unmoved-deprecated.sh
%%DATADIR%%/dev/gcov.patch
%%DATADIR%%/dev/gen-javahl-errors.py
%%DATADIR%%/dev/gen-py-errors.py
%%DATADIR%%/dev/gen_junit_report.py
@ -272,7 +325,6 @@ lib/libsvn_wc-1.la
%%DATADIR%%/dev/svn-entries.el
%%DATADIR%%/dev/svn-merge-revs.py
%%DATADIR%%/dev/svnqlite3-dump
%%DATADIR%%/dev/svnraisetreeconflict/main.c
%%DATADIR%%/dev/trails.py
%%DATADIR%%/dev/unix-build/Makefile.svn
%%DATADIR%%/dev/unix-build/README
@ -297,15 +349,12 @@ lib/libsvn_wc-1.la
%%DATADIR%%/dist/dist.sh
%%DATADIR%%/dist/download-release.sh
%%DATADIR%%/dist/extract-for-examination.sh
%%DATADIR%%/dist/getsigs.py
%%DATADIR%%/dist/nightly.sh
%%DATADIR%%/dist/rat-excludes
%%DATADIR%%/dist/release.py
%%DATADIR%%/dist/templates/nightly-candidates.ezt
%%DATADIR%%/dist/templates/rc-candidates.ezt
%%DATADIR%%/dist/templates/rc-news.ezt
%%DATADIR%%/dist/templates/rc-release-ann.ezt
%%DATADIR%%/dist/templates/stable-candidates.ezt
%%DATADIR%%/dist/templates/stable-release-ann.ezt
%%DATADIR%%/dist/test.sh
%%DATADIR%%/examples/blame.py
@ -354,7 +403,6 @@ lib/libsvn_wc-1.la
%%DATADIR%%/server-side/svn-populate-node-origins-index.c
%%DATADIR%%/server-side/svn-rep-sharing-stats.c
%%DATADIR%%/server-side/svn_server_log_parse.py
%%DATADIR%%/server-side/svnauthz-validate.c
%%DATADIR%%/server-side/test_svn_server_log_parse.py
%%DATADIR%%/xslt/svnindex.css
%%DATADIR%%/xslt/svnindex.xsl
@ -382,12 +430,15 @@ lib/libsvn_wc-1.la
@dirrm %%DATADIR%%/buildbot/slaves/xp-vc60-ia32
@dirrm %%DATADIR%%/buildbot/slaves
@dirrm %%DATADIR%%/buildbot
@dirrm %%DATADIR%%/client-side/svnmucc
@dirrm %%DATADIR%%/client-side/svn-bench
@dirrm %%DATADIR%%/client-side
@dirrm %%DATADIR%%/dev/benchmarks/large_dirs
@dirrm %%DATADIR%%/dev/benchmarks/suite1
@dirrm %%DATADIR%%/dev/benchmarks
@dirrm %%DATADIR%%/dev/iz
@dirrm %%DATADIR%%/dev/gdb-py/svndbg
@dirrm %%DATADIR%%/dev/gdb-py
@dirrm %%DATADIR%%/dev/mergegraph
@dirrm %%DATADIR%%/dev/svnraisetreeconflict
@dirrm %%DATADIR%%/dev/unix-build
@dirrm %%DATADIR%%/dev/wc-ng
@ -402,6 +453,10 @@ lib/libsvn_wc-1.la
@dirrm %%DATADIR%%/hook-scripts
@dirrm %%DATADIR%%/po
@dirrm %%DATADIR%%/server-side/mod_dontdothat
@dirrm %%DATADIR%%/server-side/svnpubsub/notes
@dirrm %%DATADIR%%/server-side/svnpubsub/rc.d
@dirrm %%DATADIR%%/server-side/svnpubsub/svnpubsub
@dirrm %%DATADIR%%/server-side/svnpubsub
@dirrm %%DATADIR%%/server-side
@dirrm %%DATADIR%%/xslt
@dirrm %%DATADIR%%