aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatteo Bernardini <ponce@slackbuilds.org>2022-02-26 11:44:30 +0100
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2022-02-27 01:09:56 +0700
commit7e466ac05fb1dbacf94055be798c36d2b4d68745 (patch)
treef9d4d500e42478961b9c728ee967f660b5a95c9b
parentbe118be5fd05006130bad238aa9bc28764142ee0 (diff)
development/rapidsvn: Use the C++14 standard.
gcc >= 11.x defaults to -std=gnu++17 and it breaks the build in this case. Switch to wxGTK3 Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--development/rapidsvn/rapidsvn-wx3.0.patch203
-rw-r--r--development/rapidsvn/rapidsvn.SlackBuild5
-rw-r--r--development/rapidsvn/rapidsvn.info2
3 files changed, 208 insertions, 2 deletions
diff --git a/development/rapidsvn/rapidsvn-wx3.0.patch b/development/rapidsvn/rapidsvn-wx3.0.patch
new file mode 100644
index 000000000000..9f0813ea40f2
--- /dev/null
+++ b/development/rapidsvn/rapidsvn-wx3.0.patch
@@ -0,0 +1,203 @@
+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 <olly@survex.com>
+Origin: debian
+Forwarded: no
+Last-Update: 2014-04-10
+
+--- a/configure
++++ b/configure
+@@ -15176,6 +15176,8 @@
+ ;;
+ 2.[5-9].*)
+ ;;
++ 3.*)
++ ;;
+ *)
+ as_fn_error $? "wxWidgets >= 2.4.2 required, found version $WX_VERSION" "$LINENO" 5
+ as_fn_error $? "Try --with-wx-config." "$LINENO" 5
+--- a/configure.in
++++ b/configure.in
+@@ -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,
diff --git a/development/rapidsvn/rapidsvn.SlackBuild b/development/rapidsvn/rapidsvn.SlackBuild
index f05a1979cdb7..55a8e6d792ed 100644
--- a/development/rapidsvn/rapidsvn.SlackBuild
+++ b/development/rapidsvn/rapidsvn.SlackBuild
@@ -62,12 +62,15 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanx Archlinux!
+patch -p1 < $CWD/rapidsvn-wx3.0.patch
+
# Reworked from KDE kdevplatform to build with subversion 1.9
# https://quickgit.kde.org/?p=kdevplatform.git&a=commit&h=8117ca137b45816865554d6e86b96d9e633a7e08
patch -p1 < $CWD/subversion1.9.patch
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -std=c++14" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/development/rapidsvn/rapidsvn.info b/development/rapidsvn/rapidsvn.info
index e75bfd64e380..199d054a3c26 100644
--- a/development/rapidsvn/rapidsvn.info
+++ b/development/rapidsvn/rapidsvn.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://www.rapidsvn.org/download/release/0.12.1/rapidsvn-0.12.1.tar.gz
MD5SUM="8de3ca6da3ef6a27d59f959d1bbcd96b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="wxPython"
+REQUIRES="wxGTK3"
MAINTAINER="David Delansay"
EMAIL="david.delansay@laposte.net"