diff options
author | Tor Lillqvist <tml@collabora.com> | 2014-11-27 14:02:01 +0200 |
---|---|---|
committer | Tor Lillqvist <tml@collabora.com> | 2014-11-27 14:03:18 +0200 |
commit | 89c4700e6ab6ba105d9084e5dc70325896eba419 (patch) | |
tree | 99bcb4c09116eed9b2a185df62f2bb1441444f8b | |
parent | 287049d5e074d328abfb4363f60809364935d20f (diff) |
Fix OpenCL-less build
Change-Id: I8e049a6df5946344110b38887301d186991a475d
-rw-r--r-- | sc/inc/formulagroup.hxx | 7 | ||||
-rw-r--r-- | sc/source/core/tool/formulagroup.cxx | 23 | ||||
-rw-r--r-- | sc/source/ui/unoobj/docuno.cxx | 12 |
3 files changed, 24 insertions, 18 deletions
diff --git a/sc/inc/formulagroup.hxx b/sc/inc/formulagroup.hxx index 19debeeec669..5bca2d5634d5 100644 --- a/sc/inc/formulagroup.hxx +++ b/sc/inc/formulagroup.hxx @@ -10,12 +10,16 @@ #ifndef INCLUDED_SC_INC_FORMULAGROUP_HXX #define INCLUDED_SC_INC_FORMULAGROUP_HXX +#include <config_features.h> + #include "address.hxx" #include "types.hxx" #include "stlalgorithm.hxx" #include <formula/opcode.hxx> +#if HAVE_FEATURE_OPENCL #include <opencl/platforminfo.hxx> +#endif #include <svl/sharedstringpool.hxx> #include <set> @@ -122,11 +126,12 @@ class SC_DLLPUBLIC FormulaGroupInterpreter public: static FormulaGroupInterpreter *getStatic(); +#if HAVE_FEATURE_OPENCL static void fillOpenCLInfo(std::vector<OpenCLPlatformInfo>& rPlatforms); static bool switchOpenCLDevice(const OUString& rDeviceId, bool bAutoSelect, bool bForceEvaluation = false); static void enableOpenCL(bool bEnable, bool bEnableCompletely = false, const std::set<OpCodeEnum>& rSubsetToEnable = std::set<OpCodeEnum>()); static void getOpenCLDeviceInfo(sal_Int32& rDeviceId, sal_Int32& rPlatformId); - +#endif virtual ScMatrixRef inverseMatrix(const ScMatrix& rMat) = 0; virtual CompiledFormula* createCompiledFormula(ScDocument& rDoc, const ScAddress& rTopPos, diff --git a/sc/source/core/tool/formulagroup.cxx b/sc/source/core/tool/formulagroup.cxx index 332072c09def..705029b89f13 100644 --- a/sc/source/core/tool/formulagroup.cxx +++ b/sc/source/core/tool/formulagroup.cxx @@ -21,7 +21,9 @@ #include <formula/vectortoken.hxx> #include <officecfg/Office/Common.hxx> +#if HAVE_FEATURE_OPENCL #include <opencl/platforminfo.hxx> +#endif #include <rtl/bootstrap.hxx> #include <vector> @@ -33,9 +35,7 @@ #include <cstdio> #if HAVE_FEATURE_OPENCL - #include "openclwrapper.hxx" - #endif namespace sc { @@ -537,16 +537,13 @@ FormulaGroupInterpreter *FormulaGroupInterpreter::getStatic() return msInstance; } +#if HAVE_FEATURE_OPENCL void FormulaGroupInterpreter::fillOpenCLInfo(std::vector<OpenCLPlatformInfo>& rPlatforms) { -#if !HAVE_FEATURE_OPENCL - (void) rPlatforms; -#else const std::vector<OpenCLPlatformInfo>& rPlatformsFromWrapper = sc::opencl::fillOpenCLInfo(); rPlatforms.assign(rPlatformsFromWrapper.begin(), rPlatformsFromWrapper.end()); -#endif } bool FormulaGroupInterpreter::switchOpenCLDevice(const OUString& rDeviceId, bool bAutoSelect, bool bForceEvaluation) @@ -566,26 +563,19 @@ bool FormulaGroupInterpreter::switchOpenCLDevice(const OUString& rDeviceId, bool msInstance = new sc::FormulaGroupInterpreterSoftware(); return true; } -#if HAVE_FEATURE_OPENCL bool bSuccess = sc::opencl::switchOpenCLDevice(&rDeviceId, bAutoSelect, bForceEvaluation); if(!bSuccess) return false; -#else - (void) bAutoSelect; -#endif delete msInstance; msInstance = NULL; -#if HAVE_FEATURE_OPENCL if ( officecfg::Office::Common::Misc::UseOpenCL::get() ) { msInstance = new sc::opencl::FormulaGroupInterpreterOpenCL(); return msInstance != NULL; } -#else - (void) bForceEvaluation; -#endif + return false; } @@ -597,15 +587,12 @@ void FormulaGroupInterpreter::getOpenCLDeviceInfo(sal_Int32& rDeviceId, sal_Int3 if(!bOpenCLEnabled) return; -#if HAVE_FEATURE_OPENCL - size_t aDeviceId = static_cast<size_t>(-1); size_t aPlatformId = static_cast<size_t>(-1); sc::opencl::getOpenCLDeviceInfo(aDeviceId, aPlatformId); rDeviceId = aDeviceId; rPlatformId = aPlatformId; -#endif } void FormulaGroupInterpreter::enableOpenCL(bool bEnable, bool bEnableCompletely, const std::set<OpCodeEnum>& rSubsetToEnable) @@ -620,6 +607,8 @@ void FormulaGroupInterpreter::enableOpenCL(bool bEnable, bool bEnableCompletely, ScInterpreter::SetGlobalConfig(aConfig); } +#endif + } // namespace sc /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx index 2e1ee23d5235..a4de29cad0d4 100644 --- a/sc/source/ui/unoobj/docuno.cxx +++ b/sc/source/ui/unoobj/docuno.cxx @@ -17,6 +17,8 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ +#include <config_features.h> + #include "scitems.hxx" #include <svx/fmdpage.hxx> #include <svx/fmview.hxx> @@ -58,7 +60,9 @@ #include <comphelper/servicehelper.hxx> #include <comphelper/string.hxx> #include <cppuhelper/supportsservice.hxx> +#if HAVE_FEATURE_OPENCL #include <opencl/platforminfo.hxx> +#endif #include "docuno.hxx" #include "cellsuno.hxx" @@ -2369,6 +2373,9 @@ void ScModelObj::selectOpenCLDevice( sal_Int32 nPlatform, sal_Int32 nDevice ) if(nPlatform < 0 || nDevice < 0) throw uno::RuntimeException(); +#if !HAVE_FEATURE_OPENCL + throw uno::RuntimeException(); +#else std::vector<OpenCLPlatformInfo> aPlatformInfo; sc::FormulaGroupInterpreter::fillOpenCLInfo(aPlatformInfo); if(size_t(nPlatform) >= aPlatformInfo.size()) @@ -2379,6 +2386,7 @@ void ScModelObj::selectOpenCLDevice( sal_Int32 nPlatform, sal_Int32 nDevice ) OUString aDeviceString = aPlatformInfo[nPlatform].maVendor + " " + aPlatformInfo[nPlatform].maDevices[nDevice].maName; sc::FormulaGroupInterpreter::switchOpenCLDevice(aDeviceString, false); +#endif } sal_Int32 ScModelObj::getPlatformID() @@ -2402,6 +2410,9 @@ sal_Int32 ScModelObj::getDeviceID() uno::Sequence< sheet::opencl::OpenCLPlatform > ScModelObj::getOpenCLPlatforms() throw (uno::RuntimeException, std::exception) { +#if !HAVE_FEATURE_OPENCL + return uno::Sequence<sheet::opencl::OpenCLPlatform>(); +#else std::vector<OpenCLPlatformInfo> aPlatformInfo; sc::FormulaGroupInterpreter::fillOpenCLInfo(aPlatformInfo); @@ -2422,6 +2433,7 @@ uno::Sequence< sheet::opencl::OpenCLPlatform > ScModelObj::getOpenCLPlatforms() } return aRet; +#endif } ScDrawPagesObj::ScDrawPagesObj(ScDocShell* pDocSh) : |