Name: capi-system-peripheral-io
Summary: Tizen Peripheral Input & Output library
-Version: 0.1.0
+Version: 0.2.0
Release: 0
Group: System & System Tools
License: Apache-2.0
Source0: %{name}-%{version}.tar.gz
Source1: %{name}.manifest
+Source10: peripheral-io.udev.rules
+Source11: peripheral-io.tmpfiles.conf
+Conflicts: peripheral-bus
BuildRequires: awk
BuildRequires: cmake
BuildRequires: pkgconfig(glib-2.0)
%prep
%setup -q
cp %{SOURCE1} ./%{name}.manifest
+cp %{SOURCE10} .
+cp %{SOURCE11} .
%build
MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
%install
%make_install
+mkdir -p %{buildroot}/usr/lib/tmpfiles.d
+install -m0644 peripheral-io.tmpfiles.conf %{buildroot}/usr/lib/tmpfiles.d/peripheral-io.conf
+mkdir -p %{buildroot}/usr/lib/udev/rules.d
+install -m0644 peripheral-io.udev.rules %{buildroot}/usr/lib/udev/rules.d/90-peripheral-io.rules
%post -p /sbin/ldconfig
%manifest %{name}.manifest
%defattr(-,root,root,-)
%{_libdir}/lib%{name}.so*
+/usr/lib/tmpfiles.d/peripheral-io.conf
+/usr/lib/udev/rules.d/90-peripheral-io.rules
%license LICENSE.APLv2
%files devel
--- /dev/null
+SUBSYSTEM=="gpio", KERNEL=="gpio*", ACTION=="add",\
+ RUN+="/bin/chown root:priv_peripheralio /sys%p/value",\
+ RUN+="/bin/chmod 0660 /sys%p/value",\
+ RUN+="/bin/chsmack -a * /sys%p/value"
+SUBSYSTEM=="gpio", KERNEL=="gpio*", ACTION=="add",\
+ RUN+="/bin/chown root:priv_peripheralio /sys%p/direction",\
+ RUN+="/bin/chmod 0660 /sys%p/direction",\
+ RUN+="/bin/chsmack -a * /sys%p/direction"
+SUBSYSTEM=="gpio", KERNEL=="gpio*", ACTION=="add",\
+ RUN+="/bin/chown root:priv_peripheralio /sys%p/edge",\
+ RUN+="/bin/chmod 0660 /sys%p/edge",\
+ RUN+="/bin/chsmack -a * /sys%p/edge"
+
+SUBSYSTEM=="pwm", KERNEL=="pwm*", ACTION=="change",\
+ RUN+="/bin/chown root:priv_peripheralio /sys%p/%E{EXPORT}/period",\
+ RUN+="/bin/chmod 0660 /sys%p/%E{EXPORT}/period",\
+ RUN+="/bin/chsmack -a * /sys%p/%E{EXPORT}/period"
+SUBSYSTEM=="pwm", KERNEL=="pwm*", ACTION=="change",\
+ RUN+="/bin/chown root:priv_peripheralio /sys%p/%E{EXPORT}/duty_cycle",\
+ RUN+="/bin/chmod 0660 /sys%p/%E{EXPORT}/duty_cycle",\
+ RUN+="/bin/chsmack -a * /sys%p/%E{EXPORT}/duty_cycle"
+SUBSYSTEM=="pwm", KERNEL=="pwm*", ACTION=="change",\
+ RUN+="/bin/chown root:priv_peripheralio /sys%p/%E{EXPORT}/polarity",\
+ RUN+="/bin/chmod 0660 /sys%p/%E{EXPORT}/polarity",\
+ RUN+="/bin/chsmack -a * /sys%p/%E{EXPORT}/polarity"
+SUBSYSTEM=="pwm", KERNEL=="pwm*", ACTION=="change",\
+ RUN+="/bin/chown root:priv_peripheralio /sys%p/%E{EXPORT}/enable",\
+ RUN+="/bin/chmod 0660 /sys%p/%E{EXPORT}/enable",\
+ RUN+="/bin/chsmack -a * /sys%p/%E{EXPORT}/enable"
+
+SUBSYSTEM=="i2c-dev", KERNEL=="i2c-*", ACTION=="add", \
+ MODE="0660", OWNER="root", GROUP="priv_peripheralio", SECLABEL{smack}="*"
+
+SUBSYSTEM=="spidev", KERNEL=="spidev*.*", ACTION=="add", \
+ MODE="0660", OWNER="root", GROUP="priv_peripheralio", SECLABEL{smack}="*"