It's high time we actually got rid of wxwidgets2.8, so I took another
look at this bug.
Upstream have yet to make a release from trunk, so I tried to make
minimal changes to get 13.12 working rather than packaging a VCS
snapshot.
Olly Betts wrote:
On Thu, Apr 10, 2014 at 04:59:25AM -0700, Vincent Cheng wrote:
My understanding is that upstream is working towards porting
codeblocks for wx 3.0, but it's currently not fully stable yet (e.g.
#736368).
The issue there is most likely because wx 3.0 enables WXDEBUG mode
by default which includes checks for incorrect API usage, whereas with
wx 2.8 you had to specify it explicitly when you built the library. In
other words, codeblocks is misusing the wx API, but with 2.8 this gets
quietly ignored by default, whereas 3.0 reports it by default.
I bet if you rebuilt codeblocks using the WXDEBUG build of 2.8
(available in Debian in package libwxgtk2.8-dbg - despite the name, this
isn't debug symbols, but a separate build of the library) you'd see this
assertion too.
The simplest way to address this is to build codeblocks with -DNDEBUG
(pass it in CPPFLAGS usually), which makes wx 3.0 behave as a default
build of 2.8 would.
I tested this workaround and I can't reproduce #736368 in a build with
-DNDEBUG defined. It's a shame we didn't actually test that before
jessie - sorry about that.
Running cleanly without disabling the WXDEBUG checks would be better,
but these checks are off by default in wx2.8, so it's no worse than the
current situation, and it doesn't seem worth investing time trying to
track down the relevant fixes from trunk.
Vincent Cheng vch...@debian.org writes:
In case I haven't made it clear previously, you're more than welcome
to NMU codeblocks; I doubt David and/or Michael would object.
Thanks, I've prepared an NMU for codeblocks (versioned as 13.12-3.1) and
uploaded it.
Cheers,
Olly
diff -Nru codeblocks-13.12/debian/changelog codeblocks-13.12/debian/changelog
--- codeblocks-13.12/debian/changelog 2014-01-27 17:31:25.0 +1300
+++ codeblocks-13.12/debian/changelog 2015-05-13 16:09:48.0 +1200
@@ -1,3 +1,10 @@
+codeblocks (13.12-3.1) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * Update to use wxWidgets 3.0. (Closes: #744115)
+
+ -- Olly Betts o...@survex.com Wed, 13 May 2015 16:06:43 +1200
+
codeblocks (13.12-3) unstable; urgency=medium
* Add depends on libgamin0 to codeblocks-contrib. (Closes: #726761)
diff -Nru codeblocks-13.12/debian/control codeblocks-13.12/debian/control
--- codeblocks-13.12/debian/control 2014-01-27 17:33:03.0 +1300
+++ codeblocks-13.12/debian/control 2014-03-21 18:23:30.0 +1300
@@ -6,8 +6,7 @@
Vincent Cheng vch...@debian.org
Build-Depends: debhelper (= 8~)
, dh-autoreconf
- , libwxgtk2.8-dev
- , wx-common
+ , libwxgtk3.0-dev
, zip
, libbz2-dev
, zlib1g-dev
@@ -32,8 +31,7 @@
, gdb
, xterm
Suggests:
- libwxgtk2.8-dev
- , wx-common
+ libwxgtk3.0-dev
, codeblocks-contrib
Description: Code::Blocks integrated development environment (IDE)
Code::Blocks is a cross-platform Integrated Development Environment (IDE).
diff -Nru codeblocks-13.12/debian/rules codeblocks-13.12/debian/rules
--- codeblocks-13.12/debian/rules 2014-01-27 17:39:09.0 +1300
+++ codeblocks-13.12/debian/rules 2015-05-13 16:09:46.0 +1200
@@ -10,6 +10,9 @@
endif
export DEB_LDFLAGS_MAINT_APPEND=-Wl,--as-needed
+# Disable WXDEBUG checks, which wx3.0 defaults to enabling but were off by
+# default in wx2.8, to address issues such as #736368.
+export DEB_CPPFLAGS_MAINT_APPEND=-DNDEBUG
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk
signature.asc
Description: Digital signature