summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMyungJoo Ham <myungjoo.ham@samsung.com>2016-11-01 21:05:31 +0900
committerpr.jung <pr.jung@samsung.com>2017-02-23 18:27:33 +0900
commit29bee1d4aea49680069957a141afa0c3ca063f96 (patch)
treeaaf196f52ed30babad3295d85249888c40d927fe
parente2e4bc4c07950a180a99827df41412f190529cf0 (diff)
downloaddeviced-29bee1d4aea49680069957a141afa0c3ca063f96.tar.gz
deviced-29bee1d4aea49680069957a141afa0c3ca063f96.tar.bz2
deviced-29bee1d4aea49680069957a141afa0c3ca063f96.zip
[4.0] Remove Profile Build Dependenciessubmit/tizen/20170224.015708
1. This is for Tizen 4.0 2. When this commit is being SR-ed, the maintainer needs to create a JIRA-TRE issue of: Add deviced-profile_common for common profile Add deviced-profile_mobile for mobile profile Add deviced-profile_tv for tv profile Add deviced-profile_wearable for wearable profile Add deviced-profile_ivi for ivi profile 3. You need https://review.tizen.org/gerrit/#/c/94829/ before merging this; there could be merge-conflict. If there is merge-conflict, I'll rebase after 94829 is merged. Without 94829, there will be a build error for x86/ivi & common. Change-Id: I47c76bd70a87a70f86d9975f2d706e61372c6d80 Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
-rwxr-xr-xCMakeLists.txt4
-rw-r--r--packaging/deviced.spec455
2 files changed, 330 insertions, 129 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index dbda9c63..4d5ab647 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -38,10 +38,10 @@ ENDMACRO()
MACRO(INSTALL_CONF DIR CONF)
SET(T_CONF ${DIR}/${CONF}-${PROFILE}.conf)
SET(E_CONF ${DIR}/${CONF}-emul-${PROFILE}.conf)
- IF(USE_EMULATOR AND EXISTS ${E_CONF})
+ IF(USE_EMULATOR AND EXISTS ${CMAKE_SOURCE_DIR}/${E_CONF})
SET(T_CONF ${E_CONF})
ENDIF()
- IF(NOT EXISTS ${T_CONF})
+ IF(NOT EXISTS ${CMAKE_SOURCE_DIR}/${T_CONF})
SET(T_CONF ${DIR}/${CONF}.conf)
ENDIF()
IF(DEFINED T_CONF)
diff --git a/packaging/deviced.spec b/packaging/deviced.spec
index 0fb042eb..ecf718bf 100644
--- a/packaging/deviced.spec
+++ b/packaging/deviced.spec
@@ -2,25 +2,7 @@
#These options are DEACTIVATED by default.
%bcond_with emulator
-# display, extcon, power, usb are always enable
-%define battery_module off
-%define block_module on
-%define block_tmpfs off
-%define display_module on
-%define extcon_module on
-%define haptic_module off
-%define ir_module off
-%define led_module off
-%define power_module on
-%define touchscreen_module off
-%define tzip_module off
-%define usb_module on
-%define usbhost_module off
-%define TIZEN_FEATURE_BATTERY_OVER_TEMPERATURE off
-%define TIZEN_FEATURE_CPU_MODULE off
-%define TIZEN_FEATURE_USBHOST_TEST off
-%define TIZEN_FEATURE_TELEPHONY_MODULE off
-%define TIZEN_FEATURE_THERMAL_MODULE off
+# display, extcon, power, usb are always enabled
#Just For debugging
%define sdb_prestart off
@@ -28,32 +10,6 @@
# Support two pattern combination vibration
%define standard_mix off
-%if "%{?profile}" == "mobile"
-%define battery_module on
-%define haptic_module on
-%define ir_module on
-%define led_module on
-%define touchscreen_module on
-%define tzip_module on
-%define usbhost_module on
-%define TIZEN_FEATURE_CPU_MODULE on
-%define TIZEN_FEATURE_USBHOST_TEST on
-%define TIZEN_FEATURE_TELEPHONY_MODULE on
-%define TIZEN_FEATURE_THERMAL_MODULE on
-%endif
-%if "%{?profile}" == "wearable"
-%define battery_module on
-%define haptic_module on
-%define touchscreen_module on
-%define tzip_module on
-%define TIZEN_FEATURE_THERMAL_MODULE on
-%endif
-%if "%{?profile}" == "tv"
-%define block_tmpfs on
-%define sdb_prestart off
-%define usbhost_module on
-%endif
-
Name: deviced
Summary: Deviced
Version: 2.0.0
@@ -84,45 +40,86 @@ BuildRequires: pkgconfig(hwcommon)
BuildRequires: pkgconfig(capi-system-info)
BuildRequires: pkgconfig(argos_watchdog)
BuildRequires: pkgconfig(libsystemd)
-%if %{?display_module} == on
BuildRequires: pkgconfig(libinput)
BuildRequires: pkgconfig(capi-system-sensor)
-%endif
-%if %{?block_module} == on
+#if #{?block_module} == on ==> removed because it is always on.
BuildRequires: pkgconfig(storage)
BuildRequires: pkgconfig(app2sd)
BuildRequires: pkgconfig(blkid)
-%endif
-%if %{?tzip_module} == on
+#endif
BuildRequires: pkgconfig(fuse)
BuildRequires: pkgconfig(minizip)
-%endif
-%if %{?TIZEN_FEATURE_USBHOST_TEST} == on
BuildRequires: pkgconfig(libkmod)
BuildRequires: pkgconfig(libusbg)
-%endif
-%if %{?TIZEN_FEATURE_TELEPHONY_MODULE} == on
BuildRequires: pkgconfig(tapi)
-%endif
Requires: %{name}-tools = %{version}-%{release}
%{?systemd_requires}
Requires(post): /usr/bin/vconftool
-%if %{?block_module} == on
+#if #{?block_module} == on ==> removed because it is always on.
Requires: /usr/bin/fsck_msdosfs
Requires: /usr/bin/newfs_msdos
+#endif
+
+Requires: %{name}-compat = %{version}-%{release}
+%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv"
+Recommends: %{name}-profile_common = %{version}-%{release}
%endif
%description
deviced
+# if profile = common or undefined
+%package profile_common
+Summary: Deviced binaries targeting common/ivi profile
+Provides: %{name}-compat = %{version}-%{release}
+Conflicts: %{name}-profile_mobile
+Conflicts: %{name}-profile_wearable
+Conflicts: %{name}-profile_tv
+Provides: %{name}-profile_ivi = %{version}-%{release}
+%description profile_common
+Deviced binaries targeting common profile. Required by main deviced package.
+IVI profile also uses this.
+# if profile = mobile or common or undefined
+%package profile_mobile
+Summary: Deviced binaries targeting mobile profile
+Provides: %{name}-compat = %{version}-%{release}
+Conflicts: %{name}-profile_common
+Conflicts: %{name}-profile_wearable
+Conflicts: %{name}-profile_tv
+Conflicts: %{name}-profile_ivi
+%description profile_mobile
+Deviced binaries targeting mobile profile. Required by main deviced package
+# if profile = wearable or common or undefined
+%package profile_wearable
+Summary: Deviced binaries targeting wearable profile
+Provides: %{name}-compat = %{version}-%{release}
+Conflicts: %{name}-profile_common
+Conflicts: %{name}-profile_mobile
+Conflicts: %{name}-profile_tv
+Conflicts: %{name}-profile_ivi
+%description profile_wearable
+Deviced binaries targeting wearable profile. Required by main deviced package
+# if profile = tv or common or undefined
+%package profile_tv
+Summary: Deviced binaries targeting tv profile
+Provides: %{name}-compat = %{version}-%{release}
+Conflicts: %{name}-profile_common
+Conflicts: %{name}-profile_mobile
+Conflicts: %{name}-profile_wearable
+Conflicts: %{name}-profile_ivi
+%description profile_tv
+Deviced binaries targeting tv profile. Required by main deviced package
+
%package tools
Summary: Deviced tools
Group: System/Utilities
%description tools
-Deviced helper programs
+Deviced helper programs.
+Deviced-tools is profile-independent; i.e., every profile has the same
+binary for deviced-tools.
%package -n libdeviced
Summary: Deviced library
@@ -130,7 +127,9 @@ Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
%description -n libdeviced
-Deviced library for device control
+Deviced library for device control.
+Libdeviced is profile-independent; i.e., every profile has the same
+binary for libdeviced.
%package -n libdeviced-devel
Summary: Deviced library for (devel)
@@ -138,7 +137,9 @@ Group: Development/Libraries
Requires: libdeviced = %{version}-%{release}
%description -n libdeviced-devel
-Deviced library for device control (devel)
+Deviced library for device control (devel).
+Because this is internal interface, every profile MUST have the same
+devel package.
%prep
%setup -q
@@ -164,59 +165,207 @@ Deviced library for device control (devel)
%define engineer_mode off
%endif
-%cmake . \
+# Build per profile
+# if profile = mobile or common or undefined
+mkdir -p build_mobile
+pushd build_mobile
+%cmake .. \
+ -DTZ_SYS_ETC=%TZ_SYS_ETC \
+ -DCMAKE_INSTALL_PREFIX=%{_prefix} \
+ -DARCH=%{ARCH} \
+ -DARCH_BIT=%{ARCH_BIT} \
+ -DDPMS=%{DPMS} \
+ -DENGINEER_MODE=%{engineer_mode} \
+ -DPROFILE=mobile \
+ -DBATTERY_MODULE=on \
+ -DBLOCK_MODULE=on \
+ -DBLOCK_TMPFS=off \
+ -DDISPLAY_MODULE=on \
+ -DEXTCON_MODULE=on \
+ -DHAPTIC_MODULE=on \
+ -DSTANDARD_MIX=%{standard_mix} \
+ -DIR_MODULE=on \
+ -DLED_MODULE=on \
+ -DPOWER_MODULE=on \
+ -DSDB_PRESTART=%{sdb_prestart} \
+ -DTOUCHSCREEN_MODULE=on \
+ -DTZIP_MODULE=on \
+ -DUSB_MODULE=on \
+ -DUSBHOST_MODULE=on \
+ -DTIZEN_FEATURE_USBHOST_TEST=on \
+ -DTIZEN_FEATURE_BATTERY_OVER_TEMPERATURE=off \
+ -DTIZEN_FEATURE_CPU_MODULE=on \
+ -DTIZEN_FEATURE_TELEPHONY_MODULE=on \
+ -DTHERMAL_MODULE=on \
+ #eol
+popd
+
+# if profile = wearable or common or undefined
+mkdir -p build_wearable
+pushd build_wearable
+%cmake .. \
+ -DTZ_SYS_ETC=%TZ_SYS_ETC \
+ -DCMAKE_INSTALL_PREFIX=%{_prefix} \
+ -DARCH=%{ARCH} \
+ -DARCH_BIT=%{ARCH_BIT} \
+ -DDPMS=%{DPMS} \
+ -DENGINEER_MODE=%{engineer_mode} \
+ -DPROFILE=wearable \
+ -DBATTERY_MODULE=on \
+ -DBLOCK_MODULE=on \
+ -DBLOCK_TMPFS=off \
+ -DDISPLAY_MODULE=on \
+ -DEXTCON_MODULE=on \
+ -DHAPTIC_MODULE=on \
+ -DSTANDARD_MIX=%{standard_mix} \
+ -DIR_MODULE=off \
+ -DLED_MODULE=off \
+ -DPOWER_MODULE=on \
+ -DSDB_PRESTART=%{sdb_prestart} \
+ -DTOUCHSCREEN_MODULE=on \
+ -DTZIP_MODULE=on \
+ -DUSB_MODULE=on \
+ -DUSBHOST_MODULE=off \
+ -DTIZEN_FEATURE_USBHOST_TEST=off \
+ -DTIZEN_FEATURE_BATTERY_OVER_TEMPERATURE=off \
+ -DTIZEN_FEATURE_CPU_MODULE=off \
+ -DTIZEN_FEATURE_TELEPHONY_MODULE=off \
+ -DTHERMAL_MODULE=on \
+ #eol
+popd
+
+# if profile = tv or common or undefined
+mkdir -p build_tv
+pushd build_tv
+%cmake .. \
-DTZ_SYS_ETC=%TZ_SYS_ETC \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DARCH=%{ARCH} \
-DARCH_BIT=%{ARCH_BIT} \
-DENGINEER_MODE=%{engineer_mode} \
- -DPROFILE=%{profile} \
- -DBATTERY_MODULE=%{battery_module} \
- -DBLOCK_MODULE=%{block_module} \
- -DBLOCK_TMPFS=%{block_tmpfs} \
- -DDISPLAY_MODULE=%{display_module} \
- -DEXTCON_MODULE=%{extcon_module} \
- -DHAPTIC_MODULE=%{haptic_module} \
+ -DPROFILE=tv \
+ -DBATTERY_MODULE=off \
+ -DBLOCK_MODULE=on \
+ -DBLOCK_TMPFS=on \
+ -DDISPLAY_MODULE=on \
+ -DEXTCON_MODULE=on \
+ -DHAPTIC_MODULE=off \
-DSTANDARD_MIX=%{standard_mix} \
- -DIR_MODULE=%{ir_module} \
- -DLED_MODULE=%{led_module} \
- -DPOWER_MODULE=%{power_module} \
+ -DIR_MODULE=off \
+ -DLED_MODULE=off \
+ -DPOWER_MODULE=on \
-DSDB_PRESTART=%{sdb_prestart} \
- -DTOUCHSCREEN_MODULE=%{touchscreen_module} \
- -DTZIP_MODULE=%{tzip_module} \
- -DUSB_MODULE=%{usb_module} \
- -DUSBHOST_MODULE=%{usbhost_module} \
- -DTIZEN_FEATURE_BATTERY_OVER_TEMPERATURE=%{TIZEN_FEATURE_BATTERY_OVER_TEMPERATURE} \
- -DTIZEN_FEATURE_CPU_MODULE=%{TIZEN_FEATURE_CPU_MODULE} \
- -DTIZEN_FEATURE_USBHOST_TEST=%{TIZEN_FEATURE_USBHOST_TEST} \
- -DTIZEN_FEATURE_TELEPHONY_MODULE=%{TIZEN_FEATURE_TELEPHONY_MODULE} \
- -DTHERMAL_MODULE=%{TIZEN_FEATURE_THERMAL_MODULE} \
+ -DTOUCHSCREEN_MODULE=off \
+ -DTZIP_MODULE=off \
+ -DUSB_MODULE=on \
+ -DUSBHOST_MODULE=on \
+ -DTIZEN_FEATURE_USBHOST_TEST=off \
+ -DTIZEN_FEATURE_BATTERY_OVER_TEMPERATURE=off \
+ -DTIZEN_FEATURE_CPU_MODULE=off \
+ -DTIZEN_FEATURE_TELEPHONY_MODULE=off \
+ -DTHERMAL_MODULE=off \
#eol
+popd
+
+# if profile = common or ivi or undefined
+mkdir -p build_common
+pushd build_common
+%cmake .. \
+ -DTZ_SYS_ETC=%TZ_SYS_ETC \
+ -DCMAKE_INSTALL_PREFIX=%{_prefix} \
+ -DARCH=%{ARCH} \
+ -DARCH_BIT=%{ARCH_BIT} \
+ -DDPMS=%{DPMS} \
+ -DENGINEER_MODE=%{engineer_mode} \
+ -DPROFILE=common \
+ -DBATTERY_MODULE=off \
+ -DBLOCK_MODULE=on \
+ -DBLOCK_TMPFS=off \
+ -DDISPLAY_MODULE=on \
+ -DEXTCON_MODULE=on \
+ -DHAPTIC_MODULE=off \
+ -DSTANDARD_MIX=%{standard_mix} \
+ -DIR_MODULE=off \
+ -DLED_MODULE=off \
+ -DPOWER_MODULE=on \
+ -DSDB_PRESTART=%{sdb_prestart} \
+ -DTOUCHSCREEN_MODULE=off \
+ -DTZIP_MODULE=off \
+ -DUSB_MODULE=on \
+ -DUSBHOST_MODULE=off \
+ -DTIZEN_FEATURE_USBHOST_TEST=off \
+ -DTIZEN_FEATURE_BATTERY_OVER_TEMPERATURE=off \
+ -DTIZEN_FEATURE_CPU_MODULE=off \
+ -DTIZEN_FEATURE_TELEPHONY_MODULE=off \
+ -DTHERMAL_MODULE=off \
+ #eol
+popd
%build
cp %{SOURCE1} .
cp %{SOURCE2} .
+
+
+# Build per profile
+# if profile = mobile or common or undefined
+pushd build_mobile
+make %{?jobs:-j%jobs}
+popd
+
+# if profile = wearable or common or undefined
+pushd build_wearable
+make %{?jobs:-j%jobs}
+popd
+
+# if profile = tv or common or undefined
+pushd build_tv
+make %{?jobs:-j%jobs}
+popd
+
+# if profile = common or ivi or undefined
+pushd build_common
make %{?jobs:-j%jobs}
+popd
%install
rm -rf %{buildroot}
+# Build per profile
+# if profile = mobile or common or undefined
+pushd build_mobile
%make_install
+mv %{buildroot}%{_bindir}/deviced %{buildroot}%{_bindir}/deviced.mobile
+mv %{buildroot}%{_bindir}/deviced-vibrator %{buildroot}%{_bindir}/deviced-vibrator.mobile
+popd
+
+# if profile = wearable or common or undefined
+pushd build_wearable
+%make_install
+mv %{buildroot}%{_bindir}/deviced %{buildroot}%{_bindir}/deviced.wearable
+mv %{buildroot}%{_bindir}/deviced-vibrator %{buildroot}%{_bindir}/deviced-vibrator.wearable
+popd
+
+# if profile = tv or common or undefined
+pushd build_tv
+%make_install
+mv %{buildroot}%{_bindir}/deviced %{buildroot}%{_bindir}/deviced.tv
+popd
+
+# if profile = common or ivi or undefined
+pushd build_common
+%make_install
+mv %{buildroot}%{_bindir}/deviced %{buildroot}%{_bindir}/deviced.common
+popd
%install_service multi-user.target.wants deviced.service
%install_service sockets.target.wants deviced.socket
-
-%if %{?haptic_module} == on
%install_service multi-user.target.wants deviced-vibrator.service
-%endif
-
-%if %{?usb_module} == on && %{?sdb_prestart} == on
+# usb_module condition is removed because it is always on
+%if %{?sdb_prestart} == on
%install_service basic.target.wants sdb-prestart.service
%endif
-%if %{?usbhost_module} == on
mkdir -p %{buildroot}%{_prefix}/lib/udev/rules.d
install -m 644 udev/99-usbhost.rules %{buildroot}%{_prefix}/lib/udev/rules.d/99-usbhost.rules
-%endif
mkdir -p %{buildroot}%{TZ_SYS_DUMPGEN}
install -m 775 scripts/dump_pmstate_log.sh %{buildroot}%{TZ_SYS_DUMPGEN}/dump_pmstate_log.sh
@@ -225,92 +374,144 @@ install -m 775 scripts/dump_pmstate_log.sh %{buildroot}%{TZ_SYS_DUMPGEN}/dump_pm
#memory type vconf key init
users_gid=$(getent group %{TZ_SYS_USER_GROUP} | cut -f3 -d':')
+%postun
+systemctl daemon-reload
+
+%post -n libdeviced -p /sbin/ldconfig
+
+%postun -n libdeviced -p /sbin/ldconfig
+
+%post profile_mobile
+mv %{_bindir}/deviced.mobile %{_bindir}/deviced
+mv %{_bindir}/deviced-vibrator.mobile %{_bindir}/deviced-vibrator
+
systemctl daemon-reload
if [ "$1" == "1" ]; then
systemctl restart deviced.service
-%if %{?haptic_module} == on
systemctl restart deviced-vibrator.service
-%endif
fi
-%preun
+%preun profile_mobile
+mv %{_bindir}/deviced %{_bindir}/deviced.mobile
+mv %{_bindir}/deviced-vibrator %{_bindir}/deviced-vibrator.mobile
+
if [ "$1" == "0" ]; then
systemctl stop deviced.service
-%if %{?haptic_module} == on
systemctl stop deviced-vibrator.service
-%endif
fi
-%postun
+%post profile_wearable
+mv %{_bindir}/deviced.wearable %{_bindir}/deviced
+mv %{_bindir}/deviced-vibrator.wearable %{_bindir}/deviced-vibrator
+
systemctl daemon-reload
+if [ "$1" == "1" ]; then
+ systemctl restart deviced.service
+ systemctl restart deviced-vibrator.service
+fi
-%post -n libdeviced -p /sbin/ldconfig
+%preun profile_wearable
+mv %{_bindir}/deviced %{_bindir}/deviced.wearable
+mv %{_bindir}/deviced-vibrator %{_bindir}/deviced-vibrator.wearable
-%postun -n libdeviced -p /sbin/ldconfig
+if [ "$1" == "0" ]; then
+ systemctl stop deviced.service
+ systemctl stop deviced-vibrator.service
+fi
+
+%post profile_tv
+mv %{_bindir}/deviced.tv %{_bindir}/deviced
+%preun profile_tv
+mv %{_bindir}/deviced %{_bindir}/deviced.tv
+
+%post profile_common
+mv %{_bindir}/deviced.common %{_bindir}/deviced
+%preun profile_common
+mv %{_bindir}/deviced %{_bindir}/deviced.common
-%files -n deviced
+%files
%manifest %{name}.manifest
%license LICENSE
%config %{_sysconfdir}/dbus-1/system.d/deviced.conf
-%{_bindir}/deviced
%{_unitdir}/multi-user.target.wants/deviced.service
-%if %{?haptic_module} == on
-%config %{_sysconfdir}/dbus-1/system.d/deviced-vibrator.conf
-%{_unitdir}/deviced-vibrator.service
-%{_unitdir}/multi-user.target.wants/deviced-vibrator.service
-%{_bindir}/deviced-vibrator
-%endif
%{_unitdir}/sockets.target.wants/deviced.socket
%{_unitdir}/deviced.service
%{_unitdir}/deviced.socket
-%if %{?battery_module} == on
-%config %{_sysconfdir}/deviced/battery.conf
-%endif
-%if %{?block_module} == on
-%{_bindir}/mmc-smack-label
+#if #{?block_module} == on ==> always on
%config %{_sysconfdir}/deviced/block.conf
%config %{_sysconfdir}/deviced/storage.conf
-%endif
-%if %{?display_module} == on
+#endif
+#if #{?display_module} == on ==> always on
%config %{_sysconfdir}/deviced/display.conf
-%endif
-%if %{?haptic_module} == on
-%config %{_sysconfdir}/deviced/haptic.conf
-%endif
-%if %{?power_module} == on
+#endif
+#%if %{?power_module} == on ==? always on
%config %{_sysconfdir}/deviced/power.conf
-%endif
-%if %{?usb_module} == on
+#%endif
+#if #{?usb_module} == on ==> always on
%config %{_sysconfdir}/deviced/usb-operation.conf
%if %{?sdb_prestart} == on
%{_unitdir}/sdb-prestart.service
%{_unitdir}/basic.target.wants/sdb-prestart.service
%endif
-%endif
-%if %{?TIZEN_FEATURE_USBHOST_TEST} == on
+#endif
+
+%files profile_mobile
+%manifest deviced.manifest
+%{_bindir}/deviced.mobile
+%{_bindir}/mmc-smack-label
+# haptic_module
+%config %{_sysconfdir}/deviced/haptic.conf
+%config %{_sysconfdir}/dbus-1/system.d/deviced-vibrator.conf
+%{_unitdir}/deviced-vibrator.service
+%{_unitdir}/multi-user.target.wants/deviced-vibrator.service
+%{_bindir}/deviced-vibrator.mobile
+# TIZEN_FEATURE_LAZY_MOUNT == on
+# battery_module
+%config %{_sysconfdir}/deviced/battery.conf
+# usbhost_module
+%{_prefix}/lib/udev/rules.d/99-usbhost.rules
+# usbhost_test
%{_sysconfdir}/deviced/usb-host-test/test_gadget.gs
%{_bindir}/usb-host-ffs-test-daemon
%{_unitdir}/usb-host-ffs-test-daemon.service
%{_unitdir}/usb-host-test.socket
%{_sysconfdir}/deviced/usb-host-test/descs
%{_sysconfdir}/deviced/usb-host-test/strs
-%endif
+# cpu_module
+%config %{_sysconfdir}/deviced/cpu.conf
-%if %{?usbhost_module} == on
+%files profile_wearable
+%manifest deviced.manifest
+%{_bindir}/deviced.wearable
+%{_bindir}/mmc-smack-label
+# haptic_module
+%config %{_sysconfdir}/deviced/haptic.conf
+%config %{_sysconfdir}/dbus-1/system.d/deviced-vibrator.conf
+%{_unitdir}/deviced-vibrator.service
+%{_unitdir}/multi-user.target.wants/deviced-vibrator.service
+%{_bindir}/deviced-vibrator.wearable
+# battery_module
+%config %{_sysconfdir}/deviced/battery.conf
+
+%files profile_tv
+%manifest deviced.manifest
+%{_bindir}/deviced.tv
+%{_bindir}/mmc-smack-label
+# usbhost_module
%{_prefix}/lib/udev/rules.d/99-usbhost.rules
-%endif
-%if %{?TIZEN_FEATURE_CPU_MODULE} == on
-%config %{_sysconfdir}/deviced/cpu.conf
-%endif
+%files profile_common
+%manifest deviced.manifest
+%{_bindir}/deviced.common
+%{_bindir}/mmc-smack-label
%files tools
-%manifest %{name}.manifest
+%manifest deviced.manifest
%{_bindir}/devicectl
-%if %{?usb_module} == on
+#if #{?usb_module} == on ==> always on
%{_bindir}/direct_set_debug.sh
%{TZ_SYS_DUMPGEN}/dump_pmstate_log.sh
-%endif
+#endif
%files -n libdeviced
%manifest deviced.manifest