From 9df12e2f4c70a90351d73ba0fff8fdb47661067a Mon Sep 17 00:00:00 2001
From: Guillaume Roguez <guillaume.roguez@savoirfairelinux.com>
Date: Wed, 30 Nov 2016 22:47:06 -0500
Subject: [PATCH] tone: M_PI is not standard

Fix usage of M_PI constant: it's not C++, even C, standard constant.
Replaced by a direct value in the code.
This also can fix C++14 compatibility on some platforms.

Change-Id: I1b37c5cd4aabc9af2adccf208cc8a793de54a79c
---
 src/media/audio/sound/tone.cpp | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/media/audio/sound/tone.cpp b/src/media/audio/sound/tone.cpp
index 49ac2e5d7a..4df5879c3c 100644
--- a/src/media/audio/sound/tone.cpp
+++ b/src/media/audio/sound/tone.cpp
@@ -118,9 +118,10 @@ Tone::genBuffer(const std::string& definition)
 void
 Tone::genSin(AudioSample* buffer, int lowFrequency, int highFrequency, size_t nb)
 {
+    static constexpr auto PI = 3.141592653589793238462643383279502884L;
     const double sr = (double)buffer_->getSampleRate();
-    const double dx_h = sr ? 2.0 * M_PI * lowFrequency / sr : 0.0;
-    const double dx_l = sr ? 2.0 * M_PI * highFrequency / sr : 0.0;
+    const double dx_h = sr ? 2.0 * PI * lowFrequency / sr : 0.0;
+    const double dx_l = sr ? 2.0 * PI * highFrequency / sr : 0.0;
     static constexpr double DATA_AMPLITUDE = 2048;
     for (size_t t = 0; t < nb; t ++) {
         buffer[t] = DATA_AMPLITUDE * (sin(t*dx_h) + sin(t*dx_l));
-- 
GitLab