build/tizen/.deps/
build/tizen/.libs/
build/tizen/build/
+build/tizen/cmake_install.cmake
+build/tizen/install_manifest.txt
To build the repository enter the 'build/tizen' folder:
- cd dali-csharp-binder/build/tizen
+ $ cd dali-csharp-binder/build/tizen
-Then run the following commands:
+Then run the following command to set up the build:
- autoreconf --install
- ./configure --prefix=$DESKTOP_PREFIX
- make install -j8
+ $ cmake -DCMAKE_INSTALL_PREFIX=$DESKTOP_PREFIX .
+
+If a Debug build is required, then add -DCMAKE_BUILD_TYPE=Debug
+
+To build run:
+
+ $ make install -j8
3. Building for Windows
=======================
-cmake_minimum_required(VERSION 3.1)
+cmake_minimum_required(VERSION 3.8.2)
-set(CMAKE_CXX_STANDARD 17)
-set(CMAKE_C_STANDARD 99)
+SET(CMAKE_CXX_STANDARD 17)
+SET(CMAKE_C_STANDARD 99)
-set(name "dali2-csharp-binder")
+SET(name "dali2-csharp-binder")
project(${name} CXX)
-set(${name}_VERSION_MAJOR 2)
-set(${name}_VERSION_MINOR 0)
-set(${name}_VERSION_PATCH 0)
-set(${name}_VERSION ${${name}_VERSION_MAJOR}.${${name}_VERSION_MINOR}.${${name}_VERSION_PATCH})
-
-add_definitions(-DDALI_PROFILE_WINDOWS)
-add_compile_options( /FIdali-windows-dependencies.h ) # Adds missing definitions.
-add_compile_options( /vmg ) # Avoids a 'reinterpret_cast' compile error while compiling signals and callbacks.
-add_compile_options( /wd4251 ) # Ignores warning C4251: "'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2'"
-
-add_definitions(-D_USE_MATH_DEFINES)
-
-set(VCPKG_INCLUDE_DIR "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include")
+SET(GCC_COMPILER_VERSION_REQUIRED "6")
+IF(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+ IF(CMAKE_CXX_COMPILER_VERSION VERSION_LESS GCC_COMPILER_VERSION_REQUIRED)
+ MESSAGE(FATAL_ERROR "The GCC required compiler version is " ${GCC_COMPILER_VERSION_REQUIRED})
+ ENDIF()
+ENDIF()
+
+SET(${name}_VERSION_MAJOR 2)
+SET(${name}_VERSION_MINOR 0)
+SET(${name}_VERSION_PATCH 0)
+SET(${name}_VERSION ${${name}_VERSION_MAJOR}.${${name}_VERSION_MINOR}.${${name}_VERSION_PATCH})
+
+SET(DALI_CSHARP_BINDER_VERSION ${${name}_VERSION} )
+
+# Define options to CMake
+OPTION(ENABLE_EXPORTALL "Enable Export all symbols" OFF)
+OPTION(ENABLE_DEBUG "Enable Debug" OFF)
+OPTION(ENABLE_PROFILE "Enable Profile" OFF)
+OPTION(ENABLE_TRACE "Enable Trace" ON)
+OPTION(ENABLE_PKG_CONFIGURE "Use pkgconfig" ON)
+OPTION(ENABLE_RIVE_ANIMATION "Enable rive animation" OFF)
+OPTION(ENABLE_ECORE_WAYLAND2 "Enable ecore wayland2" OFF)
+
+# Set up compiler definitions
+IF(CMAKE_BUILD_TYPE MATCHES Debug)
+ SET( ENABLE_DEBUG ON )
+ENDIF()
+
+IF( ENABLE_DEBUG )
+ MESSAGE( STATUS "CMAKE_BUILD_TYPE: " Debug )
+ ADD_DEFINITIONS( "-DDEBUG_ENABLED" )
+ SET( ENABLE_EXPORTALL ON )
+ELSE()
+ MESSAGE( STATUS "CMAKE_BUILD_TYPE: " Release )
+ENDIF()
+
+IF( NOT ENABLE_PROFILE )
+ IF( ANDROID )
+ SET( ENABLE_PROFILE ANDROID )
+ ELSE()
+ SET( ENABLE_PROFILE UBUNTU )
+ ENDIF()
+ENDIF()
+
+# from root/build/tizen, get back to root.
+# set the variable only if it's not set yet. it allows to access build script
+# from top-level directory
+IF( NOT ROOT_SRC_DIR )
+ SET(ROOT_SRC_DIR ${CMAKE_SOURCE_DIR}/../..)
+ENDIF()
+# Make sure the path is absolute
+GET_FILENAME_COMPONENT(ROOT_SRC_DIR ${ROOT_SRC_DIR} ABSOLUTE)
+
+
+# Test for profile and exit if something wrong
+SET( VALID_PROFILES COMMON MOBILE WEARABLE TV IVI UBUNTU ANDROID WINDOWS MACOS )
+LIST( FIND VALID_PROFILES ${ENABLE_PROFILE} RESULT )
+IF( RESULT EQUAL -1 )
+ MESSAGE( FATAL_ERROR "Invalid profile!" )
+ENDIF()
+
+# Defines profile specific variable
+SET( ${ENABLE_PROFILE}_PROFILE 1 )
+
+IF( ENABLE_PKG_CONFIGURE )
+ FIND_PACKAGE( PkgConfig REQUIRED )
+
+ PKG_CHECK_MODULES(DALICORE REQUIRED dali2-core)
+ PKG_CHECK_MODULES(DALIADAPTOR REQUIRED dali2-adaptor)
+ PKG_CHECK_MODULES(DALITOOLKIT REQUIRED dali2-toolkit)
+ENDIF()
+
+ADD_DEFINITIONS(-DDALI_PROFILE_WINDOWS)
+
+IF( WIN32 ) # WIN32 includes x64 as well according to the cmake doc.
+ FIND_PACKAGE( dali-windows-dependencies REQUIRED )
+ FIND_PACKAGE( dali2-core REQUIRED )
+ FIND_PACKAGE( dali2-adaptor REQUIRED )
+ FIND_PACKAGE( dali2-toolkit REQUIRED )
+ FIND_PACKAGE( pthreads REQUIRED )
+ENDIF()
+
+SET( DALI_CFLAGS
+ ${DALICORE_CFLAGS}
+ ${DALIADAPTOR_CFLAGS}
+ ${DALITOOLKIT_CFLAGS}
+)
-find_package( pthreads REQUIRED )
-find_package( curl REQUIRED )
-find_library( GETOPT_LIBRARY NAMES getopt )
-find_library( EXIF_LIBRARY NAMES libexif )
+SET( DALI_LDFLAGS
+ ${DALICORE_LDFLAGS}
+ ${DALIADAPTOR_LDFLAGS}
+ ${DALITOOLKIT_LDFLAGS}
+)
-find_package( png REQUIRED )
-find_package( gif REQUIRED )
-find_package( jpeg REQUIRED )
-find_library( TURBO_JPEG_LIBRARY NAMES turbojpeg )
+ADD_DEFINITIONS(-D_USE_MATH_DEFINES)
-find_package( unofficial-fontconfig REQUIRED )
-find_package( freetype REQUIRED )
-find_package( harfbuzz REQUIRED )
-find_library( FRIBIDI_LIBRARY NAMES fribidi )
+SET(VCPKG_INCLUDE_DIR "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include")
-find_package( unofficial-angle REQUIRED )
-find_package( unofficial-cairo REQUIRED )
+# set lowercase profile name
+STRING( TOLOWER ${ENABLE_PROFILE} PROFILE_LCASE )
-find_package( WebP REQUIRED )
-find_package( dali-windows-dependencies REQUIRED )
-find_package( dali2-core REQUIRED )
-find_package( dali2-adaptor REQUIRED )
-find_package( dali2-toolkit REQUIRED )
+# Deployment folder should come from spec file or command line:
+SET( PREFIX ${CMAKE_INSTALL_PREFIX})
+SET( EXEC_PREFIX ${CMAKE_INSTALL_PREFIX})
# Set up the include dir
-set( INCLUDE_DIR ${CMAKE_INSTALL_PREFIX}/include )
-set( LIB_DIR ${CMAKE_INSTALL_PREFIX}/lib )
-set( BIN_DIR ${CMAKE_INSTALL_PREFIX}/bin )
-
-set( REQUIRED_LIBS
- PThreads4W::PThreads4W
- CURL::libcurl
- ${GETOPT_LIBRARY}
- ${EXIF_LIBRARY}
- ${PNG_LIBRARIES}
- ${GIF_LIBRARIES}
- JPEG::JPEG
- ${TURBO_JPEG_LIBRARY}
- unofficial::fontconfig::fontconfig
- Freetype::Freetype
- harfbuzz::harfbuzz
- ${FRIBIDI_LIBRARY}
- unofficial::angle::libEGL
- unofficial::angle::libGLESv2
- unofficial::cairo::cairo
- WebP::webp
- WebP::webpdemux
- dali-windows-dependencies::dali-windows-dependencies
- dali2-core::dali2-core
- dali2-adaptor::dali2-adaptor
- dali2-toolkit::dali2-toolkit
-)
-
-include_directories(
+SET( INCLUDE_DIR $ENV{includedir} )
+IF( NOT INCLUDE_DIR )
+ SET( INCLUDE_DIR ${CMAKE_INSTALL_INCLUDEDIR} )
+ENDIF()
+IF( NOT INCLUDE_DIR )
+ SET( INCLUDE_DIR ${PREFIX}/include )
+ENDIF()
+
+# Set up the lib dir
+SET( LIB_DIR $ENV{libdir} )
+IF( NOT LIB_DIR )
+ SET( LIB_DIR ${CMAKE_INSTALL_LIBDIR} )
+ENDIF()
+IF( NOT LIB_DIR )
+ SET( LIB_DIR ${PREFIX}/lib )
+ENDIF()
+
+# Set up the bin dir
+SET( BIN_DIR $ENV{bindir} )
+IF( NOT BIN_DIR )
+ SET( BIN_DIR ${CMAKE_INSTALL_BINDIR} )
+ENDIF()
+IF( NOT BIN_DIR )
+ SET( BIN_DIR ${PREFIX}/bin )
+ENDIF()
+
+# Set up compiler flags and warnings
+IF( UNIX )
+ ADD_COMPILE_OPTIONS( -Wall ${DALI_CFLAGS} )# -Wextra -Wno-unused-parameter )# -Wfloat-equal )
+ELSEIF( WIN32 ) # WIN32 includes x64 as well according to the cmake doc.
+ ADD_COMPILE_OPTIONS( /FIdali-windows-dependencies.h ) # Adds missing definitions.
+ ADD_COMPILE_OPTIONS( /vmg ) # Avoids a 'reinterpret_cast' compile error while compiling signals and callbacks.
+ ADD_COMPILE_OPTIONS( /wd4251 ) # Ignores warning C4251: "'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2'"
+ENDIF()
+
+# from root/build/tizen, get back to root
+SET(ROOT_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../)
+
+# Make sure the path is absolute
+GET_FILENAME_COMPONENT(ROOT_SRC_DIR ${ROOT_SRC_DIR} ABSOLUTE)
+
+SET(dali_csharp_binder_dir ${CMAKE_CURRENT_SOURCE_DIR}/../../dali-csharp-binder)
+INCLUDE( ${dali_csharp_binder_dir}/file.list )
+
+# Include profile specific setup
+INCLUDE( profiles/${PROFILE_LCASE}-profile.cmake )
+
+IF( ENABLE_PKG_CONFIGURE )
+ # Configure the pkg-config file
+ # Requires the following variables to be setup:
+ # @PREFIX@ @EXEC_PREFIX@ @DALI_VERSION@ @LIB_DIR@ @DEV_INCLUDE_PATH@
+ SET( DEV_INCLUDE_PATH ${INCLUDE_DIR} )
+ SET( CORE_PKG_CFG_FILE ${CMAKE_CURRENT_SOURCE_DIR}/dali2-csharp-binder.pc )
+ CONFIGURE_FILE( ${CORE_PKG_CFG_FILE}.in ${CORE_PKG_CFG_FILE} @ONLY )
+ENDIF()
+
+INCLUDE_DIRECTORIES(
+ ${ROOT_SRC_DIR}
+ ${PROFILE_INCLUDE_DIRECTORIES}
${VCPKG_INCLUDE_DIR}
${CMAKE_INSTALL_PREFIX}/include
${INCLUDE_DIR}
)
-link_directories(${LIB_DIR})
-
-set(dali_csharp_binder_dir ${CMAKE_CURRENT_SOURCE_DIR}/../../dali-csharp-binder)
-
-set(SOURCES
- ${dali_csharp_binder_dir}/src/callbackbase_wrap.cpp
- ${dali_csharp_binder_dir}/src/keyboard_focus_manager_wrap.cpp
- ${dali_csharp_binder_dir}/src/devel-property-wrap.cpp
- ${dali_csharp_binder_dir}/src/version-check.cpp
- ${dali_csharp_binder_dir}/src/processor-controller.cpp
- ${dali_csharp_binder_dir}/src/flex-layout.cpp
- ${dali_csharp_binder_dir}/src/gestures.cpp
- ${dali_csharp_binder_dir}/src/view-wrapper-impl-wrap.cpp
- ${dali_csharp_binder_dir}/src/event-thread-callback-wrap.cpp
- ${dali_csharp_binder_dir}/src/application.cpp
- ${dali_csharp_binder_dir}/src/text-editor.cpp
- ${dali_csharp_binder_dir}/src/text-field.cpp
- ${dali_csharp_binder_dir}/src/window.cpp
- ${dali_csharp_binder_dir}/src/tts-player.cpp
- ${dali_csharp_binder_dir}/src/input-method-context.cpp
- ${dali_csharp_binder_dir}/src/input-method-options.cpp
- ${dali_csharp_binder_dir}/src/animation.cpp
- ${dali_csharp_binder_dir}/src/adaptor.cpp
- ${dali_csharp_binder_dir}/src/extents.cpp
- ${dali_csharp_binder_dir}/src/text-label.cpp
- ${dali_csharp_binder_dir}/src/text-utils.cpp
- ${dali_csharp_binder_dir}/src/dali_wrap.cpp
-)
+ADD_LIBRARY(${name} SHARED ${SOURCES})
-add_library(${name} SHARED ${SOURCES})
-target_link_libraries(${name} ${REQUIRED_LIBS})
+TARGET_LINK_LIBRARIES(${name}
+ ${DALI_LDFLAGS}
+ ${REQUIRED_LIBS})
-set_target_properties(${name}
+SET_TARGET_PROPERTIES(${name}
PROPERTIES
VERSION ${${name}_VERSION}
SOVERSION ${${name}_VERSION_MAJOR}
CLEAN_DIRECT_OUPUT 1
)
-# Install the pdb file.
-if( ${CMAKE_BUILD_TYPE} MATCHES Debug )
- set(BIN_DIR ${BIN_DIR}/debug)
- set(LIB_DIR ${LIB_DIR}/debug)
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/Debug/${name}.pdb DESTINATION ${BIN_DIR} )
-endif()
-
-# Install the library so file and symlinks
-install( TARGETS ${name}
- LIBRARY DESTINATION ${LIB_DIR}
- ARCHIVE DESTINATION ${LIB_DIR}
- RUNTIME DESTINATION ${BIN_DIR}
-)
+IF( INSTALL_CMAKE_MODULES )
+ # Install the pdb file.
+ IF( ENABLE_DEBUG )
+ SET(BIN_DIR "${BIN_DIR}/debug")
+ SET(LIB_DIR "${LIB_DIR}/debug")
+ ENDIF()
+
+ # Install the library so file and symlinks
+ INSTALL( TARGETS ${name}
+ EXPORT ${name}-targets
+ LIBRARY DESTINATION ${LIB_DIR}
+ ARCHIVE DESTINATION ${LIB_DIR}
+ RUNTIME DESTINATION ${BIN_DIR}
+ )
+
+ # Install the cmake modules.
+ INSTALL(
+ EXPORT ${name}-targets
+ NAMESPACE ${name}::
+ FILE ${name}-targets.cmake
+ DESTINATION share/${name}
+ )
+
+ FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${name}-config.cmake "
+ include(CMakeFindDependencyMacro)
+ include(\${CMAKE_CURRENT_LIST_DIR}/${name}-targets.cmake)
+ ")
+
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${name}-config.cmake DESTINATION share/${name})
+
+ # Install the pdb file.
+ IF( ENABLE_DEBUG AND WIN32 )
+ INSTALL( FILES ${CMAKE_CURRENT_BINARY_DIR}/Debug/${name}.pdb DESTINATION ${BIN_DIR} )
+ ENDIF()
+ELSE()
+ # Install the library so file and symlinks
+ INSTALL( TARGETS ${name} DESTINATION ${LIB_DIR} )
+ENDIF()
+
+# Install the pkg-config file
+IF( ENABLE_PKG_CONFIGURE )
+ INSTALL( FILES ${CORE_PKG_CFG_FILE} DESTINATION ${LIB_DIR}/pkgconfig )
+ENDIF()
+
+# Install headers
+INSTALL( FILES ${dali_csharp_binder_header_files} DESTINATION ${INCLUDE_DIR}/dali-csharp-binder )
+
+# Configuration Messages
+MESSAGE( STATUS "Configuration:\n" )
+MESSAGE( STATUS "Prefix: " ${PREFIX} )
+MESSAGE( STATUS "Lib Dir: " ${LIB_DIR} )
+MESSAGE( STATUS "Include Dir: " ${INCLUDE_DIR} )
+MESSAGE( STATUS "Debug build: " ${ENABLE_DEBUG} )
+MESSAGE( STATUS "Profile: " ${ENABLE_PROFILE} )
+MESSAGE( STATUS "Export all symbols: " ${ENABLE_EXPORTALL} )
+MESSAGE( STATUS "Trace: " ${ENABLE_TRACE} )
+MESSAGE( STATUS "Use pkg configure: " ${ENABLE_PKG_CONFIGURE} )
+MESSAGE( STATUS "CXXFLAGS: " ${CMAKE_CXX_FLAGS} )
+MESSAGE( STATUS "LDFLAGS: " ${CMAKE_SHARED_LINKER_FLAGS_INIT}${CMAKE_SHARED_LINKER_FLAGS} )
+++ /dev/null
-#
-# Copyright (c) 2020 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.
-#
-
-MAINTAINERCLEANFILES = \
- aclocal.m4 \
- autom4te.cache \
- config.guess \
- config.sub \
- config.h.in \
- configure \
- depcomp \
- install-sh \
- ltmain.sh \
- m4 \
- missing \
- `find "$(srcdir)" -type f -name Makefile.in -print` \
- `find . \( -name "*.gcov" -o -name "*.gcno" -o -name "*.gcda" \) -print`
-
-CLEANFILES = \
- `find . \( -name "*.gcov" -o -name "*.gcno" -o -name "*.gcda" \) -print`
-
-# Build the Dali csharp binder library
-
-############# INCLUDE FILE LISTS #############
-
-dali_csharp_binder_dir = ../../dali-csharp-binder
-include ../../dali-csharp-binder/file.list
-
-pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = dali2-csharp-binder.pc
-
-# sources
-if UBUNTU_PROFILE
-LIBDALI_CSHARP_BINDER_LA_SOURCES = \
- $(dali_csharp_binder_common_src_files)
-endif
-
-if MOBILE_PROFILE
-LIBDALI_CSHARP_BINDER_LA_SOURCES = \
- $(dali_csharp_binder_common_src_files) \
- $(dali_csharp_binder_tizen_src_files)
-endif
-
-if IVI_PROFILE
-LIBDALI_CSHARP_BINDER_LA_SOURCES = \
- $(dali_csharp_binder_common_src_files) \
- $(dali_csharp_binder_tizen_src_files)
-endif
-
-if TV_PROFILE
-LIBDALI_CSHARP_BINDER_LA_SOURCES = \
- $(dali_csharp_binder_common_src_files) \
- $(dali_csharp_binder_tizen_src_files)
-endif
-
-if COMMON_PROFILE
-LIBDALI_CSHARP_BINDER_LA_SOURCES = \
- $(dali_csharp_binder_common_src_files) \
- $(dali_csharp_binder_tizen_src_files)
-endif
-
-if WEARABLE_PROFILE
-LIBDALI_CSHARP_BINDER_LA_SOURCES = \
- $(dali_csharp_binder_common_src_files) \
- $(dali_csharp_binder_tizen_src_files) \
- $(dali_csharp_binder_tizen_wearable_src_files)
-endif
-
-if RIVE_ANIMATION
-LIBDALI_CSHARP_BINDER_RIVE_LA_SOURCES = \
- $(dali_csharp_binder_tizen_rive_src_files)
-endif
-
-LIBDALI_CSHARP_BINDER_LA_includes = \
- -I../../
-
-LIBDALI_CSHARP_BINDER_LA_CXXFLAGS = \
- -DDALI_DATA_RW_DIR="\"${daliReadWriteDir}\"" \
- -DDALI_DATA_RO_DIR="\"${daliReadOnlyDir}\"" \
- $(LIBDALI_CSHARP_BINDER_LA_includes) \
- ${CFLAGS} \
- $(DALICORE_CFLAGS) \
- $(DALIADAPTOR_CFLAGS) \
- $(DALITOOLKIT_CFLAGS) \
- $(DALI_CSHARP_BINDER_CFLAGS)
-
-LIBDALI_CSHARP_BINDER_LA_LIBADD = \
- $(DALICORE_LIBS) \
- $(DALIADAPTOR_LIBS) \
- $(DALITOOLKIT_LIBS)
-
-if !UBUNTU_PROFILE
-LIBDALI_CSHARP_BINDER_LA_CXXFLAGS += -DTIZEN_BUILD \
- $(DALIWIDGET_CFLAGS)
-LIBDALI_CSHARP_BINDER_LA_LIBADD += $(DALIWIDGET_LIBS)
-if ECORE_WAYLAND2
-LIBDALI_CSHARP_BINDER_LA_CXXFLAGS += -DECORE_WL2 \
- -DEFL_BETA_API_SUPPORT \
- $(ECORE_WL2_CFLAGS)
-else
-LIBDALI_CSHARP_BINDER_LA_CXXFLAGS += $(ECORE_WAYLAND_CFLAGS)
-endif
-
-endif
-
-if WEARABLE_PROFILE
-LIBDALI_CSHARP_BINDER_LA_CXXFLAGS += -DTIZEN_BUILD \
- $(DALIWATCHVIEW_CFLAGS)
-LIBDALI_CSHARP_BINDER_LA_LIBADD += $(DALIWATCHVIEW_LIBS)
-
-LIBDALI_CSHARP_BINDER_LA_CXXFLAGS += -DTIZEN_BUILD \
- $(DALIWATCHHOLDERBASE_CFLAGS)
-LIBDALI_CSHARP_BINDER_LA_LIBADD += $(DALIWATCHHOLDERBASE_LIBS)
-endif
-
-if RIVE_ANIMATION
-LIBDALI_CSHARP_BINDER_LA_CXXFLAGS += -DTIZEN_BUILD \
- $(DALIRIVEVIEW_CFLAGS)
-LIBDALI_CSHARP_BINDER_LA_LIBADD += $(DALIRIVEVIEW_LIBS)
-endif
-
-lib_LTLIBRARIES = libdali2-csharp-binder.la
-
-libdali2_csharp_binder_la_SOURCES = $(LIBDALI_CSHARP_BINDER_LA_SOURCES)
-if RIVE_ANIMATION
-libdali2_csharp_binder_la_SOURCES += $(LIBDALI_CSHARP_BINDER_RIVE_LA_SOURCES)
-endif
-libdali2_csharp_binder_la_includes = $(LIBDALI_CSHARP_BINDER_LA_INCLUDES)
-libdali2_csharp_binder_ladir = $(libdir)
-libdali2_csharp_binder_la_LDFLAGS = ${LDFLAGS}
-libdali2_csharp_binder_la_CXXFLAGS = $(LIBDALI_CSHARP_BINDER_LA_CXXFLAGS)
-libdali2_csharp_binder_la_LIBADD = $(LIBDALI_CSHARP_BINDER_LA_LIBADD)
-
-libdali2_csharp_binderdir = $(includedir)/dali-csharp-binder
-libdali2_csharp_binder_HEADERS = $(dali_csharp_binder_header_files)
+++ /dev/null
-#!/bin/sh
-
-rm -rf autom4te.cache
-rm -f aclocal.m4 ltmain.sh
-
-echo "Running aclocal..." ; aclocal $ACLOCAL_FLAGS || exit 1
-echo "Running autoheader..." ; autoheader || exit 1
-echo "Running autoconf..." ; autoconf || exit 1
-echo "Running libtoolize..." ; (libtoolize --copy --automake || glibtoolize --automake) || exit 1
-echo "Running automake..." ; automake --add-missing --copy --gnu || exit 1
-
-if [ -z "$NOCONFIGURE" ]; then
- ./configure "$@"
-fi
-
+++ /dev/null
-# -*- Autoconf -*-
-# Process this file with autoconf to produce a configure script.
-
-m4_define([dali_version],[2.0.0])
-AC_INIT([dali], [dali_version])
-AM_INIT_AUTOMAKE([-Wall foreign])
-AC_CONFIG_MACRO_DIR([m4])
-
-# Checks for programs.
-AC_PROG_CXX
-AC_PROG_LIBTOOL
-AC_PROG_MKDIR_P
-
-m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
-
-LT_INIT
-
-DALI_CSHARP_BINDER_VERSION=dali_version
-AC_SUBST(DALI_CSHARP_BINDER_VERSION)
-
-AC_ARG_ENABLE([debug],
- [AC_HELP_STRING([--enable-debug],
- [Turns on debugging])],
- [enable_debug=$enableval],
- [enable_debug=no])
-
-DALI_CSHARP_BINDER_CFLAGS="$DALI_CSHARP_BINDER_CFLAGS -std=c++17 "
-if test "x$enable_debug" = "xyes"; then
- DALI_CSHARP_BINDER_CFLAGS="$DALI_CSHARP_BINDER_CFLAGS -DDEBUG_ENABLED"
-fi
-
-# Tizen Profile options
-AC_ARG_ENABLE([profile],
- [AC_HELP_STRING([--enable-profile=COMMON,MOBILE,WEARABLE,TV,IVI,UBUNTU],
- [Select the variant of tizen])],
- [enable_profile=$enableval],
- [enable_profile=UBUNTU])
-
-# 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" != "xIVI" -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)
-
-AC_ARG_ENABLE(ecore_wayland2,
- [ --enable-ecore-wayland2 Build on Ecore Wayland2],
- enable_ecore_wayland2=yes,
- enable_ecore_wayland2=no)
-
-AC_ARG_ENABLE([rive-animation-view],
- [AC_HELP_STRING([--enable-rive-animation-view],
- [enables the rive animation view])],
- [enable_rive_animation_view=yes],
- [enable_rive_animation_view=no])
-
-
-DALI_CSHARP_BINDER_CFLAGS="$DALI_CSHARP_BINDER_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([IVI_PROFILE], [test x$enable_profile = xIVI])
-AM_CONDITIONAL([UBUNTU_PROFILE], [test x$enable_profile = xUBUNTU])
-AM_CONDITIONAL([WAYLAND], [test x$enable_wayland = xyes])
-AM_CONDITIONAL([ECORE_WAYLAND2], [test x$enable_ecore_wayland2 = xyes])
-AM_CONDITIONAL([ENABLE_RENAME_SO], [test x$enable_rename_so = xyes])
-AM_CONDITIONAL([RIVE_ANIMATION], [test x$enable_rive_animation_view = xyes])
-
-### AM_CONDITIONAL([TIZENBUILD], [test x$enable_tizenBuild = xyes])
-### AM_CONDITIONAL([ECOREWL2], [test x$enable_ecoreWl2 = xyes])
-
-PKG_CHECK_MODULES(DALICORE, dali2-core)
-PKG_CHECK_MODULES(DALIADAPTOR, dali2-adaptor)
-PKG_CHECK_MODULES(DALITOOLKIT, dali2-toolkit)
-
-if test "x$enable_profile" = "xMOBILE" -o "x$enable_profile" = "xWEARABLE" -o "x$enable_profile" = "xTV" -o "x$enable_profile" = "xIVI" -o "x$enable_profile" = "xCOMMON"; then
- PKG_CHECK_MODULES(DALIWIDGET, widget_viewer_dali)
- if test "x$enable_rive_animation_view" = "xyes"; then
- PKG_CHECK_MODULES(DALIRIVEVIEW, dali2-extension-rive-animation-view)
- fi
-
- if test x$enable_ecore_wayland2 = xyes; then
- PKG_CHECK_MODULES(ECORE_WL2, ecore-wl2)
- else
- PKG_CHECK_MODULES(ECORE_WAYLAND, ecore-wayland)
- fi
-fi
-
-if test "x$enable_profile" = "xWEARABLE"; then
- PKG_CHECK_MODULES(DALIWATCHVIEW, watch_viewer_dali)
- PKG_CHECK_MODULES(DALIWATCHHOLDERBASE, watch-holder-base)
-fi
-
-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$includedir != x; then
- INCLUDE_DIR=$includedir
-else
- INCLUDE_DIR=$prefix/include/
-fi
-if test x$libdir != x; then
- LIB_DIR=$libdir
-else
- LIB_DIR=$prefix/lib/
-fi
-if test x$bindir != x; then
- BIN_DIR=$bindir
-else
- BIN_DIR=$prefix/bin/
-fi
-
-PREFIX=$prefix
-EXEC_PREFIX=$exec_prefix
-DEV_INCLUDE_PATH=$INCLUDE_DIR
-
-AC_SUBST(dataReadWriteDir)
-AC_SUBST(dataReadOnlyDir)
-AC_SUBST(DALI_CSHARP_BINDER_CFLAGS)
-AC_SUBST(DALI_PROFILE_CFLAGS)
-
-AC_SUBST(INCLUDE_DIR)
-AC_SUBST(LIB_DIR)
-AC_SUBST(BIN_DIR)
-
-AC_SUBST(PREFIX)
-AC_SUBST(EXEC_PREFIX)
-AC_SUBST(DEV_INCLUDE_PATH)
-
-AC_CONFIG_FILES([Makefile])
-AC_CONFIG_FILES([dali2-csharp-binder.pc])
-
-AC_OUTPUT
-
-
-echo "
-Configuration
--------------
- Prefix: $prefix
- EXEC_PREFIX: $EXEC_PREFIX
- INCLUDE_DIR: $INCLUDE_DIR
- LIB_DIR: $LIB_DIR
- BIN_DIR: $BIN_DIR
- Debug Build: $enable_debug
- Compile flags: $DALI_CSHARP_BINDER_CFLAGS
- Profile: $enable_profile
- Data Dir (Read/Write): $dataReadWriteDir
- Data Dir (Read Only): $dataReadOnlyDir
-"
Name: DALi C# binder
Description: DALi C# binder Libaray
Version: ${apiversion}
-Requires: dali-core dali-adaptor dali-toolkit
+Requires: dali2-core dali2-adaptor dali2-toolkit
Libs: -L${libdir} -ldali2-csharp-binder
Cflags: -I${includedir}/dali-csharp-binder
--- /dev/null
+# PROFILE: COMMON\r
+\r
+SET( SOURCES\r
+ ${dali_csharp_binder_common_src_files}\r
+ ${dali_csharp_binder_tizen_src_files}\r
+)\r
+\r
+ADD_DEFINITIONS( "-DTIZEN_BUILD" )\r
+PKG_CHECK_MODULES(DALIWIDGET widget_viewer_dali)\r
+SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIWIDGET_CFLAGS})\r
+\r
+IF( ENABLE_ECORE_WAYLAND2 )\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wl2)\r
+ELSE()\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wayland)\r
+ENDIF()\r
+\r
+# WAYLAND\r
+IF( ENABLE_WAYLAND )\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ -DWL_EGL_PLATFORM\r
+ ${WAYLAND_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${WAYLAND_LDFLAGS}\r
+ )\r
+ELSE()\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ ${X11_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${X11_LDFLAGS}\r
+ ${ECORE_X_LDFLAGS}\r
+ )\r
+ENDIF()\r
+\r
+# Set the header directories\r
+SET( PROFILE_INCLUDE_DIRECTORIES\r
+ ${WAYLAND_INCLUDE_DIRS}\r
+ ${DALIWIDGET_INCLUDE_DIRS}\r
+)\r
--- /dev/null
+# PROFILE: IVI\r
+\r
+SET( SOURCES\r
+ ${dali_csharp_binder_common_src_files}\r
+ ${dali_csharp_binder_tizen_src_files}\r
+)\r
+\r
+ADD_DEFINITIONS( "-DTIZEN_BUILD" )\r
+PKG_CHECK_MODULES(DALIWIDGET widget_viewer_dali)\r
+SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIWIDGET_CFLAGS})\r
+\r
+IF ( ENABLE_RIVE_ANIMATION )\r
+ PKG_CHECK_MODULES(DALIRIVEVIEW dali2-extension-rive-animation-view)\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIRIVEVIEW_CFLAGS})\r
+ SET( SOURCES ${SOURCES} ${dali_csharp_binder_tizen_rive_src_files} )\r
+ENDIF()\r
+\r
+IF( ENABLE_ECORE_WAYLAND2 )\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wl2)\r
+ELSE()\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wayland)\r
+ENDIF()\r
+\r
+# WAYLAND\r
+IF( ENABLE_WAYLAND )\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ -DWL_EGL_PLATFORM\r
+ ${WAYLAND_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${WAYLAND_LDFLAGS}\r
+ )\r
+ELSE()\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ ${X11_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${X11_LDFLAGS}\r
+ ${ECORE_X_LDFLAGS}\r
+ )\r
+ENDIF()\r
+\r
+# Set the header directories\r
+SET( PROFILE_INCLUDE_DIRECTORIES\r
+ ${WAYLAND_INCLUDE_DIRS}\r
+ ${DALIWIDGET_INCLUDE_DIRS}\r
+ ${DALIRIVEVIEW_INCLUDE_DIRS}\r
+)\r
--- /dev/null
+# PROFILE: MACOS\r
+\r
+SET( SOURCES\r
+ ${dali_csharp_binder_common_src_files}\r
+)
\ No newline at end of file
--- /dev/null
+# PROFILE: MOBILE\r
+\r
+SET( SOURCES\r
+ ${dali_csharp_binder_common_src_files}\r
+ ${dali_csharp_binder_tizen_src_files}\r
+)\r
+\r
+ADD_DEFINITIONS( "-DTIZEN_BUILD" )\r
+PKG_CHECK_MODULES(DALIWIDGET widget_viewer_dali)\r
+SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIWIDGET_CFLAGS})\r
+\r
+IF ( ENABLE_RIVE_ANIMATION )\r
+ PKG_CHECK_MODULES(DALIRIVEVIEW dali2-extension-rive-animation-view)\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIRIVEVIEW_CFLAGS})\r
+ SET( SOURCES ${SOURCES} ${dali_csharp_binder_tizen_rive_src_files} )\r
+ENDIF()\r
+\r
+IF( ENABLE_ECORE_WAYLAND2 )\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wl2)\r
+ELSE()\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wayland)\r
+ENDIF()\r
+\r
+# WAYLAND\r
+IF( ENABLE_WAYLAND )\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ -DWL_EGL_PLATFORM\r
+ ${WAYLAND_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${WAYLAND_LDFLAGS}\r
+ )\r
+ELSE()\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ ${X11_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${X11_LDFLAGS}\r
+ ${ECORE_X_LDFLAGS}\r
+ )\r
+ENDIF()\r
+\r
+# Set the header directories\r
+SET( PROFILE_INCLUDE_DIRECTORIES\r
+ ${WAYLAND_INCLUDE_DIRS}\r
+ ${DALIWIDGET_INCLUDE_DIRS}\r
+ ${DALIRIVEVIEW_INCLUDE_DIRS}\r
+)\r
--- /dev/null
+# PROFILE: TV\r
+\r
+SET( SOURCES\r
+ ${dali_csharp_binder_common_src_files}\r
+ ${dali_csharp_binder_tizen_src_files}\r
+)\r
+\r
+ADD_DEFINITIONS( "-DTIZEN_BUILD" )\r
+PKG_CHECK_MODULES(DALIWIDGET widget_viewer_dali)\r
+SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIWIDGET_CFLAGS})\r
+\r
+IF ( ENABLE_RIVE_ANIMATION )\r
+ PKG_CHECK_MODULES(DALIRIVEVIEW dali2-extension-rive-animation-view)\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIRIVEVIEW_CFLAGS})\r
+ SET( SOURCES ${SOURCES} ${dali_csharp_binder_tizen_rive_src_files} )\r
+ENDIF()\r
+\r
+IF( ENABLE_ECORE_WAYLAND2 )\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wl2)\r
+ELSE()\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wayland)\r
+ENDIF()\r
+\r
+# WAYLAND\r
+IF( ENABLE_WAYLAND )\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ -DWL_EGL_PLATFORM\r
+ ${WAYLAND_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${WAYLAND_LDFLAGS}\r
+ )\r
+ELSE()\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ ${X11_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${X11_LDFLAGS}\r
+ ${ECORE_X_LDFLAGS}\r
+ )\r
+ENDIF()\r
+\r
+# Set the header directories\r
+SET( PROFILE_INCLUDE_DIRECTORIES\r
+ ${WAYLAND_INCLUDE_DIRS}\r
+ ${DALIWIDGET_INCLUDE_DIRS}\r
+ ${DALIRIVEVIEW_INCLUDE_DIRS}\r
+)\r
--- /dev/null
+# PROFILE: UBUNTU\r
+\r
+SET( SOURCES\r
+ ${dali_csharp_binder_common_src_files}\r
+)
\ No newline at end of file
--- /dev/null
+# PROFILE: WEARABLE\r
+\r
+SET( SOURCES\r
+ ${dali_csharp_binder_common_src_files}\r
+ ${dali_csharp_binder_tizen_src_files}\r
+ ${dali_csharp_binder_tizen_wearable_src_files}\r
+)\r
+\r
+ADD_DEFINITIONS( "-DTIZEN_BUILD" )\r
+PKG_CHECK_MODULES(DALIWIDGET widget_viewer_dali)\r
+SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIWIDGET_CFLAGS})\r
+\r
+IF ( ENABLE_RIVE_ANIMATION )\r
+ PKG_CHECK_MODULES(DALIRIVEVIEW dali2-extension-rive-animation-view)\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIRIVEVIEW_CFLAGS})\r
+ SET( SOURCES ${SOURCES} ${dali_csharp_binder_tizen_rive_src_files} )\r
+ENDIF()\r
+\r
+IF( ENABLE_ECORE_WAYLAND2 )\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wl2)\r
+ELSE()\r
+ PKG_CHECK_MODULES(WAYLAND ecore-wayland)\r
+ENDIF()\r
+\r
+IF( ENABLE_PROFILE )\r
+ PKG_CHECK_MODULES(DALIWATCHVIEW watch_viewer_dali)\r
+ PKG_CHECK_MODULES(DALIWATCHHOLDERBASE watch-holder-base)\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS} ${DALIWATCHVIEW_CFLAGS} ${DALIWATCHHOLDERBASE_CFLAGS})\r
+ENDIF()\r
+\r
+# WAYLAND\r
+IF( ENABLE_WAYLAND )\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ -DWL_EGL_PLATFORM\r
+ ${WAYLAND_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${WAYLAND_LDFLAGS}\r
+ )\r
+ELSE()\r
+ SET( DALI_CFLAGS ${DALI_CFLAGS}\r
+ ${X11_CFLAGS}\r
+ )\r
+ SET( DALI_LDFLAGS ${DALI_LDFLAGS}\r
+ ${X11_LDFLAGS}\r
+ ${ECORE_X_LDFLAGS}\r
+ )\r
+ENDIF()\r
+\r
+# Set the header directories\r
+SET( PROFILE_INCLUDE_DIRECTORIES\r
+ ${WAYLAND_INCLUDE_DIRS}\r
+ ${DALIWIDGET_INCLUDE_DIRS}\r
+ ${DALIRIVEVIEW_INCLUDE_DIRS}\r
+ ${DALIWATCHVIEW_INCLUDE_DIRS}\r
+ ${DALIWATCHHOLDERBASE_INCLUDE_DIRS}\r
+)
\ No newline at end of file
--- /dev/null
+# PROFILE: WINDOWS\r
+\r
+SET( SOURCES\r
+ ${dali_csharp_binder_common_src_files}\r
+)
\ No newline at end of file
# backend: common - ubuntu,mobile,tv,ivi,tizen-wearable
# backend: tizen - mobile,tv,ivi,tizen-wearable
# backend: tizen-wearable - tizen-wearable
+SET( dali_csharp_binder_dir ${CMAKE_CURRENT_SOURCE_DIR}/../../dali-csharp-binder )
# module: csharp-binder, backend: common
-dali_csharp_binder_common_src_files = \
- ${dali_csharp_binder_dir}/src/common.cpp \
- ${dali_csharp_binder_dir}/src/dali-wrap.cpp \
- ${dali_csharp_binder_dir}/src/callbackbase-wrap.cpp \
- ${dali_csharp_binder_dir}/src/canvas-view-wrap.cpp \
- ${dali_csharp_binder_dir}/src/constraint-wrap.cpp \
- ${dali_csharp_binder_dir}/src/keyboard-focus-manager-wrap.cpp \
- ${dali_csharp_binder_dir}/src/devel-property-wrap.cpp \
- ${dali_csharp_binder_dir}/src/encoded-image-buffer-wrap.cpp \
- ${dali_csharp_binder_dir}/src/version-check.cpp \
- ${dali_csharp_binder_dir}/src/processor-controller.cpp \
- ${dali_csharp_binder_dir}/src/flex-layout-wrap.cpp \
- ${dali_csharp_binder_dir}/src/gestures-wrap.cpp \
- ${dali_csharp_binder_dir}/src/view-wrapper-impl-wrap.cpp \
- ${dali_csharp_binder_dir}/src/visual-actions-wrap.cpp \
- ${dali_csharp_binder_dir}/src/event-thread-callback-wrap.cpp \
- ${dali_csharp_binder_dir}/src/application-wrap.cpp \
- ${dali_csharp_binder_dir}/src/text-editor-wrap.cpp \
- ${dali_csharp_binder_dir}/src/text-field-wrap.cpp \
- ${dali_csharp_binder_dir}/src/fade-transition-wrap.cpp \
- ${dali_csharp_binder_dir}/src/slide-transition-wrap.cpp \
- ${dali_csharp_binder_dir}/src/scale-transition-wrap.cpp \
- ${dali_csharp_binder_dir}/src/transition-base-wrap.cpp \
- ${dali_csharp_binder_dir}/src/transition-wrap.cpp \
- ${dali_csharp_binder_dir}/src/transition-set-wrap.cpp \
- ${dali_csharp_binder_dir}/src/window-wrap.cpp \
- ${dali_csharp_binder_dir}/src/tts-player-wrap.cpp \
- ${dali_csharp_binder_dir}/src/input-method-context-wrap.cpp \
- ${dali_csharp_binder_dir}/src/input-method-options-wrap.cpp \
- ${dali_csharp_binder_dir}/src/animation-wrap.cpp \
- ${dali_csharp_binder_dir}/src/adaptor-wrap.cpp \
- ${dali_csharp_binder_dir}/src/extents-wrap.cpp \
- ${dali_csharp_binder_dir}/src/text-label-wrap.cpp \
- ${dali_csharp_binder_dir}/src/text-utils-wrap.cpp \
- ${dali_csharp_binder_dir}/src/capabilities-wrap.cpp \
- ${dali_csharp_binder_dir}/src/capture-wrap.cpp \
- ${dali_csharp_binder_dir}/src/gl-window-wrap.cpp \
- ${dali_csharp_binder_dir}/src/gl-view-wrap.cpp \
- ${dali_csharp_binder_dir}/src/web-view-wrap.cpp \
- ${dali_csharp_binder_dir}/src/control-devel-wrap.cpp \
- ${dali_csharp_binder_dir}/src/signal-wrap.cpp \
- ${dali_csharp_binder_dir}/src/nui-view-accessible.cpp \
- ${dali_csharp_binder_dir}/src/atspi-wrap.cpp \
- ${dali_csharp_binder_dir}/src/rotation-wrap.cpp \
- ${dali_csharp_binder_dir}/src/input-options-wrap.cpp \
- ${dali_csharp_binder_dir}/src/model3d-view-wrap.cpp \
- ${dali_csharp_binder_dir}/src/native-image-queue-wrap.cpp \
- ${dali_csharp_binder_dir}/src/style-manager-wrap.cpp \
+SET( dali_csharp_binder_common_src_files
+ ${dali_csharp_binder_dir}/src/common.cpp
+ ${dali_csharp_binder_dir}/src/dali-wrap.cpp
+ ${dali_csharp_binder_dir}/src/callbackbase-wrap.cpp
+ ${dali_csharp_binder_dir}/src/canvas-view-wrap.cpp
+ ${dali_csharp_binder_dir}/src/constraint-wrap.cpp
+ ${dali_csharp_binder_dir}/src/keyboard-focus-manager-wrap.cpp
+ ${dali_csharp_binder_dir}/src/devel-property-wrap.cpp
+ ${dali_csharp_binder_dir}/src/encoded-image-buffer-wrap.cpp
+ ${dali_csharp_binder_dir}/src/version-check.cpp
+ ${dali_csharp_binder_dir}/src/processor-controller.cpp
+ ${dali_csharp_binder_dir}/src/flex-layout-wrap.cpp
+ ${dali_csharp_binder_dir}/src/gestures-wrap.cpp
+ ${dali_csharp_binder_dir}/src/view-wrapper-impl-wrap.cpp
+ ${dali_csharp_binder_dir}/src/visual-actions-wrap.cpp
+ ${dali_csharp_binder_dir}/src/event-thread-callback-wrap.cpp
+ ${dali_csharp_binder_dir}/src/application-wrap.cpp
+ ${dali_csharp_binder_dir}/src/text-editor-wrap.cpp
+ ${dali_csharp_binder_dir}/src/text-field-wrap.cpp
+ ${dali_csharp_binder_dir}/src/fade-transition-wrap.cpp
+ ${dali_csharp_binder_dir}/src/slide-transition-wrap.cpp
+ ${dali_csharp_binder_dir}/src/scale-transition-wrap.cpp
+ ${dali_csharp_binder_dir}/src/transition-base-wrap.cpp
+ ${dali_csharp_binder_dir}/src/transition-wrap.cpp
+ ${dali_csharp_binder_dir}/src/transition-set-wrap.cpp
+ ${dali_csharp_binder_dir}/src/window-wrap.cpp
+ ${dali_csharp_binder_dir}/src/tts-player-wrap.cpp
+ ${dali_csharp_binder_dir}/src/input-method-context-wrap.cpp
+ ${dali_csharp_binder_dir}/src/input-method-options-wrap.cpp
+ ${dali_csharp_binder_dir}/src/animation-wrap.cpp
+ ${dali_csharp_binder_dir}/src/adaptor-wrap.cpp
+ ${dali_csharp_binder_dir}/src/extents-wrap.cpp
+ ${dali_csharp_binder_dir}/src/text-label-wrap.cpp
+ ${dali_csharp_binder_dir}/src/text-utils-wrap.cpp
+ ${dali_csharp_binder_dir}/src/capabilities-wrap.cpp
+ ${dali_csharp_binder_dir}/src/capture-wrap.cpp
+ ${dali_csharp_binder_dir}/src/gl-window-wrap.cpp
+ ${dali_csharp_binder_dir}/src/gl-view-wrap.cpp
+ ${dali_csharp_binder_dir}/src/web-view-wrap.cpp
+ ${dali_csharp_binder_dir}/src/control-devel-wrap.cpp
+ ${dali_csharp_binder_dir}/src/signal-wrap.cpp
+ ${dali_csharp_binder_dir}/src/nui-view-accessible.cpp
+ ${dali_csharp_binder_dir}/src/atspi-wrap.cpp
+ ${dali_csharp_binder_dir}/src/rotation-wrap.cpp
+ ${dali_csharp_binder_dir}/src/input-options-wrap.cpp
+ ${dali_csharp_binder_dir}/src/model3d-view-wrap.cpp
+ ${dali_csharp_binder_dir}/src/native-image-queue-wrap.cpp
+ ${dali_csharp_binder_dir}/src/style-manager-wrap.cpp
${dali_csharp_binder_dir}/src/drag-and-drop-wrap.cpp
+)
# added for key grab binding only for tizen
# module: csharp-binder, backend: mobile,tv,ivi,watch
-dali_csharp_binder_tizen_src_files = \
- ${dali_csharp_binder_dir}/src/key-grab-wrap.cpp \
- ${dali_csharp_binder_dir}/src/keyboard-wrap.cpp \
- ${dali_csharp_binder_dir}/src/widget-view-wrap.cpp \
- ${dali_csharp_binder_dir}/src/widget-view-manager-wrap.cpp \
- ${dali_csharp_binder_dir}/src/font-client-wrap.cpp \
- ${dali_csharp_binder_dir}/src/transition-effects-wrap.cpp \
- ${dali_csharp_binder_dir}/src/component-application-wrap.cpp \
+SET( dali_csharp_binder_tizen_src_files
+ ${dali_csharp_binder_dir}/src/key-grab-wrap.cpp
+ ${dali_csharp_binder_dir}/src/keyboard-wrap.cpp
+ ${dali_csharp_binder_dir}/src/widget-view-wrap.cpp
+ ${dali_csharp_binder_dir}/src/widget-view-manager-wrap.cpp
+ ${dali_csharp_binder_dir}/src/font-client-wrap.cpp
+ ${dali_csharp_binder_dir}/src/transition-effects-wrap.cpp
+ ${dali_csharp_binder_dir}/src/component-application-wrap.cpp
${dali_csharp_binder_dir}/src/tizen-dependency-wrap.cpp
+)
# added for rive animation view for tizen
-# module: csharp-binder, backend: mobile,tv,ivi
-dali_csharp_binder_tizen_rive_src_files = \
+# module: csharp-binder, backend: mobile,tv,ivi,watch
+SET( dali_csharp_binder_tizen_rive_src_files
${dali_csharp_binder_dir}/src/rive-animation-view-wrap.cpp
+)
# module: csharp-binder, backend: tizen-wearable
-dali_csharp_binder_tizen_wearable_src_files = \
- ${dali_csharp_binder_dir}/src/watch-wrap.cpp \
+SET( dali_csharp_binder_tizen_wearable_src_files
+ ${dali_csharp_binder_dir}/src/watch-wrap.cpp
${dali_csharp_binder_dir}/src/watch-view-wrap.cpp
+)
-dali_csharp_binder_header_files = \
+SET( dali_csharp_binder_header_files
${dali_csharp_binder_dir}/src/common.h
+)
+
+
%endif
BuildRequires: pkgconfig
+BuildRequires: cmake
+BuildRequires: gawk
BuildRequires: pkgconfig(dali2-core)
BuildRequires: pkgconfig(dali2-adaptor)
BuildRequires: pkgconfig(dali2-toolkit)
%prep
%setup -q
-%define dali_data_rw_dir %TZ_SYS_RO_SHARE/dali/
-%define dali_data_ro_dir %TZ_SYS_RO_SHARE/dali/
+# %define dali_data_rw_dir %TZ_SYS_RO_SHARE/dali/
+# %define dali_data_ro_dir %TZ_SYS_RO_SHARE/dali/
##############################
# Build
%if %{with wayland}
CFLAGS+=" -DWAYLAND"
CXXFLAGS+=" -DWAYLAND"
-configure_flags="--enable-wayland"
+cmake_flags=" -DENABLE_WAYLAND=ON"
-# Need Ecore-Wayland2 when Tizen version is 5.x or greater
+# Use this conditional when Tizen version is 5.x or greater
%if 0%{?tizen_version_major} >= 5
+CXXFLAGS+=" -DOVER_TIZEN_VERSION_5"
+
+# Need Ecore-Wayland2 when Tizen version is 5.x or greater
CFLAGS+=" -DECORE_WL2 -DEFL_BETA_API_SUPPORT"
CXXFLAGS+=" -DECORE_WL2 -DEFL_BETA_API_SUPPORT"
-configure_flags+=" --enable-ecore-wayland2"
+cmake_flags+=" -DENABLE_ECORE_WAYLAND2=ON"
+%endif
+
+# Use this conditional when Tizen version is 7.x or greater
+%if 0%{?tizen_version_major} >= 7
+CXXFLAGS+=" -DOVER_TIZEN_VERSION_7"
+%endif
+
+%endif
+
+%if 0%{?enable_debug}
+cmake_flags+=" -DCMAKE_BUILD_TYPE=Debug"
%endif
+
+%if 0%{?rive_animation_view}
+cmake_flags+=" -DENABLE_RIVE_ANIMATION=ON"
%endif
# autogen
libtoolize --force
cd %{_builddir}/%{name}-%{version}/build/tizen
-autoreconf --install
-DALI_DATA_RW_DIR="%{dali_data_rw_dir}" ; export DALI_DATA_RW_DIR
-DALI_DATA_RO_DIR="%{dali_data_ro_dir}" ; export DALI_DATA_RO_DIR
+# DALI_DATA_RW_DIR="%{dali_data_rw_dir}" ; export DALI_DATA_RW_DIR
+# DALI_DATA_RO_DIR="%{dali_data_ro_dir}" ; export DALI_DATA_RO_DIR
%if 0%{?tizen_platform_config_supported}
TIZEN_PLATFORM_CONFIG_SUPPORTED="%{tizen_platform_config_supported}" ; export TIZEN_PLATFORM_CONFIG_SUPPORTED
%endif
-# added for key grab binding only for tizen
-# Do not merge this on tizen branch!
+cmake_flags+=" -DCMAKE_INSTALL_PREFIX=$PREFIX"
+cmake_flags+=" -DCMAKE_INSTALL_LIBDIR=%{_libdir}"
+cmake_flags+=" -DCMAKE_INSTALL_INCLUDEDIR=%{_includedir}"
+cmake_flags+=" -DENABLE_TIZEN_MAJOR_VERSION=%{tizen_version_major}"
-# Set up the build via configure.
+# Set up the build via Cmake
#######################################################################
-# If the profile is selected, the line below is repquired.
+# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
# if mobile || "undefined"
%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
-%configure --prefix=$PREFIX --enable-profile=MOBILE \
- --enable-tizen-major-version=%{tizen_version_major} \
-%if 0%{?enable_debug}
- --enable-debug \
-%endif
-%if 0%{?rive_animation_view}
- --enable-rive-animation-view \
-%endif
- $configure_flags --libdir=%{_libdir}
-# Build.
-make %{?jobs:-j%jobs}
+mkdir -p mobile
+pushd mobile
-pushd %{_builddir}/%{name}-%{version}/build/tizen
-%make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
-popd
+cmake -DENABLE_PROFILE=MOBILE $cmake_flags ..
-pushd %{buildroot}%{_libdir}
-for FILE in libdali2-csharp-binder*.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE.mobile"; done
-mv pkgconfig/dali2-csharp-binder*pc %{_builddir}/%{name}-%{version}/build/tizen/
+# Build.
+make %{?jobs:-j%jobs}
popd
-%if "%{?profile}" != "mobile"
-make clean
-%endif
-
%endif
#######################################################################
-# If the profile is selected, the line below is repquired.
+# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
# if tv ||"undefined"
%if "%{?profile}" != "wearable" && "%{?profile}" != "common" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
-%configure --prefix=$PREFIX --enable-profile=TV \
- --enable-tizen-major-version=%{tizen_version_major} \
-%if 0%{?enable_debug}
- --enable-debug \
-%endif
-%if 0%{?rive_animation_view}
- --enable-rive-animation-view \
-%endif
- $configure_flags --libdir=%{_libdir}
-# Build.
-make %{?jobs:-j%jobs}
+mkdir -p tv
+pushd tv
-pushd %{_builddir}/%{name}-%{version}/build/tizen
-%make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
-popd
+cmake -DENABLE_PROFILE=TV $cmake_flags ..
-pushd %{buildroot}%{_libdir}
-for FILE in libdali2-csharp-binder*.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE.tv"; done
-mv pkgconfig/dali2-csharp-binder*pc %{_builddir}/%{name}-%{version}/build/tizen/
+# Build.
+make %{?jobs:-j%jobs}
popd
-%if "%{?profile}" != "tv"
-make clean
-%endif
-
%endif
#######################################################################
-# If the profile is selected, the line below is repquired.
+# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
# if wearable || "undefined"
%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
-%configure --prefix=$PREFIX --enable-profile=WEARABLE \
- --enable-tizen-major-version=%{tizen_version_major} \
-%if 0%{?enable_debug}
- --enable-debug \
-%endif
-%if 0%{?rive_animation_view}
- --enable-rive-animation-view \
-%endif
- $configure_flags --libdir=%{_libdir}
-# Build.
-make %{?jobs:-j%jobs}
+mkdir -p wearable
+pushd wearable
-pushd %{_builddir}/%{name}-%{version}/build/tizen
-%make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
-popd
+cmake -DENABLE_PROFILE=WEARABLE $cmake_flags ..
-pushd %{buildroot}%{_libdir}
-for FILE in libdali2-csharp-binder*.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE.wearable"; done
-mv pkgconfig/dali2-csharp-binder*pc %{_builddir}/%{name}-%{version}/build/tizen/
+# Build.
+make %{?jobs:-j%jobs}
popd
-%if "%{?profile}" != "wearable"
-make clean
-%endif
-
%endif
#######################################################################
-# If the profile is selected, the line below is repquired.
+# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
# if ivi ||"undefined"
%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "mobile"
-%configure --prefix=$PREFIX --enable-profile=IVI \
- --enable-tizen-major-version=%{tizen_version_major} \
-%if 0%{?enable_debug}
- --enable-debug \
-%endif
-%if 0%{?rive_animation_view}
- --enable-rive-animation-view \
-%endif
- $configure_flags --libdir=%{_libdir}
-# Build.
-make %{?jobs:-j%jobs}
+mkdir -p ivi
+pushd ivi
-pushd %{_builddir}/%{name}-%{version}/build/tizen
-%make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
-popd
+cmake -DENABLE_PROFILE=IVI $cmake_flags ..
-pushd %{buildroot}%{_libdir}
-for FILE in libdali2-csharp-binder*.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE.ivi"; done
-mv pkgconfig/dali2-csharp-binder*pc %{_builddir}/%{name}-%{version}/build/tizen/
+# Build.
+make %{?jobs:-j%jobs}
popd
-%if "%{?profile}" != "ivi"
-make clean
-%endif
-
%endif
#######################################################################
# common
-# If the profile is selected, the line below is repquired.
+# This is for backward-compatibility. This does not deteriorate 4.0 Configurability
# if common ||"undefined"
%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
-%configure --prefix=$PREFIX --enable-profile=COMMON \
- --enable-tizen-major-version=%{tizen_version_major} \
-%if 0%{?enable_debug}
- --enable-debug \
-%endif
-%if 0%{?rive_animation_view}
- --enable-rive-animation-view \
-%endif
- $configure_flags --libdir=%{_libdir}
-# Build.
-make %{?jobs:-j%jobs}
+mkdir -p common
+pushd common
-pushd %{_builddir}/%{name}-%{version}/build/tizen
-%make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
-popd
+cmake -DENABLE_PROFILE=COMMON $cmake_flags ..
-pushd %{buildroot}%{_libdir}
-for FILE in libdali2-csharp-binder*.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE"; done
-mv pkgconfig/dali2-csharp-binder*pc %{_builddir}/%{name}-%{version}/build/tizen/
+# Build.
+make %{?jobs:-j%jobs}
popd
-%if "%{?profile}" != "common"
-make clean
-%endif
-
%endif
##############################
rm -rf %{buildroot}
pushd %{_builddir}/%{name}-%{version}/build/tizen
-%make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
-
-# If the profile is selected, the line below is repquired.
-# !unified && (wearable || tv || ivi || mobile)
-%if "%{?profile}" == "wearable" || "%{?profile}" == "tv" || "%{?profile}" == "ivi" || "%{?profile}" == "mobile"
-rm -rf %{buildroot}%{_libdir}/libdali2-csharp-binder*.so*
+# if mobile || "undefined"
+%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
+pushd mobile
+%make_install
+%if "%{?profile}" != "mobile"
+pushd %{buildroot}%{_libdir}
+cp libdali2-csharp-binder.so.*.*.* libdali2-csharp-binder.so.mobile # If we're only building this profile, then there's no need to copy the lib
+popd
+make clean # So that we can gather symbol/size information for only one profile if we're building all profiles
+%endif
+popd
%endif
-# If the profile is selected, the line below is repquired.
-# wearable || tv || ivi || mobile || unified
-%if "%{?profile}" != "common"
-for FILE in libdali2-*.so*; do mv "$FILE" "%{buildroot}%{_libdir}/$FILE"; done
-mv dali2-csharp-binder*.pc %{buildroot}%{_libdir}/pkgconfig/
+# if tv ||"undefined"
+%if "%{?profile}" != "wearable" && "%{?profile}" != "common" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
+pushd tv
+%make_install
+%if "%{?profile}" != "tv"
+pushd %{buildroot}%{_libdir}
+cp libdali2-csharp-binder.so.*.*.* libdali2-csharp-binder.so.tv # If we're only building this profile, then there's no need to copy the lib
+popd
+make clean # So that we can gather symbol/size information for only one profile if we're building all profiles
%endif
popd
+%endif
-################################################
-#rename
-###############################################
-pushd %{buildroot}%{_libdir}
-
-# If the profile is selected, the line below is repquired.
-# if common ||"undefined"
-#%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
-rm -rf libdali2-csharp-binder*.so
-ln -s libdali2-csharp-binder.so.0.0.0 libdali2-csharp-binder.so
-#%endif
-
-# If the profile is selected, the line below is repquired.
# if wearable || "undefined"
%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
-rm -rf libdali2-csharp-binder*.so.wearable
-ln -s libdali2-csharp-binder.so.0.0.*.wearable libdali2-csharp-binder.so.wearable
+pushd wearable
+%make_install
+%if "%{?profile}" != "wearable"
+pushd %{buildroot}%{_libdir}
+cp libdali2-csharp-binder.so.*.*.* libdali2-csharp-binder.so.wearable # If we're only building this profile, then there's no need to copy the lib
+popd
+make clean # So that we can gather symbol/size information for only one profile if we're building all profiles
%endif
-
-# If the profile is selected, the line below is repquired.
-# if tv ||"undefined"
-%if "%{?profile}" != "wearable" && "%{?profile}" != "common" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
-rm -rf libdali2-csharp-binder*.so.tv
-ln -s libdali2-csharp-binder.so.0.0.*.tv libdali2-csharp-binder.so.tv
+popd
%endif
-# If the profile is selected, the line below is repquired.
# if ivi ||"undefined"
%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "mobile"
-rm -rf libdali2-csharp-binder*.so.ivi
-ln -s libdali2-csharp-binder.so.0.0.*.ivi libdali2-csharp-binder.so.ivi
+pushd ivi
+%make_install
+%if "%{?profile}" != "ivi"
+pushd %{buildroot}%{_libdir}
+cp libdali2-csharp-binder.so.*.*.* libdali2-csharp-binder.so.ivi # If we're only building this profile, then there's no need to copy the lib
+popd
+make clean # So that we can gather symbol/size information for only one profile if we're building all profiles
%endif
-
-# If the profile is selected, the line below is repquired.
-# if mobile || "undefined"
-%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
-rm -rf libdali2-csharp-binder*.so.mobile
-ln -s libdali2-csharp-binder.so.0.0.*.mobile libdali2-csharp-binder.so.mobile
+popd
%endif
+
+# if common ||"undefined"
+%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
+pushd common
+%make_install
+# No clean so we can gather symbol/size information for the common profile
popd
+%endif
##############################
# Upgrade order:
# Post Install new package
##############################
%post
+pushd %{_libdir}
+for i in mobile tv wearable ivi; do [[ -f libdali2-csharp-binder.so.$i ]] && ln -sf libdali2-csharp-binder.so.$i libdali2-csharp-binder.so.2.0.0; done
+popd
/sbin/ldconfig
exit 0
exit 0
##############################
-
-# If the profile is selected, the line below is repquired.
+# Mobile Profile Commands
+# No need to create a symbolic link on install required if only building this profile
# if mobile || "undefined"
%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
%post profile_mobile
+%if "%{?profile}" != "mobile"
pushd %{_libdir}
-for FILE in libdali2-csharp-binder.so*.mobile; do ln -sf "$FILE" "${FILE%.mobile}"; done
+ln -sf libdali2-csharp-binder.so.mobile libdali2-csharp-binder.so.2.0.0
popd
+%endif
/sbin/ldconfig
exit 0
%endif
##############################
-
-# If the profile is selected, the line below is repquired.
+# TV Profile Commands
+# No need to create a symbolic link on install required if only building this profile
# if tv ||"undefined"
%if "%{?profile}" != "wearable" && "%{?profile}" != "common" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
%post profile_tv
+%if "%{?profile}" != "tv"
pushd %{_libdir}
-for FILE in libdali2-csharp-binder.so*.tv; do ln -sf "$FILE" "${FILE%.tv}"; done
+ln -sf libdali2-csharp-binder.so.tv libdali2-csharp-binder.so.2.0.0
popd
+%endif
/sbin/ldconfig
exit 0
%endif
##############################
-
-# If the profile is selected, the line below is repquired.
+# Wearable Profile Commands
+# No need to create a symbolic link on install required if only building this profile
# if wearable || "undefined"
%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
%post profile_wearable
+%if "%{?profile}" != "wearable"
pushd %{_libdir}
-for FILE in libdali2-csharp-binder.so*.wearable; do ln -sf "$FILE" "${FILE%.wearable}"; done
+ln -sf libdali2-csharp-binder.so.wearable libdali2-csharp-binder.so.2.0.0
popd
+%endif
/sbin/ldconfig
exit 0
%endif
##############################
-
-# If the profile is selected, the line below is repquired.
+# IVI Profile Commands
+# No need to create a symbolic link on install required if only building this profile
# if ivi ||"undefined"
%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "mobile"
%post profile_ivi
+%if "%{?profile}" != "ivi"
pushd %{_libdir}
-for FILE in libdali2-csharp-binder.so*.ivi; do ln -sf "$FILE" "${FILE%.ivi}"; done
+ln -sf libdali2-csharp-binder.so.ivi libdali2-csharp-binder.so.2.0.0
popd
+%endif
/sbin/ldconfig
exit 0
exit 0
%endif
+##############################
+# Common Profile Commands
+%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
+%post profile_common
+/sbin/ldconfig
+exit 0
+
+%postun profile_common
+/sbin/ldconfig
+exit 0
+%endif
##############################
# Files in Binary Packages
##############################
%files
%manifest dali-csharp-binder.manifest
-%defattr(-,root,root,-)
%license LICENSE
-
-# If the profile is selected, the line below is repquired.
-# if common ||"undefined"
-#%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
%defattr(-,root,root,-)
-%{_libdir}/libdali2-csharp-binder.so*
-%exclude %{_libdir}/libdali2-csharp-binder*.so*.mobile
-%exclude %{_libdir}/libdali2-csharp-binder*.so*.wearable
-%exclude %{_libdir}/libdali2-csharp-binder*.so*.tv
-%exclude %{_libdir}/libdali2-csharp-binder*.so*.ivi
-#%endif
+%{_libdir}/libdali2-csharp-binder.so
+%{_libdir}/libdali2-csharp-binder.so.2
+%{_libdir}/libdali2-csharp-binder.so.2.0.0
+
+#################################################
# If the profile is selected, the line below is repquired.
# if common ||"undefined"
%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
%files profile_common
+%manifest dali-csharp-binder.manifest
# default .so files are housed in the main pkg.
%endif
%files profile_mobile
%manifest dali-csharp-binder.manifest
%defattr(-,root,root,-)
+%if "%{?profile}" != "mobile"
%{_libdir}/libdali2-csharp-binder.so.*mobile
%endif
+%endif
# If the profile is selected, the line below is repquired.
# if tv ||"undefined"
%files profile_tv
%manifest dali-csharp-binder.manifest
%defattr(-,root,root,-)
+%if "%{?profile}" != "tv"
%{_libdir}/libdali2-csharp-binder.so.*tv
%endif
+%endif
# If the profile is selected, the line below is repquired.
# if wearable || "undefined"
%files profile_wearable
%manifest dali-csharp-binder.manifest
%defattr(-,root,root,-)
+%if "%{?profile}" != "wearable"
%{_libdir}/libdali2-csharp-binder.so.*wearable
%endif
+%endif
# If the profile is selected, the line below is repquired.
# if ivi ||"undefined"
%files profile_ivi
%manifest dali-csharp-binder.manifest
%defattr(-,root,root,-)
+%if "%{?profile}" != "ivi"
%{_libdir}/libdali2-csharp-binder.so.*ivi
%endif
+%endif
%files devel
%defattr(-,root,root,-)