Fix sign extension error
[platform/core/uifw/libtdm.git] / packaging / libtdm.spec
1 %define HALTESTS_PACKAGE 1
2 %define HALTESTS_GCOV    0
3
4 Name:           libtdm
5 Version:        3.1.5
6 Release:        0
7 Summary:        User Library of Tizen Display Manager
8 Group:          Development/Libraries
9 License:        MIT
10 Source0:        %{name}-%{version}.tar.gz
11 Source1001:         %{name}.manifest
12 BuildRequires:  pkgconfig(libtbm)
13 BuildRequires:  pkgconfig(libpng)
14 BuildRequires:  pkgconfig(ttrace)
15 BuildRequires:  pkgconfig(wayland-server)
16 BuildRequires:  pkgconfig(wayland-client)
17 BuildRequires:  pkgconfig(iniparser)
18 BuildRequires:  pkgconfig(pixman-1)
19 BuildRequires:  pkgconfig(hal-api-tdm)
20 BuildRequires:  gtest-devel 
21
22 %description
23 Common user library of Tizen Display Manager : libtdm front-end library
24
25 %package devel
26 Summary:        Devel of Tizen Display Manager Library
27 Group:          Development/Libraries
28 Requires:       libtdm = %{version}
29 Requires:       pkgconfig(libtbm)
30
31 %description devel
32 This supports frontend & backend library header and so
33
34 %package client
35 Summary:        Client library for Tizen Display Manager
36 Group:          Development/Libraries
37 Requires:       libtdm = %{version}
38
39 %description client
40 Tizen Display Manager Client Library
41
42 %package client-devel
43 Summary:        Client library for Tizen Display Manager
44 Group:          Development/Libraries
45 Requires:       libtdm-client = %{version}
46 Requires:       libtdm-devel
47
48 %description client-devel
49 Tizen Display Manager Client Library headers
50
51 %if "%{HALTESTS_PACKAGE}" == "1"
52 %package haltests
53 Summary: Tizen Display Manager unit tests package
54 Group: Development/Libraries
55
56 %description haltests
57 Test module for testing libtdm APIs
58 %endif
59
60 %global TZ_SYS_RO_SHARE  %{?TZ_SYS_RO_SHARE:%TZ_SYS_RO_SHARE}%{!?TZ_SYS_RO_SHARE:/usr/share}
61
62 %package tools
63 Summary:        Tools for libtdm
64 Group:          Development/Utilities
65 Requires:       libtdm = %{version}
66
67 %description tools
68 This contains libtdm tools for fundamental testing
69
70 %prep
71 %setup -q
72 cp %{SOURCE1001} .
73
74 %build
75 HALTESTS="no"
76
77 %if "%{HALTESTS_PACKAGE}" == "1"
78 HALTESTS="yes"
79 %endif
80
81 %if "%{HALTESTS_GCOV}" == "1"
82 CFLAGS+=" -fprofile-arcs -ftest-coverage -DTIZEN_TEST_GCOV"
83 CXXFLAGS+=" -fprofile-arcs -ftest-coverage -DTIZEN_TEST_GCOV"
84 LDFLAGS+=" -lgcov"
85 %endif
86
87 %reconfigure --disable-static --with-haltests=${HALTESTS} --bindir=%{_bindir}/hal \
88              --with-default-dlog=yes \
89              --with-tdm-data-path=%{TZ_SYS_RO_SHARE}/tdm \
90              CFLAGS="${CFLAGS} -Wall -Werror" \
91              CXXFLAGS="${CXXFLAGS} -Wall -Werror" \
92              LDFLAGS="${LDFLAGS} -Wl,--hash-style=both -Wl,--as-needed"
93 make %{?_smp_mflags}
94
95 %install
96 rm -rf %{buildroot}
97 %make_install
98
99 %__mkdir_p %{buildroot}%{_unitdir_user}
100 install -m 644 service/tdm-socket-user.service %{buildroot}%{_unitdir_user}
101 install -m 644 service/tdm-socket-user.path %{buildroot}%{_unitdir_user}
102
103 %remove_docs
104
105
106 %pre
107 %__mkdir_p %{_unitdir_user}/basic.target.wants
108 ln -sf ../tdm-socket-user.path %{_unitdir_user}/basic.target.wants/
109
110 %post
111 %if "%{HALTESTS_PACKAGE}" == "1"
112 if [ -f %{_bindir}/tdm-haltests ]; then
113     rm -f %{_bindir}/tdm-haltests
114 fi
115 ln -s %{_bindir}/hal/tdm-haltests %{_bindir}/tdm-haltests
116 %endif
117 if [ -f %{_bindir}/tdm-monitor ]; then
118     rm -f %{_bindir}/tdm-monitor
119 fi
120 ln -s %{_bindir}/hal/tdm-monitor %{_bindir}/tdm-monitor
121
122 if [ -f %{_bindir}/tdm-test-client ]; then
123     rm -f %{_bindir}/tdm-test-client
124 fi
125 ln -s %{_bindir}/hal/tdm-test-client %{_bindir}/tdm-test-client
126
127 if [ -f %{_bindir}/tdm-test-server ]; then
128     rm -f %{_bindir}/tdm-test-server
129 fi
130 ln -s %{_bindir}/hal/tdm-test-server %{_bindir}/tdm-test-server
131
132 %postun -p /sbin/ldconfig
133 rm -f %{_unitdir_user}/basic.target.wants/tdm-socket-user.path
134
135 %files
136 %manifest %{name}.manifest
137 %defattr(-,root,root,-)
138 %license COPYING
139 %{_libdir}/libtdm.so.*
140 %{_libdir}/tdm/libtdm-dummy.so
141 %{_libdir}/tdm/libtdm-virtual.so
142 %attr(750,root,root) %{_bindir}/hal/tdm-monitor
143 %{_unitdir_user}/tdm-socket-user.path
144 %{_unitdir_user}/tdm-socket-user.service
145
146 %files devel
147 %manifest %{name}.manifest
148 %defattr(-,root,root,-)
149 %{_includedir}/tdm.h
150 %{_includedir}/tdm_common.h
151 %{_includedir}/tdm_backend.h
152 %{_includedir}/tdm_helper.h
153 %{_includedir}/tdm_list.h
154 %{_includedir}/tdm_log.h
155 %{_includedir}/tdm_types.h
156 %{_includedir}/tdm_deprecated.h
157 %{_libdir}/pkgconfig/libtdm.pc
158 %{_libdir}/libtdm.so
159
160 %files client
161 %manifest %{name}.manifest
162 %defattr(-,root,root,-)
163 %license COPYING
164 %{_libdir}/libtdm-client.so.*
165
166 %files client-devel
167 %manifest %{name}.manifest
168 %defattr(-,root,root,-)
169 %{_includedir}/tdm_client.h
170 %{_includedir}/tdm_client_types.h
171 %{_libdir}/pkgconfig/libtdm-client.pc
172 %{_libdir}/libtdm-client.so
173
174 %files tools
175 %manifest %{name}.manifest
176 %attr(750,root,root) %{_bindir}/hal/tdm-test-server
177 %{_bindir}/hal/tdm-test-client
178
179 %if "%{HALTESTS_PACKAGE}" == "1"
180 %files haltests
181 %defattr(-,root,root,-)
182 %{_bindir}/hal/tdm-haltests
183 %endif
184
185 %changelog