Make 5.7 RelWithDebInfo build type define NDEBUG

Registered by George Ormond Lorch III

See https://jira.percona.com/browse/BLD-847
We need to make Percona Server 5.7 RelWithDebInfo define NDEBUG so that debug specific assertions/code are not compiled into the release build.

Analyzing a grep of NDEBUG in the codebase, here are the bits that are impacted :
- plugin/innodb_memcached uses NDEBUG (do we care?)
- storage/ndb uses NDEBUG (do we care?)
- storage/tokudb/PerconaFT can not build with NDEBUG defined and therefore intentionally UNDEFINES NDEBUG, and we can see in jenkins it builds and tests fine
- regex looks for NDEBUG but only if REDEBUG is not defined, seems OK
- extra/yassl uses NDEBUG, not sure if this is an opportunity for a runtime improvement?
- extra/protobuf uses NDEBUG, I don't know what protobuf is and if this is something that needs investigation
- ./plugin/tokudb-backup-plugin/Percona-TokuBackup uses NDEBUG a little, use is OK.

Discussion among the team and desk testing a prototype along with a preliminary Jenkins run reveals that this seems to be a fairly low risk change.

Blueprint information

Status:
Complete
Approver:
George Ormond Lorch III
Priority:
High
Drafter:
George Ormond Lorch III
Direction:
Approved
Assignee:
George Ormond Lorch III
Definition:
Approved
Series goal:
Accepted for 5.7
Implementation:
Implemented
Milestone target:
milestone icon 5.7.20-18
Started by
George Ormond Lorch III
Completed by
George Ormond Lorch III

Related branches

Sprints

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.