ADD_DEFINITIONS("-D_FILE_OFFSET_BITS=64")
+ADD_DEFINITIONS(-DTZ_SYS_RO_APP_PATH="${TZ_SYS_RO_APP}")
+ADD_DEFINITIONS(-DTZ_SYS_DATA_PATH="${TZ_SYS_DATA}")
+ADD_DEFINITIONS(-DTZ_SYS_DB_PATH="${TZ_SYS_DB}")
+
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
IF(COMPILER_SUPPORTS_CXX11)
# Install etc Files
##########################################################
-#INSTALL(FILES ${MMS-FILES} DESTINATION /opt/etc/msg-service)
-
CONFIGURE_FILE(msg-service.pc.in msg-service.pc @ONLY)
INSTALL(FILES ${CMAKE_BINARY_DIR}/msg-service.pc DESTINATION ${LIBDIR}/pkgconfig)
-# LICENSE file
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/LICENSE.APLv2 DESTINATION /usr/share/license/msg-service)
-
#Install sysinfo file to provide which features are supported.
IF(_FEATURE_SMS_CDMA)
INSTALL(FILES ${CMAKE_SOURCE_DIR}/config/msg-service-db.CDMA.sql DESTINATION /usr/share/msg-service RENAME msg-service-db.sql)
==================================================================================================*/
#define MAX_SOUND_FILE_LEN 1024
-#define DEFAULT_ALERT_FILE "/opt/usr/share/settings/Alerts/Whistle.ogg"
+#define DEFAULT_ALERT_FILE TZ_SYS_RO_APP_PATH "/" MSG_SETTING_APP_ID "shared/res/settings/Alerts/General notification_sdk.wav"
#define HAPTIC_TEST_ITERATION 1
#define MSG_VIBRATION_INTERVAL 3000
/*==================================================================================================
DEFINES
==================================================================================================*/
-#define MSG_DATA_ROOT_PATH "/opt/usr/data/msg-service/"
+#define MSG_DATA_ROOT_PATH TZ_SYS_DATA_PATH"/msg-service/"
#define MSG_DATA_PATH MSG_DATA_ROOT_PATH"msgdata/"
#define MSG_SMIL_FILE_PATH MSG_DATA_ROOT_PATH"smildata/"
#define MSG_IPC_DATA_PATH MSG_DATA_ROOT_PATH"ipcdata/"
#define MSG_QUICKPANEL_APP_ID "org.tizen.quickpanel"
#define MSG_INDICATOR_APP_ID "org.tizen.indicator"
#define MSG_CALL_APP_ID "org.tizen.call-ui"
+#define MSG_SETTING_APP_ID "org.tizen.setting"
#define MSG_TEL_URI_VOICEMAIL "tel:VOICEMAIL"
#define MSG_TELEPHONY_SMS_FEATURE "http://tizen.org/feature/network.telephony.sms"
==================================================================================================*/
#define MSG_APP_PACKAGE_NAME "message"
-#define MSG_APP_LOCALEDIR "/usr/apps/" MSG_DEFAULT_APP_ID "/res/locale"
+#define MSG_APP_LOCALEDIR TZ_SYS_RO_APP_PATH "/" MSG_DEFAULT_APP_ID "/res/locale"
-#define MSG_NOTIFICATION_ICON_DIR MSG_QUICKPANEL_APP_ID "/shared/res/noti_icons"
+#define MSG_NOTIFICATION_ICON_DIR "/" MSG_QUICKPANEL_APP_ID "/shared/res/noti_icons"
#define MSG_STATUS_ICON_DIR MSG_INDICATOR_APP_ID "/res/icons"
/* notification icon */
-#define MSG_NORMAL_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message.png"
-#define MSG_SIM_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_sim-card.png"
-#define MSG_OTA_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_OTA.png"
-#define MSG_VOICE_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_voice_mail.png"
-#define MSG_CB_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_cb-msg.png"
-#define MSG_READ_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_read_report.png"
-#define MSG_DELIVERY_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_delivery_report.png"
-#define MSG_REPLY_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_reply.png"
-#define MSG_SMS_SENDING_FAILED_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_failed.png"
-#define MSG_MMS_SENDING_FAILED_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_mms_failed.png"
-#define MSG_MMS_RETRIVE_FAILED_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_mms_problem.png"
-#define MSG_EMERGENCY_ICON_PATH "/usr/apps/" MSG_DEFAULT_APP_ID "/res/icons/default/small/noti_emergency_mode.png"
-#define MSG_NO_CONTACT_PROFILE_ICON_PATH "/usr/apps/" MSG_NOTIFICATION_ICON_DIR "/Contact/noti_contact_default.png"
+#define MSG_NORMAL_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message.png"
+#define MSG_SIM_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_sim-card.png"
+#define MSG_OTA_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_OTA.png"
+#define MSG_VOICE_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_voice_mail.png"
+#define MSG_CB_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_cb-msg.png"
+#define MSG_READ_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_read_report.png"
+#define MSG_DELIVERY_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_delivery_report.png"
+#define MSG_REPLY_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_reply.png"
+#define MSG_SMS_SENDING_FAILED_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_failed.png"
+#define MSG_MMS_SENDING_FAILED_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_mms_failed.png"
+#define MSG_MMS_RETRIVE_FAILED_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_mms_problem.png"
+#define MSG_EMERGENCY_ICON_PATH TZ_SYS_RO_APP_PATH MSG_DEFAULT_APP_ID "/res/icons/default/small/noti_emergency_mode.png"
+#define MSG_NO_CONTACT_PROFILE_ICON_PATH TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Contact/noti_contact_default.png"
#define MSG_ACTIVE_PUSH_ICON_PATH "reserved:push_message"
-#define MSG_MESSAGE_APP_SUB_ICON "/usr/apps/" MSG_DEFAULT_APP_ID "/res/icons/default/small/org.tizen.message.png"
+#define MSG_MESSAGE_APP_SUB_ICON TZ_SYS_RO_APP_PATH MSG_DEFAULT_APP_ID "/res/icons/default/small/org.tizen.message.png"
/* status bar icon */
-#define MSG_NORMAL_STATUS_ICON "/usr/apps/" MSG_STATUS_ICON_DIR "/Notify/B03_notify_message.png"
-#define MSG_FAILED_STATUS_ICON "/usr/apps/" MSG_STATUS_ICON_DIR "/Notify/B03_notify_message_failed.png"
-#define MSG_DELIVER_REPORT_STATUS_ICON "/usr/apps/" MSG_STATUS_ICON_DIR "/Event/B03_event_delivery_report_message.png"
-#define MSG_READ_REPORT_STATUS_ICON "/usr/apps/" MSG_STATUS_ICON_DIR "/Event/B03_event_read_report_message.png"
-#define MSG_VOICE_MSG_STATUS_ICON "/usr/apps/" MSG_STATUS_ICON_DIR "/Event/B03_event_voicemail.png"
-#define MSG_SIM_FULL_STATUS_ICON "/usr/apps/" MSG_STATUS_ICON_DIR "/SIM card full/B03_sim_card_full.png"
+#define MSG_NORMAL_STATUS_ICON TZ_SYS_RO_APP_PATH MSG_STATUS_ICON_DIR "/Notify/B03_notify_message.png"
+#define MSG_FAILED_STATUS_ICON TZ_SYS_RO_APP_PATH MSG_STATUS_ICON_DIR "/Notify/B03_notify_message_failed.png"
+#define MSG_DELIVER_REPORT_STATUS_ICON TZ_SYS_RO_APP_PATH MSG_STATUS_ICON_DIR "/Event/B03_event_delivery_report_message.png"
+#define MSG_READ_REPORT_STATUS_ICON TZ_SYS_RO_APP_PATH MSG_STATUS_ICON_DIR "/Event/B03_event_read_report_message.png"
+#define MSG_VOICE_MSG_STATUS_ICON TZ_SYS_RO_APP_PATH MSG_STATUS_ICON_DIR "/Event/B03_event_voicemail.png"
+#define MSG_SIM_FULL_STATUS_ICON TZ_SYS_RO_APP_PATH MSG_STATUS_ICON_DIR "/SIM card full/B03_sim_card_full.png"
#ifndef TIZEN_I586_ENABLED
/* system string */
/*==================================================================================================
DEFINES
==================================================================================================*/
-#define MSGFW_DB_NAME "/usr/dbspace/.msg_service.db"
+#define MSGFW_DB_NAME TZ_SYS_DB_PATH"/.msg_service.db"
#define MSGFW_MESSAGE_TABLE_NAME "MSG_MESSAGE_TABLE"
#define MSGFW_FOLDER_TABLE_NAME "MSG_FOLDER_TABLE"
msg_set_mms_struct((msg_struct_t)msg_s, mms_data);
msg_release_struct(&mms_data);
-#if 0
- MMS_MESSAGE_DATA_S* mms_data;
- MMS_PAGE_S* page[2];
- MMS_MEDIA_S* media[5];
-
- mms_data = msg_mms_create_message();
-
- msg_mms_set_rootlayout(mms_data, 100, 100, 0xffffff);
- msg_mms_add_region(mms_data, "Image", 0, 50, 100, 50, 0xffffff);
- msg_mms_add_region(mms_data, "Text", 0, 0, 100, 50, 0xffffff);
-
- /* ------------> 1st Slide Composing */
- page[0] = msg_mms_add_page(mms_data, 5440);
-
- media[0] = msg_mms_add_media(page[0], MMS_SMIL_MEDIA_IMG, "Image", (char*)"/opt/etc/msg-service/P091120_104633.jpg");
- media[1] = msg_mms_add_media(page[0], MMS_SMIL_MEDIA_AUDIO, NULL, (char*)"/opt/etc/msg-service/audio.amr");
- media[2] = msg_mms_add_media(page[0], MMS_SMIL_MEDIA_TEXT, "Text", (char*)"/opt/etc/msg-service/Temp0_2.txt");
- media[2]->sMedia.sText.nColor = 0x000000;
- media[2]->sMedia.sText.nSize = MMS_SMIL_FONT_SIZE_NORMAL;
- media[2]->sMedia.sText.bBold = true;
-
- /* ------------> 2nd Slide Composing */
- page[1] = msg_mms_add_page(mms_data, 4544);
-
- media[3] = msg_mms_add_media(page[1], MMS_SMIL_MEDIA_TEXT, "Text", (char*)"/opt/etc/msg-service/Temp1_0.txt");
- media[3]->sMedia.sText.nColor = 0x000000;
- media[3]->sMedia.sText.nSize = MMS_SMIL_FONT_SIZE_NORMAL;
- media[3]->sMedia.sText.bItalic = true;
- media[4] = msg_mms_add_media(page[1], MMS_SMIL_MEDIA_VIDEO, "Text", (char*)"/opt/etc/msg-service/V091120_104905.3gp");
- strncpy(media[4]->szAlt, "Video Load Fail", MAX_SMIL_ALT_LEN-1);
-
- /* FIXME msg_mms_set_message_body((msg_message_t)&msgInfo, mms_data); */
-
- msg_mms_destroy_message(mms_data);
-#endif
}
/*err = msg_add_message(handle, (msg_message_t)&msgInfo, &sendingOpt);*/
%build
cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DLIB_INSTALL_DIR=%{_libdir} \
+ -DTZ_SYS_RO_APP=%TZ_SYS_RO_APP \
+ -DTZ_SYS_DATA=%TZ_SYS_DATA \
+ -DTZ_SYS_DB=%TZ_SYS_DB \
%ifarch i586
-D_TIZEN_I586_ENABLED:BOOL=ON \
%else
install -m 0644 %SOURCE2 %{buildroot}%{_unitdir}/msg-server.socket
%install_service sockets.target.wants msg-server.socket
-mkdir -p %{buildroot}/usr/dbspace
-sqlite3 %{buildroot}/usr/dbspace/.msg_service.db "PRAGMA journal_mode = PERSIST;"
-sqlite3 %{buildroot}/usr/dbspace/.msg_service.db < %{buildroot}/usr/share/msg-service/msg-service-db.sql
+mkdir -p %{buildroot}%{TZ_SYS_DB}
+sqlite3 %{buildroot}%{TZ_SYS_DB}/.msg_service.db "PRAGMA journal_mode = PERSIST;"
+sqlite3 %{buildroot}%{TZ_SYS_DB}/.msg_service.db < %{buildroot}/usr/share/msg-service/msg-service-db.sql
rm %{buildroot}/usr/share/msg-service/msg-service-db.sql
%post tools
/sbin/ldconfig
-chmod 640 /usr/dbspace/.msg_service.db
-chmod 660 /usr/dbspace/.msg_service.db-journal
+chmod 640 %{TZ_SYS_DB}/.msg_service.db
+chmod 660 %{TZ_SYS_DB}/.msg_service.db-journal
-mkdir -p -m 775 /opt/usr/data/msg-service
-mkdir -p -m 770 /opt/usr/data/msg-service/msgdata
-mkdir -p -m 770 /opt/usr/data/msg-service/smildata
-mkdir -p -m 770 /opt/usr/data/msg-service/ipcdata
-mkdir -p -m 770 /opt/usr/data/msg-service/msgdata/thumbnails
+mkdir -p -m 775 %{TZ_SYS_DATA}/msg-service
+mkdir -p -m 770 %{TZ_SYS_DATA}/msg-service/msgdata
+mkdir -p -m 770 %{TZ_SYS_DATA}/msg-service/smildata
+mkdir -p -m 770 %{TZ_SYS_DATA}/msg-service/ipcdata
+mkdir -p -m 770 %{TZ_SYS_DATA}/msg-service/msgdata/thumbnails
-chgrp priv_message_read /usr/dbspace/.msg_service.db
-chgrp priv_message_read /opt/usr/data/msg-service/msgdata
-chgrp priv_message_read /opt/usr/data/msg-service/smildata
-chgrp priv_message_write /opt/usr/data/msg-service/ipcdata
-chgrp priv_message_read /opt/usr/data/msg-service/msgdata/thumbnails
+chgrp priv_message_read %{TZ_SYS_DB}/.msg_service.db
+chgrp priv_message_read %{TZ_SYS_DATA}/msg-service/msgdata
+chgrp priv_message_read %{TZ_SYS_DATA}/msg-service/smildata
+chgrp priv_message_write %{TZ_SYS_DATA}/msg-service/ipcdata
+chgrp priv_message_read %{TZ_SYS_DATA}/msg-service/msgdata/thumbnails
-chsmack -a "*" /usr/dbspace/.msg_service.db
-chsmack -a "System::Shared" /opt/usr/data/msg-service/msgdata -t
-chsmack -a "System::Shared" /opt/usr/data/msg-service/smildata -t
-chsmack -a "System::Run" /opt/usr/data/msg-service/ipcdata -t
-chsmack -a "System::Shared" /opt/usr/data/msg-service/msgdata/thumbnails -t
+chsmack -a "*" %{TZ_SYS_DB}/.msg_service.db
+chsmack -a "System::Shared" %{TZ_SYS_DATA}/msg-service/msgdata -t
+chsmack -a "System::Shared" %{TZ_SYS_DATA}/msg-service/smildata -t
+chsmack -a "System::Run" %{TZ_SYS_DATA}/msg-service/ipcdata -t
+chsmack -a "System::Shared" %{TZ_SYS_DATA}/msg-service/msgdata/thumbnails -t
%post -n sms-plugin -p /sbin/ldconfig
%post -n mms-plugin -p /sbin/ldconfig
%files
%manifest msg-service.manifest
+%license LICENSE.APLv2
%{_libdir}/libmsg_plugin_manager.so
%{_libdir}/libmsg_mapi.so.*
%{_libdir}/libmsg_framework_handler.so
%{_libdir}/libmsg_externals.so
%{_libdir}/libmsg_transaction_proxy.so
%{_libdir}/libmsg_vobject.so
-/usr/share/license/msg-service/LICENSE.APLv2
%files devel
+%license LICENSE.APLv2
%{_libdir}/libmsg_mapi.so
%{_libdir}/pkgconfig/msg-service.pc
%{_includedir}/msg-service/*
%files tools
%manifest msg-service-tools.manifest
+%license LICENSE.APLv2
%caps(cap_chown,cap_dac_override,cap_lease=eip) %{_bindir}/msg-server
-%config(noreplace) /usr/dbspace/.msg_service.db*
+%config(noreplace) %{TZ_SYS_DB}/.msg_service.db*
%{_unitdir}/msg-server.service
%{_unitdir}/multi-user.target.wants/msg-server.service
%{_unitdir}/msg-server.socket
%{_unitdir}/sockets.target.wants/msg-server.socket
-/usr/share/license/msg-service/LICENSE.APLv2
/etc/config/*
%files -n sms-plugin
%manifest sms-plugin.manifest
+%license LICENSE.APLv2
%{_libdir}/libmsg_sms_plugin.so
-/usr/share/license/msg-service/LICENSE.APLv2
%files -n mms-plugin
%manifest mms-plugin.manifest
+%license LICENSE.APLv2
%{_libdir}/libmsg_mms_plugin.so
-/usr/share/license/msg-service/LICENSE.APLv2
%changelog
snprintf(szFileName, MSG_FILENAME_LEN_MAX+1, "thumb_msg_%s", szFileNameWoExt);
if (pszExt && !strcasecmp(pszExt, ".png")) {
- snprintf(thumbPath, MSG_FILEPATH_LEN_MAX, MSG_THUMBNAIL_PATH"%s.png", szFileName);
+ snprintf(thumbPath, MSG_FILEPATH_LEN_MAX, "%s%s.png", MSG_THUMBNAIL_PATH, szFileName);
} else {
- snprintf(thumbPath, MSG_FILEPATH_LEN_MAX, MSG_THUMBNAIL_PATH"%s.jpg", szFileName);
+ snprintf(thumbPath, MSG_FILEPATH_LEN_MAX, "%s%s.jpg", MSG_THUMBNAIL_PATH, szFileName);
}
if (MakeThumbnail(pMultipart->szFilePath, thumbPath) == true) {
snprintf(pMultipart->szContentID, sizeof(pMultipart->szContentID), "%s", pMmsMsg->msgBody.presentationType.szContentID);
snprintf(pMultipart->szContentLocation, sizeof(pMultipart->szContentLocation), "%s", pMmsMsg->msgBody.presentationType.szContentLocation);
snprintf(pMultipart->szFileName, sizeof(pMultipart->szFileName), "%s", pMmsMsg->msgBody.presentationType.param.szName);
- snprintf(pMultipart->szFilePath, sizeof(pMultipart->szFilePath), MSG_DATA_PATH"%s", pMmsMsg->msgBody.presentationType.param.szFileName);
+ snprintf(pMultipart->szFilePath, sizeof(pMultipart->szFilePath), "%s%s", MSG_DATA_PATH, pMmsMsg->msgBody.presentationType.param.szFileName);
pMmsData->smil = pMultipart;
}
MmsPluginComposer::instance()->composeSendReq(pMsgInfo, pSendOptInfo, pMmsData);
/* encode */
- snprintf(working_dir, sizeof(working_dir), MSG_DATA_PATH"%d.mms.dir", pMsgInfo->msgId);
+ snprintf(working_dir, sizeof(working_dir), "%s%d.mms.dir", MSG_DATA_PATH, pMsgInfo->msgId);
MsgMmsSetMultipartListData(pMmsData); /* app file -> data */
MmsPluginComposer::instance()->composeRetrieveConf(pMsgInfo, pSendOptInfo, pMmsData);
/* encode */
- snprintf(working_dir, sizeof(working_dir), MSG_DATA_PATH"%d.mms.dir", pMsgInfo->msgId);
+ snprintf(working_dir, sizeof(working_dir), "%s%d.mms.dir", MSG_DATA_PATH, pMsgInfo->msgId);
MsgMmsSetMultipartListData(pMmsData); /* app file -> data */
return MSG_ERR_DB_EXEC;
}
- snprintf(working_dir, sizeof(working_dir), MSG_DATA_PATH"%d.mms.dir", pMsgInfo->msgId);
+ snprintf(working_dir, sizeof(working_dir), "%s%d.mms.dir", MSG_DATA_PATH, pMsgInfo->msgId);
MsgMmsSetMultipartListData(pMmsData); /* app file -> data */