Rename invalid WRT_SMACK_LABEL macro to WRT_SMACK_ENABLED
[platform/framework/web/wrt-installer.git] / packaging / wrt-installer.spec
1 %bcond_with livebox
2 %bcond_with decrypt
3 %bcond_with osp
4 %bcond_with wayland
5 %bcond_with x
6
7 Name:       wrt-installer
8 Summary:    Installer for tizen Webruntime
9 Version:    0.1.138
10 Release:    1
11 Group:      Web Framework/Utilities
12 License:    Apache-2.0
13 Source0:    %{name}-%{version}.tar.gz
14 Source1001:     wrt-installer.manifest
15 BuildRequires:  cmake
16 BuildRequires:  edje-tools
17 BuildRequires:  pkgconfig(appsvc)
18 BuildRequires:  pkgconfig(libxml-2.0)
19 BuildRequires:  pkgconfig(openssl)
20 BuildRequires:  pkgconfig(dpl-efl)
21 BuildRequires:  pkgconfig(cert-svc-vcore)
22 BuildRequires:  pkgconfig(dpl-event-efl)
23 BuildRequires:  pkgconfig(dpl-utils-efl)
24 BuildRequires:  pkgconfig(dpl-wrt-dao-ro)
25 BuildRequires:  pkgconfig(dpl-wrt-dao-rw)
26 BuildRequires:  pkgconfig(wrt-commons-i18n-dao-ro)
27 BuildRequires:  pkgconfig(wrt-commons-widget-interface-dao)
28 BuildRequires:  pkgconfig(security-install)
29 %if %{with x}
30 BuildRequires:  pkgconfig(ecore-x)
31 %endif
32 %if %{with wayland}
33 BuildRequires:  pkgconfig(ecore-wayland)
34 %endif
35 BuildRequires:  pkgconfig(xmlsec1)
36 BuildRequires:  pkgconfig(libidn)
37 BuildRequires:  pkgconfig(libiri)
38 BuildRequires:  pkgconfig(libpcrecpp)
39 BuildRequires:  pkgconfig(pkgmgr-installer)
40 BuildRequires:  pkgconfig(pkgmgr-parser)
41 BuildRequires:  pkgconfig(pkgmgr-types)
42 BuildRequires:  pkgconfig(pkgmgr-info)
43 BuildRequires:  pkgconfig(pkgmgr)
44 BuildRequires:  pkgconfig(dlog)
45 BuildRequires:  pkgconfig(cert-svc)
46 BuildRequires:  pkgconfig(wrt-plugins-types)
47 BuildRequires:  pkgconfig(tapi)
48 BuildRequires:  pkgconfig(shortcut)
49 BuildRequires:  pkgconfig(capi-appfw-app-manager)
50 BuildRequires:  pkgconfig(app2sd)
51 BuildRequires:  pkgconfig(libtzplatform-config)
52 %if %{with livebox}
53 BuildRequires:  pkgconfig(web-provider)
54 %endif
55 BuildRequires:  pkgconfig(security-manager)
56 %if %{with osp}
57 Requires: osp-installer
58 %endif
59 Requires: xmlsec1
60 Requires: libtzplatform-config
61
62 %description
63 Description: Wrt Installer for Tizen apps and Wac apps
64
65 %package preinstall-service
66 Summary: Service for installing wgt files on first boot
67 Group:   Web Framework/Utilities
68 %description preinstall-service
69 This package installs a first time boot systemd service for 
70 completing the installation of preinstalled web apps.
71
72 %prep
73 %setup -q
74 cp %{SOURCE1001} .
75
76 %define with_tests 0
77 %if "%{WITH_TESTS}" == "ON" || "%{WITH_TESTS}" == "Y" || "%{WITH_TESTS}" == "YES" || "%{WITH_TESTS}" == "TRUE" || "%{WITH_TESTS}" == "1"
78     %define with_tests 1
79 %endif
80
81 %build
82 %if 0%{?tizen_build_binary_release_type_eng}
83 export CFLAGS="$CFLAGS -DTIZEN_ENGINEER_MODE"
84 export CXXFLAGS="$CXXFLAGS -DTIZEN_ENGINEER_MODE"
85 export FFLAGS="$FFLAGS -DTIZEN_ENGINEER_MODE"
86 %endif
87
88 export LDFLAGS+="-Wl,--rpath=%{_libdir} -Wl,--hash-style=both -Wl,--as-needed"
89 LDFLAGS="$LDFLAGS"
90
91 %cmake . -DCMAKE_INSTALL_PREFIX=/usr \
92 %if %{with livebox}
93         -DLIVEBOX_SUPPORT=On \
94 %else
95         -DLIVEBOX_SUPPORT=Off \
96 %endif
97 %if %{with decrypt}
98          -DDECRYPT_SUPPORT=On \
99 %else
100          -DDECRYPT_SUPPORT=Off \
101 %endif
102 %if %{with wayland}
103          -DWAYLAND_SUPPORT=On \
104 %else
105          -DWAYLAND_SUPPORT=Off \
106 %endif
107 %if %{with x}
108          -DX11_SUPPORT=On \
109 %else
110          -DX11_SUPPORT=Off \
111 %endif
112         -DSYSCONFDIR=%{_sysconfdir} \
113         -DSMACK=ON \
114         -DDPL_LOG=ON \
115         -DCMAKE_BUILD_TYPE=%{?build_type:%build_type} \
116         -DTZ_SYS_APP_PREINSTALL=%TZ_SYS_APP_PREINSTALL \
117         %{?WITH_TESTS:-DWITH_TESTS=%WITH_TESTS}
118 make %{?jobs:-j%jobs}
119
120 %install
121 rm -rf %{buildroot}
122 mkdir -p %{buildroot}/usr/share/license
123 cp LICENSE %{buildroot}/usr/share/license/%{name}
124 %make_install
125
126 mkdir -p %{buildroot}%{_unitdir}/graphical.target.wants
127 ln -s ../wrt-preinstall-widgets.service %{buildroot}%{_unitdir}/graphical.target.wants
128
129 %clean
130 rm -rf %{buildroot}
131
132 %post
133 /sbin/ldconfig
134 chmod +s %{_bindir}/wrt-installer
135
136 #symlink for package manager
137 %define pkg_manager_backend_path %{_sysconfdir}"/package-manager/backend"
138 ln -sf /usr/bin/wrt-installer %{pkg_manager_backend_path}/wgt
139 ln -sf %{pkg_manager_backend_path}/wgt %{pkg_manager_backend_path}/Wgt
140 ln -sf %{pkg_manager_backend_path}/wgt %{pkg_manager_backend_path}/wGt
141 ln -sf %{pkg_manager_backend_path}/wgt %{pkg_manager_backend_path}/wgT
142 ln -sf %{pkg_manager_backend_path}/wgt %{pkg_manager_backend_path}/WGt
143 ln -sf %{pkg_manager_backend_path}/wgt %{pkg_manager_backend_path}/wGT
144 ln -sf %{pkg_manager_backend_path}/wgt %{pkg_manager_backend_path}/WgT
145 ln -sf %{pkg_manager_backend_path}/wgt %{pkg_manager_backend_path}/WGT
146
147 #for booting recovery
148 mkdir -p %TZ_SYS_RW_WIDGET/temp_info
149
150 # for downloadable Application icons path
151 mkdir -p %TZ_SYS_SHARE/icons/default/small
152
153 %postun -p /sbin/ldconfig
154
155 %files
156 %manifest %{name}.manifest
157 %attr(755,root,root) %{_bindir}/wrt-installer
158 %{_sysconfdir}/package-manager/backendlib/libwgt.so
159 %attr(644,root,root) %{_sysconfdir}/wrt-installer/*.xsd
160 %{_datadir}/license/%{name}
161 %if %{with_tests}
162     %attr(755,root,root) %{_bindir}/wrt-installer-tests-*
163     %TZ_SYS_RW_WIDGET/tests/installer/widgets/*
164 %endif
165
166 %files preinstall-service
167 %manifest %{name}.manifest
168 %attr(755,root,root) %{_bindir}/wrt_preinstall_widgets.sh
169 %{_unitdir}/wrt-preinstall-widgets.service
170 %{_unitdir}/graphical.target.wants/wrt-preinstall-widgets.service