Tizen 2.4.0 rev3 SDK Public Release
[framework/base/rpm-installer.git] / packaging / rpm-installer.spec
1 Name:       rpm-installer
2 Summary:    Native rpm installer
3 Version:    0.1.213
4 Release:    1
5 Group:      System/Libraries
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Requires(post): /sbin/ldconfig
9 Requires(postun): /sbin/ldconfig
10 BuildRequires:  cmake
11 BuildRequires:  edje-bin
12 BuildRequires:  popt-devel
13 BuildRequires:  pkgconfig(glib-2.0)
14 BuildRequires:  pkgconfig(dbus-glib-1)
15 BuildRequires:  pkgconfig(sqlite3)
16 BuildRequires:  pkgconfig(dlog)
17 BuildRequires:  pkgconfig(vconf)
18 BuildRequires:  pkgconfig(db-util)
19 BuildRequires:  pkgconfig(pkgmgr-types)
20 BuildRequires:  pkgconfig(pkgmgr-installer)
21 BuildRequires:  pkgconfig(pkgmgr-parser)
22 BuildRequires:  pkgconfig(pkgmgr)
23 BuildRequires:  pkgconfig(pkgmgr-info)
24 BuildRequires:  pkgconfig(app2sd)
25 BuildRequires:  pkgconfig(libxml-2.0)
26 BuildRequires:  pkgconfig(security-server)
27 BuildRequires:  pkgconfig(cert-svc)
28 BuildRequires:  pkgconfig(xmlsec1)
29 BuildRequires:  pkgconfig(libxslt)
30 BuildRequires:  pkgconfig(edje)
31 BuildRequires:  pkgconfig(libprivilege-control)
32 BuildRequires:  pkgconfig(capi-appfw-app-manager)
33 BuildRequires:  pkgconfig(capi-security-privilege-manager)
34 BuildRequires:  pkgconfig(capi-system-device)
35 BuildRequires:  pkgconfig(capi-appfw-application)
36 BuildRequires:  pkgconfig(aul)
37 BuildRequires:  pkgconfig(openssl)
38 BuildRequires:  pkgconfig(minizip)
39 BuildRequires:  gettext-tools
40 Requires:       cpio
41
42 %define appfw_feature_expansion_pkg_install 1
43 %define appfw_feature_delta_update 1
44 %define appfw_feature_sysman_mmc 0
45 %define appfw_feature_mount_install 0
46
47 %if "%{?tizen_profile_name}" == "tv"
48 %define appfw_feature_support_onlycap 0
49 %define appfw_feature_support_debugmode_for_sdk 0
50 %define appfw_feature_directory_permission_opt_only 1
51 %else
52 %define appfw_feature_support_onlycap 1
53 %define appfw_feature_support_debugmode_for_sdk 1
54 %define appfw_feature_directory_permission_opt_only 0
55 %endif
56
57 %description
58 Native rpm installer
59
60 Requires(post): pkgmgr
61
62 %prep
63 %setup -q
64
65 %build
66 CFLAGS+=" -fpic"
67
68 %if 0%{?tizen_build_binary_release_type_eng}
69 export CFLAGS="$CFLAGS -DTIZEN_ENGINEER_MODE"
70 export CXXFLAGS="$CXXFLAGS ?DTIZEN_ENGINEER_MODE"
71 export FFLAGS="$FFLAGS -DTIZEN_ENGINEER_MODE"
72 %endif
73
74 %if 0%{?appfw_feature_expansion_pkg_install}
75 _EXPANSION_PKG_INSTALL=ON
76 %else
77 _EXPANSION_PKG_INSTALL=OFF
78 %endif
79
80 %if 0%{?appfw_feature_mount_install}
81 _MOUNT_INSTALL=ON
82 %else
83 _MOUNT_INSTALL=OFF
84 %endif
85
86 %if 0%{?appfw_feature_delta_update}
87 _DELTA_UPDATE=ON
88 %else
89 _DELTA_UPDATE=OFF
90 %endif
91
92 %if 0%{?appfw_feature_sysman_mmc}
93 _SYSMAN_MMC=ON
94 %else
95 _SYSMAN_MMC=OFF
96 %endif
97
98 %if 0%{?appfw_feature_support_onlycap}
99 _SUPPORT_ONLYCAP=ON
100 %else
101 _SUPPORT_ONLYCAP=OFF
102 %endif
103
104 %if 0%{?appfw_feature_support_debugmode_for_sdk}
105 _SUPPORT_DEBUGMODE_FOR_SDK=ON
106 %else
107 _SUPPORT_DEBUGMODE_FOR_SDK=OFF
108 %endif
109
110 %if 0%{?appfw_feature_directory_permission_opt_only}
111 _APPFW_FEATURE_DIRECTORY_PERMISSION_OPT_ONLY=ON
112 %else
113 _APPFW_FEATURE_DIRECTORY_PERMISSION_OPT_ONLY=OFF
114 %endif
115
116
117 %if "%{?tizen_profile_name}" == "wearable"
118 export CFLAGS="$CFLAGS -DWEARABLE"
119 %else
120 %if "%{?tizen_profile_name}" == "mobile"
121 export CFLAGS="$CFLAGS -DMOBILE"
122 %endif
123
124 %endif
125
126 cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
127                                 -DTIZEN_FULL_VERSION=%{tizen_full_version} \
128                 -D_APPFW_FEATURE_EXPANSION_PKG_INSTALL:BOOL=${_EXPANSION_PKG_INSTALL} \
129                                 -D_APPFW_FEATURE_DELTA_UPDATE:BOOL=${_DELTA_UPDATE} \
130                                 -D_APPFW_FEATURE_SYSMAN_MMC:BOOL=${_SYSMAN_MMC} \
131                                 -D_APPFW_FEATURE_MOUNT_INSTALL:BOOL=${_MOUNT_INSTALL} \
132                                 -D_APPFW_FEATURE_SUPPORT_DEBUGMODE_FOR_SDK:BOOL=${_SUPPORT_DEBUGMODE_FOR_SDK} \
133                                 -D_APPFW_FEATURE_SUPPORT_ONLYCAP:BOOL=${_SUPPORT_ONLYCAP} \
134                                 -D_APPFW_FEATURE_DIRECTORY_PERMISSION_OPT_ONLY:BOOL=${_APPFW_FEATURE_DIRECTORY_PERMISSION_OPT_ONLY}
135
136 make %{?jobs:-j%jobs}
137
138 %install
139 rm -rf %{buildroot}
140 %make_install
141
142 mkdir -p %{buildroot}/usr/share/license
143 cp LICENSE %{buildroot}/usr/share/license/%{name}
144
145 %post
146 mkdir -p /usr/etc/package-manager/backend
147 mkdir -p /usr/etc/package-manager/backendlib
148 mkdir -p /usr/etc/package-manager/rpm-installer
149
150 ln -sf /usr/bin/rpm-backend /usr/etc/package-manager/backend/rpm
151 ln -sf /usr/bin/rpm-backend /usr/etc/package-manager/backend/coretpk
152 ln -sf /usr/lib/libnativerpm.so /usr/etc/package-manager/backendlib/librpm.so
153 ln -sf /usr/lib/libnativerpm.so /usr/etc/package-manager/backendlib/libcoretpk.so
154
155 chmod 700 /usr/bin/rpm-backend
156
157 %files
158 %manifest rpm-installer.manifest
159 %attr(0700,-,-) /usr/bin/rpm-backend
160 %attr(0700,-,-) /usr/bin/install_rpm_package.sh
161 %attr(0700,-,-) /usr/bin/install_rpm_package_with_dbpath_ro.sh
162 %attr(0700,-,-) /usr/bin/install_rpm_package_with_dbpath_rw.sh
163 %attr(0755,-,-) /usr/bin/query_rpm_package.sh
164 %attr(0700,-,-) /usr/bin/uninstall_rpm_package.sh
165 %attr(0700,-,-) /usr/bin/upgrade_rpm_package.sh
166 %attr(0700,-,-) /usr/bin/upgrade_rpm_package_with_dbpath_ro.sh
167 %attr(0700,-,-) /usr/bin/upgrade_rpm_package_with_dbpath_rw.sh
168 %attr(0700,-,-) /usr/bin/cpio_rpm_package.sh
169 %attr(0700,-,-) /usr/bin/cpio_rpm_package_update_xml.sh
170 %attr(0700,-,-) /usr/bin/coretpk_category_converter.sh
171 %attr(0700,-,-) /usr/bin/rpm_update_xml.sh
172 %attr(0744,-,-) /usr/etc/rpm-installer-config.ini
173 %attr(0744,-,-) /usr/etc/coretpk-installer-config.ini
174 %attr(0644,-,-) /usr/lib/libnativerpm.so
175 /usr/share/license/%{name}