forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dev-vcs/rapidsvn: Support wxGTK:3.0 (#563348)
Package-Manager: portage-2.2.23
- Loading branch information
Showing
2 changed files
with
318 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,192 @@ | ||
Description: Update for wx 3.0.0 | ||
Update configure to recognise that wx 3.0.0 >= 2.4.2. | ||
Fix code for wx API changes. | ||
Author: Olly Betts <[email protected]> | ||
Origin: debian | ||
Forwarded: no | ||
Last-Update: 2014-04-10 | ||
|
||
--- a/configure.ac | ||
+++ b/configure.ac | ||
@@ -171,6 +171,8 @@ | ||
;; | ||
[2.[5-9].*]) | ||
;; | ||
+ 3.*) | ||
+ ;; | ||
*) | ||
AC_MSG_ERROR([wxWidgets >= 2.4.2 required, found version $WX_VERSION]) | ||
AC_MSG_ERROR([Try --with-wx-config.]) | ||
--- a/src/filelist_ctrl.cpp | ||
+++ b/src/filelist_ctrl.cpp | ||
@@ -1029,7 +1029,7 @@ | ||
|
||
// Workaround for issue 324 (only local+non-flat+update): | ||
// we chdir to the requested dir and pass "." to svn | ||
- if (!pathUtf8.isUrl() && m->WithUpdate && !m->FlatMode) | ||
+ if (!pathUtf8.isUrl() && m->WithUpdate && !m->FlatMode && !m->Path.empty()) | ||
{ | ||
m->IsRelative = true; | ||
::wxSetWorkingDirectory(m->Path); | ||
@@ -1606,7 +1606,7 @@ | ||
} | ||
} | ||
|
||
-inline void | ||
+bool | ||
FileListCtrl::SetColumnWidth(const int col, const int width) | ||
{ | ||
m->ColumnWidth[col] = width; | ||
@@ -1614,8 +1614,9 @@ | ||
int index = m->ColumnIndex[col]; | ||
if (index != -1) | ||
{ | ||
- wxListCtrl::SetColumnWidth(index, width); | ||
+ return wxListCtrl::SetColumnWidth(index, width); | ||
} | ||
+ return false; | ||
} | ||
|
||
int | ||
--- a/src/filelist_ctrl.hpp | ||
+++ b/src/filelist_ctrl.hpp | ||
@@ -118,7 +118,7 @@ | ||
* @param col column number | ||
* @param width | ||
*/ | ||
- void | ||
+ bool | ||
SetColumnWidth(const int col, const int width); | ||
|
||
/** | ||
--- a/src/hist_val.cpp | ||
+++ b/src/hist_val.cpp | ||
@@ -113,7 +113,7 @@ | ||
} | ||
|
||
// if we have an entry, select it | ||
- if (!comboBox->IsEmpty()) | ||
+ if (!comboBox->IsListEmpty()) | ||
comboBox->SetSelection(0, 0); | ||
} | ||
|
||
--- a/src/listener.cpp | ||
+++ b/src/listener.cpp | ||
@@ -167,7 +167,7 @@ | ||
wxMutexLocker lock(mutex); | ||
wxString localCertFile = wxFileSelector( | ||
_("Select Certificate File"), wxT(""), wxT(""), wxT(""), | ||
- wxT("*.*"), wxOPEN | wxFILE_MUST_EXIST, parent); | ||
+ wxT("*.*"), wxFD_OPEN | wxFD_FILE_MUST_EXIST, parent); | ||
LocalToUtf8(localCertFile, certFile); | ||
|
||
dataReceived = !localCertFile.empty(); | ||
--- a/src/log_dlg.cpp | ||
+++ b/src/log_dlg.cpp | ||
@@ -211,7 +211,7 @@ | ||
|
||
for (size_t idx = 0; idx < str.Length(); idx++) | ||
{ | ||
- switch (str[idx]) | ||
+ switch ((wchar_t)str[idx]) | ||
{ | ||
case wxT('\r'): | ||
case wxT('\n'): | ||
--- a/src/preferences_dlg.cpp | ||
+++ b/src/preferences_dlg.cpp | ||
@@ -126,7 +126,7 @@ | ||
PreferencesDlg::SelectExecutable(const wxString & title, wxTextCtrl * textCtrl) | ||
{ | ||
wxFileDialog dlg(this, title, wxEmptyString, wxEmptyString, | ||
- EXECUTABLE_WILDCARD, wxOPEN); | ||
+ EXECUTABLE_WILDCARD, wxFD_OPEN); | ||
dlg.SetPath(textCtrl->GetValue()); | ||
|
||
if (dlg.ShowModal() != wxID_OK) | ||
--- a/src/verblist.cpp | ||
+++ b/src/verblist.cpp | ||
@@ -71,7 +71,7 @@ | ||
const wxString & | ||
VerbList::GetName(size_t /*index*/) const | ||
{ | ||
- return wxT(""); | ||
+ return wxEmptyString; | ||
} | ||
|
||
|
||
--- a/src/checkout_action.cpp | ||
+++ b/src/checkout_action.cpp | ||
@@ -120,7 +120,8 @@ | ||
pegRevision = svn::Revision(revnum); | ||
} | ||
|
||
- wxSetWorkingDirectory(m_data.DestFolder); | ||
+ if (!m_data.DestFolder.empty()) | ||
+ wxSetWorkingDirectory(m_data.DestFolder); | ||
|
||
svn::Path repUrlUtf8(PathUtf8(m_data.RepUrl)); | ||
svn::Path destFolderUtf8(PathUtf8(dest_folder)); | ||
--- a/src/action.cpp | ||
+++ b/src/action.cpp | ||
@@ -218,7 +218,9 @@ | ||
bool | ||
Action::Prepare() | ||
{ | ||
- wxSetWorkingDirectory(Utf8ToLocal(m->path.c_str())); | ||
+ const wxString & dir = Utf8ToLocal(m->path.c_str()); | ||
+ if (!dir.empty()) | ||
+ wxSetWorkingDirectory(dir); | ||
|
||
return true; | ||
} | ||
--- a/src/cleanup_action.cpp | ||
+++ b/src/cleanup_action.cpp | ||
@@ -52,7 +52,9 @@ | ||
svn::Client client(GetContext()); | ||
const svn::Path & path = GetPath(); | ||
|
||
- wxSetWorkingDirectory(Utf8ToLocal(path.c_str())); | ||
+ const wxString & dir = Utf8ToLocal(path.c_str()); | ||
+ if (!dir.empty()) | ||
+ wxSetWorkingDirectory(dir); | ||
client.cleanup(path.c_str()); | ||
|
||
return true; | ||
--- a/src/export_action.cpp | ||
+++ b/src/export_action.cpp | ||
@@ -111,7 +111,8 @@ | ||
pegRevision = svn::Revision(revnum); | ||
} | ||
|
||
- wxSetWorkingDirectory(m_data.DestPath); | ||
+ if (!m_data.DestPath.empty()) | ||
+ wxSetWorkingDirectory(m_data.DestPath); | ||
|
||
svn::Path srcPathUtf8(PathUtf8(m_data.SrcPath)); | ||
svn::Path destPathUtf8(PathUtf8(m_data.DestPath)); | ||
--- a/src/get_action.cpp | ||
+++ b/src/get_action.cpp | ||
@@ -56,7 +56,9 @@ | ||
m_data.revision.revnum()); | ||
Trace(msg); | ||
|
||
- wxSetWorkingDirectory(Utf8ToLocal(GetPath().c_str())); | ||
+ const wxString & dir = Utf8ToLocal(GetPath().c_str()); | ||
+ if (!dir.empty()) | ||
+ wxSetWorkingDirectory(dir); | ||
client.update(svn::Path(LocalToUtf8(m_data.path)), | ||
m_data.revision, | ||
true, false); | ||
--- a/src/update_action.cpp | ||
+++ b/src/update_action.cpp | ||
@@ -75,7 +75,9 @@ | ||
} | ||
} | ||
|
||
- wxSetWorkingDirectory(Utf8ToLocal(GetPath().c_str())); | ||
+ const wxString & dir = Utf8ToLocal(GetPath().c_str()); | ||
+ if (!dir.empty()) | ||
+ wxSetWorkingDirectory(dir); | ||
svn::Client client(GetContext()); | ||
|
||
client.update(GetTargets(), revision, m_data.recursive, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,126 @@ | ||
# Copyright 1999-2015 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
# $Id$ | ||
|
||
EAPI=5 | ||
|
||
PYTHON_COMPAT=( python2_7 ) | ||
|
||
WX_GTK_VER=3.0 | ||
|
||
AUTOTOOLS_AUTORECONF=true | ||
|
||
inherit autotools-utils fdo-mime flag-o-matic python-single-r1 versionator wxwidgets | ||
|
||
MY_PV=$(get_version_component_range 1-2) | ||
MY_REL="1" | ||
|
||
DESCRIPTION="Cross-platform GUI front-end for the Subversion revision system" | ||
HOMEPAGE="http://rapidsvn.tigris.org/" | ||
SRC_URI=" | ||
http://www.rapidsvn.org/download/release/${PV}/${P}.tar.gz | ||
doc? ( https://dev.gentoo.org/~jlec/distfiles/svncpp.dox.xz )" | ||
|
||
LICENSE="GPL-2 LGPL-2.1 FDL-1.2" | ||
SLOT="0" | ||
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" | ||
IUSE="doc static-libs" | ||
|
||
REQUIRED_USE="${PYTHON_REQUIRED_USE}" | ||
|
||
COMMON_DEP=" | ||
${PYTHON_DEPS} | ||
dev-libs/apr | ||
dev-libs/apr-util | ||
dev-vcs/subversion | ||
x11-libs/wxGTK:${WX_GTK_VER}[X]" | ||
DEPEND="${COMMON_DEP} | ||
doc? ( | ||
dev-libs/libxslt | ||
app-text/docbook-sgml-utils | ||
app-doc/doxygen | ||
app-text/docbook-xsl-stylesheets | ||
media-gfx/graphviz | ||
)" | ||
RDEPEND="${COMMON_DEP}" | ||
|
||
PATCHES=( | ||
"${FILESDIR}/${P}-svncpp_link.patch" | ||
"${FILESDIR}/${P}-locale.patch" | ||
"${FILESDIR}/${P}-wx3.0.patch" ) | ||
|
||
AUTOTOOLS_IN_SOURCE_BUILD=1 | ||
|
||
DOCS=( HACKING.txt TRANSLATIONS ) | ||
|
||
src_prepare() { | ||
need-wxwidgets unicode | ||
if use doc; then | ||
mv "${WORKDIR}"/svncpp.dox doc/svncpp/ || die | ||
fi | ||
strip-linguas $(grep ^RAPIDSVN_LANGUAGES src/locale/Makefile.am | sed 's:RAPIDSVN_LANGUAGES=::g') | ||
sed \ | ||
-e "/^RAPIDSVN_LANGUAGES/s:=.*:=${LINGUAS}:g" \ | ||
-i src/locale/Makefile.am || die | ||
|
||
mv configure.in configure.ac || die | ||
|
||
autotools-utils_src_prepare | ||
} | ||
|
||
src_configure() { | ||
local myeconfargs=( --with-wx-config=${WX_CONFIG} ) | ||
|
||
if use doc; then | ||
myeconfargs+=( --with-manpage=yes ) | ||
else | ||
myeconfargs+=( | ||
--without-xsltproc | ||
--with-manpage=no | ||
--without-doxygen | ||
--without-dot ) | ||
fi | ||
|
||
append-cppflags $( apr-1-config --cppflags ) | ||
|
||
myeconfargs+=( | ||
--with-svn-lib="${EPREFIX}"/usr/$(get_libdir) | ||
--with-svn-include="${EPREFIX}"/usr/include | ||
--with-apr-config="${EPREFIX}/usr/bin/apr-1-config" | ||
--with-apu-config="${EPREFIX}/usr/bin/apu-1-config" | ||
) | ||
autotools-utils_src_configure | ||
} | ||
|
||
src_compile() { | ||
autotools-utils_src_compile | ||
use doc && autotools-utils_src_compile -C doc/manpage manpage | ||
} | ||
|
||
src_install() { | ||
autotools-utils_src_install | ||
|
||
doicon src/res/rapidsvn.ico src/res/bitmaps/${PN}*.png | ||
make_desktop_entry rapidsvn "RapidSVN ${PV}" \ | ||
"${EPREFIX}/usr/share/pixmaps/rapidsvn_32x32.png" \ | ||
"RevisionControl;Development" | ||
|
||
if use doc ; then | ||
doman doc/manpage/${PN}.1 | ||
dohtml "${S}"/doc/svncpp/html/* | ||
fi | ||
} | ||
|
||
src_test() { | ||
pushd "${BUILD_DIR}"/src/tests/svncpp > /dev/null || die | ||
emake | ||
./svncpptest | grep OK || die | ||
} | ||
|
||
pkg_postinst() { | ||
fdo-mime_desktop_database_update | ||
} | ||
|
||
pkg_postrm() { | ||
fdo-mime_desktop_database_update | ||
} |