diff options
Diffstat (limited to 'testing/kdevplatform')
-rw-r--r-- | testing/kdevplatform/PKGBUILD | 39 | ||||
-rw-r--r-- | testing/kdevplatform/kdevplatform.install | 11 | ||||
-rw-r--r-- | testing/kdevplatform/subversion17.patch | 127 |
3 files changed, 177 insertions, 0 deletions
diff --git a/testing/kdevplatform/PKGBUILD b/testing/kdevplatform/PKGBUILD new file mode 100644 index 000000000..75e543a98 --- /dev/null +++ b/testing/kdevplatform/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 144746 2011-12-08 09:39:48Z andrea $ +# Maintainer: +# Contributor: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Giovanni Scafora <giovanni@archlinux.org> + +pkgname=kdevplatform +pkgver=1.2.3 +_pkgver=4.2.3 +pkgrel=2 +pkgdesc="A C/C++ development platform for KDE" +arch=('i686' 'x86_64') +url="http://www.kdevelop.org/" +license=('GPL') +depends=('kdelibs''subversion' 'qjson') +optdepends=("kdesdk-kompare: difference checking") +makedepends=('cmake' 'automoc4' 'boost') +install=${pkgname}.install +source=("http://download.kde.org/stable/kdevelop/${_pkgver}/src/${pkgname}-${pkgver}.tar.bz2" + 'subversion17.patch') +sha1sums=('c8badd157c2477b1b299403d01d40f68a1ba14cd' + '08e2ab2005a7a447f1733e8449a9bc926035fb9e') + +build() { + cd "${srcdir}"/${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/subversion17.patch + + cd "${srcdir}" + mkdir build + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release + make +} + +package() { + cd "${srcdir}"/build + make DESTDIR="${pkgdir}" install +} diff --git a/testing/kdevplatform/kdevplatform.install b/testing/kdevplatform/kdevplatform.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/testing/kdevplatform/kdevplatform.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/testing/kdevplatform/subversion17.patch b/testing/kdevplatform/subversion17.patch new file mode 100644 index 000000000..782ac38ea --- /dev/null +++ b/testing/kdevplatform/subversion17.patch @@ -0,0 +1,127 @@ +commit 74dec52749e3c3af2ac6492f50e2676128f35b27 +Author: Milian Wolff <mail@milianw.de> +Date: Fri Nov 18 16:26:06 2011 +0100 + + fix svn api usage: use svn_dirent_canonicalize instead of svn_path_internal_style + + this was suggested by Stephan Sperling + + CCBUG: 284061 + +diff --git a/plugins/subversion/kdevsvncpp/path.cpp b/plugins/subversion/kdevsvncpp/path.cpp +index eaa84c1..4dced08 100644 +--- a/plugins/subversion/kdevsvncpp/path.cpp ++++ b/plugins/subversion/kdevsvncpp/path.cpp +@@ -24,6 +24,7 @@ + + // subversion api + #include "svn_path.h" ++#include "svn_dirent_uri.h" + + // apr api + #include "apr_file_io.h" +@@ -63,8 +64,7 @@ namespace svn + m_path = ""; + else + { +- const char * int_path = +- svn_path_internal_style(path, pool.pool()); ++ const char * int_path = svn_dirent_canonicalize(path, pool); + + m_path = int_path; + +commit cc7f0798d314cdac14b90e427abe22e99c6bd591 +Author: Milian Wolff <mail@milianw.de> +Date: Fri Nov 18 16:23:36 2011 +0100 + + properly initialize client context for compatibility with subversion API + + this should hopefully fix the crash with svn 1.7 in kdevelop, please test + + BUG: 284061 + +diff --git a/plugins/subversion/kdevsvncpp/context.cpp b/plugins/subversion/kdevsvncpp/context.cpp +index d277591..ddbb657 100644 +--- a/plugins/subversion/kdevsvncpp/context.cpp ++++ b/plugins/subversion/kdevsvncpp/context.cpp +@@ -65,7 +65,7 @@ public: + bool logIsSet; + int promptCounter; + Pool pool; +- svn_client_ctx_t ctx; ++ svn_client_ctx_t * ctx; + std::string username; + std::string password; + std::string logMessage; +@@ -205,26 +205,26 @@ public: + svn_auth_open(&ab, providers, pool); + + // initialize ctx structure +- memset(&ctx, 0, sizeof(ctx)); ++ svn_client_create_context(&ctx, pool); + + // get the config based on the configDir passed in +- svn_config_get_config(&ctx.config, c_configDir, pool); ++ svn_config_get_config(&ctx->config, c_configDir, pool); + + // tell the auth functions where the config is + svn_auth_set_parameter(ab, SVN_AUTH_PARAM_CONFIG_DIR, + c_configDir); + +- ctx.auth_baton = ab; +- ctx.log_msg_func = onLogMsg; +- ctx.log_msg_baton = this; +- ctx.notify_func = onNotify; +- ctx.notify_baton = this; +- ctx.cancel_func = onCancel; +- ctx.cancel_baton = this; ++ ctx->auth_baton = ab; ++ ctx->log_msg_func = onLogMsg; ++ ctx->log_msg_baton = this; ++ ctx->notify_func = onNotify; ++ ctx->notify_baton = this; ++ ctx->cancel_func = onCancel; ++ ctx->cancel_baton = this; + + #if (SVN_VER_MAJOR >= 1) && (SVN_VER_MINOR >= 2) +- ctx.notify_func2 = onNotify2; +- ctx.notify_baton2 = this; ++ ctx->notify_func2 = onNotify2; ++ ctx->notify_baton2 = this; + #endif + } + +@@ -234,7 +234,7 @@ public: + if (!value) + param = (void *)"1"; + +- svn_auth_set_parameter(ctx.auth_baton, ++ svn_auth_set_parameter(ctx->auth_baton, + SVN_AUTH_PARAM_NO_AUTH_CACHE, + param); + } +@@ -245,7 +245,7 @@ public: + username = usr; + password = pwd; + +- svn_auth_baton_t * ab = ctx.auth_baton; ++ svn_auth_baton_t * ab = ctx->auth_baton; + svn_auth_set_parameter(ab, SVN_AUTH_PARAM_DEFAULT_USERNAME, + username.c_str()); + svn_auth_set_parameter(ab, SVN_AUTH_PARAM_DEFAULT_PASSWORD, +@@ -654,13 +654,13 @@ public: + + Context::operator svn_client_ctx_t * () + { +- return &(m->ctx); ++ return m->ctx; + } + + svn_client_ctx_t * + Context::ctx() + { +- return &(m->ctx); ++ return m->ctx; + } + + void |