Merge lp:~timo-jyrinki/libcolumbus/workaround_lp_1187771 into lp:libcolumbus

Proposed by Timo Jyrinki
Status: Merged
Approved by: Didier Roche-Tolomelli
Approved revision: 452
Merged at revision: 450
Proposed branch: lp:~timo-jyrinki/libcolumbus/workaround_lp_1187771
Merge into: lp:libcolumbus
Diff against target: 12 lines (+1/-1)
1 file modified
debian/rules (+1/-1)
To merge this branch: bzr merge lp:~timo-jyrinki/libcolumbus/workaround_lp_1187771
Reviewer Review Type Date Requested Status
PS Jenkins bot (community) continuous-integration Approve
Jussi Pakkanen (community) Approve
Mathieu Trudel-Lapierre Needs Fixing
Review via email: mp+167530@code.launchpad.net

Commit message

Use -DCMAKE_BUILD_TYPE='' in debian/rules (LP: #1187771)

This workaround fixes the issue for now.

Description of the change

Use -DCMAKE_BUILD_TYPE='' in debian/rules (LP: #1187771)

This workaround fixes the issue for now.

To post a comment you must log in.
Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

I think it would be more correct to just drop that ifdef altogether; there's no point in keeping it if the symbol is to be undefined just before anyway.

review: Needs Fixing
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

I'll let Jussi decide, since he should know the history behind that ifdef. The tests run just fine locally if it's not defined.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Jussi Pakkanen (jpakkane) wrote :

Don't undefine it! All tests use assert. If NDEBUG is defined all asserts become no-ops. This gives you a test suite that runs but does not check for anything.

review: Disapprove
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Thanks. I'll suspect a better fix for the build failure comes soon? :) Currently NDEBUG seems to be defined by default, it's not set anywhere.

test/LevTrieTest.cc is btw the only place which checks the use of NDEBUG.

Revision history for this message
Jussi Pakkanen (jpakkane) wrote :

That file is the only place that checks for it because one warning is all that we need. As evidenced here.

I have no idea where the NDEBUG comes from. Quick observation shows that build flags come from two different sources because optimization is defined twice:

[snip] /usr/bin/c++ [snip] -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -Wall -pedantic -Wextra -fvisibility=hidden -std=c++11 -O2 -g -DNDEBUG -fPIC

The first bunch comes from dpkg-buildflags. The latter from somewhere. I have no idea where. The only option I can think of is that they come from -DCMAKE_BUILD_TYPE=relwithdebinfo, but according to the log, that flag is not given to CMake. Has dh_auto_configure been changed to pass that in?

Revision history for this message
Jussi Pakkanen (jpakkane) wrote :

Instead of the current merge, could you try changing in debian/rules this:

override_dh_auto_configure:
 dh_auto_configure -- -DLIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)

into this:

override_dh_auto_configure:
 dh_auto_configure -- -DCMAKE_BUILD_TYPE='' -DLIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)

451. By Timo Jyrinki

Revert previous commit

452. By Timo Jyrinki

Use -DCMAKE_BUILD_TYPE='' mentioned by Jussi as the workaround (instead)

Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Thanks Jussi! That seems to work as well. Committed.

Revision history for this message
Jussi Pakkanen (jpakkane) wrote :

Good.

review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/rules'
2--- debian/rules 2013-01-18 08:33:23 +0000
3+++ debian/rules 2013-06-05 14:34:24 +0000
4@@ -16,7 +16,7 @@
5 dh $@ --parallel
6
7 override_dh_auto_configure:
8- dh_auto_configure -- -DLIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)
9+ dh_auto_configure -- -DLIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH) -DCMAKE_BUILD_TYPE=''
10
11 override_dh_install:
12 dh_install --fail-missing

Subscribers

People subscribed via source and target branches

to all changes: