$(adaptor_common_dir)/feedback/feedback-plugin-proxy.cpp \
\
$(adaptor_common_dir)/gl/egl-factory.cpp \
+ $(adaptor_common_dir)/gl/egl-image-extensions.cpp \
$(adaptor_common_dir)/gl/egl-implementation.cpp \
$(adaptor_common_dir)/gl/egl-sync-implementation.cpp \
$(adaptor_common_dir)/gl/egl-debug.cpp \
adaptor_common_internal_default_profile_src_files = \
$(adaptor_common_dir)/color-controller-impl.cpp \
$(adaptor_common_dir)/system-settings.cpp
-
-adaptor_common_internal_egl_extension_src_files = \
- $(adaptor_common_dir)/gl/egl-image-extensions.cpp
{
}
-void* EglImageExtensions::CreateImageKHR(EGLClientBuffer clientBuffer)
+void* EglImageExtensions::CreateImageKHR(EGLClientBuffer pixmap)
{
if (mImageKHRInitialized == false)
{
EGLImageKHR eglImage = eglCreateImageKHR( mEglImplementation->GetDisplay(),
EGL_NO_CONTEXT,
EGL_NATIVE_PIXMAP_KHR,
- clientBuffer,
+ pixmap,
attribs );
DALI_ASSERT_DEBUG( EGL_NO_IMAGE_KHR != eglImage && "X11Image::GlExtensionCreate eglCreateImageKHR failed!\n");
/**
* If the EGL Image extension is available this function returns a
* EGLImageKHR
- * @param clientBuffer Client buffer to use for image creation
+ * @param pixmap The pixmap
* @return an object that holds a EGLImageKHR
*/
- void* CreateImageKHR(EGLClientBuffer clientBuffer);
+ void* CreateImageKHR(EGLClientBuffer pixmap);
/**
* If the EGL Image extension is available this function
$(adaptor_ecore_wayland_dir)/framework-ecore-wl.cpp \
$(adaptor_ecore_wayland_dir)/imf-manager-impl-ecore-wl.cpp \
$(adaptor_ecore_wayland_dir)/key-mapping-ecore-wl.cpp \
+ $(adaptor_ecore_wayland_dir)/native-image-source-impl-ecore-wl.cpp \
$(adaptor_ecore_wayland_dir)/pixmap-render-surface-ecore-wl.cpp \
$(adaptor_ecore_wayland_dir)/render-surface-ecore-wl.cpp \
$(adaptor_ecore_wayland_dir)/virtual-keyboard-impl-ecore-wl.cpp \
--- /dev/null
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "native-image-source-impl.h"
+
+// EXTERNAL INCLUDES
+#include <dali/integration-api/debug.h>
+
+// INTERNAL INCLUDES
+#include <gl/egl-image-extensions.h>
+#include <gl/egl-factory.h>
+#include <adaptor-impl.h>
+#include <render-surface.h>
+
+// Allow this to be encoded and saved:
+#include <platform-abstractions/tizen/resource-loader/resource-loader.h>
+#include <bitmap-saver.h>
+
+namespace Dali
+{
+
+namespace Internal
+{
+
+namespace Adaptor
+{
+using Dali::Integration::PixelBuffer;
+
+NativeImageSource* NativeImageSource::New(unsigned int width, unsigned int height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource )
+{
+ NativeImageSource* image = new NativeImageSource( width, height, depth, nativeImageSource );
+ DALI_ASSERT_DEBUG( image && "NativeImageSource allocation failed." );
+
+ // 2nd phase construction
+ if(image) //< Defensive in case we ever compile without exceptions.
+ {
+ image->Initialize();
+ }
+
+ return image;
+}
+
+NativeImageSource::NativeImageSource( unsigned int width, unsigned int height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource )
+: mWidth( width ),
+ mHeight( height ),
+ mOwnPixmap( true ),
+ mColorDepth( depth ),
+ mEglImageKHR( NULL ),
+ mEglImageExtensions( NULL )
+{
+ DALI_ASSERT_ALWAYS( Adaptor::IsAvailable() );
+ EglFactory& eglFactory = Adaptor::GetImplementation( Adaptor::Get() ).GetEGLFactory();
+ mEglImageExtensions = eglFactory.GetImageExtensions();
+ SetBlending( mColorDepth );
+
+ DALI_ASSERT_DEBUG( mEglImageExtensions );
+}
+
+void NativeImageSource::Initialize()
+{
+}
+
+NativeImageSource::~NativeImageSource()
+{
+}
+
+Any NativeImageSource::GetNativeImageSource() const
+{
+ DALI_ASSERT_ALWAYS( false && "NativeImageSource::GetNativeImageSource() is not supported for Wayland." );
+ return Any();
+}
+
+bool NativeImageSource::GetPixels(std::vector<unsigned char>& pixbuf, unsigned& width, unsigned& height, Pixel::Format& pixelFormat) const
+{
+ return false;
+}
+
+bool NativeImageSource::EncodeToFile(const std::string& filename) const
+{
+ std::vector< unsigned char > pixbuf;
+ unsigned int width(0), height(0);
+ Pixel::Format pixelFormat;
+
+ if(GetPixels(pixbuf, width, height, pixelFormat))
+ {
+ return Dali::EncodeToFile(&pixbuf[0], filename, pixelFormat, width, height);
+ }
+ return false;
+}
+
+bool NativeImageSource::GlExtensionCreate()
+{
+ return false;
+}
+
+void NativeImageSource::GlExtensionDestroy()
+{
+ mEglImageExtensions->DestroyImageKHR(mEglImageKHR);
+
+ mEglImageKHR = NULL;
+}
+
+unsigned int NativeImageSource::TargetTexture()
+{
+ mEglImageExtensions->TargetTextureKHR(mEglImageKHR);
+
+ return 0;
+}
+
+void NativeImageSource::SetBlending(Dali::NativeImageSource::ColorDepth depth)
+{
+ switch (depth)
+ {
+ case Dali::NativeImageSource::COLOR_DEPTH_16: //Pixel::RGB565
+ case Dali::NativeImageSource::COLOR_DEPTH_24: // Pixel::RGB888
+ {
+ mBlendingRequired = false;
+ break;
+ }
+ case Dali::NativeImageSource::COLOR_DEPTH_8: //Pixel::A8
+ case Dali::NativeImageSource::COLOR_DEPTH_32: // Pixel::RGBA8888
+ {
+ mBlendingRequired = true;
+ break;
+ }
+ default:
+ {
+ DALI_ASSERT_DEBUG(0 && "unknown color enum");
+ }
+ }
+}
+
+} // namespace Adaptor
+
+} // namespace internal
+
+} // namespace Dali
*/
// EXTERNAL INCLUDES
-#include <tbm_surface.h>
-#include <dali/devel-api/images/native-image-interface-extension.h>
// INTERNAL INCLUDES
#include <native-image-source.h>
/**
* Dali internal NativeImageSource.
*/
-class NativeImageSource: public NativeImageInterface::Extension
+class NativeImageSource
{
public:
bool EncodeToFile(const std::string& filename) const;
/**
- * @copydoc Dali::NativeImageSource::SetNativeImageSource( Any nativeImageSource )
- */
- void SetNativeImageSource( Any nativeImageSource );
-
- /**
* destructor
*/
~NativeImageSource();
return mBlendingRequired;
}
- /**
- * @copydoc Dali::NativeImageInterface::GetExtension()
- */
- NativeImageInterface::Extension* GetNativeImageInterfaceExtension()
- {
- return this;
- }
-
- /**
- * @copydoc Dali::NativeImageInterface::Extension::GetCustomFragmentPreFix()
- */
- const char* GetCustomFragmentPreFix();
-
- /**
- * @copydoc Dali::NativeImageInterface::Extension::GetCustomSamplerTypename()
- */
- const char* GetCustomSamplerTypename();
-
private:
/**
Dali::NativeImageSource::ColorDepth depth,
Any nativeImageSource);
+ /**
+ * 2nd phase construction.
+ */
void Initialize();
- int GetPixelDepth(Dali::NativeImageSource::ColorDepth depth) const;
-
- tbm_surface_h GetSurfaceFromAny( Any source ) const;
+ /**
+ * Decide whether blending is required based on the color depth.
+ * @param depth the PixelImage depth enum
+ */
+ void SetBlending(Dali::NativeImageSource::ColorDepth depth);
private:
unsigned int mWidth; ///< image width
unsigned int mHeight; ///< image heights
- bool mOwnTbmsurface; ///< Whether we created pixmap or not
- tbm_surface_h mTbmsurface;
+ bool mOwnPixmap; ///< Whether we created pixmap or not
bool mBlendingRequired; ///< Whether blending is required
Dali::NativeImageSource::ColorDepth mColorDepth; ///< color depth of image
void* mEglImageKHR; ///< From EGL extension
return mImpl->EncodeToFile(filename);
}
-void NativeImageSource::SetNativeImageSource( Any nativeImageSource )
-{
- mImpl->SetNativeImageSource( nativeImageSource );
-}
-
bool NativeImageSource::GlExtensionCreate()
{
return mImpl->GlExtensionCreate();
return mImpl->RequiresBlending();
}
-NativeImageInterface::Extension* NativeImageSource::GetExtension()
-{
- return mImpl->GetNativeImageInterfaceExtension();
-}
-
NativeImageSource::NativeImageSource( unsigned int width, unsigned int height, ColorDepth depth, Any nativeImageSource )
{
mImpl = Internal::Adaptor::NativeImageSource::New( width, height, depth, nativeImageSource );
/**
* @brief Used for displaying native images.
*
- * NativeImageSource can be created internally or
- * externally by native image source.
+ * The native image source can be created internally or
+ * externally by X11 or ECORE-X11.
*
* @since DALi 1.1.4
*/
static NativeImageSourcePtr New( unsigned int width, unsigned int height, ColorDepth depth );
/**
- * @brief Create a new NativeImageSource from an existing native image source.
+ * @brief Create a new NativeImageSource from an existing native image.
*
* @param[in] nativeImageSource must be a X11 pixmap or a Ecore_X_Pixmap
* @return A smart-pointer to a newly allocated image.
*/
bool EncodeToFile(const std::string& filename) const;
- /**
- * @brief Set an existing native image source
- *
- * @param[in] source Any handle with native image source
- */
- void SetNativeImageSource( Any source );
-
private: // native image
/**
*/
virtual bool RequiresBlending() const;
- /**
- * @copydoc Dali::NativeImageInterface::GetExtension()
- */
- NativeImageInterface::Extension* GetExtension();
-
private:
/**
* @param[in] width The width of the image.
* @param[in] height The height of the image.
* @param[in] depth color depth of the image.
- * @param[in] nativeImageSource contains either: native image source or is empty
+ * @param[in] nativeImageSource contains either: pixmap of type X11 Pixmap , a Ecore_X_Pixmap or is empty
*/
DALI_INTERNAL NativeImageSource( unsigned int width, unsigned int height, ColorDepth depth, Any nativeImageSource );
public_api_adaptor_tizen_header_files = \
$(adaptor_tizen_dir)/key-grab.h
-
-adaptor_tizen_internal_egl_extension_src_files = \
- $(adaptor_tizen_dir)/gl/egl-image-extensions-tizen.cpp
-
-adaptor_tizen_internal_native_image_src_files = \
- $(adaptor_tizen_dir)/native-image-source-impl-tizen.cpp
+++ /dev/null
-/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-// CLASS HEADER
-#include <gl/egl-image-extensions.h>
-
-// EXTERNAL INCLUDES
-#if DALI_GLES_VERSION >= 30
-#include <GLES3/gl3.h>
-#include <GLES3/gl3ext.h>
-
-#else
-#include <GLES2/gl2.h>
-#endif // DALI_GLES_VERSION >= 30
-
-#include <GLES2/gl2ext.h>
-
-#include <EGL/eglext.h>
-
-#include <dali/integration-api/debug.h>
-
-// INTERNAL INCLUDES
-#include <gl/egl-implementation.h>
-
-// TBM surface support
-#ifndef EGL_NATIVE_SURFACE_TIZEN
-#define EGL_NATIVE_SURFACE_TIZEN 0x32A1
-#endif
-
-namespace
-{
-// function pointers assigned in InitializeEglImageKHR
-PFNEGLCREATEIMAGEKHRPROC eglCreateImageKHR = 0;
-PFNEGLDESTROYIMAGEKHRPROC eglDestroyImageKHR = 0;
-PFNGLEGLIMAGETARGETTEXTURE2DOESPROC glEGLImageTargetTexture2DOES = 0;
-} // unnamed namespace
-
-
-namespace Dali
-{
-
-namespace Internal
-{
-
-namespace Adaptor
-{
-
-EglImageExtensions::EglImageExtensions(EglImplementation* eglImpl)
-: mEglImplementation(eglImpl),
- mImageKHRInitialized(false),
- mImageKHRInitializeFailed(false)
-{
- DALI_ASSERT_ALWAYS( eglImpl && "EGL Implementation not instantiated" );
-}
-
-EglImageExtensions::~EglImageExtensions()
-{
-}
-
-void* EglImageExtensions::CreateImageKHR(EGLClientBuffer clientBuffer)
-{
- if (mImageKHRInitialized == false)
- {
- InitializeEglImageKHR();
- }
-
- if (mImageKHRInitialized == false)
- {
- return NULL;
- }
-
- // Use the EGL image extension
- const EGLint attribs[] =
- {
- EGL_IMAGE_PRESERVED_KHR, EGL_TRUE,
- EGL_NONE
- };
-
- EGLImageKHR eglImage = eglCreateImageKHR( mEglImplementation->GetDisplay(),
- EGL_NO_CONTEXT,
- EGL_NATIVE_SURFACE_TIZEN,
- clientBuffer,
- attribs );
-
- DALI_ASSERT_DEBUG( EGL_NO_IMAGE_KHR != eglImage && "X11Image::GlExtensionCreate eglCreateImageKHR failed!\n");
- if( EGL_NO_IMAGE_KHR == eglImage )
- {
- switch( eglGetError() )
- {
- case EGL_SUCCESS :
- {
- break;
- }
- case EGL_BAD_DISPLAY:
- {
- DALI_LOG_ERROR( "EGL_BAD_DISPLAY: Invalid EGLDisplay object" );
- break;
- }
- case EGL_BAD_CONTEXT:
- {
- DALI_LOG_ERROR( "EGL_BAD_CONTEXT: Invalid EGLContext object" );
- break;
- }
- case EGL_BAD_PARAMETER:
- {
- DALI_LOG_ERROR( "EGL_BAD_PARAMETER: Invalid target parameter or attribute in attrib_list" );
- break;
- }
- case EGL_BAD_MATCH:
- {
- DALI_LOG_ERROR( "EGL_BAD_MATCH: attrib_list does not match target" );
- break;
- }
- case EGL_BAD_ACCESS:
- {
- DALI_LOG_ERROR( "EGL_BAD_ACCESS: Previously bound off-screen, or EGLImage sibling error" );
- break;
- }
- case EGL_BAD_ALLOC:
- {
- DALI_LOG_ERROR( "EGL_BAD_ALLOC: Insufficient memory is available" );
- break;
- }
- default:
- {
- break;
- }
- }
- }
-
- return (void*)eglImage;
-}
-
-void EglImageExtensions::DestroyImageKHR(void* eglImageKHR)
-{
- DALI_ASSERT_DEBUG( mImageKHRInitialized );
-
- if( ! mImageKHRInitialized )
- {
- return;
- }
-
- if( eglImageKHR == NULL )
- {
- return;
- }
-
- EGLImageKHR eglImage = static_cast<EGLImageKHR>(eglImageKHR);
-
- EGLBoolean result = eglDestroyImageKHR(mEglImplementation->GetDisplay(), eglImage);
-
- if( EGL_FALSE == result )
- {
- switch( eglGetError() )
- {
- case EGL_BAD_DISPLAY:
- {
- DALI_LOG_ERROR( "EGL_BAD_DISPLAY: Invalid EGLDisplay object" );
- break;
- }
- case EGL_BAD_PARAMETER:
- {
- DALI_LOG_ERROR( "EGL_BAD_PARAMETER: eglImage is not a valid EGLImageKHR object created with respect to EGLDisplay" );
- break;
- }
- case EGL_BAD_ACCESS:
- {
- DALI_LOG_ERROR( "EGL_BAD_ACCESS: EGLImage sibling error" );
- break;
- }
- default:
- {
- break;
- }
- }
- }
-}
-
-void EglImageExtensions::TargetTextureKHR(void* eglImageKHR)
-{
- DALI_ASSERT_DEBUG( mImageKHRInitialized );
-
- if( eglImageKHR != NULL )
- {
- EGLImageKHR eglImage = static_cast<EGLImageKHR>(eglImageKHR);
-
-#ifdef EGL_ERROR_CHECKING
- GLint glError = glGetError();
-#endif
-
- glEGLImageTargetTexture2DOES(GL_TEXTURE_EXTERNAL_OES, (GLeglImageOES)eglImage);
-
-#ifdef EGL_ERROR_CHECKING
- glError = glGetError();
- if( GL_NO_ERROR != glError )
- {
- DALI_LOG_ERROR(" glEGLImageTargetTexture2DOES returned error %0x04x\n", glError );
- }
-#endif
- }
-}
-
-void EglImageExtensions::InitializeEglImageKHR()
-{
- // avoid trying to reload extended KHR functions, if it fails the first time
- if( ! mImageKHRInitializeFailed )
- {
- eglCreateImageKHR = (PFNEGLCREATEIMAGEKHRPROC) eglGetProcAddress("eglCreateImageKHR"); /* parasoft-suppress MISRA2004-11_1_DMC "Using EGL defined functions." */
- eglDestroyImageKHR = (PFNEGLDESTROYIMAGEKHRPROC) eglGetProcAddress("eglDestroyImageKHR"); /* parasoft-suppress MISRA2004-11_1_DMC "Using EGL defined functions." */
- glEGLImageTargetTexture2DOES = (PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) eglGetProcAddress("glEGLImageTargetTexture2DOES"); /* parasoft-suppress MISRA2004-11_1_DMC "Using EGL defined functions." */
- }
-
- if (eglCreateImageKHR && eglDestroyImageKHR && glEGLImageTargetTexture2DOES)
- {
- mImageKHRInitialized = true;
- }
- else
- {
- mImageKHRInitializeFailed = true;
- }
-}
-
-} // namespace Adaptor
-
-} // namespace Internal
-
-} // namespace Dali
+++ /dev/null
-/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-// CLASS HEADER
-#include "native-image-source-impl.h"
-
-// EXTERNAL INCLUDES
-#include <dali/integration-api/debug.h>
-#include <cstring>
-
-// INTERNAL INCLUDES
-#include <gl/egl-image-extensions.h>
-#include <gl/egl-factory.h>
-#include <adaptor-impl.h>
-#include <render-surface.h>
-
-// Allow this to be encoded and saved:
-#include <platform-abstractions/tizen/resource-loader/resource-loader.h>
-#include <bitmap-saver.h>
-
-namespace Dali
-{
-
-namespace Internal
-{
-
-namespace Adaptor
-{
-
-namespace
-{
-const char* FRAGMENT_PREFIX = "#extension GL_OES_EGL_image_external:require\n";
-const char* SAMPLER_TYPE = "samplerExternalOES";
-}
-
-using Dali::Integration::PixelBuffer;
-
-NativeImageSource* NativeImageSource::New(unsigned int width, unsigned int height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource )
-{
- NativeImageSource* image = new NativeImageSource( width, height, depth, nativeImageSource );
- DALI_ASSERT_DEBUG( image && "NativeImageSource allocation failed." );
-
- if( image )
- {
- image->Initialize();
- }
-
- return image;
-}
-
-NativeImageSource::NativeImageSource( unsigned int width, unsigned int height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource )
-: mWidth( width ),
- mHeight( height ),
- mOwnTbmsurface( true ),
- mTbmsurface( NULL ),
- mBlendingRequired( false ),
- mColorDepth( depth ),
- mEglImageKHR( NULL ),
- mEglImageExtensions( NULL )
-{
- DALI_ASSERT_ALWAYS( Adaptor::IsAvailable() );
- EglFactory& eglFactory = Adaptor::GetImplementation( Adaptor::Get() ).GetEGLFactory();
- mEglImageExtensions = eglFactory.GetImageExtensions();
- DALI_ASSERT_DEBUG( mEglImageExtensions );
-
- mTbmsurface = GetSurfaceFromAny( nativeImageSource );
-
- if( mTbmsurface != NULL )
- {
- mWidth = tbm_surface_get_width( mTbmsurface );
- mHeight = tbm_surface_get_height( mTbmsurface );
- }
-}
-
-void NativeImageSource::Initialize()
-{
- if( mTbmsurface != NULL )
- {
- mOwnTbmsurface = false;
- return;
- }
-
- tbm_format format = TBM_FORMAT_RGB888;
- int depth = 0;
-
- switch( mColorDepth )
- {
- case Dali::NativeImageSource::COLOR_DEPTH_DEFAULT:
- {
- format = TBM_FORMAT_RGBA8888;
- depth = 32;
- break;
- }
- case Dali::NativeImageSource::COLOR_DEPTH_8:
- {
- format = TBM_FORMAT_C8;
- depth = 8;
- break;
- }
- case Dali::NativeImageSource::COLOR_DEPTH_16:
- {
- format = TBM_FORMAT_RGB565;
- depth = 16;
- break;
- }
- case Dali::NativeImageSource::COLOR_DEPTH_24:
- {
- format = TBM_FORMAT_RGB888;
- depth = 24;
- break;
- }
- case Dali::NativeImageSource::COLOR_DEPTH_32:
- {
- format = TBM_FORMAT_RGBA8888;
- depth = 32;
- break;
- }
- default:
- {
- DALI_LOG_WARNING( "Wrong color depth." );
- return;
- }
- }
-
- // set whether blending is required according to pixel format based on the depth
- /* default pixel format is RGB888
- If depth = 8, Pixel::A8;
- If depth = 16, Pixel::RGB565;
- If depth = 32, Pixel::RGBA8888 */
- mBlendingRequired = ( depth == 32 || depth == 8 );
-
- mTbmsurface = tbm_surface_create( mWidth, mHeight, format );
-}
-
-tbm_surface_h NativeImageSource::GetSurfaceFromAny( Any source ) const
-{
- if( source.Empty() )
- {
- return NULL;
- }
-
- if( source.GetType() == typeid( tbm_surface_h ) )
- {
- return AnyCast< tbm_surface_h >( source );
- }
- else
- {
- return NULL;
- }
-}
-
-NativeImageSource::~NativeImageSource()
-{
- if( mOwnTbmsurface && mTbmsurface != NULL )
- {
- if( tbm_surface_destroy( mTbmsurface ) != TBM_SURFACE_ERROR_NONE )
- {
- DALI_LOG_ERROR( "Failed to destroy tbm_surface" );
- }
- }
-}
-
-Any NativeImageSource::GetNativeImageSource() const
-{
- return Any( mTbmsurface );
-}
-
-bool NativeImageSource::GetPixels(std::vector<unsigned char>& pixbuf, unsigned& width, unsigned& height, Pixel::Format& pixelFormat) const
-{
- if( mTbmsurface != NULL )
- {
- tbm_surface_info_s surface_info;
-
- if( tbm_surface_map( mTbmsurface, TBM_SURF_OPTION_READ, &surface_info) != TBM_SURFACE_ERROR_NONE )
- {
- DALI_LOG_ERROR( "Fail to map tbm_surface" );
-
- width = 0;
- height = 0;
-
- return false;
- }
-
- tbm_format format = surface_info.format;
- uint32_t stride = surface_info.planes[0].stride;
- unsigned char* ptr = surface_info.planes[0].ptr;
-
- width = mWidth;
- height = mHeight;
- size_t lineSize;
- size_t offset;
- size_t cOffset;
-
- switch( format )
- {
- case TBM_FORMAT_RGB888:
- {
- lineSize = width*3;
- pixelFormat = Pixel::RGB888;
- pixbuf.resize( lineSize*height );
- unsigned char* bufptr = &pixbuf[0];
-
- for( unsigned int r = 0; r < height; ++r, bufptr += lineSize )
- {
- for( unsigned int c = 0; c < width; ++c )
- {
- cOffset = c*3;
- offset = cOffset + r*stride;
- *(bufptr) = ptr[offset+2];
- *(bufptr+cOffset+1) = ptr[offset+1];
- *(bufptr+cOffset+2) = ptr[offset];
- }
- }
- break;
- }
- case TBM_FORMAT_RGBA8888:
- {
- lineSize = width*4;
- pixelFormat = Pixel::RGBA8888;
- pixbuf.resize( lineSize*height );
- unsigned char* bufptr = &pixbuf[0];
-
- for( unsigned int r = 0; r < height; ++r, bufptr += lineSize )
- {
- for( unsigned int c = 0; c < width; ++c )
- {
- cOffset = c*4;
- offset = cOffset + r*stride;
- *(bufptr) = ptr[offset+3];
- *(bufptr+cOffset+1) = ptr[offset+2];
- *(bufptr+cOffset+2) = ptr[offset+1];
- *(bufptr+cOffset+3) = ptr[offset];
- }
- }
- break;
- }
- default:
- {
- DALI_LOG_WARNING( "Tbm surface has unsupported pixel format." );
-
- pixbuf.resize( 0 );
- width = 0;
- height = 0;
-
- return false;
- }
- }
-
- if( tbm_surface_unmap( mTbmsurface ) != TBM_SURFACE_ERROR_NONE )
- {
- DALI_LOG_ERROR( "Fail to unmap tbm_surface" );
- }
-
- return true;
- }
-
- DALI_LOG_WARNING( "TBM surface does not exist." );
-
- width = 0;
- height = 0;
-
- return false;
-}
-
-bool NativeImageSource::EncodeToFile(const std::string& filename) const
-{
- std::vector< unsigned char > pixbuf;
- unsigned int width(0), height(0);
- Pixel::Format pixelFormat;
-
- if(GetPixels(pixbuf, width, height, pixelFormat))
- {
- return Dali::EncodeToFile(&pixbuf[0], filename, pixelFormat, width, height);
- }
- return false;
-}
-
-void NativeImageSource::SetNativeImageSource( Any nativeImageSource )
-{
- if( mOwnTbmsurface && mTbmsurface != NULL )
- {
- if( tbm_surface_destroy( mTbmsurface ) != TBM_SURFACE_ERROR_NONE )
- {
- DALI_LOG_ERROR( "Failed to destroy tbm_surface" );
- }
-
- mTbmsurface = NULL;
- }
-
- mTbmsurface = GetSurfaceFromAny( nativeImageSource );
- mOwnTbmsurface = false;
-
- if( mTbmsurface != NULL )
- {
- mWidth = tbm_surface_get_width( mTbmsurface );
- mHeight = tbm_surface_get_height( mTbmsurface );
- }
-}
-
-bool NativeImageSource::GlExtensionCreate()
-{
- if( mEglImageKHR != NULL )
- {
- GlExtensionDestroy();
- }
-
- // casting from an unsigned int to a void *, which should then be cast back
- // to an unsigned int in the driver.
- EGLClientBuffer eglBuffer = reinterpret_cast< EGLClientBuffer > (mTbmsurface);
-
- mEglImageKHR = mEglImageExtensions->CreateImageKHR( eglBuffer );
-
- return mEglImageKHR != NULL;
-}
-
-void NativeImageSource::GlExtensionDestroy()
-{
- mEglImageExtensions->DestroyImageKHR(mEglImageKHR);
-
- mEglImageKHR = NULL;
-}
-
-unsigned int NativeImageSource::TargetTexture()
-{
- mEglImageExtensions->TargetTextureKHR(mEglImageKHR);
-
- return 0;
-}
-
-int NativeImageSource::GetPixelDepth(Dali::NativeImageSource::ColorDepth depth) const
-{
- switch (depth)
- {
- case Dali::NativeImageSource::COLOR_DEPTH_DEFAULT:
- {
- // ToDo: Get the default screen depth
- return 32;
- }
- case Dali::NativeImageSource::COLOR_DEPTH_8:
- {
- return 8;
- }
- case Dali::NativeImageSource::COLOR_DEPTH_16:
- {
- return 16;
- }
- case Dali::NativeImageSource::COLOR_DEPTH_24:
- {
- return 24;
- }
- case Dali::NativeImageSource::COLOR_DEPTH_32:
- {
- return 32;
- }
- default:
- {
- DALI_ASSERT_DEBUG(0 && "unknown color enum");
- return 0;
- }
- }
-}
-
-const char* NativeImageSource::GetCustomFragmentPreFix()
-{
- return FRAGMENT_PREFIX;
-}
-
-const char* NativeImageSource::GetCustomSamplerTypename()
-{
- return SAMPLER_TYPE;
-}
-
-} // namespace Adaptor
-
-} // namespace internal
-
-} // namespace Dali
$(adaptor_wayland_dir)/input/key-mapping-wl.cpp \
$(adaptor_wayland_dir)/render-surface/render-surface-wl.cpp \
$(adaptor_wayland_dir)/clipboard/clipboard-impl-wl.cpp \
- $(adaptor_wayland_dir)/imf/imf-manager-impl-wl.cpp
+ $(adaptor_wayland_dir)/imf/imf-manager-impl-wl.cpp \
+ $(adaptor_wayland_dir)/native-image/native-image-source-impl-wl.cpp
--- /dev/null
+/*
+ * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// CLASS HEADER
+#include "native-image-source-impl.h"
+
+// EXTERNAL INCLUDES
+#include <dali/integration-api/debug.h>
+
+
+
+
+namespace Dali
+{
+
+namespace Internal
+{
+
+namespace Adaptor
+{
+
+
+NativeImageSource* NativeImageSource::New(unsigned int width, unsigned int height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource )
+{
+ return NULL;
+}
+
+NativeImageSource::~NativeImageSource()
+{
+
+}
+
+Any NativeImageSource::GetNativeImageSource() const
+{
+ DALI_ASSERT_ALWAYS( false && "NativeImageSource::GetNativeImageSource() is not supported for Wayland." );
+ return Any();
+}
+
+bool NativeImageSource::GetPixels(std::vector<unsigned char>& pixbuf, unsigned& width, unsigned& height, Pixel::Format& pixelFormat) const
+{
+ return false;
+}
+
+bool NativeImageSource::EncodeToFile(const std::string& filename) const
+{
+ return false;
+}
+
+bool NativeImageSource::GlExtensionCreate()
+{
+ return false;
+}
+
+void NativeImageSource::GlExtensionDestroy()
+{
+}
+
+unsigned int NativeImageSource::TargetTexture()
+{
+ return 0;
+}
+
+
+
+} // namespace Adaptor
+
+} // namespace internal
+
+} // namespace Dali
--- /dev/null
+#ifndef __DALI_INTERNAL_NATIVE_IMAGE_SOURCE_H__
+#define __DALI_INTERNAL_NATIVE_IMAGE_SOURCE_H__
+
+/*
+ * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+// EXTERNAL INCLUDES
+
+// INTERNAL INCLUDES
+#include <native-image-source.h>
+
+namespace Dali
+{
+
+namespace Internal
+{
+
+namespace Adaptor
+{
+class EglImageExtensions;
+
+/**
+ * Dali internal NativeImageSource.
+ */
+class NativeImageSource
+{
+public:
+
+ /**
+ * Create a new NativeImageSource internally.
+ * Depending on hardware the width and height may have to be a power of two.
+ * @param[in] width The width of the image.
+ * @param[in] height The height of the image.
+ * @param[in] depth color depth of the image.
+ * @param[in] nativeImageSource contains either: pixmap of type X11 Pixmap , a Ecore_X_Pixmap or is empty
+ * @return A smart-pointer to a newly allocated image.
+ */
+ static NativeImageSource* New(unsigned int width,
+ unsigned int height,
+ Dali::NativeImageSource::ColorDepth depth,
+ Any nativeImageSource);
+
+ /**
+ * @copydoc Dali::NativeImageSource::GetNativeImageSource()
+ */
+ Any GetNativeImageSource() const;
+
+ /**
+ * @copydoc Dali::NativeImageSource::GetPixels()
+ */
+ bool GetPixels(std::vector<unsigned char> &pixbuf, unsigned int &width, unsigned int &height, Pixel::Format& pixelFormat ) const;
+
+ /**
+ * @copydoc Dali::NativeImageSource::EncodeToFile(const std::string& )
+ */
+ bool EncodeToFile(const std::string& filename) const;
+
+ /**
+ * destructor
+ */
+ ~NativeImageSource();
+
+ /**
+ * @copydoc Dali::NativeImageSource::GlExtensionCreate()
+ */
+ bool GlExtensionCreate();
+
+ /**
+ * @copydoc Dali::NativeImageSource::GlExtensionDestroy()
+ */
+ void GlExtensionDestroy();
+
+ /**
+ * @copydoc Dali::NativeImageSource::TargetTexture()
+ */
+ unsigned int TargetTexture();
+
+ /**
+ * @copydoc Dali::NativeImageSource::GetWidth()
+ */
+ unsigned int GetWidth() const
+ {
+ return 0;
+ }
+
+ /**
+ * @copydoc Dali::NativeImageSource::GetHeight()
+ */
+ unsigned int GetHeight() const
+ {
+ return 0;
+ }
+
+ /**
+ * @copydoc Dali::NativeImageSource::RequiresBlending()
+ */
+ bool RequiresBlending() const
+ {
+ return false;
+ }
+
+protected:
+
+ /**
+ * @brief constructor
+ */
+ NativeImageSource() {}
+
+};
+
+} // namespace Adaptor
+
+} // namespace Internal
+
+} // namespace Dali
+
+#endif // __DALI_INTERNAL_NATIVE_IMAGE_SOURCE_H__
return false;
}
-void NativeImageSource::SetNativeImageSource( Any nativeImageSource )
-{
- mPixmap = GetPixmapFromAny( nativeImageSource );
-
- if (mPixmap)
- {
- // we don't own the pixmap
- mOwnPixmap = false;
-
- // find out the pixmap width / height and color depth
- GetPixmapDetails();
- }
-}
-
bool NativeImageSource::GlExtensionCreate()
{
// if the image existed previously delete it.
bool EncodeToFile(const std::string& filename) const;
/**
- * @copydoc Dali::NativeImageSource::SetNativeImageSource( Any nativeImageSource )
- */
- void SetNativeImageSource( Any nativeImageSource );
-
- /**
* destructor
*/
~NativeImageSource();
return mBlendingRequired;
}
- /**
- * @copydoc Dali::NativeImageInterface::GetExtension()
- */
- NativeImageInterface::Extension* GetNativeImageInterfaceExtension()
- {
- return NULL;
- }
-
private:
/**
+++ /dev/null
-#
-# Copyright (c) 2014 Samsung Electronics Co., Ltd.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-# Build the Dali Adaptor library
-
-
-############# INCLUDE FILE LISTS #############
-
-# Base Adaptor
-base_adaptor_src_dir = ../../../adaptors/base
-include ../../../adaptors/base/file.list
-
-# Platform Abstraction
-tizen_platform_abstraction_src_dir = ../../../platform-abstractions/tizen
-portable_platform_abstraction_src_dir = ../../../platform-abstractions/portable
-include ../../../platform-abstractions/tizen/file.list
-
-# Text Abstraction
-text_src_dir = ../../../text
-include ../../../text/file.list
-
-# Integration
-adaptor_integration_api_dir = ../../../adaptors/integration-api
-include ../../../adaptors/integration-api/file.list
-
-# Internal Common
-adaptor_common_dir = ../../../adaptors/common
-include ../../../adaptors/common/file.list
-
-if USE_EFL
-# ECore Common
-adaptor_ecore_common_dir = ../../../adaptors/ecore/common
-include ../../../adaptors/ecore/common/file.list
-else
-# If we're not using any EFL, then we need to use libuv mainloop
-# for the frame work
-adaptor_libuv_dir = ../../../adaptors/libuv
-include ../../../adaptors/libuv/file.list
-endif
-
-# Wayland
-if WAYLAND
-if USE_EFL
-## Use ecore_wayland
-adaptor_ecore_wayland_dir = ../../../adaptors/ecore/wayland
-include ../../../adaptors/ecore/wayland/file.list
-else
-## Use wayland
-adaptor_wayland_dir = ../../../adaptors/wayland
-include ../../../adaptors/wayland/file.list
-endif
-else
-# X11
-adaptor_x11_dir = ../../../adaptors/x11
-include ../../../adaptors/x11/file.list
-endif
-
-# Ubuntu
-if UBUNTU_PROFILE
-adaptor_ubuntu_dir = ../../../adaptors/ubuntu
-include ../../../adaptors/ubuntu/file.list
-else
-# Tizen
-adaptor_tizen_dir = ../../../adaptors/tizen
-include ../../../adaptors/tizen/file.list
-endif
-
-# Mobile
-adaptor_mobile_dir = ../../../adaptors/mobile
-include ../../../adaptors/mobile/file.list
-
-# TV
-if TV_PROFILE
-adaptor_tv_dir = ../../../adaptors/tv
-include ../../../adaptors/tv/file.list
-endif
-
-# Public API
-adaptor_public_api_dir = ../../../adaptors/public-api
-include ../../../adaptors/public-api/file.list
-
-# Devel API ( for use by Toolkit)
-adaptor_devel_api_dir = ../../../adaptors/devel-api
-include ../../../adaptors/devel-api/file.list
-
-
-# Static libraries
-static_libraries_libunibreak_src_dir = ../../../text/dali/internal/libunibreak
-include ../../../text/dali/internal/libunibreak/file.list
-
-# Package doc
-package_doxy_dir = ../../../doc
-include ../../../doc/file.list
-
-############# source files #############
-
-# FRAMEWORK FILES for adaptor
-# Either use ecore mainloop + appcore / uiman
-# Or libuv main loop with no appcore / uimain
-if USE_EFL
-adaptor_internal_src_files = $(adaptor_tizen_framework_efl_src_files) \
- $(adaptor_ecore_common_internal_src_files)
-else
-adaptor_internal_src_files = $(adaptor_tizen_framework_libuv_src_files)
-endif
-
-# COMMON
-if COMMON_PROFILE
-
-adaptor_internal_src_files += $(adaptor_common_internal_src_files) \
- $(adaptor_common_internal_default_profile_src_files) \
- $(adaptor_tizen_internal_src_files) \
- $(adaptor_tizen_internal_non_mobile_src_files) \
- $(static_libraries_libunibreak_src_files)
-
-if WAYLAND
-if USE_ECORE_WAYLAND
-adaptor_internal_src_files += $(adaptor_ecore_wayland_tizen_internal_src_files) \
- $(adaptor_ecore_wayland_internal_default_profile_src_files)
-else
-adaptor_internal_src_files += $(adaptor_wayland_tizen_internal_src_files)
-endif # USE_ECORE_WAYLAND
-
-adaptor_internal_src_files += $(adaptor_tizen_internal_egl_extension_src_files)\
- $(adaptor_tizen_internal_native_image_src_files)
-else
-adaptor_internal_src_files += $(adaptor_x11_tizen_internal_src_files) \
- $(adaptor_common_internal_egl_extension_src_files) \
- $(adaptor_x11_internal_default_profile_src_files)
-endif # WAYLAND
-endif # COMMON_PROFILE
-
-
-# UBUNTU
-if UBUNTU_PROFILE
-
-adaptor_internal_src_files += $(adaptor_common_internal_src_files) \
- $(adaptor_common_internal_default_profile_src_files) \
- $(adaptor_ubuntu_internal_src_files) \
- $(adaptor_x11_ubuntu_internal_src_files) \
- $(adaptor_x11_internal_default_profile_src_files) \
- $(static_libraries_libunibreak_src_files) \
- $(adaptor_common_internal_egl_extension_src_files)
-
-endif # UBUNTU_PROFILE
-
-
-# MOBILE
-if MOBILE_PROFILE
-
-adaptor_internal_src_files += $(adaptor_common_internal_src_files) \
- $(adaptor_common_internal_mobile_profile_src_files) \
- $(adaptor_tizen_internal_src_files) \
- $(static_libraries_libunibreak_src_files)
-
-if WAYLAND
-if USE_ECORE_WAYLAND
-adaptor_internal_src_files += $(adaptor_ecore_wayland_tizen_internal_src_files)
-else
-adaptor_internal_src_files += $(adaptor_wayland_tizen_internal_src_files)
-endif # USE_ECORE_WAYLAND
-
-adaptor_internal_src_files += $(adaptor_tizen_internal_egl_extension_src_files)\
- $(adaptor_tizen_internal_native_image_src_files)
-
-else
-adaptor_internal_src_files += $(adaptor_x11_tizen_internal_src_files) \
- $(adaptor_common_internal_egl_extension_src_files)
-endif # WAYLAND
-
-endif # MOBILE_PROFILE
-
-# WEARABLE
-if WEARABLE_PROFILE
-
-adaptor_internal_src_files += $(adaptor_common_internal_src_files) \
- $(adaptor_common_internal_mobile_profile_src_files) \
- $(adaptor_tizen_internal_src_files) \
- $(static_libraries_libunibreak_src_files)
-if WAYLAND
-if USE_ECORE_WAYLAND
-adaptor_internal_src_files += $(adaptor_ecore_wayland_tizen_internal_src_files)
-else
-adaptor_internal_src_files += $(adaptor_wayland_tizen_internal_src_files)
-endif # USE_ECORE_WAYLAND
-
-adaptor_internal_src_files += $(adaptor_tizen_internal_egl_extension_src_files)\
- $(adaptor_tizen_internal_native_image_src_files)
-
-else
-adaptor_internal_src_files += $(adaptor_x11_tizen_internal_src_files) \
- $(adaptor_common_internal_egl_extension_src_files)
-endif # WAYLAND
-
-endif # WEARABLE
-
-
-# TV
-if TV_PROFILE
-
-adaptor_internal_src_files += $(adaptor_common_internal_src_files) \
- $(adaptor_common_internal_tv_profile_src_files) \
- $(adaptor_tizen_internal_src_files) \
- $(adaptor_tizen_internal_non_mobile_src_files) \
- $(static_libraries_libunibreak_src_files)
-if WAYLAND
-if USE_ECORE_WAYLAND
-adaptor_internal_src_files += $(adaptor_ecore_wayland_tizen_internal_src_files)
-else
-adaptor_internal_src_files += $(adaptor_wayland_tizen_internal_src_files)
-endif # USE_ECORE_WAYLAND
-
-adaptor_internal_src_files += $(adaptor_tizen_internal_egl_extension_src_files)\
- $(adaptor_tizen_internal_native_image_src_files)
-
-else
-adaptor_internal_src_files += $(adaptor_x11_tv_internal_src_files) \
- $(adaptor_x11_internal_tv_profile_key_src_files) \
- $(adaptor_common_internal_egl_extension_src_files)
-endif # WAYLAND
-
-endif
-
-# Node JS support for using an external libuv main loop. If not enabled then just use e-core as normal
-# Used for things like callbacks, file-monintors, x input handling
-if LIB_UV_EVENT_LOOP
-main_loop_integration_src_files = $(adaptor_common_internal_uv_src_files)
-input_event_handler_src_files = $(adaptor_uv_x_event_handler_internal_src_files)
-else
-main_loop_integration_src_files = $(adaptor_common_internal_ecore_src_files)
-input_event_handler_src_files = $(adaptor_ecore_x_event_handler_internal_src_files)
-endif
-
-
-pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = dali-adaptor-uv.pc
-
-lib_LTLIBRARIES = libdali-adaptor-uv.la
-
-libdali_adaptor_uv_la_SOURCES = \
- $(base_adaptor_src_files) \
- $(main_loop_integration_src_files) \
- $(tizen_platform_abstraction_src_files) \
- $(text_abstraction_src_files) \
- $(devel_api_src_files) \
- $(public_api_src_files) \
- $(adaptor_internal_src_files) \
- $(input_event_handler_src_files)
-
-
-if ENABLE_NETWORK_LOGGING
-libdali_adaptor_uv_la_SOURCES += \
- $(base_adaptor_networking_src_files)
-endif
-
-libdali_adaptor_uv_la_DEPENDENCIES =
-
-# List include directories with more platform-specific (tizen) before portable root:
-libdali_adaptor_uv_la_includes = \
- -I../../.. \
- -I../../../platform-abstractions/tizen \
- -I../../../platform-abstractions/tizen/resource-loader \
- -I../../../platform-abstractions/portable \
- -I../../../platform-abstractions/ \
- -I../../../adaptors/public-api \
- -I../../../adaptors/integration-api \
- -I../../../adaptors/public-api/adaptor-framework \
- -I../../../adaptors/devel-api/adaptor-framework \
- -I../../../adaptors/common \
- -I../../../adaptors/base/interfaces \
- -I../../../adaptors/ \
- -I../../../text \
- -I../../../text/dali/internal/libunibreak
-
-if WAYLAND
-libdali_adaptor_uv_la_includes += -I../../../adaptors/integration-api/wayland
-if USE_ECORE_WAYLAND
-libdali_adaptor_uv_la_includes += \
- -I../../../adaptors/ecore/common \
- -I../../../adaptors/ecore/wayland
-else
-libdali_adaptor_uv_la_includes += -I../../../adaptors/wayland \
- -I../../../adaptors/wayland/imf \
- -I../../../adaptors/wayland/clipboard \
- -I../../../adaptors/wayland/native-image
-endif # USE_ECORE_WAYLAND
-
-libdali_adaptor_uv_la_includes += \
- -I../../../adaptors/tizen
-
-else
-libdali_adaptor_uv_la_includes += \
- -I../../../adaptors/ecore/common \
- -I../../../adaptors/x11 \
- -I../../../adaptors/integration-api/x11
-endif # WAYLAND
-
-if UBUNTU_PROFILE
-libdali_adaptor_uv_la_includes += \
- -I../../../adaptors/ubuntu
-else
-libdali_adaptor_uv_la_includes += \
- -I../../../adaptors/tizen
-endif
-
-daliDefaultThemeDir = ${dataReadWriteDir}/theme/
-daliShaderbinCacheDir = ${dataReadOnlyDir}/core/shaderbin/
-
-libdali_adaptor_uv_la_CXXFLAGS = \
- -DDALI_DATA_RW_DIR="\"${daliReadWriteDir}\"" \
- -DDALI_DATA_RO_DIR="\"${daliReadOnlyDir}\"" \
- -DDALI_DEFAULT_FONT_CACHE_DIR="\"${daliDefaultFontCacheDir}\"" \
- -DDALI_USER_FONT_CACHE_DIR="\"${daliUserFontCacheDir}\"" \
- -DDALI_SHADERBIN_DIR="\"${daliShaderbinCacheDir}\"" \
- -DDALI_DEFAULT_THEME_DIR="\"${daliDefaultThemeDir}\"" \
- -DFONT_PRELOADED_PATH="\"${fontPreloadedPath}\"" \
- -DFONT_DOWNLOADED_PATH="\"${fontDownloadedPath}\"" \
- -DFONT_APPLICATION_PATH="\"${fontApplicationPath}\"" \
- -DFONT_CONFIGURATION_FILE="\"${fontConfigurationFile}\"" \
- -DNON_POWER_OF_TWO_TEXTURES \
- -DDALI_COMPILATION -DDALI_ADAPTOR_COMPILATION \
- -Werror -Wall -lgcc \
- $(libdali_adaptor_uv_la_includes) \
- $(DALI_ADAPTOR_CFLAGS) \
- $(DALICORE_CFLAGS) \
- $(OPENGLES20_CFLAGS) \
- $(FREETYPE_CFLAGS) \
- $(FONTCONFIG_CFLAGS) \
- $(PNG_CFLAGS) \
- $(DLOG_CFLAGS) \
- $(VCONF_CFLAGS) \
- $(EXIF_CFLAGS) \
- $(MMFSOUND_CFLAGS) \
- $(TTS_CFLAGS) \
- $(LIBDRM_CFLAGS) \
- $(LIBEXIF_CFLAGS) \
- $(LIBCURL_CFLAGS) \
- $(TPKP_CURL_CFLAGS)
-
-# Todo, as soon as common repos are updated on build server remove this.
-if !COMMON_PROFILE
-libdali_adaptor_uv_la_CXXFLAGS += -DWAYLAND_EXTENSIONS_SUPPORTED
-endif
-
-libdali_adaptor_uv_la_CFLAGS = $(libdali_adaptor_uv_la_CXXFLAGS)
-
-libdali_adaptor_uv_la_LIBADD = \
- $(DALICORE_LIBS) \
- $(OPENGLES20_LIBS) \
- $(FREETYPE_LIBS) \
- $(FONTCONFIG_LIBS) \
- $(PNG_LIBS) \
- $(DLOG_LIBS) \
- $(VCONF_LIBS) \
- $(EXIF_LIBS) \
- $(TTS_LIBS) \
- $(LIBDRM_LIBS) \
- $(LIBEXIF_LIBS) \
- $(LIBCURL_LIBS) \
- $(HARFBUZZ_LIBS) \
- $(TPKP_CURL_LIBS) \
- -lgif \
- -lpthread \
- -lturbojpeg
-
-if USE_EFL
-# EVAS used indicator
-libdali_adaptor_uv_la_CXXFLAGS += $(ELEMENTARY_CFLAGS) \
- $(EVAS_CFLAGS) \
- $(ECORE_CFLAGS) \
- $(ECORE_IPC_CFLAGS) \
- $(ELDBUS_CFLAGS) \
- -DUSE_EFL
-
-
-libdali_adaptor_uv_la_LIBADD += $(ELEMENTARY_LIBS) \
- $(ECORE_IPC_LIBS) \
- $(ELDBUS_LIBS)
-
-else
-
-if MOBILE_PROFILE
-libdali_adaptor_uv_la_CXXFLAGS += $(ECORE_WAYLAND_CFLAGS)
-libdali_adaptor_uv_la_LIBADD += $(ECORE_WAYLAND_LIBS)
-endif
-
-endif
-
-if USE_APPFW
-
-libdali_adaptor_uv_la_CXXFLAGS += $(CAPI_APPFW_APPLICATION_CFLAGS) \
- $(CAPI_SYSTEM_SYSTEM_SETTINGS_CFLAGS) \
- $(CAPI_SYSTEM_INFO_CFLAGS) \
- $(TTS_CFLAGS) \
- $(SENSOR_CFLAGS)
-
-libdali_adaptor_uv_la_LIBADD += $(CAPI_APPFW_APPLICATION_LIBS) \
- $(CAPI_SYSTEM_SYSTEM_SETTINGS_LIBS) \
- $(CAPI_SYSTEM_INFO_LIBS) \
- $(TTS_LIBS) \
- $(SENSOR_LIBS)
-
-endif
-if WAYLAND
-# This is to avoid having to include wayland-egl.h everywhere
-libdali_adaptor_uv_la_CXXFLAGS += -DWL_EGL_PLATFORM
-libdali_adaptor_uv_la_CXXFLAGS += $(WAYLAND_CFLAGS)
-libdali_adaptor_uv_la_LIBADD += $(WAYLAND_LIBS)
-else
-libdali_adaptor_uv_la_CXXFLAGS += $(X11_CFLAGS)
-libdali_adaptor_uv_la_LIBADD += $(X11_LIBS)
-libdali_adaptor_uv_la_LIBADD += $(ECORE_X_LIBS)
-endif
-
-if COMMON_PROFILE
-libdali_adaptor_uv_la_CXXFLAGS += $(HAPTIC_CFLAGS)
-endif
-
-if MOBILE_PROFILE
-libdali_adaptor_uv_la_CXXFLAGS += \
- $(DEVICED_CFLAGS) \
- $(EFL_ASSIST_CFLAGS) \
- $(NATIVE_BUFFER_CFLAGS) \
- $(NATIVE_BUFFER_POOL_CFLAGS)
-
-libdali_adaptor_uv_la_LIBADD += \
- $(EFL_ASSIST_LIBS) \
- $(NATIVE_BUFFER_LIBS) \
- $(NATIVE_BUFFER_POOL_LIBS)
-endif
-
-if WEARABLE_PROFILE
-libdali_adaptor_uv_la_CXXFLAGS += \
- $(HAPTIC_CFLAGS) \
- $(EFL_ASSIST_CFLAGS)
-endif
-
-if TV_PROFILE
-libdali_adaptor_uv_la_CXXFLAGS += $(HAPTIC_CFLAGS)
-libdali_adaptor_uv_la_LIBADD +=
-endif
-
-if UBUNTU_PROFILE
-libdali_adaptor_uv_la_LIBADD += -ljpeg
-CFLAGS += -fPIC
-endif
-
-tizenadaptorpublicapidir = $(devincludepath)/dali/public-api
-tizenadaptorpublicapi_HEADERS = $(public_api_header_files)
-
-tizenadaptordevelapidir= $(devincludepath)/dali/devel-api
-
-tizenadaptorintegrationapidir = $(devincludepath)/dali/integration-api/adaptors
-tizenadaptorintegrationapi_HEADERS = $(adaptor_integration_api_header_files)
-
-if WAYLAND
-tizenadaptorintegrationwaylandapidir = $(devincludepath)/dali/integration-api/adaptors
-tizenadaptorintegrationwaylandapi_HEADERS = $(adaptor_integration_wayland_api_header_files)
-else
-tizenadaptorintegrationx11apidir = $(devincludepath)/dali/integration-api/adaptors
-tizenadaptorintegrationx11api_HEADERS = $(adaptor_integration_x11_api_header_files)
-endif
-
-tizenadaptorframeworkpublicapidir = $(tizenadaptorpublicapidir)/adaptor-framework
-tizenadaptorframeworkpublicapi_HEADERS = $(public_api_adaptor_framework_header_files)
-
-tizenadaptorframeworkdevelapidir = $(tizenadaptordevelapidir)/adaptor-framework
-tizenadaptorframeworkdevelapi_HEADERS = $(devel_api_adaptor_framework_header_files)
-
-tizentextabstractiondevelapidir = $(tizenadaptordevelapidir)/text-abstraction
-tizentextabstractiondevelapi_HEADERS = $(text_abstraction_header_files)
-
-if !UBUNTU_PROFILE
-
-if !WAYLAND
-tizenadaptorframeworkdevelapi_HEADERS += $(devel_api_adaptor_tizen_x11_header_files)
-endif # NOT WAYLAND
-
-endif # NOT UBUNTU_PROFILE
-
-tizenadaptordaliheaderdir = $(devincludepath)/dali
-tizenadaptordaliheader_HEADERS = $(adaptor_dali_header_file)
-
-install-data-local:
- $(MKDIR_P) ${DESTDIR}/${daliUserFontCacheDir} ${DESTDIR}/${daliShaderbinCacheDir}
-
-# Install resource log analyzer script
-bin_SCRIPTS = ../../../adaptors/scripts/dalireslog.sh
-
-# package doxygen file (contains doxygen grouping information)
-packagedoxydir = $(devincludepath)/dali/doc
-packagedoxy_HEADERS = $(package_doxy_files)
-
-# linking test
-
-# turn off the linker test if were building for libuv
-# We can't link to LibUV becase it is statically linked to Node.JS (by default)
-if !LIB_UV_EVENT_LOOP
-noinst_PROGRAMS = linker.test
-endif # NOT LIB_UV_EVENT_LOOP
-
-linker_test_SOURCES = linker-test.cpp
-
-linker_test_CXXFLAGS = \
- -DDALI_ADAPTOR_COMPILATION \
- -I../../../adaptors/common \
- -I../../../adaptors/public-api \
- -I../../../adaptors/integration-api \
- -I../../../adaptors/base/interfaces \
- -I../../../adaptors/public-api/adaptor-framework \
- -I../../../adaptors/devel-api/adaptor-framework \
- $(DALI_ADAPTOR_CFLAGS) \
- $(DALICORE_CFLAGS) \
- $(VCONF_CFLAGS) \
- $(DALIX11_CFLAGS) \
- -Werror -Wall
-
-if WAYLAND
-linker_test_CXXFLAGS += \
- -I../../../adaptors/integration-api/wayland
-else
-
-linker_test_CXXFLAGS += \
- -I../../../adaptors/integration-api/x11
-endif
-
-
-linker_test_DEPENDENCIES = libdali-adaptor-uv.la
-linker_test_LDADD = \
- $(DALICORE_LIBS) \
- $(VCONF_LIBS) \
- libdali-adaptor-uv.la \
- $(HARFBUZZ_LIBS) \
- -L${prefix}/lib
+++ /dev/null
-#
-# Copyright (c) 2015 Samsung Electronics Co., Ltd.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-m4_define([dali_version],[0.1.0])
-AC_INIT([dali], [dali_version])
-AM_INIT_AUTOMAKE([-Wall foreign])
-
-AC_CONFIG_MACRO_DIR([m4])
-
-AC_PROG_CXX
-AC_PROG_LIBTOOL
-AC_PROG_MKDIR_P
-
-m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
-
-LT_INIT
-
-DALI_ADAPTOR_VERSION=dali_version
-AC_SUBST(DALI_ADAPTOR_VERSION)
-
-FREETYPE_REQUIRED=9.16.3
-# 17.1.11 = Freetype version 2.5.2
-FREETYPE_BITMAP_SUPPORT_VERSION=17.1.11
-
-PKG_CHECK_MODULES(DALICORE, dali-core)
-PKG_CHECK_MODULES(EXIF, libexif)
-PKG_CHECK_MODULES(FREETYPE, [freetype2 >= $FREETYPE_REQUIRED])
-PKG_CHECK_MODULES(FREETYPE_BITMAP_SUPPORT, [freetype2 >= $FREETYPE_BITMAP_SUPPORT_VERSION], [ freetype_bitmap_support=yes ], [ freetype_bitmap_support=no ] )
-PKG_CHECK_MODULES(FONTCONFIG, fontconfig)
-PKG_CHECK_MODULES(PNG, libpng)
-PKG_CHECK_MODULES(LIBEXIF, libexif)
-PKG_CHECK_MODULES(LIBDRM, libdrm)
-PKG_CHECK_MODULES(LIBCURL, libcurl)
-PKG_CHECK_MODULES(HARFBUZZ, harfbuzz)
-PKG_CHECK_MODULES(FRIBIDI, fribidi)
-PKG_CHECK_MODULES(TTRACE, ttrace, AC_DEFINE(ENABLE_TTRACE, 1, [ttrace available]),
- [ AC_MSG_NOTICE([Tizen Trace not avaiable]) ]
- )
-
-
-# Currently, dali-adaptor-uv requires EFL on X11 (e.g. Ubuntu PC)
-# and does not require it on Wayland (e.g. Tizen 3.0 devices).
-# So we should be able to enable/disable this option for dali-adaptor-uv.
-AC_ARG_ENABLE([efl],
- [AC_HELP_STRING([--enable-efl],
- [Builds with EFL libraries, On by default])],
- [enable_efl=$enableval],
- [enable_efl=yes])
-
-
-
-# Check if we need EFL Libraries ( on by default, disabled with --use-efl=no )
-# When running on Node.JS with Wayland no EFL libraries are required.
-if test "x$enable_efl" = "xyes"; then
-PKG_CHECK_MODULES(ECORE, ecore)
-PKG_CHECK_MODULES(ECORE_IPC, ecore-ipc)
-PKG_CHECK_MODULES(ECORE_IMF, [ecore-imf >= 1.13], [ecore_imf_1_13=yes], [ecore_imf_1_13=no])
-PKG_CHECK_MODULES(ELEMENTARY, elementary)
-# Check for EldBus.h in ECore
-PKG_CHECK_MODULES(ELDBUS, eldbus, [ eldbus_available=yes ], [ eldbus_available=no ] )
-fi
-
-
-DALI_ELDBUS_AVAILABLE=
-if test "x$eldbus_available" = "xyes"; then
- DALI_ELDBUS_AVAILABLE=true
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DDALI_ELDBUS_AVAILABLE "
-fi
-AC_SUBST(DALI_ELDBUS_AVAILABLE)
-
-
-PKG_CHECK_MODULES(TPKP_CURL, tpkp-curl, [ tpkp_curl_available=yes ], [ tpkp_curl_available=no ] )
-
-if test "x$tpkp_curl_available" = "xyes"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DTPK_CURL_ENABLED "
-fi
-
-DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DPLATFORM_TIZEN"
-
-AC_ARG_ENABLE(exportall,
- [AC_HELP_STRING([--enable-exportall],
- [enables the exporting of all the symbols in the library])],
- [enable_exportall=yes],
- [enable_exportall=no])
-
-AC_ARG_ENABLE([debug],
- [AC_HELP_STRING([--enable-debug],
- [Turns on debugging])],
- [enable_debug=$enableval],
- [enable_debug=no])
-
-AC_ARG_ENABLE(shaderbincache,
- [AC_HELP_STRING([--enable-shaderbincache],
- [enables shader binary cache])],
- [enable_shaderbincache=$enableval],
- [enable_shaderbincache=DISABLE])
-
-AC_ARG_ENABLE(networklogging,
- [AC_HELP_STRING([--enable-networklogging],
- [enables network for debug tool])],
- [enable_networklogging=$enableval],
- [enable_networklogging=no])
-
-
-if test "x$enable_debug" = "xyes"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DDEBUG_ENABLED"
-fi
-
-if test "x$enable_debug" = "xno" -a "x$enable_exportall" = "xno"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -fvisibility=hidden -DHIDE_DALI_INTERNALS"
-fi
-
-if test "x$enable_shaderbincache" = "xENABLE"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DSHADERBIN_CACHE_ENABLED"
-fi
-
-if test "x$enable_networklogging" = "xyes"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DNETWORK_LOGGING_ENABLED"
-fi
-
-# If Ecore IMF version is greater than 1.13, then some structures are different
-if test "x$ecore_imf_1_13" = "xyes"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DECORE_IMF_1_13"
-fi
-
-AC_ARG_ENABLE([gles],
- [AC_HELP_STRING([--enable-gles],
- [Specify the OpenGL ES version for backwards compatibility])],
- [enable_gles=$enableval],
- [enable_gles=30])
-
-DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DDALI_GLES_VERSION=${enable_gles}"
-
-# node.js by default statically links against libuv, so it doesn't need to install
-# a libuv headers/ shared library. So we can't use pkg-config to access any headers.
-# As a work around we pass the node deps path so we can access the libuv headers inside nodes
-# directory
-AC_ARG_WITH([libuv],
- [AC_HELP_STRING([--with-libuv],
- [Path that contains libuv headers. Setting this configures DALi to work with LibUV mainloop used in Node.JS.
- For example /usr/tmp/downloads/node/deps/uv/include/ ])],
- [with_libuv=$withval],
- [with_libuv=no])
-
-# Node.JS already has a libuv main loop running,so we have to integrate with it
-AM_CONDITIONAL(LIB_UV_EVENT_LOOP, test x$with_libuv != xno)
-
-
-build_for_libuv=no
-if test "x$with_libuv" != "xno"; then
- AC_MSG_NOTICE("build with libuv mainloop (Node.JS support) == yes");
- [build_for_libuv=yes]
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DNODE_JS_SUPPORT -I${with_libuv}"
-else
- #not using libuv build
- AC_MSG_NOTICE("build with libuv mainloop == no (Node.JS not supported)");
-fi
-
-# Currently, dali-adaptor-uv requires appfw on Tizen
-# and does not require it on Ubuntu.
-# So we should be able to enable/disable this option for dali-adaptor-uv.
-AC_ARG_ENABLE([appfw],
- [AC_HELP_STRING([--enable-appfw],
- [Builds with Tizen App framework libraries, off by default])],
- [enable_appfw=$enableval],
- [enable_appfw=no])
-
-# Option to allow building with Tizen SDK 2.2
-AC_ARG_WITH([tizen-2-2-compatibility],
- [AC_HELP_STRING([--with-tizen-2-2-compatibility],
- [Use Tizen SDK 2.2 compatibility])],
- [with_tizen_2_2_compatibility=$withval],
- [with_tizen_2_2_compatibility=no])
-
-# Tizen Profile options
-AC_ARG_ENABLE([profile],
- [AC_HELP_STRING([--enable-profile=COMMON,MOBILE,WEARABLE,TV,UBUNTU],
- [Select the variant of tizen])],
- [enable_profile=$enableval],
- [enable_profile=COMMON])
-
-# Ensure valid profile selected
-if test "x$enable_profile" != "xCOMMON" -a "x$enable_profile" != "xMOBILE" -a "x$enable_profile" != "xWEARABLE" -a "x$enable_profile" != "xTV" -a "x$enable_profile" != "xUBUNTU"; then
- AC_MSG_ERROR([$enable_profile is an invalid profile])
-fi
-
-AC_ARG_ENABLE(wayland,
- [ --enable-wayland Build on Wayland],
- enable_wayland=yes,
- enable_wayland=no)
-
-DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DDALI_PROFILE_${enable_profile}"
-DALI_PROFILE_CFLAGS=" -DDALI_PROFILE_${enable_profile}"
-AM_CONDITIONAL([COMMON_PROFILE], [test x$enable_profile = xCOMMON])
-AM_CONDITIONAL([MOBILE_PROFILE], [test x$enable_profile = xMOBILE])
-AM_CONDITIONAL([WEARABLE_PROFILE], [test x$enable_profile = xWEARABLE])
-AM_CONDITIONAL([TV_PROFILE], [test x$enable_profile = xTV])
-AM_CONDITIONAL([UBUNTU_PROFILE], [test x$enable_profile = xUBUNTU])
-AM_CONDITIONAL([WAYLAND], [test x$enable_wayland = xyes])
-AM_CONDITIONAL([USE_EFL], [test x$enable_efl = xyes])
-AM_CONDITIONAL([USE_APPFW], [test x$enable_appfw = xyes])
-
-AM_CONDITIONAL([ENABLE_NETWORK_LOGGING], [test x$enable_networklogging = xyes])
-
-# Platforms should either enable features or remove them, they
-# should not disable features. This allows the developer to override
-# features through the command line.
-
-if test "x$enable_profile" = "xCOMMON"; then
-PKG_CHECK_MODULES(OPENGLES20, glesv2 egl)
-fi
-
-if test "x$enable_profile" = "xMOBILE"; then
-PKG_CHECK_MODULES(OPENGLES20, gles20)
-enable_assimp=no
-fi
-
-if test "x$enable_profile" = "xLITE"; then
-PKG_CHECK_MODULES(OPENGLES20, gles20)
-fi
-
-if test "x$enable_profile" = "xWEARABLE"; then
-PKG_CHECK_MODULES(OPENGLES20, glesv2)
-fi
-
-if test "x$enable_profile" = "xTV"; then
-PKG_CHECK_MODULES(OPENGLES20, glesv2)
-fi
-
-if test "x$enable_profile" = "xUBUNTU"; then
-PKG_CHECK_MODULES(OPENGLES20, glesv2 egl)
-else
-
-
-
-PKG_CHECK_MODULES(DLOG, dlog)
-PKG_CHECK_MODULES(SENSOR, sensor)
-PKG_CHECK_MODULES(TTS, tts)
-PKG_CHECK_MODULES(VCONF, vconf)
-
-if test "x$enable_efl" = "xyes"; then
-if test "x$with_tizen_2_2_compatibility" = "xno"; then
-PKG_CHECK_MODULES(CAPI_SYSTEM_INFO, capi-system-info)
-fi
-fi
-
-fi # ubuntu profile test
-
-if test "x$enable_appfw" = "xyes"; then
-PKG_CHECK_MODULES(CAPI_APPFW_APPLICATION, capi-appfw-application)
-PKG_CHECK_MODULES(CAPI_SYSTEM_SYSTEM_SETTINGS, capi-system-system-settings)
-fi
-
-# Using EFL api's for WAYLAND AND X11 to run on ecore mainloop
-if test "x$enable_efl" = "xyes"; then
-if test "x$enable_wayland" = "xyes"; then
-PKG_CHECK_MODULES(WAYLAND, [ecore-wayland egl wayland-egl wayland-client >= 1.2.0 xkbcommon libtbm],
- [DALI_USE_ECORE_WAYLAND=1],
- [DALI_USE_ECORE_WAYLAND=0])
-
-else
-PKG_CHECK_MODULES(ECORE_X, [ecore-x],
- [DALI_USE_ECORE_X11=1],
- [DALI_USE_ECORE_X11=0])
-PKG_CHECK_MODULES(X11, [x11],
- [DALI_USE_X11=1],
- [DALI_USE_X11=0])
-fi
-
-else
-
-# dali-adaptor-uv for MOBILE profile needs ecore-wayland even if enable_efl==no
-# because adaptors/mobile/pixmap-render-surface-factory.cpp uses it.
-if test "x$enable_profile" = "xMOBILE"; then
-PKG_CHECK_MODULES(ECORE_WAYLAND, ecore-wayland)
-fi
-
-fi
-# Using Wayland API directly ( main loop agnostic, typically for running on libuv)
-# wayland-extension-client include xdg-shell-client
-if test "x$enable_efl" = "xno"; then
-if test "x$enable_wayland" = "xyes"; then
-PKG_CHECK_MODULES(WAYLAND, [ egl wayland-egl wayland-client >= 1.2.0 xkbcommon libtbm],
- [DALI_USE_WAYLAND=1],
- [DALI_USE_WAYLAND=0])
-fi
-fi
-
-# remove this when we update common repos
-# common profile currently does not have wayland extensions like xdg-shell
-if test "x$enable_wayland" = "xyes"; then
-if test "x$enable_profile" != "xCOMMON"; then
-PKG_CHECK_MODULES(WAYLAND_EXTENSION, xdg-shell-client)
-fi
-fi
-AM_CONDITIONAL([USE_ECORE_WAYLAND], [test "$DALI_USE_ECORE_WAYLAND" -eq 1])
-
-if test x$DALI_DATA_RW_DIR != x; then
- dataReadWriteDir=$DALI_DATA_RW_DIR
-else
- dataReadWriteDir=${prefix}/share/dali/
-fi
-
-if test x$DALI_DATA_RO_DIR != x; then
- dataReadOnlyDir=$DALI_DATA_RO_DIR
-else
- dataReadOnlyDir=${prefix}/share/dali/
-fi
-
-if test x$FONT_CONFIGURATION_FILE != x; then
- fontConfigurationFile=$FONT_CONFIGURATION_FILE
-fi
-
-AC_SUBST(dataReadWriteDir)
-AC_SUBST(dataReadOnlyDir)
-AC_SUBST(DALI_ADAPTOR_CFLAGS)
-AC_SUBST(DALI_PROFILE_CFLAGS)
-AC_SUBST(fontConfigurationFile)
-
-# Specify the include directory for development headers
-#devincludepath=${includedir}/dali/internal
-devincludepath=${includedir}
-AC_SUBST(devincludepath)
-
-AC_CONFIG_FILES([
- Makefile
- dali-adaptor-uv.pc
-])
-
-if test "x$freetype_bitmap_support" = "xyes"; then
-DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DFREETYPE_BITMAP_SUPPORT"
-fi
-
-AC_OUTPUT
-
-
-echo "
-Configuration
--------------
- Prefix: $prefix
- Debug Build: $enable_debug
- Compile flags $DALI_ADAPTOR_CFLAGS
- Freetype bitmap support (Emoji): $freetype_bitmap_support
- Profile: $enable_profile
- Data Dir (Read/Write): $dataReadWriteDir
- Data Dir (Read Only): $dataReadOnlyDir
- Tizen SDK 2.2 compatibility: $with_tizen_2_2_compatibility
- EldBus: $eldbus_available
- Shader Binary Cache: $enable_shaderbincache
- Using LibUV mainloop (Node.JS) $build_for_libuv
- Ecore Version At Least 1.13.0 $ecore_imf_1_13
- Network logging enabled: $enable_networklogging
- Font config file: $fontConfigurationFile
- Building with EFL Libraries $enable_efl
- Using Tizen APP FW libraries $enable_appfw
-"
-# optional output of node.js source path if we're building with libuv
-if test "x$build_for_libuv" != "xno"; then
-echo " LibUV header path $with_libuv"
-fi
$(static_libraries_libunibreak_src_files)
if WAYLAND
-
if USE_ECORE_WAYLAND
adaptor_internal_src_files += $(adaptor_ecore_wayland_tizen_internal_src_files) \
$(adaptor_ecore_wayland_internal_default_profile_src_files)
else
adaptor_internal_src_files += $(adaptor_wayland_tizen_internal_src_files)
-endif # USE_ECORE_WAYLAND
-
-adaptor_internal_src_files += $(adaptor_tizen_internal_egl_extension_src_files) \
- $(adaptor_tizen_internal_native_image_src_files)
+endif
else
adaptor_internal_src_files += $(adaptor_x11_tizen_internal_src_files) \
- $(adaptor_common_internal_egl_extension_src_files) \
$(adaptor_x11_internal_default_profile_src_files)
endif # WAYLAND
endif # COMMON_PROFILE
$(adaptor_ubuntu_internal_src_files) \
$(adaptor_x11_ubuntu_internal_src_files) \
$(adaptor_x11_internal_default_profile_src_files) \
- $(static_libraries_libunibreak_src_files) \
- $(adaptor_common_internal_egl_extension_src_files)
+ $(static_libraries_libunibreak_src_files)
endif # UBUNTU_PROFILE
$(static_libraries_libunibreak_src_files)
if WAYLAND
-
if USE_ECORE_WAYLAND
adaptor_internal_src_files += $(adaptor_ecore_wayland_tizen_internal_src_files)
else
adaptor_internal_src_files += $(adaptor_wayland_tizen_internal_src_files)
-endif # USE_ECORE_WAYLAND
-
-adaptor_internal_src_files += $(adaptor_tizen_internal_egl_extension_src_files) \
- $(adaptor_tizen_internal_native_image_src_files)
+endif
else
-adaptor_internal_src_files += $(adaptor_x11_tizen_internal_src_files) \
- $(adaptor_common_internal_egl_extension_src_files)
+adaptor_internal_src_files += $(adaptor_x11_tizen_internal_src_files)
endif # WAYLAND
endif # MOBILE_PROFILE
$(adaptor_tizen_internal_src_files) \
$(static_libraries_libunibreak_src_files)
if WAYLAND
-
if USE_ECORE_WAYLAND
adaptor_internal_src_files += $(adaptor_ecore_wayland_tizen_internal_src_files)
else
adaptor_internal_src_files += $(adaptor_wayland_tizen_internal_src_files)
-endif # USE_ECORE_WAYLAND
-
-adaptor_internal_src_files += $(adaptor_tizen_internal_egl_extension_src_files) \
- $(adaptor_tizen_internal_native_image_src_files)
+endif
else
-adaptor_internal_src_files += $(adaptor_x11_tizen_internal_src_files) \
- $(adaptor_common_internal_egl_extension_src_files)
+adaptor_internal_src_files += $(adaptor_x11_tizen_internal_src_files)
endif # WAYLAND
endif # WEARABLE
$(adaptor_tizen_internal_non_mobile_src_files) \
$(static_libraries_libunibreak_src_files)
if WAYLAND
-
if USE_ECORE_WAYLAND
adaptor_internal_src_files += $(adaptor_ecore_wayland_tizen_internal_src_files)
else
adaptor_internal_src_files += $(adaptor_wayland_tizen_internal_src_files)
-endif # USE_ECORE_WAYLAND
-
-adaptor_internal_src_files += $(adaptor_tizen_internal_egl_extension_src_files) \
- $(adaptor_tizen_internal_native_image_src_files)
+endif
else
adaptor_internal_src_files += $(adaptor_x11_tv_internal_src_files) \
- $(adaptor_x11_internal_tv_profile_key_src_files) \
- $(adaptor_common_internal_egl_extension_src_files)
+ $(adaptor_x11_internal_tv_profile_key_src_files)
endif # WAYLAND
endif
if WAYLAND
libdali_adaptor_la_includes += -I../../../adaptors/integration-api/wayland
-
if USE_ECORE_WAYLAND
libdali_adaptor_la_includes += \
-I../../../adaptors/ecore/common \
else
libdali_adaptor_la_includes += -I../../../adaptors/wayland \
-I../../../adaptors/wayland/imf \
- -I../../../adaptors/wayland/clipboard
-endif # USE_ECORE_WAYLADN
-
-libdali_adaptor_la_includes += \
- -I../../../adaptors/tizen
+ -I../../../adaptors/wayland/clipboard \
+ -I../../../adaptors/wayland/native-image
+endif
else
libdali_adaptor_la_includes += \
-I../../../adaptors/ecore/common \
-I../../../adaptors/x11 \
-I../../../adaptors/integration-api/x11
-endif # WAYLAND
+endif
if UBUNTU_PROFILE
libdali_adaptor_la_includes += \
+++ /dev/null
-#
-# Copyright (c) 2015 Samsung Electronics Co., Ltd.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-m4_define([dali_version],[0.1.0])
-AC_INIT([dali], [dali_version])
-AM_INIT_AUTOMAKE([-Wall foreign])
-
-AC_CONFIG_MACRO_DIR([m4])
-
-AC_PROG_CXX
-AC_PROG_LIBTOOL
-AC_PROG_MKDIR_P
-
-m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
-
-LT_INIT
-
-DALI_ADAPTOR_VERSION=dali_version
-AC_SUBST(DALI_ADAPTOR_VERSION)
-
-FREETYPE_REQUIRED=9.16.3
-# 17.1.11 = Freetype version 2.5.2
-FREETYPE_BITMAP_SUPPORT_VERSION=17.1.11
-
-PKG_CHECK_MODULES(DALICORE, dali-core)
-PKG_CHECK_MODULES(EXIF, libexif)
-PKG_CHECK_MODULES(FREETYPE, [freetype2 >= $FREETYPE_REQUIRED])
-PKG_CHECK_MODULES(FREETYPE_BITMAP_SUPPORT, [freetype2 >= $FREETYPE_BITMAP_SUPPORT_VERSION], [ freetype_bitmap_support=yes ], [ freetype_bitmap_support=no ] )
-PKG_CHECK_MODULES(FONTCONFIG, fontconfig)
-PKG_CHECK_MODULES(PNG, libpng)
-PKG_CHECK_MODULES(LIBEXIF, libexif)
-PKG_CHECK_MODULES(LIBDRM, libdrm)
-PKG_CHECK_MODULES(LIBCURL, libcurl)
-PKG_CHECK_MODULES(HARFBUZZ, harfbuzz)
-PKG_CHECK_MODULES(FRIBIDI, fribidi)
-PKG_CHECK_MODULES(TTRACE, ttrace, AC_DEFINE(ENABLE_TTRACE, 1, [ttrace available]),
- [ AC_MSG_NOTICE([Tizen Trace not avaiable]) ]
- )
-
-
-# Currently, dali-adaptor always requires EFL on all platforms.
-# (on Wayland & X11, on Tizen devices & Ubuntu PC).
-enable_efl=yes
-if test "x$enable_efl" = "xyes"; then
-PKG_CHECK_MODULES(ECORE, ecore)
-PKG_CHECK_MODULES(ECORE_IPC, ecore-ipc)
-PKG_CHECK_MODULES(ECORE_IMF, [ecore-imf >= 1.13], [ecore_imf_1_13=yes], [ecore_imf_1_13=no])
-PKG_CHECK_MODULES(ELEMENTARY, elementary)
-# Check for EldBus.h in ECore
-PKG_CHECK_MODULES(ELDBUS, eldbus, [ eldbus_available=yes ], [ eldbus_available=no ] )
-fi
-
-
-DALI_ELDBUS_AVAILABLE=
-if test "x$eldbus_available" = "xyes"; then
- DALI_ELDBUS_AVAILABLE=true
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DDALI_ELDBUS_AVAILABLE "
-fi
-AC_SUBST(DALI_ELDBUS_AVAILABLE)
-
-
-PKG_CHECK_MODULES(TPKP_CURL, tpkp-curl, [ tpkp_curl_available=yes ], [ tpkp_curl_available=no ] )
-
-if test "x$tpkp_curl_available" = "xyes"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DTPK_CURL_ENABLED "
-fi
-
-DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DPLATFORM_TIZEN"
-
-AC_ARG_ENABLE(exportall,
- [AC_HELP_STRING([--enable-exportall],
- [enables the exporting of all the symbols in the library])],
- [enable_exportall=yes],
- [enable_exportall=no])
-
-AC_ARG_ENABLE([debug],
- [AC_HELP_STRING([--enable-debug],
- [Turns on debugging])],
- [enable_debug=$enableval],
- [enable_debug=no])
-
-AC_ARG_ENABLE(shaderbincache,
- [AC_HELP_STRING([--enable-shaderbincache],
- [enables shader binary cache])],
- [enable_shaderbincache=$enableval],
- [enable_shaderbincache=DISABLE])
-
-AC_ARG_ENABLE(networklogging,
- [AC_HELP_STRING([--enable-networklogging],
- [enables network for debug tool])],
- [enable_networklogging=$enableval],
- [enable_networklogging=no])
-
-
-if test "x$enable_debug" = "xyes"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DDEBUG_ENABLED"
-fi
-
-if test "x$enable_debug" = "xno" -a "x$enable_exportall" = "xno"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -fvisibility=hidden -DHIDE_DALI_INTERNALS"
-fi
-
-if test "x$enable_shaderbincache" = "xENABLE"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DSHADERBIN_CACHE_ENABLED"
-fi
-
-if test "x$enable_networklogging" = "xyes"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DNETWORK_LOGGING_ENABLED"
-fi
-
-# If Ecore IMF version is greater than 1.13, then some structures are different
-if test "x$ecore_imf_1_13" = "xyes"; then
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DECORE_IMF_1_13"
-fi
-
-AC_ARG_ENABLE([gles],
- [AC_HELP_STRING([--enable-gles],
- [Specify the OpenGL ES version for backwards compatibility])],
- [enable_gles=$enableval],
- [enable_gles=30])
-
-DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DDALI_GLES_VERSION=${enable_gles}"
-
-# Currently, dali-adaptor always does not require libuv because it runs on ecore on all platforms.
-# (on Wayland & X11, on Tizen devices & Ubuntu PC).
-with_libuv=no
-
-# Node.JS already has a libuv main loop running,so we have to integrate with it
-AM_CONDITIONAL(LIB_UV_EVENT_LOOP, test x$with_libuv != xno)
-
-
-build_for_libuv=no
-if test "x$with_libuv" != "xno"; then
- AC_MSG_NOTICE("build with libuv mainloop (Node.JS support) == yes");
- [build_for_libuv=yes]
- DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DNODE_JS_SUPPORT -I${with_libuv}"
-else
- #not using libuv build
- AC_MSG_NOTICE("build with libuv mainloop == no (Node.JS not supported)");
-fi
-
-# Currently, dali-adaptor requires appfw on Tizen
-# and does not require it on Ubuntu.
-# So we should be able to enable/disable this option for dali-adaptor.
-AC_ARG_ENABLE([appfw],
- [AC_HELP_STRING([--enable-appfw],
- [Builds with Tizen App framework libraries, off by default])],
- [enable_appfw=$enableval],
- [enable_appfw=no])
-
-# Option to allow building with Tizen SDK 2.2
-AC_ARG_WITH([tizen-2-2-compatibility],
- [AC_HELP_STRING([--with-tizen-2-2-compatibility],
- [Use Tizen SDK 2.2 compatibility])],
- [with_tizen_2_2_compatibility=$withval],
- [with_tizen_2_2_compatibility=no])
-
-# Tizen Profile options
-AC_ARG_ENABLE([profile],
- [AC_HELP_STRING([--enable-profile=COMMON,MOBILE,WEARABLE,TV,UBUNTU],
- [Select the variant of tizen])],
- [enable_profile=$enableval],
- [enable_profile=COMMON])
-
-# Ensure valid profile selected
-if test "x$enable_profile" != "xCOMMON" -a "x$enable_profile" != "xMOBILE" -a "x$enable_profile" != "xWEARABLE" -a "x$enable_profile" != "xTV" -a "x$enable_profile" != "xUBUNTU"; then
- AC_MSG_ERROR([$enable_profile is an invalid profile])
-fi
-
-AC_ARG_ENABLE(wayland,
- [ --enable-wayland Build on Wayland],
- enable_wayland=yes,
- enable_wayland=no)
-
-DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DDALI_PROFILE_${enable_profile}"
-DALI_PROFILE_CFLAGS=" -DDALI_PROFILE_${enable_profile}"
-AM_CONDITIONAL([COMMON_PROFILE], [test x$enable_profile = xCOMMON])
-AM_CONDITIONAL([MOBILE_PROFILE], [test x$enable_profile = xMOBILE])
-AM_CONDITIONAL([WEARABLE_PROFILE], [test x$enable_profile = xWEARABLE])
-AM_CONDITIONAL([TV_PROFILE], [test x$enable_profile = xTV])
-AM_CONDITIONAL([UBUNTU_PROFILE], [test x$enable_profile = xUBUNTU])
-AM_CONDITIONAL([WAYLAND], [test x$enable_wayland = xyes])
-AM_CONDITIONAL([USE_EFL], [test x$enable_efl = xyes])
-AM_CONDITIONAL([USE_APPFW], [test x$enable_appfw = xyes])
-
-AM_CONDITIONAL([ENABLE_NETWORK_LOGGING], [test x$enable_networklogging = xyes])
-
-# Platforms should either enable features or remove them, they
-# should not disable features. This allows the developer to override
-# features through the command line.
-
-if test "x$enable_profile" = "xCOMMON"; then
-PKG_CHECK_MODULES(OPENGLES20, glesv2 egl)
-fi
-
-if test "x$enable_profile" = "xMOBILE"; then
-PKG_CHECK_MODULES(OPENGLES20, glesv2 egl)
-enable_assimp=no
-fi
-
-if test "x$enable_profile" = "xLITE"; then
-PKG_CHECK_MODULES(OPENGLES20, gles20)
-fi
-
-if test "x$enable_profile" = "xWEARABLE"; then
-PKG_CHECK_MODULES(OPENGLES20, glesv2)
-fi
-
-if test "x$enable_profile" = "xTV"; then
-PKG_CHECK_MODULES(OPENGLES20, glesv2)
-fi
-
-if test "x$enable_profile" = "xUBUNTU"; then
-PKG_CHECK_MODULES(OPENGLES20, glesv2 egl)
-else
-
-
-
-PKG_CHECK_MODULES(DLOG, dlog)
-PKG_CHECK_MODULES(SENSOR, sensor)
-PKG_CHECK_MODULES(TTS, tts)
-PKG_CHECK_MODULES(VCONF, vconf)
-
-if test "x$enable_efl" = "xyes"; then
-if test "x$with_tizen_2_2_compatibility" = "xno"; then
-PKG_CHECK_MODULES(CAPI_SYSTEM_INFO, capi-system-info)
-fi
-fi
-
-fi # ubuntu profile test
-
-if test "x$enable_appfw" = "xyes"; then
-PKG_CHECK_MODULES(CAPI_APPFW_APPLICATION, capi-appfw-application)
-PKG_CHECK_MODULES(CAPI_SYSTEM_SYSTEM_SETTINGS, capi-system-system-settings)
-fi
-
-# Using EFL api's for WAYLAND AND X11 to run on ecore mainloop
-if test "x$enable_efl" = "xyes"; then
-if test "x$enable_wayland" = "xyes"; then
-PKG_CHECK_MODULES(WAYLAND, [ecore-wayland egl wayland-egl wayland-client >= 1.2.0 xkbcommon libtbm],
- [DALI_USE_ECORE_WAYLAND=1],
- [DALI_USE_ECORE_WAYLAND=0])
-
-else
-PKG_CHECK_MODULES(ECORE_X, [ecore-x],
- [DALI_USE_ECORE_X11=1],
- [DALI_USE_ECORE_X11=0])
-PKG_CHECK_MODULES(X11, [x11],
- [DALI_USE_X11=1],
- [DALI_USE_X11=0])
-fi
-fi
-# Using Wayland API directly ( main loop agnostic, typically for running on libuv)
-# wayland-extension-client include xdg-shell-client
-if test "x$enable_efl" = "xno"; then
-if test "x$enable_wayland" = "xyes"; then
-PKG_CHECK_MODULES(WAYLAND, [ egl wayland-egl wayland-client >= 1.2.0 xkbcommon libtbm],
- [DALI_USE_WAYLAND=1],
- [DALI_USE_WAYLAND=0])
-fi
-fi
-
-# remove this when we update common repos
-# common profile currently does not have wayland extensions like xdg-shell
-if test "x$enable_wayland" = "xyes"; then
-if test "x$enable_profile" != "xCOMMON"; then
-PKG_CHECK_MODULES(WAYLAND_EXTENSION, xdg-shell-client)
-fi
-fi
-AM_CONDITIONAL([USE_ECORE_WAYLAND], [test "$DALI_USE_ECORE_WAYLAND" -eq 1])
-
-if test x$DALI_DATA_RW_DIR != x; then
- dataReadWriteDir=$DALI_DATA_RW_DIR
-else
- dataReadWriteDir=${prefix}/share/dali/
-fi
-
-if test x$DALI_DATA_RO_DIR != x; then
- dataReadOnlyDir=$DALI_DATA_RO_DIR
-else
- dataReadOnlyDir=${prefix}/share/dali/
-fi
-
-if test x$FONT_CONFIGURATION_FILE != x; then
- fontConfigurationFile=$FONT_CONFIGURATION_FILE
-fi
-
-AC_SUBST(dataReadWriteDir)
-AC_SUBST(dataReadOnlyDir)
-AC_SUBST(DALI_ADAPTOR_CFLAGS)
-AC_SUBST(DALI_PROFILE_CFLAGS)
-AC_SUBST(fontConfigurationFile)
-
-# Specify the include directory for development headers
-#devincludepath=${includedir}/dali/internal
-devincludepath=${includedir}
-AC_SUBST(devincludepath)
-
-AC_CONFIG_FILES([
- Makefile
- dali-adaptor.pc
- dali-adaptor-integration.pc
-])
-
-if test "x$freetype_bitmap_support" = "xyes"; then
-DALI_ADAPTOR_CFLAGS="$DALI_ADAPTOR_CFLAGS -DFREETYPE_BITMAP_SUPPORT"
-fi
-
-AC_OUTPUT
-
-
-echo "
-Configuration
--------------
- Prefix: $prefix
- Debug Build: $enable_debug
- Compile flags $DALI_ADAPTOR_CFLAGS
- Freetype bitmap support (Emoji): $freetype_bitmap_support
- Profile: $enable_profile
- Data Dir (Read/Write): $dataReadWriteDir
- Data Dir (Read Only): $dataReadOnlyDir
- Tizen SDK 2.2 compatibility: $with_tizen_2_2_compatibility
- EldBus: $eldbus_available
- Shader Binary Cache: $enable_shaderbincache
- Using LibUV mainloop (Node.JS) $build_for_libuv
- Ecore Version At Least 1.13.0 $ecore_imf_1_13
- Network logging enabled: $enable_networklogging
- Font config file: $fontConfigurationFile
- Building with EFL Libraries $enable_efl
- Using Tizen APP FW libraries $enable_appfw
-"
-# optional output of node.js source path if we're building with libuv
-if test "x$build_for_libuv" != "xno"; then
-echo " LibUV header path $with_libuv"
-fi
# Using EFL api's for WAYLAND AND X11 to run on ecore mainloop
if test "x$enable_efl" = "xyes"; then
if test "x$enable_wayland" = "xyes"; then
-PKG_CHECK_MODULES(WAYLAND, [ecore-wayland egl wayland-egl wayland-client >= 1.2.0 xkbcommon libtbm],
+PKG_CHECK_MODULES(WAYLAND, [ecore-wayland egl wayland-egl wayland-client >= 1.2.0 xkbcommon],
[DALI_USE_ECORE_WAYLAND=1],
[DALI_USE_ECORE_WAYLAND=0])
# wayland-extension-client include xdg-shell-client
if test "x$enable_efl" = "xno"; then
if test "x$enable_wayland" = "xyes"; then
-PKG_CHECK_MODULES(WAYLAND, [ egl wayland-egl wayland-client >= 1.2.0 xkbcommon libtbm],
+PKG_CHECK_MODULES(WAYLAND, [ egl wayland-egl wayland-client >= 1.2.0 xkbcommon],
[DALI_USE_WAYLAND=1],
[DALI_USE_WAYLAND=0])
fi
####### BUILDING FOR ECORE WAYLAND #######
BuildRequires: pkgconfig(ecore-wayland)
%endif
-
-# dali-adaptor needs tbm_surface in tizen 3.0 wayland
-BuildRequires: pkgconfig(libtbm)
-
-# tpkp-curl (certificate pinning for libcurl functions) is only available in Tizen 3.0
-BuildRequires: pkgconfig(tpkp-curl)
-
####### BUILDING FOR X11#######
%else
BuildRequires: pkgconfig(egl)