4 %_sysconfdir %{_buildPrefix}${sysconfdir}
5 %_localstatedir %{_buildPrefix}${localstatedir}
6 %_defaultdocdir %{_usr}/share/doc/packages
7 %_unitdir_user ${systemd_unitdir}/user
8 %_unitdir ${systemd_unitdir}/system
10 # package build macros
11 # %make_install make install DESTDIR=%{?buildroot}
12 # %makeinstall make DESTDIR=%{?buildroot:%{buildroot}} install
13 %rb_arch %(echo %{_host_cpu}-linux | sed -e "s/i686/i586/" -e "s/armv5tel/armv4l/" -e "s/hppa2.0/hppa/")
14 %rb_ver %(/usr/bin/ruby -e 'puts VERSION.sub(/\\\.\\\d$/, "")')
16 # this script calls all scripts in /usr/lib/rpm/brp-tizen.d
18 /usr/lib/rpm/brp-compress \
19 /usr/lib/rpm/brp-tizen \
20 %{!?disable_docs_package:/usr/lib/rpm/tizen/find-docs.sh %{buildroot}} \
23 # macro: %configure_kernel_source
26 %configure_kernel_source() \
27 if test -d /usr/src/linux ; then \
28 pushd /usr/src/linux \
29 test -f .config || cp arch/%_arch/defconfig.default .config \
30 yes "" | make oldconfig \
38 NUM_ARGS=${#ALL_ARGS[@]} \
39 if test -x /sbin/install-info ; then \
40 if test -e "${ALL_ARGS[$((NUM_ARGS-1))]}" ; then \
41 /sbin/install-info "${ALL_ARGS[@]}" \
45 %install_info_delete(:-:) \
47 NUM_ARGS=${#ALL_ARGS[@]} \
48 if test -x /sbin/install-info ; then \
49 if ! test -e "${ALL_ARGS[$((NUM_ARGS-1))]}" ; then \
50 /sbin/install-info --quiet --delete "${ALL_ARGS[@]}" \
54 # find-supplements.ksyms parses this macro directly out of the spec file:
55 %supplements_kernel_module() \
56 %{expand:%(if ! rpm -q kernel-syms > /dev/null; then echo "%fail Please add the kernel-syms package to BuildRequires"; fi)}
59 %cflags_profile_generate -fprofile-generate
60 %cflags_profile_feedback -fprofile-use
78 DESTDIR=%{?buildroot:%{buildroot}} \\\
81 exec_prefix=%{_exec_prefix} \\\
83 sbindir=%{_sbindir} \\\
84 sysconfdir=%{_sysconfdir} \\\
85 datadir=%{_datadir} \\\
86 includedir=%{_includedir} \\\
88 libexecdir=%{_libexecdir} \\\
89 localstatedir=}%{_localstatedir} \\\
90 sharedstatedir=%{_sharedstatedir} \\\
92 infodir=%{_infodir} \\\
98 DESTDIR=%{?buildroot:%{buildroot}} \\\
99 INSTALL_ROOT=%{?buildroot:%{buildroot}} \\\
100 BINDIR=%{_bindir} \\\
102 rm -f %{?buildroot:%{buildroot}}%{_infodir}/dir \
103 find %{?buildroot:%{buildroot}} -regex ".*\\.la$" | xargs rm -f -- \
104 %{!?keepstatic:find %{?buildroot:%{buildroot}} -regex ".*\\.a$" | xargs rm -f --}
106 %_smp_mflags \${PARALLEL_MAKE}
108 %lang_package(n:f:) \
109 %package %{-n:-n %{-n*}-}locale \
110 Summary: Translations and Locale for package %{name}\
111 Group: System/Localization\
112 Requires: %{-n:%{-n*}}%{!-n:%{name}} = %{version} \
113 Provides: %{-n:%{-n*}}%{!-n:%{name}}-lang-all = %{version} \
115 %description %{-n:-n %{-n*}-}locale\
116 This package provides translations for package %{name}.\
117 %files %{-n:-n %{-n*}-}locale -f %{-f:%{-f*}.lang} %{!-f:%{name}.lang}\
118 %defattr(-,root,root,-)\
123 Summary: Documentation for package %{name}\
124 Group: Documentation\
127 This package provides documentation for package %{name}.\
128 %files docs -f documentation.list\
129 %defattr(-,root,root,-)\
132 # Bad hack to set $LANG to C during all RPM builds
144 LD_AS_NEEDED=1; export LD_AS_NEEDED ;\
147 %install %{?_enable_debug_packages:%{?buildsubdir:%{debug_package}}}\
152 rm -rf %{?buildroot:%{buildroot}}\
153 mkdir -p %{?buildroot:%{buildroot}}\
158 rm -rf %{?buildroot:%{buildroot}}\
161 %find_lang %{_rpmconfigdir}/lib/find-lang.sh \${D}%{_buildPrefix}
162 %find_docs %{_rpmconfigdir}/lib/tizen/find-docs.sh %{buildroot}
166 #==============================================================================
167 # ---- default .desktop directories per the desktop-entry freedesktop.org spec
169 %_desktopdir %{_datadir}/applications
171 #==============================================================================
172 # ---- Generic auto req/prov filtering macros
174 # http://fedoraproject.org/wiki/PackagingDrafts/AutoProvidesAndRequiresFiltering
176 # prevent anything matching from being scanned for provides
177 %filter_provides_in(P) %{expand: \
178 %global __filter_prov_cmd %{?__filter_prov_cmd} %{__grep} -v %{-P} '%*' | \
181 # prevent anything matching from being scanned for requires
182 %filter_requires_in(P) %{expand: \
183 %global __filter_req_cmd %{?__filter_req_cmd} %{__grep} -v %{-P} '%*' | \
186 # filter anything matching out of the provides stream
187 %filter_from_provides() %{expand: \
188 %global __filter_from_prov %{?__filter_from_prov} | %{__sed} -e '%*' \
191 # filter anything matching out of the requires stream
192 %filter_from_requires() %{expand: \
193 %global __filter_from_req %{?__filter_from_req} | %{__sed} -e '%*' \
196 # actually set up the filtering bits
197 %filter_setup %{expand: \
198 %global _use_internal_dependency_generator 0 \
199 %global __deploop() while read FILE; do /usr/lib/rpm/rpmdeps -%{1} ${FILE}; done | /bin/sort -u \
200 %global __find_provides /bin/sh -c "%{?__filter_prov_cmd} %{__deploop P} %{?__filter_from_prov}" \
201 %global __find_requires /bin/sh -c "%{?__filter_req_cmd} %{__deploop R} %{?__filter_from_req}" \
205 rm -rf %{?buildroot:%{buildroot}}%{_infodir} \
206 rm -rf %{?buildroot:%{buildroot}}%{_defaultdocdir} \
207 rm -rf %{?buildroot:%{buildroot}}%{_datadir}/doc/%{name} \
208 rm -rf %{?buildroot:%{buildroot}}%{_datadir}/doc/%{name}-%{version} \
209 rm -rf %{?buildroot:%{buildroot}}%{_datadir}/gtk-doc \
210 rm -rf %{?buildroot:%{buildroot}}%{_datadir}/doc \
211 rm -rf %{?buildroot:%{buildroot}}%{_datadir}/man \
212 find %{?buildroot:%{buildroot}} -regex ".*/man/man./.*\.[0-9]" | xargs rm -f -- \
213 find %{?buildroot:%{buildroot}} -regex ".*/man/../man./.*\.[0-9]" | xargs rm -f -- \
214 find %{?buildroot:%{buildroot}} -regex ".*/man/man./.*\.[0-9]pm" | xargs rm -f --
218 mkdir -p %{buildroot}/%{_unitdir}/%{1} \
219 ln -s ../%{2} %{buildroot}/%{_unitdir}/%{1}/%{2} \
223 %_fontsdir %{_usr}/share/fonts
224 %_ttfontsdir %{_fontsdir}/truetype
225 %_miscfontsdir %{_fontsdir}/misc
226 %_fontsconfdir %{_sysconfdir}/fonts
227 %_fontsconfddir %{_fontsconfdir}/conf.d
228 %_fontsconfavaildir %{_datadir}/%{name}/conf.avail
232 Summary: Development files for package %{name}\
235 This package provides header files and other developer releated files for package %{name}.\
238 %{_libdir}/pkgconfig/*.pc\
242 %devel_desc This package contains all necessary include files and libraries needed \
243 to develop applications that require %{name}.\