From 530f21546e627f932d9d8052ac6dc931f0f1b458 Mon Sep 17 00:00:00 2001 From: Jihoon Kim Date: Fri, 24 Mar 2017 21:28:35 +0900 Subject: [PATCH] Fix build error Change-Id: I333b2863461c9eb259cf3fe2e5440e41643cac24 Signed-off-by: Jihoon Kim --- CMakeLists.txt | 29 ++++++++++++++++------------- packaging/smartreply-service.spec | 22 +++++++++++++--------- 2 files changed, 29 insertions(+), 22 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f3e0f56..0970152 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,6 +4,7 @@ PROJECT(smartreply-service) # Targets SET(target "smartreplyd") SET(CMAKE_CXX_FLAGS "-std=c++0x") +SET(LIBDIR ${LIB_INSTALL_DIR}) # Source Lists FILE(GLOB_RECURSE SRCS src/*.cpp src/*.c) @@ -22,7 +23,11 @@ SET(DEPS # capi-security-privilege-manager smartreply # protobuf - enlightenment + eina + glib-2.0 + gobject-2.0 + gio-2.0 + dlog ) # Dependencies regarding profiles @@ -37,12 +42,12 @@ ENDIF("${PROFILE}" STREQUAL "wearable") # Target vs Emulator IF("${ARCH}" STREQUAL "arm") ADD_DEFINITIONS("-D_TARGET") - INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/lib/armv7l/libsmart-reply-engine-en_US.so DESTINATION /usr/lib) - INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/lib/armv7l/libsmart-reply-engine-ko_KR.so DESTINATION /usr/lib) + INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/lib/armv7l/libsmart-reply-engine-en_US.so DESTINATION ${LIBDIR}) + INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/lib/armv7l/libsmart-reply-engine-ko_KR.so DESTINATION ${LIBDIR}) ELSE("${ARCH}" STREQUAL "arm") ADD_DEFINITIONS("-D_EMULATOR") - INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/lib/i586/libsmart-reply-engine-en_US.so DESTINATION /usr/lib) - INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/lib/i586/libsmart-reply-engine-ko_KR.so DESTINATION /usr/lib) + INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/lib/i586/libsmart-reply-engine-en_US.so DESTINATION ${LIBDIR}) + INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/lib/i586/libsmart-reply-engine-ko_KR.so DESTINATION ${LIBDIR}) ENDIF("${ARCH}" STREQUAL "arm") #install resources @@ -73,13 +78,7 @@ INSTALL ( SET(CMAKE_INSTALL_PREFIX /usr) SET(PREFIX ${CMAKE_INSTALL_PREFIX}) INCLUDE(FindPkgConfig) -INCLUDE_DIRECTORIES( - /usr/include - /usr/include/glib-2.0 - /usr/lib/glib-2.0/include - /usr/include/dlog - /usr/include/json-glib-1.0 -) + ADD_DEFINITIONS(-O2 -Wall -fPIC -fvisibility=hidden -Wl,--as-needed -Wl,--rpath=/usr/lib) # Building Daemon @@ -88,13 +87,17 @@ pkg_check_modules(daemon_pkg REQUIRED ${DEPS}) SET(DAEMON_EXTRA_CFLAGS -fPIE) FOREACH(flag ${daemon_pkg_CFLAGS}) SET(DAEMON_EXTRA_CFLAGS "${DAEMON_EXTRA_CFLAGS} ${flag}") + SET(DAEMON_EXTRA_CXXFLAGS "${DAEMON_EXTRA_CXXFLAGS} ${flag}") ENDFOREACH(flag) +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${DAEMON_EXTRA_CFLAGS} -fPIE -Wall -Werror") +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${DAEMON_EXTRA_CXXFLAGS} -fPIE -Wall") + ADD_EXECUTABLE(${target} ${SRCS}) TARGET_LINK_LIBRARIES(${target} ${daemon_pkg_LDFLAGS} -pie dl) SET_TARGET_PROPERTIES(${target} PROPERTIES COMPILE_FLAGS ${DAEMON_EXTRA_CFLAGS}) -SET_TARGET_PROPERTIES(${target} PROPERTIES COMPILE_DEFINITIONS "LOG_TAG=\"SMARTREPLY-SERVICE\"") +#SET_TARGET_PROPERTIES(${target} PROPERTIES COMPILE_DEFINITIONS "LOG_TAG=\"SMARTREPLY-SERVICE\"") # Installing Daemon INSTALL(TARGETS ${target} DESTINATION /usr/bin) diff --git a/packaging/smartreply-service.spec b/packaging/smartreply-service.spec index 582f4fd..8b9224e 100755 --- a/packaging/smartreply-service.spec +++ b/packaging/smartreply-service.spec @@ -32,7 +32,9 @@ BuildRequires: pkgconfig(notification) BuildRequires: pkgconfig(protobuf) BuildRequires: pkgconfig(smartreply) #BuildRequires: contacts-service2-devel -BuildRequires: pkgconfig(enlightenment) +BuildRequires: pkgconfig(eina) +BuildRequires: pkgconfig(dlog) +BuildRequires: pkgconfig(glib-2.0) Requires(preun): /usr/bin/systemctl #Requires(post): sys-assert Requires(post): /usr/bin/systemctl @@ -74,7 +76,9 @@ export CFLAGS+=" -DTIZEN_ENGINEER_MODE" export CXXFLAGS+=" -DTIZEN_ENGINEER_MODE" export FFLAGS+=" -DTIZEN_ENGINEER_MODE" -cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} -DARCH=%{ARCH} -DMAJORVER=${MAJORVER} -DFULLVER=%{version} -DPROFILE=%{?tizen_profile_name} +rm -rf CMakeFiles +rm -rf CMakeCache.txt +%cmake . -DARCH=%{ARCH} -DMAJORVER=${MAJORVER} -DFULLVER=%{version} -DPROFILE=%{?tizen_profile_name} make %{?jobs:-j%jobs} %install @@ -107,11 +111,11 @@ chsmack -a "smartreply-service" /opt/usr/data/smartreply-service/personal_en_US. chsmack -a "smartreply-service" /opt/usr/data/smartreply-service/personal_es_ES.db* chsmack -a "smartreply-service" /opt/usr/data/smartreply-service/personal_fr_FR.db* /sbin/ldconfig -ln -f -s /usr/lib/libsmart-reply-engine-en_US.so /usr/lib/libsmart-reply-engine-es_ES.so -ln -f -s /usr/lib/libsmart-reply-engine-en_US.so /usr/lib/libsmart-reply-engine-fr_FR.so -ln -f -s /usr/lib/libsmart-reply-engine-en_US.so /usr/lib/libsmart-reply-engine-it_IT.so -ln -f -s /usr/lib/libsmart-reply-engine-en_US.so /usr/lib/libsmart-reply-engine-ru_RU.so -ln -f -s /usr/lib/libsmart-reply-engine-en_US.so /usr/lib/libsmart-reply-engine-de_DE.so +ln -f -s %{_libdir}/libsmart-reply-engine-en_US.so %{_libdir}/libsmart-reply-engine-es_ES.so +ln -f -s %{_libdir}/libsmart-reply-engine-en_US.so %{_libdir}/libsmart-reply-engine-fr_FR.so +ln -f -s %{_libdir}/libsmart-reply-engine-en_US.so %{_libdir}/libsmart-reply-engine-it_IT.so +ln -f -s %{_libdir}/libsmart-reply-engine-en_US.so %{_libdir}/libsmart-reply-engine-ru_RU.so +ln -f -s %{_libdir}/libsmart-reply-engine-en_US.so %{_libdir}/libsmart-reply-engine-de_DE.so systemctl daemon-reload #if [ $1 == 1 ]; then # systemctl restart smartreply-service @@ -129,8 +133,8 @@ systemctl daemon-reload %files %manifest packaging/%{name}.manifest %defattr(-,system,system,-) -/usr/lib/libsmart-reply-engine-* -/usr/bin/* +%{_libdir}/libsmart-reply-engine-* +%{_bindir}/* %{_datadir}/dbus-1/system-services/org.tizen.smartreply.service %{_datadir}/license/%{name} %{_datadir}/packages/*.xml -- 2.34.1