gtk3-vl.spec 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440
  1. # Note that this is NOT a relocatable package
  2. %define glib2_base_version 2.36.0
  3. %define glib2_version %{glib2_base_version}-1
  4. %define pango_base_version 1.34.0
  5. %define pango_version %{pango_base_version}-1
  6. %define atk_base_version 2.8.0
  7. %define atk_version %{atk_base_version}-1
  8. %define cairo_base_version 1.12.14
  9. %define cairo_version %{cairo_base_version}-1
  10. %define gdkpixbuf2_base_version 2.28.0
  11. %define gdkpixbuf2_version %{gdkpixbuf2_base_version}-1
  12. %define gobject_introspection_version 1.36.0
  13. %define base_version 3.8.4
  14. %define bin_version 3.0.0
  15. # biarch support
  16. %define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
  17. %define _query_suffix %{nil}
  18. %if %{build_compat32}
  19. %define _query_suffix -32
  20. %endif
  21. Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X.
  22. Summary(ja): X 用 GUI 作成ライブラリ: GIMP ツールキット(GTK+)
  23. Name: gtk3
  24. Version: %{base_version}
  25. Release: 1%{?_dist_release}
  26. License: LGPL
  27. Group: System Environment/Libraries
  28. Source: http://ftp.gnome.org/pub/GNOME/sources/gtk+/3.8/gtk+-%{version}.tar.xz
  29. Patch0: gtk3-3.1.12-gtk-widget-size-allocate.patch
  30. # from upstream
  31. # https://bugzilla.gnome.org/show_bug.cgi?id=703533
  32. # https://git.gnome.org/browse/gtk+/commit/?id=837a0d3e4002e640be2aea2a67802c474997e354
  33. # https://git.gnome.org/browse/gtk+/commit/?id=ea715a49e481bb204e13ca1f24733cfc40017e30
  34. Patch1: gtk3-3.8.2-immodule.patch
  35. # for Vine
  36. Patch100: gtk+-3.4.0-vine-default-theme.patch
  37. BuildRequires: atk-devel >= %{atk_version}
  38. BuildRequires: at-spi2-atk-devel
  39. BuildRequires: pango-devel >= %{pango_version}
  40. BuildRequires: glib2-devel >= %{glib2_version}
  41. BuildRequires: cairo-devel >= %{cairo_version}
  42. BuildRequires: gdk-pixbuf2-devel >= %{gdkpixbuf2_version}
  43. BuildRequires: gobject-introspection-devel >= %{gobject_introspection_version}
  44. BuildRequires: libtiff-devel >= 3.7
  45. BuildRequires: libjpeg-turbo-devel
  46. BuildRequires: libpng-devel
  47. BuildRequires: jasper-devel
  48. BuildRequires: colord-devel
  49. BuildRequires: gtk-doc
  50. BuildRequires: gamin-devel
  51. BuildRequires: cups-devel
  52. BuildRequires: libICE-devel
  53. BuildRequires: libXext-devel
  54. BuildRequires: libXi-devel
  55. BuildRequires: libXrandr-devel >= 1.3.0
  56. BuildRequires: libXrender-devel
  57. BuildRequires: libXcursor-devel
  58. BuildRequires: libXfixes-devel
  59. BuildRequires: libXinerama-devel
  60. BuildRequires: libXcomposite-devel
  61. BuildRequires: libXdamage-devel
  62. BuildRoot: %{_tmppath}/gtk-%{version}-root
  63. URL: http://www.gtk.org
  64. # required for icon themes apis to work
  65. Requires: hicolor-icon-theme
  66. # We need to prereq these so we can run gtk-query-immodules-2.0
  67. Requires(post): glib2 >= %{glib2_version}
  68. Requires(post): atk >= %{atk_version}
  69. Requires(post): pango >= %{pango_version}
  70. Requires(post): libSM >= 1.1.0
  71. # We need to prereq libtiff >= 3.7 to run gdk-pixbuf-query-loaders
  72. Requires(post): libtiff >= 3.7
  73. Requires: libXrandr >= 1.3.0
  74. Vendor: Project Vine
  75. Distribution: Vine Linux
  76. Packager: Takemikaduchi
  77. %description
  78. GTK+ is a multi-platform toolkit for creating graphical user
  79. interfaces. Offering a complete set of widgets, GTK+ is suitable for
  80. projects ranging from small one-off tools to complete application
  81. suites.
  82. %package devel
  83. Summary: Development tools for GTK+ applications.
  84. Summary(ja): GTK+ (GIMP ツールキット) アプリケーション開発ツール
  85. Group: Development/Libraries
  86. Requires: %{name} = %{version}-%{release}
  87. Requires: pango-devel >= %{pango_version}
  88. Requires: atk-devel >= %{atk_version}
  89. Requires: glib2-devel >= %{glib2_version}
  90. Requires: gdk-pixbuf2-devel >= %{gdkpixbuf2_version}
  91. Requires: libX11-devel, libXcursor-devel, libXinerama-devel
  92. Requires: libXext-devel, libXi-devel, libXrandr-devel
  93. Requires: libXfixes-devel, libXcomposite-devel
  94. Requires: libpng-devel
  95. %description devel
  96. The gtk+-devel package contains the header files and developer
  97. docs for the GTK+ widget toolkit.
  98. #######################################################################
  99. # compat32
  100. %package -n compat32-%{name}
  101. Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X.
  102. Summary(ja): X 用 GUI 作成ライブラリ: GIMP ツールキット(GTK+)
  103. Group: System Environment/Libraries
  104. Requires(post): compat32-glib2 >= %{glib2_version}
  105. Requires(post): compat32-atk >= %{atk_version}
  106. Requires(post): compat32-pango >= %{pango_version}
  107. Requires(post): compat32-libSM >= 1.1.0
  108. Requires(post): compat32-libtiff >= 3.7
  109. Requires: compat32-libXrandr >= 1.3.0
  110. %description -n compat32-%{name}
  111. GTK+ is a multi-platform toolkit for creating graphical user
  112. interfaces. Offering a complete set of widgets, GTK+ is suitable for
  113. projects ranging from small one-off tools to complete application
  114. suites.
  115. %package -n compat32-%{name}-devel
  116. Summary: Development tools for GTK+ applications.
  117. Summary(ja): GTK+ (GIMP ツールキット) アプリケーション開発ツール
  118. Group: Development/Libraries
  119. Requires: compat32-%{name} = %{version}-%{release}
  120. Requires: %{name}-devel = %{version}
  121. Requires: compat32-libX11-devel, compat32-libXcursor-devel, compat32-libXinerama-devel
  122. Requires: compat32-libXext-devel, compat32-libXi-devel, compat32-libXrandr-devel
  123. Requires: compat32-libXfixes-devel, compat32-libXcomposite-devel
  124. Requires: compat32-libpng-devel
  125. %description -n compat32-%{name}-devel
  126. The gtk+-devel package contains the header files and developer
  127. docs for the GTK+ widget toolkit.
  128. %prep
  129. %setup -q -n gtk+-%{version}
  130. %patch0 -p1 -b .allocate
  131. %patch1 -p1 -b .immodules
  132. %patch100 -p1 -b .vine-default-theme
  133. #for i in config.guess config.sub ; do
  134. # test -f %{_datadir}/libtool/$i && cp %{_datadir}/libtool/$i .
  135. #done
  136. %build
  137. # if ! pkg-config --exists pangoxft ; then
  138. # echo "No pangoxft.pc!"
  139. # exit 1
  140. # fi
  141. #libtoolize --force --copy
  142. #autoreconf -i
  143. %configure \
  144. --enable-gtk-doc \
  145. --enable-man \
  146. --enable-debug=minimum \
  147. --disable-rebuilds \
  148. --disable-glibtest \
  149. --enable-introspection=yes \
  150. --enable-xkb=yes \
  151. --enable-xinerama=yes \
  152. --enable-xrandr=yes \
  153. --enable-xfixes=yes \
  154. --enable-xcomposite=yes \
  155. --enable-xdamage=yes \
  156. --enable-x11-backend \
  157. --disable-packagekit \
  158. --enable-colord=yes
  159. # fight unused direct deps
  160. sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
  161. make %{?_smp_mflags}
  162. %install
  163. rm -rf $RPM_BUILD_ROOT
  164. make install DESTDIR=$RPM_BUILD_ROOT RUN_QUERY_IMMODULES_TEST=false RUN_QUERY_LOADER_TEST=false
  165. %find_lang gtk30
  166. %find_lang gtk30-properties
  167. cat gtk30.lang gtk30-properties.lang > all.lang
  168. mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gtk-3.0
  169. #
  170. # Make cleaned-up versions of examples and tutorial for installation
  171. #
  172. mkdir -p tmpdocs/tutorial
  173. # install -m 0644 docs/html/gtk_tut.html docs/html/gtk_tut-[0-9]*.html docs/html/*.gif tmpdocs/tutorial
  174. for dir in examples/* ; do
  175. if [ -d $dir ] ; then
  176. mkdir -p tmpdocs/$dir
  177. for file in $dir/* ; do
  178. case $file in
  179. *pre1.2.7)
  180. ;;
  181. *)
  182. install -m 0644 $file tmpdocs/$dir
  183. ;;
  184. esac
  185. done
  186. fi
  187. done
  188. # We need to have separate 32-bit and 64-bit binaries
  189. # for places where we have two copies of the GTK+ package installed.
  190. # (we might have x86_64 and i686 packages on the same system, for example.)
  191. %if %{build_compat32}
  192. cp $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-3.0 \
  193. $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-3.0%{_query_suffix}
  194. %endif
  195. touch $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{bin_version}/immodules.cache
  196. mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/modules
  197. mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/immodules
  198. # Remove unpackaged files
  199. find $RPM_BUILD_ROOT -type f -name "*.la" -exec rm -f {} ';'
  200. rm -rf $RPM_BUILD_ROOT%{_datadir}/themes/Raleigh
  201. mv $RPM_BUILD_ROOT%{_bindir}/gtk-update-icon-cache \
  202. $RPM_BUILD_ROOT%{_bindir}/gtk-update-icon-cache-3.0
  203. %clean
  204. rm -rf $RPM_BUILD_ROOT
  205. %post
  206. /sbin/ldconfig
  207. %{_bindir}/gtk-query-immodules-3.0 --update-cache || : > /dev/null 2>&1
  208. %postun
  209. /sbin/ldconfig
  210. if [ $1 -gt 0 ]; then
  211. %{_bindir}/gtk-query-immodules-3.0 --update-cache || : > /dev/null 2>&1
  212. fi
  213. glib-compile-schemas %{_datadir}/glib-2.0/schemas ||:
  214. %posttrans
  215. glib-compile-schemas %{_datadir}/glib-2.0/schemas ||:
  216. %if %{build_compat32}
  217. %post -n compat32-%{name}
  218. /sbin/ldconfig
  219. %{_bindir}/gtk-query-immodules-3.0%{_query_suffix} --update-cache || : > /dev/null 2>&1
  220. %postun -n compat32-%{name}
  221. /sbin/ldconfig
  222. if [ $1 = 0 ]; then
  223. %{_bindir}/gtk-query-immodules-3.0%{_query_suffix} --update-cache || : > /dev/null 2>&1
  224. fi
  225. %endif
  226. %files -f all.lang
  227. %defattr(-, root, root)
  228. %doc AUTHORS COPYING ChangeLog NEWS README
  229. %{_bindir}/gtk3-demo
  230. %{_bindir}/gtk3-demo-application
  231. %{_bindir}/gtk3-widget-factory
  232. %{_bindir}/gtk-launch
  233. %{_bindir}/gtk-query-immodules-3.0
  234. %{_bindir}/gtk-update-icon-cache-3.0
  235. %{_libdir}/libgtk-3.so.*
  236. %{_libdir}/libgdk-3.so.*
  237. %{_libdir}/libgailutil-3.so.*
  238. %dir %{_libdir}/gtk-3.0
  239. %{_libdir}/gtk-3.0/%{bin_version}
  240. %dir %{_libdir}/gtk-3.0/modules
  241. #%{_libdir}/gtk-3.0/modules/lib*.so
  242. %{_libdir}/girepository-1.0/*.typelib
  243. %{_datadir}/gtk-3.0
  244. %{_datadir}/themes/Default
  245. %{_datadir}/themes/Emacs
  246. %dir %{_sysconfdir}/gtk-3.0
  247. %{_sysconfdir}/gtk-3.0/im-multipress.conf
  248. %{_datadir}/glib-2.0/schemas/*.xml
  249. %files devel
  250. %defattr(-, root, root)
  251. %{_libdir}/lib*.so
  252. %dir %{_libdir}/gtk-3.0
  253. %{_datadir}/gtk-doc/
  254. %{_datadir}/gir-1.0/*.gir
  255. %{_mandir}/man1/*
  256. %exclude %{_mandir}/man1/gtk-update-icon-cache.1.gz
  257. %{_includedir}/*
  258. %{_datadir}/aclocal/*
  259. %{_libdir}/pkgconfig/*
  260. %doc tmpdocs/tutorial
  261. # compat32
  262. %if %{build_compat32}
  263. %files -n compat32-%{name}
  264. %defattr(-, root, root)
  265. %{_bindir}/gtk-query-immodules-3.0%{_query_suffix}
  266. %{_libdir}/libgtk-3.so.*
  267. %{_libdir}/libgdk-3.so.*
  268. %{_libdir}/libgailutil-3.so.*
  269. %dir %{_libdir}/gtk-3.0
  270. %{_libdir}/gtk-3.0/%{bin_version}
  271. %dir %{_libdir}/gtk-3.0/modules
  272. #%{_libdir}/gtk-3.0/modules/lib*.so
  273. %dir %{_sysconfdir}/gtk-3.0
  274. %files -n compat32-%{name}-devel
  275. %defattr(-, root, root)
  276. %{_libdir}/lib*.so
  277. %dir %{_libdir}/gtk-3.0
  278. %endif
  279. %changelog
  280. * Fri Sep 06 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.8.4-1
  281. - new upstream release
  282. * Tue Aug 13 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.8.2-2
  283. - add Patch1 (gtk3-3.8.2-immodule.patch)
  284. * Sat May 18 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.8.2-1
  285. - new upstream release
  286. * Fri Apr 26 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.8.1-1
  287. - new upstream release
  288. * Tue Jan 08 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.6.4-1
  289. - new upstream release
  290. * Fri Jan 04 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.6.3-1
  291. - new upstream release
  292. * Sun Nov 11 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.6.2-1
  293. - new upstream release
  294. * Tue Oct 16 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.6.1-1
  295. - new upstream release
  296. * Wed Sep 26 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.6.0-1
  297. - new upstream release
  298. - add BuildRequires: at-spi2-atk-devel
  299. * Mon Jul 16 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.4.4-1
  300. - new upstream release
  301. * Sat May 12 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.4.3-1
  302. - new upstream release
  303. * Sun May 06 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.4.2-1
  304. - new upstream release
  305. * Sun Apr 22 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.4.1-1
  306. - new upstream release
  307. - update Patch100 (gtk+-3.4.0-vine-default-theme.patch)
  308. * Sun Mar 18 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.2.4-1
  309. - new upstream release
  310. * Fri Dec 23 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.2.3-1
  311. - new upstream release
  312. * Wed Nov 16 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.2.2-1
  313. - new upstream release
  314. - remove Patch1
  315. * Sun Oct 16 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.2.1-1
  316. - new upstream release
  317. - add Patch1 (gtk3-3.2.1-bug658772.patch)
  318. * Wed Sep 28 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.2.0-1
  319. - new upstream release
  320. * Fri Sep 23 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.1.92-1
  321. - new upstream release
  322. * Tue Sep 06 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.1.18-1
  323. - new upstream release
  324. * Sat Sep 03 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.1.16-1
  325. - new upstream release
  326. * Tue Aug 23 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.1.12-1
  327. - new upstream release
  328. - add Patch0 (gtk3-3.1.12-gtk-widget-size-allocate.patch)
  329. * Sun Aug 14 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.1.10-2
  330. - fix %%files
  331. * Sat Jul 30 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.1.10-1
  332. - new upstream release
  333. - add BuildRequires: colord-devel
  334. * Sun Jun 26 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.11-1
  335. - new upstream release
  336. * Sun Apr 24 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.9-1
  337. - new upstream release
  338. * Sat Apr 09 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.8-1
  339. - new upstream release
  340. * Sun Apr 03 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.7-1
  341. - new upstream release
  342. * Sun Mar 27 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.6-1
  343. - new upstream release
  344. * Wed Mar 23 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.4-1
  345. - new upstream release
  346. * Sat Mar 19 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.3-1
  347. - new upstream release
  348. * Sun Mar 13 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.2-1
  349. - new upstream release
  350. * Tue Feb 22 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.1-1
  351. - new upstream release
  352. * Fri Feb 18 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.0-1
  353. - initial build for Vine Linux