packaging: do not install files overlapping Weston's ones
[profile/ivi/weston-ivi-shell.git] / packaging / weston-ivi-shell.spec
1 Name:           weston-ivi-shell
2 Version:        0.1.9
3 Release:        0
4 Summary:        Weston IVI Shell
5 License:        MIT
6 Group:          Graphics & UI Framework/Wayland Window System
7 Url:            https://github.com/ntanibata/weston-ivi-shell/
8 Source0:        %name-%version.tar.xz
9 Source1:        weston.ini
10 Source1001:     weston-ivi-shell.manifest
11 BuildRequires:  autoconf >= 2.64, automake >= 1.11
12 BuildRequires:  libtool >= 2.2
13 BuildRequires:  libjpeg-devel
14 BuildRequires:  pkgconfig
15 BuildRequires:  pkgconfig(weston) >= 1.6
16 BuildRequires:  pkgconfig(cairo-egl) >= 1.11.3
17 BuildRequires:  pkgconfig(egl) >= 7.10
18 BuildRequires:  pkgconfig(mtdev) >= 1.1.0
19 BuildRequires:  pkgconfig(pixman-1)
20 BuildRequires:  pkgconfig(wayland-client) >= 1.6
21 BuildRequires:  pkgconfig(wayland-egl)
22 BuildRequires:  pkgconfig(wayland-server) >= 1.6
23 BuildRequires:  pkgconfig(xkbcommon) >= 0.3.0
24 BuildRequires:  pkgconfig(pangocairo) >= 1.34.0
25 Requires:       weston >= 1.6
26
27 %description
28 A reference Weston shell designed for use in IVI systems.
29
30 %package devel
31 Summary: Development files for package %{name}
32 Group:   Graphics & UI Framework/Development
33 Requires:  %{name} = %{version}-%{release}
34 %description devel
35 This package provides header files and other developer releated files
36 for package %{name}.
37
38 %package clients
39 Summary: Sample clients for package %{name}
40 Group:   Graphics & UI Framework/Development
41 %description clients
42 This package provides a set of example ivi wayland clients useful for
43 validating the functionality of wayland with very little dependencies
44 on other system components.
45
46 %package config
47 Summary:    Tizen IVI Weston configuration for package %{name}
48 Group:      Automotive/Configuration
49 Requires:   weston-ivi-shell-clients
50 Requires:   weekeyboard
51 Requires:   genivi-shell
52 Conflicts:  weston-ivi-config
53 Conflicts:  ico-uxf-weston-plugin
54 %description config
55 This package contains Tizen IVI-specific configuration for %{name}.
56
57 %prep
58 %setup -q
59 cp %{SOURCE1001} .
60
61 %build
62 # We only care about the ivi-shell related bits so disable anything
63 # unrelated.
64 %autogen \
65     --disable-static \
66     --disable-libunwind \
67     --disable-xwayland \
68     --disable-xwayland-test \
69     --disable-drm-compositor \
70     --disable-x11-compositor \
71     --disable-rpi-compositor \
72     --disable-fbdev-compositor \
73     --disable-wayland-compositor \
74     --disable-headless-compositor \
75     --disable-weston-launch \
76     --enable-simple-clients \
77     --enable-clients \
78     --disable-wcap-tools \
79     --enable-demo-clients-install \
80     --disable-libinput-backend \
81     --disable-fullscreen-shell \
82     --disable-desktop-shell \
83     --disable-simple-clients \
84     --enable-ivi-shell
85
86 %__make %{?_smp_mflags}
87
88
89 %install
90 %make_install
91
92 # install example clients
93 %define ivi_shell_client_dir %{_bindir}/ivi
94 mkdir -p %{buildroot}%{ivi_shell_client_dir}
95 #mv %{buildroot}%{_bindir}/weston-calibrator %{buildroot}%{ivi_shell_client_dir}
96 #mv %{buildroot}%{_bindir}/weston-simple-touch %{buildroot}%{ivi_shell_client_dir}
97 #mv %{buildroot}%{_bindir}/weston-simple-shm %{buildroot}%{ivi_shell_client_dir}
98 mv %{buildroot}%{_bindir}/weston-simple-egl %{buildroot}%{ivi_shell_client_dir}
99 mv %{buildroot}%{_bindir}/weston-flower %{buildroot}%{ivi_shell_client_dir}
100 mv %{buildroot}%{_bindir}/weston-image %{buildroot}%{ivi_shell_client_dir}
101 mv %{buildroot}%{_bindir}/weston-cliptest %{buildroot}%{ivi_shell_client_dir}
102 mv %{buildroot}%{_bindir}/weston-dnd %{buildroot}%{ivi_shell_client_dir}
103 mv %{buildroot}%{_bindir}/weston-editor %{buildroot}%{ivi_shell_client_dir}
104 mv %{buildroot}%{_bindir}/weston-smoke %{buildroot}%{ivi_shell_client_dir}
105 mv %{buildroot}%{_bindir}/weston-resizor %{buildroot}%{ivi_shell_client_dir}
106 mv %{buildroot}%{_bindir}/weston-eventdemo %{buildroot}%{ivi_shell_client_dir}
107 mv %{buildroot}%{_bindir}/weston-clickdot %{buildroot}%{ivi_shell_client_dir}
108 mv %{buildroot}%{_bindir}/weston-subsurfaces %{buildroot}%{ivi_shell_client_dir}
109 mv %{buildroot}%{_bindir}/weston-transformed %{buildroot}%{ivi_shell_client_dir}
110 mv %{buildroot}%{_bindir}/weston-fullscreen %{buildroot}%{ivi_shell_client_dir}
111 mv %{buildroot}%{_bindir}/weston-terminal %{buildroot}%{ivi_shell_client_dir}
112
113 install -d %{buildroot}/%{_datadir}/%{name}/protocol/
114
115 install -m 644 protocol/*.xml \
116     %{buildroot}/%{_datadir}/%{name}/protocol/
117
118 install -m 644 protocol/*.h \
119     %{buildroot}/%{_datadir}/%{name}/protocol/
120
121 install -m 644 protocol/*.c \
122     %{buildroot}/%{_datadir}/%{name}/protocol/
123
124 %define weston_config_dir %{_sysconfdir}/xdg/weston
125 mkdir -p %{buildroot}%{weston_config_dir}
126 install -m 0644 %{SOURCE1} %{buildroot}%{weston_config_dir}
127 install -d %{buildroot}/%{_datadir}/weston/
128
129 %define _unpackaged_files_terminate_build 0
130
131
132 %files
133 %manifest %{name}.manifest
134 %defattr(-,root,root)
135 %license COPYING
136 %_libdir/weston/ivi-shell.so
137 %_libdir/weston/ivi-layout.so
138 %_libdir/weston/hmi-controller.so
139 %_libexecdir/weston-ivi-shell-user-interface
140 %_datadir/weston/*
141
142 %exclude %_bindir/weston
143 %exclude %_libdir/weston/desktop-shell.so
144 # exclude png files installed by the weston package
145 %exclude %_datadir/weston/wayland.svg
146 %exclude %_datadir/weston/wayland.png
147 %exclude %_datadir/weston/pattern.png
148 %exclude %_datadir/weston/terminal.png
149 %exclude %_datadir/weston/border.png
150 %exclude %_datadir/weston/icon_window.png
151 %exclude %_datadir/weston/sign_close.png
152 %exclude %_datadir/weston/sign_maximize.png
153 %exclude %_datadir/weston/sign_minimize.png
154
155 %files devel
156 %manifest %{name}.manifest
157 %_includedir/weston/ivi-layout-export.h
158 %_includedir/weston/ivi-layout-private.h
159 %_includedir/weston/ivi-shell.h
160 %_includedir/weston/ivi-shell-ext.h
161 %{_datadir}/%{name}/protocol/*
162
163 %files clients
164 %manifest %{name}.manifest
165 #%{ivi_shell_client_dir}/weston-simple-touch
166 #%{ivi_shell_client_dir}/weston-simple-shm
167 %{ivi_shell_client_dir}/weston-simple-egl
168 %{ivi_shell_client_dir}/weston-flower
169 %{ivi_shell_client_dir}/weston-image
170 %{ivi_shell_client_dir}/weston-cliptest
171 %{ivi_shell_client_dir}/weston-dnd
172 %{ivi_shell_client_dir}/weston-editor
173 %{ivi_shell_client_dir}/weston-smoke
174 %{ivi_shell_client_dir}/weston-resizor
175 %{ivi_shell_client_dir}/weston-eventdemo
176 %{ivi_shell_client_dir}/weston-clickdot
177 %{ivi_shell_client_dir}/weston-subsurfaces
178 %{ivi_shell_client_dir}/weston-transformed
179 %{ivi_shell_client_dir}/weston-fullscreen
180 %{ivi_shell_client_dir}/weston-terminal
181 #%{ivi_shell_client_dir}/weston-calibrator
182
183 %files config
184 %manifest %{name}.manifest
185 %config %{weston_config_dir}/weston.ini
186
187 %exclude %_libdir/pkgconfig/weston.pc