302bc23338f8245b3bb8b81426eb0f9f23b747ce
[platform/core/security/security-manager.git] / packaging / security-manager.spec
1 Name:       security-manager
2 Summary:    Security manager and utilities
3 Version:    0.1.0
4 Release:    1
5 Group:      Security/Service
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source1:    security-manager.manifest
9 Source3:    libsecurity-manager-client.manifest
10 BuildRequires: cmake
11 BuildRequires: zip
12 BuildRequires: pkgconfig(dlog)
13 BuildRequires: libattr-devel
14 BuildRequires: libcap-devel
15 BuildRequires: pkgconfig(libsmack)
16 BuildRequires: pkgconfig(libprivilege-control)
17 BuildRequires: pkgconfig(libsystemd-daemon)
18 %{?systemd_requires}
19
20 %description
21 Tizen security manager and utilities
22
23 %package -n libsecurity-manager-client
24 Summary:    Security manager (client)
25 Group:      Security/Libraries
26 Requires:   security-manager = %{version}-%{release}
27 Requires(post): /sbin/ldconfig
28 Requires(postun): /sbin/ldconfig
29
30 %description -n libsecurity-manager-client
31 Tizen Security manager client library
32
33 %package -n libsecurity-manager-client-devel
34 Summary:    Security manager (client-devel)
35 Group:      Security/Development
36 Requires:   libsecurity-manager-client = %{version}-%{release}
37
38 %description -n libsecurity-manager-client-devel
39 Development files needed for using the security manager client
40
41 %prep
42 %setup -q
43 cp %{SOURCE1} .
44 cp %{SOURCE3} .
45
46 %build
47 %if 0%{?sec_build_binary_debug_enable}
48 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
49 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
50 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
51 %endif
52
53 export LDFLAGS+="-Wl,--rpath=%{_libdir}"
54
55 %cmake . -DVERSION=%{version} \
56         -DCMAKE_BUILD_TYPE=%{?build_type:%build_type}%{!?build_type:RELEASE} \
57         -DCMAKE_VERBOSE_MAKEFILE=ON
58 make %{?jobs:-j%jobs}
59
60 %install
61 rm -rf %{buildroot}
62 mkdir -p %{buildroot}/usr/share/license
63 cp LICENSE %{buildroot}/usr/share/license/%{name}
64 cp LICENSE %{buildroot}/usr/share/license/libsecurity-manager-client
65 mkdir -p %{buildroot}/etc/security/
66 cp security-manager-audit.conf %{buildroot}/etc/security/
67 mkdir -p %{buildroot}/etc/smack/
68 cp app-rules-template.smack %{buildroot}/etc/smack/
69 %make_install
70
71 mkdir -p %{buildroot}/usr/lib/systemd/system/multi-user.target.wants
72 mkdir -p %{buildroot}/usr/lib/systemd/system/sockets.target.wants
73 ln -s ../security-manager.service %{buildroot}/usr/lib/systemd/system/multi-user.target.wants/security-manager.service
74 ln -s ../security-manager-installer.socket %{buildroot}/usr/lib/systemd/system/sockets.target.wants/security-manager-installer.socket
75
76 %clean
77 rm -rf %{buildroot}
78
79 %post
80 systemctl daemon-reload
81 if [ $1 = 1 ]; then
82     # installation
83     systemctl start security-manager.service
84 fi
85
86 if [ $1 = 2 ]; then
87     # update
88     systemctl restart security-manager.service
89 fi
90
91 %preun
92 if [ $1 = 0 ]; then
93     # unistall
94     systemctl stop security-manager.service
95 fi
96
97 %postun
98 if [ $1 = 0 ]; then
99     # unistall
100     systemctl daemon-reload
101 fi
102
103 %post -n libsecurity-manager-client -p /sbin/ldconfig
104
105 %postun -n libsecurity-manager-client -p /sbin/ldconfig
106
107 %files -n security-manager
108 %manifest security-manager.manifest
109 %defattr(-,root,root,-)
110 %attr(755,root,root) /usr/bin/security-manager
111 %{_libdir}/libsecurity-manager-commons.so.*
112 %attr(-,root,root) /usr/lib/systemd/system/multi-user.target.wants/security-manager.service
113 %attr(-,root,root) /usr/lib/systemd/system/security-manager.service
114 %attr(-,root,root) /usr/lib/systemd/system/security-manager.target
115 %attr(-,root,root) /usr/lib/systemd/system/sockets.target.wants/security-manager-installer.socket
116 %attr(-,root,root) /usr/lib/systemd/system/security-manager-installer.socket
117 %attr(-,root,root) /etc/security/security-manager-audit.conf
118 %attr(-,root,root) /etc/smack/app-rules-template.smack
119 %{_datadir}/license/%{name}
120
121 %files -n libsecurity-manager-client
122 %manifest libsecurity-manager-client.manifest
123 %defattr(-,root,root,-)
124 %{_libdir}/libsecurity-manager-client.so.*
125 %{_datadir}/license/libsecurity-manager-client
126
127 %files -n libsecurity-manager-client-devel
128 %manifest %{name}.manifest
129 %defattr(-,root,root,-)
130 %{_libdir}/libsecurity-manager-client.so
131 %{_libdir}/libsecurity-manager-commons.so
132 %{_includedir}/security-manager/security-manager.h
133 %{_libdir}/pkgconfig/security-manager.pc