d44350316a55b7dbe8caa4a52df37c266cc42b0f
[platform/core/system/initrd-recovery.git] / packaging / initrd-recovery.spec
1 Name:           initrd-recovery
2 Summary:        Tools for system recovery
3 Version:        0.1.2
4 Release:        3
5 Group:          System/Utilities
6 License:        Apache-2.0
7 ExclusiveArch:  %{arm}
8
9 Source0:        %{name}-%{version}.tar.gz
10 Source1001:     initrd-recovery.manifest
11
12 BuildRequires:  autoconf
13 BuildRequires:  automake
14 BuildRequires:  libtool
15
16 Requires:       system-recovery
17
18 %description
19 This is a special booting mode and executes system recovery mode on user
20 selection like safe mode or phone initialization.
21
22 %package -n system-recovery
23 Summary:        System recovery
24 Group:          System/Utilities
25 License:        Apache-2.0
26
27 BuildRequires:  pkgconfig(libpng)
28 BuildRequires:  pkgconfig(vconf)
29 BuildRequires:  pkgconfig(vconf-internal-keys)
30
31 Requires:       %{name}-compat = %{version}-%{release}
32 Recommends:     %{name}-non_gui = %{version}-%{release}
33
34 %description -n system-recovery
35 A simple initrd menu for system recovery.
36
37 # non_gui profile: common, wearable
38 %package -n system-recovery-non_gui
39 Summary:        system-recovery without gui
40 Provides:       %{name}-compat = %{version}-%{release}
41 Conflicts:      %{name}-gui
42 %description -n system-recovery-non_gui
43 system-recovery package without gui
44
45 # gui profile: mobile
46 %package -n system-recovery-gui
47 Summary:        system-recovery with gui
48 Provides:       %{name}-compat = %{version}-%{release}
49 Conflicts:      %{name}-non_gui
50 %description -n system-recovery-gui
51 system-recovery package with gui
52
53 %prep
54 %setup -q
55
56 %build
57 cp %{SOURCE1001} .
58 %autogen
59
60 # common, wearalbe: without gui
61 mkdir -p build_non_gui
62 ln -nfs ../%{_configure} build_non_gui
63 pushd build_non_gui
64 %configure \
65     --disable-recovery-gui \
66     --srcdir=../
67 make %{?_smp_mflags}
68 popd
69
70 # mobile: with gui
71 mkdir -p build_gui
72 ln -nfs ../%{_configure} build_gui
73 pushd build_gui
74 %configure \
75     --srcdir=../
76 make %{?_smp_mflags}
77 popd
78
79 %install
80 mkdir -p %{buildroot}%{_datadir}/license
81 cp -f LICENSE %{buildroot}%{_datadir}/license/initrd-recovery
82
83 # common, wearable
84 pushd build_non_gui
85 %make_install
86 mv %{buildroot}%{_libdir}/system-recovery/recovery-init \
87            %{buildroot}%{_libdir}/system-recovery/recovery-init.non_gui
88 mv %{buildroot}%{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list \
89            %{buildroot}%{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list.non_gui
90 popd
91
92 # mobile
93 pushd build_gui
94 %make_install
95 mv %{buildroot}%{_libdir}/system-recovery/recovery-init \
96            %{buildroot}%{_libdir}/system-recovery/recovery-init.gui
97 mv %{buildroot}%{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list \
98            %{buildroot}%{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list.gui
99 popd
100
101 %post -n system-recovery-non_gui
102 ln -s %{_libdir}/system-recovery/recovery-init.non_gui \
103            %{_libdir}/system-recovery/recovery-init
104 mv %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list.non_gui \
105            %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list
106 %preun -n system-recovery-non_gui
107 rm -f %{_libdir}/system-recovery/recovery-init
108 mv %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list \
109            %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list.non_gui
110
111 %post -n system-recovery-gui
112 ln -s %{_libdir}/system-recovery/recovery-init.gui \
113            %{_libdir}/system-recovery/recovery-init
114 mv %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list.gui \
115            %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list
116 %preun -n system-recovery-gui
117 rm -f %{_libdir}/system-recovery/recovery-init
118 mv %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list \
119            %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list.gui
120
121 %posttrans
122 %{_libdir}/initrd-recovery/mkinitrd-recovery.sh
123
124 %files
125 %defattr(-,root,root,-)
126 %manifest initrd-recovery.manifest
127 %{_datadir}/license/initrd-recovery
128 %{_libdir}/initrd-recovery/init
129 %{_libdir}/initrd-recovery/mkinitrd-recovery.sh
130 %{_libdir}/initrd-recovery/minireboot
131 %{_datadir}/initrd-recovery/initrd.list.d/00-initrd-recovery.list
132
133 %files -n system-recovery
134 %defattr(-,root,root,-)
135 %manifest initrd-recovery.manifest
136
137 %files -n system-recovery-non_gui
138 %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list.non_gui
139 %{_libdir}/system-recovery/recovery-init.non_gui
140
141 %files -n system-recovery-gui
142 %{_datadir}/initrd-recovery/initrd.list.d/50-system-recovery.list.gui
143 %{_libdir}/system-recovery/recovery-init.gui
144 %{_libdir}/system-recovery/system-recovery
145 %{_libdir}/system-recovery/res/images/*.png