[SCM] yoshimi/master: Fix build on mips mipsel and powerpc archs 2nd attempt.
mira-guest at users.alioth.debian.org
mira-guest at users.alioth.debian.org
Sun May 10 19:41:56 UTC 2015
The following commit has been merged in the master branch:
commit dfea7a08431c84f6d429e3779970058ee9ad2809
Author: Jaromír Mikeš <mira.mikes at seznam.cz>
Date: Sun May 10 21:35:25 2015 +0200
Fix build on mips mipsel and powerpc archs 2nd attempt.
diff --git a/debian/patches/02-fix_build_on_mips_mipsel_powerpc.patch b/debian/patches/02-fix_build_on_mips_mipsel_powerpc.patch
index d073127..c780d71 100644
--- a/debian/patches/02-fix_build_on_mips_mipsel_powerpc.patch
+++ b/debian/patches/02-fix_build_on_mips_mipsel_powerpc.patch
@@ -3,18 +3,522 @@ Origin: Upstream
Description: Fix build on mips mipsel and powerpc archs.
Forwarded: no
-Index: yoshimi/src/LV2_Plugin/YoshimiLV2Plugin.cpp
+Index: yoshimi/src/Misc/MiscFuncs.cpp
===================================================================
---- yoshimi.orig/src/LV2_Plugin/YoshimiLV2Plugin.cpp
-+++ yoshimi/src/LV2_Plugin/YoshimiLV2Plugin.cpp
-@@ -145,9 +145,7 @@ void YoshimiLV2Plugin::process(uint32_t
- }
- else
- {
-- _synth->getRuntime().Log("Bad write to midi ringbuffer: "
-- + asString(wrote) + " / "
-- + asString((int)sizeof(struct midi_event)));
-+ _synth->getRuntime().Log("Bad write to midi ringbuffer: ");
- }
-
- }
+--- yoshimi.orig/src/Misc/MiscFuncs.cpp
++++ yoshimi/src/Misc/MiscFuncs.cpp
+@@ -1,181 +1,191 @@
+-/*
+- MiscFuncs.cpp
+-
+- Copyright 2010, Alan Calvert
+-
+- This file is part of yoshimi, which is free software: you can
+- redistribute it and/or modify it under the terms of the GNU General
+- Public License as published by the Free Software Foundation, either
+- version 3 of the License, or (at your option) any later version.
+-
+- yoshimi is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
+-
+- You should have received a copy of the GNU General Public License
+- along with yoshimi. If not, see <http://www.gnu.org/licenses/>.
+-*/
+-
+-#include <sys/stat.h>
+-#include <sstream>
+-
+-using namespace std;
+-
+-#include "Misc/MiscFuncs.h"
+-
+-bool MiscFuncs::isRegFile(string chkpath)
+-{
+- struct stat st;
+- if (!lstat(chkpath.c_str(), &st))
+- if (S_ISREG(st.st_mode))
+- return true;
+- return false;
+-}
+-
+-
+-bool MiscFuncs::isDirectory(string chkpath)
+-{
+- struct stat st;
+- if (!lstat(chkpath.c_str(), &st))
+- if (S_ISDIR(st.st_mode))
+- return true;
+- return false;
+-}
+-
+-
+-bool MiscFuncs::isFifo(string chkpath)
+-{
+- struct stat st;
+- if (!lstat(chkpath.c_str(), &st))
+- if (S_ISFIFO(st.st_mode))
+- return true;
+- return false;
+-}
+-
+-
+-float MiscFuncs::string2float(string str)
+-{
+- istringstream machine(str);
+- float fval;
+- machine >> fval;
+- return fval;
+-}
+-
+-int MiscFuncs::string2int(string str)
+-{
+- istringstream machine(str);
+- int intval;
+- machine >> intval;
+- return intval;
+-}
+-
+-unsigned int MiscFuncs::string2uint(string str)
+-{
+- istringstream machine(str);
+- unsigned int intval;
+- machine >> intval;
+- return intval;
+-}
+-
+-// make a filename legal
+-void MiscFuncs::legit_filename(string& fname)
+-{
+- for (unsigned int i = 0; i < fname.size(); ++i)
+- {
+- char c = fname.at(i);
+- if (!((c >= '0' && c <= '9')
+- || (c >= 'A' && c <= 'Z')
+- || (c >= 'a' && c <= 'z')
+- || c == '-'
+- || c == ' '
+- || c == '.'))
+- fname.at(i) = '_';
+- }
+-}
+-
+-
+-void invSignal(float *sig, size_t len)
+-{
+- for(size_t i = 0; i < len; ++i)
+- sig[i] *= -1.0f;
+-}
+-
+-
+-string MiscFuncs::asString(int n)
+-{
+- ostringstream oss;
+- oss << n;
+- return string(oss.str());
+-}
+-
+-
+-string MiscFuncs::asString(long long n)
+-{
+- ostringstream oss;
+- oss << n;
+- return string(oss.str());
+-}
+-#if !defined( __arm__ ) && !defined( __i386__ )
+-string MiscFuncs::asString(size_t n)
+-{
+- ostringstream oss;
+- oss << n;
+- return string(oss.str());
+-}
+-#endif
+-
+-string MiscFuncs::asString(long n)
+-{
+- ostringstream oss;
+- oss << n;
+- return string(oss.str());
+-}
+-
+-
+-string MiscFuncs::asString(unsigned int n, unsigned int width)
+-{
+- ostringstream oss;
+- oss << n;
+- string val = string(oss.str());
+- if (width && val.size() < width)
+- {
+- val = string("000000000") + val;
+- return val.substr(val.size() - width);
+- }
+- return val;
+-}
+-
+-
+-string MiscFuncs::asString(float n)
+-{
+- ostringstream oss;
+- oss.precision(3);
+- oss.width(3);
+- oss << n;
+- return oss.str();
+-}
+-
+-
+-string MiscFuncs::asLongString(float n)
+-{
+- ostringstream oss;
+- oss << n;
+- return oss.str();
+-}
+-
+-
+-string MiscFuncs::asHexString(int x)
+-{
+- ostringstream oss;
+- oss << hex << x;
+- return string(oss.str());
+-}
+-
+-
+-string MiscFuncs::asHexString(unsigned int x)
+-{
+- ostringstream oss;
+- oss << hex << x;
+- return string(oss.str());
+-}
++/*
++ MiscFuncs.cpp
++
++ Copyright 2010, Alan Calvert
++
++ This file is part of yoshimi, which is free software: you can
++ redistribute it and/or modify it under the terms of the GNU General
++ Public License as published by the Free Software Foundation, either
++ version 2 of the License, or (at your option) any later version.
++
++ yoshimi is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with yoshimi. If not, see <http://www.gnu.org/licenses/>.
++*/
++
++#include <sys/stat.h>
++#include <sstream>
++
++using namespace std;
++
++#include "Misc/MiscFuncs.h"
++
++bool MiscFuncs::isRegFile(string chkpath)
++{
++ struct stat st;
++ if (!lstat(chkpath.c_str(), &st))
++ if (S_ISREG(st.st_mode))
++ return true;
++ return false;
++}
++
++
++bool MiscFuncs::isDirectory(string chkpath)
++{
++ struct stat st;
++ if (!lstat(chkpath.c_str(), &st))
++ if (S_ISDIR(st.st_mode))
++ return true;
++ return false;
++}
++
++
++bool MiscFuncs::isFifo(string chkpath)
++{
++ struct stat st;
++ if (!lstat(chkpath.c_str(), &st))
++ if (S_ISFIFO(st.st_mode))
++ return true;
++ return false;
++}
++
++
++float MiscFuncs::string2float(string str)
++{
++ istringstream machine(str);
++ float fval;
++ machine >> fval;
++ return fval;
++}
++
++int MiscFuncs::string2int(string str)
++{
++ istringstream machine(str);
++ int intval;
++ machine >> intval;
++ return intval;
++}
++
++unsigned int MiscFuncs::string2uint(string str)
++{
++ istringstream machine(str);
++ unsigned int intval;
++ machine >> intval;
++ return intval;
++}
++
++// make a filename legal
++void MiscFuncs::legit_filename(string& fname)
++{
++ for (unsigned int i = 0; i < fname.size(); ++i)
++ {
++ char c = fname.at(i);
++ if (!((c >= '0' && c <= '9')
++ || (c >= 'A' && c <= 'Z')
++ || (c >= 'a' && c <= 'z')
++ || c == '-'
++ || c == ' '
++ || c == '.'))
++ fname.at(i) = '_';
++ }
++}
++
++
++void invSignal(float *sig, size_t len)
++{
++ for(size_t i = 0; i < len; ++i)
++ sig[i] *= -1.0f;
++}
++
++
++string MiscFuncs::asString(int n)
++{
++ ostringstream oss;
++ oss << n;
++ return string(oss.str());
++}
++
++
++string MiscFuncs::asString(long long n)
++{
++ ostringstream oss;
++ oss << n;
++ return string(oss.str());
++}
++
++//#if !defined( __arm__ ) && !defined( __i386__ )
++//string MiscFuncs::asString(size_t n)
++string MiscFuncs::asString(unsigned long n)
++{
++ ostringstream oss;
++ oss << n;
++ return string(oss.str());
++}
++//#endif
++
++string MiscFuncs::asString(long n)
++{
++ ostringstream oss;
++ oss << n;
++ return string(oss.str());
++}
++
++
++string MiscFuncs::asString(unsigned int n, unsigned int width)
++{
++ ostringstream oss;
++ oss << n;
++ string val = string(oss.str());
++ if (width && val.size() < width)
++ {
++ val = string("000000000") + val;
++ return val.substr(val.size() - width);
++ }
++ return val;
++}
++
++
++string MiscFuncs::asString(unsigned char c)
++{
++ ostringstream oss;
++ oss.width(1);
++ oss << c;
++ return oss.str();
++}
++
++string MiscFuncs::asString(float n)
++{
++ ostringstream oss;
++ oss.precision(3);
++ oss.width(3);
++ oss << n;
++ return oss.str();
++}
++
++
++string MiscFuncs::asLongString(float n)
++{
++ ostringstream oss;
++ oss << n;
++ return oss.str();
++}
++
++
++string MiscFuncs::asHexString(int x)
++{
++ ostringstream oss;
++ oss << hex << x;
++ return string(oss.str());
++}
++
++
++string MiscFuncs::asHexString(unsigned int x)
++{
++ ostringstream oss;
++ oss << hex << x;
++ return string(oss.str());
++}
+Index: yoshimi/src/Misc/MiscFuncs.h
+===================================================================
+--- yoshimi.orig/src/Misc/MiscFuncs.h
++++ yoshimi/src/Misc/MiscFuncs.h
+@@ -1,68 +1,69 @@
+-/*
+- MiscFuncs.h
+-
+- Copyright 2010, Alan Calvert
+-
+- This file is part of yoshimi, which is free software: you can
+- redistribute it and/or modify it under the terms of the GNU General
+- Public License as published by the Free Software Foundation, either
+- version 3 of the License, or (at your option) any later version.
+-
+- yoshimi is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
+-
+- You should have received a copy of the GNU General Public License
+- along with yoshimi. If not, see <http://www.gnu.org/licenses/>.
+-*/
+-
+-#ifndef MISCFUNCS_H
+-#define MISCFUNCS_H
+-
+-#include <cmath>
+-#include <string>
+-
+-using namespace std;
+-
+-class MiscFuncs
+-{
+- public:
+- MiscFuncs() { }
+- ~MiscFuncs() { }
+- string asString(int n);
+- string asString(long long n);
+-#if !defined( __i386__ ) && !defined( __arm__ )
+- //remove ambiguity while compiling for most 64-bit/32-bit arches
+- string asString(size_t n);
+-#endif
+- string asString(long n);
+- string asString(unsigned int n, unsigned int width = 0);
+- string asString(unsigned char c) { return asString((unsigned int)c); }
+- string asString(float n);
+- string asLongString(float n);
+- string asHexString(int x);
+- string asHexString(unsigned int x);
+- static float string2float(string str);
+- static int string2int(string str);
+- static unsigned int string2uint(string str);
+- bool isRegFile(string chkpath);
+- bool isDirectory(string chkpath);
+- bool isFifo(string chkpath);
+- void legit_filename(string& fname);
+- float dB2rap(float dB);
+- float rap2dB(float rap);
+-};
+-
+-void invSignal(float *sig, size_t len);
+-
+-template<class T>
+-T limit(T val, T min, T max)
+-{
+- return val < min ? min : (val > max ? max : val);
+-}
+-
+-inline float MiscFuncs::dB2rap(float dB) { return exp10f((dB) / 20.0f); }
+-inline float MiscFuncs::rap2dB(float rap) { return 20.0f * log10f(rap); }
+-
+-#endif
++/*
++ MiscFuncs.h
++
++ Copyright 2010, Alan Calvert
++
++ This file is part of yoshimi, which is free software: you can
++ redistribute it and/or modify it under the terms of the GNU General
++ Public License as published by the Free Software Foundation, either
++ version 2 of the License, or (at your option) any later version.
++
++ yoshimi is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with yoshimi. If not, see <http://www.gnu.org/licenses/>.
++*/
++
++#ifndef MISCFUNCS_H
++#define MISCFUNCS_H
++
++#include <cmath>
++#include <string>
++
++using namespace std;
++
++class MiscFuncs
++{
++ public:
++ MiscFuncs() { }
++ ~MiscFuncs() { }
++ string asString(int n);
++ string asString(long long n);
++//#if !defined( __i386__ ) && !defined( __arm__ )
++ //remove ambiguity while compiling for most 64-bit/32-bit arches
++ //string asString(size_t n);
++ string asString(unsigned long n);
++//#endif
++ string asString(long n);
++ string asString(unsigned int n, unsigned int width = 0);
++ string asString(unsigned char c);// { return asString((unsigned int)c); }
++ string asString(float n);
++ string asLongString(float n);
++ string asHexString(int x);
++ string asHexString(unsigned int x);
++ static float string2float(string str);
++ static int string2int(string str);
++ static unsigned int string2uint(string str);
++ bool isRegFile(string chkpath);
++ bool isDirectory(string chkpath);
++ bool isFifo(string chkpath);
++ void legit_filename(string& fname);
++ float dB2rap(float dB);
++ float rap2dB(float rap);
++};
++
++void invSignal(float *sig, size_t len);
++
++template<class T>
++T limit(T val, T min, T max)
++{
++ return val < min ? min : (val > max ? max : val);
++}
++
++inline float MiscFuncs::dB2rap(float dB) { return exp10f((dB) / 20.0f); }
++inline float MiscFuncs::rap2dB(float rap) { return 20.0f * log10f(rap); }
++
++#endif
--
yoshimi packaging
More information about the pkg-multimedia-commits
mailing list