gtk3-vl.spec 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. # Note that this is NOT a relocatable package
  2. %define glib2_base_version 2.28.6
  3. %define glib2_version %{glib2_base_version}-1
  4. %define pango_base_version 1.28.3
  5. %define pango_version %{pango_base_version}-1
  6. %define atk_base_version 1.32.0
  7. %define atk_version %{atk_base_version}-1
  8. %define cairo_base_version 1.10.0
  9. %define cairo_version %{cairo_base_version}-1
  10. %define gdkpixbuf2_base_version 2.22.1
  11. %define gdkpixbuf2_version %{gdkpixbuf2_base_version}-1
  12. %define gobject_introspection_version 0.10.0
  13. %define base_version 3.0.9
  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: gtk+-%{version}.tar.bz2
  29. Patch100: gtk+-2.99.3-vine-default-theme.patch
  30. BuildRequires: atk-devel >= %{atk_version}
  31. BuildRequires: pango-devel >= %{pango_version}
  32. BuildRequires: glib2-devel >= %{glib2_version}
  33. BuildRequires: cairo-devel >= %{cairo_version}
  34. BuildRequires: gdk-pixbuf2-devel >= %{gdkpixbuf2_version}
  35. BuildRequires: gobject-introspection-devel >= %{gobject_introspection_version}
  36. BuildRequires: libtiff-devel >= 3.7
  37. BuildRequires: libjpeg-turbo-devel
  38. BuildRequires: libpng-devel
  39. BuildRequires: jasper-devel
  40. BuildRequires: gtk-doc
  41. #BuildRequires: automake17, autoconf
  42. BuildRequires: gamin-devel
  43. BuildRequires: cups-devel
  44. BuildRequires: libICE-devel
  45. BuildRequires: libXext-devel
  46. BuildRequires: libXi-devel
  47. BuildRequires: libXrandr-devel >= 1.3.0
  48. BuildRequires: libXrender-devel
  49. BuildRequires: libXcursor-devel
  50. BuildRequires: libXfixes-devel
  51. BuildRequires: libXinerama-devel
  52. BuildRequires: libXcomposite-devel
  53. BuildRequires: libXdamage-devel
  54. BuildRoot: %{_tmppath}/gtk-%{version}-root
  55. URL: http://www.gtk.org
  56. # required for icon themes apis to work
  57. Requires: hicolor-icon-theme
  58. # We need to prereq these so we can run gtk-query-immodules-2.0
  59. Requires(post): glib2 >= %{glib2_version}
  60. Requires(post): atk >= %{atk_version}
  61. Requires(post): pango >= %{pango_version}
  62. Requires(post): libSM >= 1.1.0
  63. # We need to prereq libtiff >= 3.7 to run gdk-pixbuf-query-loaders
  64. Requires(post): libtiff >= 3.7
  65. Requires: libXrandr >= 1.3.0
  66. Vendor: Project Vine
  67. Distribution: Vine Linux
  68. Packager: Takemikaduchi
  69. %description
  70. GTK+ is a multi-platform toolkit for creating graphical user
  71. interfaces. Offering a complete set of widgets, GTK+ is suitable for
  72. projects ranging from small one-off tools to complete application
  73. suites.
  74. %package devel
  75. Summary: Development tools for GTK+ applications.
  76. Summary(ja): GTK+ (GIMP ツールキット) アプリケーション開発ツール
  77. Group: Development/Libraries
  78. Requires: %{name} = %{version}-%{release}
  79. Requires: pango-devel >= %{pango_version}
  80. Requires: atk-devel >= %{atk_version}
  81. Requires: glib2-devel >= %{glib2_version}
  82. Requires: gdk-pixbuf2-devel >= %{gdkpixbuf2_version}
  83. Requires: libX11-devel, libXcursor-devel, libXinerama-devel
  84. Requires: libXext-devel, libXi-devel, libXrandr-devel
  85. Requires: libXfixes-devel, libXcomposite-devel
  86. Requires: libpng-devel
  87. %description devel
  88. The gtk+-devel package contains the header files and developer
  89. docs for the GTK+ widget toolkit.
  90. #######################################################################
  91. # compat32
  92. %package -n compat32-%{name}
  93. Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X.
  94. Summary(ja): X 用 GUI 作成ライブラリ: GIMP ツールキット(GTK+)
  95. Group: System Environment/Libraries
  96. Requires(post): compat32-glib2 >= %{glib2_version}
  97. Requires(post): compat32-atk >= %{atk_version}
  98. Requires(post): compat32-pango >= %{pango_version}
  99. Requires(post): compat32-libSM >= 1.1.0
  100. Requires(post): compat32-libtiff >= 3.7
  101. Requires: compat32-libXrandr >= 1.3.0
  102. %description -n compat32-%{name}
  103. GTK+ is a multi-platform toolkit for creating graphical user
  104. interfaces. Offering a complete set of widgets, GTK+ is suitable for
  105. projects ranging from small one-off tools to complete application
  106. suites.
  107. %package -n compat32-%{name}-devel
  108. Summary: Development tools for GTK+ applications.
  109. Summary(ja): GTK+ (GIMP ツールキット) アプリケーション開発ツール
  110. Group: Development/Libraries
  111. Requires: compat32-%{name} = %{version}-%{release}
  112. Requires: %{name}-devel = %{version}
  113. Requires: compat32-libX11-devel, compat32-libXcursor-devel, compat32-libXinerama-devel
  114. Requires: compat32-libXext-devel, compat32-libXi-devel, compat32-libXrandr-devel
  115. Requires: compat32-libXfixes-devel, compat32-libXcomposite-devel
  116. Requires: compat32-libpng-devel
  117. %description -n compat32-%{name}-devel
  118. The gtk+-devel package contains the header files and developer
  119. docs for the GTK+ widget toolkit.
  120. %prep
  121. %setup -q -n gtk+-%{version}
  122. %patch100 -p1 -b .vine-default-theme
  123. #for i in config.guess config.sub ; do
  124. # test -f %{_datadir}/libtool/$i && cp %{_datadir}/libtool/$i .
  125. #done
  126. %build
  127. # if ! pkg-config --exists pangoxft ; then
  128. # echo "No pangoxft.pc!"
  129. # exit 1
  130. # fi
  131. #libtoolize --force --copy
  132. #autoreconf -i
  133. %configure --enable-gtk-doc \
  134. --enable-man \
  135. --enable-debug=minimum \
  136. --disable-rebuilds \
  137. --disable-glibtest \
  138. --enable-introspection=yes \
  139. --enable-xrandr \
  140. --enable-xfixes \
  141. --enable-xcomposite \
  142. --enable-xdamage \
  143. --enable-x11-backend
  144. make ARCH=%{_arch}
  145. #make
  146. %install
  147. rm -rf $RPM_BUILD_ROOT
  148. make install DESTDIR=$RPM_BUILD_ROOT RUN_QUERY_IMMODULES_TEST=false RUN_QUERY_LOADER_TEST=false
  149. %find_lang gtk30
  150. %find_lang gtk30-properties
  151. cat gtk30.lang gtk30-properties.lang > all.lang
  152. mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gtk-3.0
  153. #
  154. # Make cleaned-up versions of examples and tutorial for installation
  155. #
  156. mkdir -p tmpdocs/tutorial
  157. # install -m 0644 docs/html/gtk_tut.html docs/html/gtk_tut-[0-9]*.html docs/html/*.gif tmpdocs/tutorial
  158. for dir in examples/* ; do
  159. if [ -d $dir ] ; then
  160. mkdir -p tmpdocs/$dir
  161. for file in $dir/* ; do
  162. case $file in
  163. *pre1.2.7)
  164. ;;
  165. *)
  166. install -m 0644 $file tmpdocs/$dir
  167. ;;
  168. esac
  169. done
  170. fi
  171. done
  172. # We need to have separate 32-bit and 64-bit binaries
  173. # for places where we have two copies of the GTK+ package installed.
  174. # (we might have x86_64 and i686 packages on the same system, for example.)
  175. %if %{build_compat32}
  176. cp $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-3.0 \
  177. $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-3.0%{_query_suffix}
  178. %endif
  179. touch $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{bin_version}/immodules.cache
  180. mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/modules
  181. mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/immodules
  182. # Remove unpackaged files
  183. rm $RPM_BUILD_ROOT%{_libdir}/*.la
  184. rm -rf $RPM_BUILD_ROOT%{_datadir}/themes/Raleigh
  185. rm $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/modules/lib*.la
  186. %clean
  187. rm -rf $RPM_BUILD_ROOT
  188. %post
  189. /sbin/ldconfig
  190. %{_bindir}/gtk-query-immodules-3.0 --update-cache || : > /dev/null 2>&1
  191. %postun
  192. /sbin/ldconfig
  193. if [ $1 -gt 0 ]; then
  194. %{_bindir}/gtk-query-immodules-3.0 --update-cache || : > /dev/null 2>&1
  195. fi
  196. glib-compile-schemas %{_datadir}/glib-2.0/schemas ||:
  197. %posttrans
  198. glib-compile-schemas %{_datadir}/glib-2.0/schemas ||:
  199. %if %{build_compat32}
  200. %post -n compat32-%{name}
  201. /sbin/ldconfig
  202. %{_bindir}/gtk-query-immodules-3.0%{_query_suffix} --update-cache || : > /dev/null 2>&1
  203. %postun -n compat32-%{name}
  204. /sbin/ldconfig
  205. if [ $1 = 0 ]; then
  206. %{_bindir}/gtk-query-immodules-3.0%{_query_suffix} --update-cache || : > /dev/null 2>&1
  207. fi
  208. %endif
  209. %files -f all.lang
  210. %defattr(-, root, root)
  211. %doc AUTHORS COPYING ChangeLog NEWS README
  212. %{_bindir}/gtk3-demo
  213. %{_bindir}/gtk-query-immodules-3.0
  214. %exclude %{_bindir}/gtk-update-icon-cache
  215. %{_libdir}/libgtk-3.so.*
  216. %{_libdir}/libgdk-3.so.*
  217. %{_libdir}/libgailutil-3.so.*
  218. %dir %{_libdir}/gtk-3.0
  219. %{_libdir}/gtk-3.0/%{bin_version}
  220. %dir %{_libdir}/gtk-3.0/modules
  221. %{_libdir}/gtk-3.0/modules/lib*.so
  222. %{_libdir}/girepository-1.0/*.typelib
  223. %{_datadir}/gtk-3.0
  224. %{_datadir}/themes/Default
  225. %{_datadir}/themes/Emacs
  226. %dir %{_sysconfdir}/gtk-3.0
  227. %{_sysconfdir}/gtk-3.0/im-multipress.conf
  228. %{_datadir}/glib-2.0/schemas/*.xml
  229. %files devel
  230. %defattr(-, root, root)
  231. %{_libdir}/lib*.so
  232. %dir %{_libdir}/gtk-3.0
  233. %{_datadir}/gtk-doc/
  234. %{_datadir}/gir-1.0/*.gir
  235. %{_mandir}/man1/*
  236. %exclude %{_mandir}/man1/gtk-update-icon-cache.1.gz
  237. %{_includedir}/*
  238. %{_datadir}/aclocal/*
  239. %{_libdir}/pkgconfig/*
  240. %doc tmpdocs/tutorial
  241. # compat32
  242. %if %{build_compat32}
  243. %files -n compat32-%{name}
  244. %defattr(-, root, root)
  245. %{_bindir}/gtk-query-immodules-3.0%{_query_suffix}
  246. %{_libdir}/libgtk-3.so.*
  247. %{_libdir}/libgdk-3.so.*
  248. %{_libdir}/libgailutil-3.so.*
  249. %dir %{_libdir}/gtk-3.0
  250. %{_libdir}/gtk-3.0/%{bin_version}
  251. %dir %{_libdir}/gtk-3.0/modules
  252. %{_libdir}/gtk-3.0/modules/lib*.so
  253. %dir %{_sysconfdir}/gtk-3.0
  254. %files -n compat32-%{name}-devel
  255. %defattr(-, root, root)
  256. %{_libdir}/lib*.so
  257. %dir %{_libdir}/gtk-3.0
  258. %{_libdir}/pkgconfig/*
  259. %endif
  260. %changelog
  261. * Sun Apr 24 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.9-1
  262. - new upstream release
  263. * Sun Apr 09 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.8-1
  264. - new upstream release
  265. * Sun Apr 03 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.7-1
  266. - new upstream release
  267. * Sun Mar 27 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.6-1
  268. - new upstream release
  269. * Wed Mar 23 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.4-1
  270. - new upstream release
  271. * Sat Mar 19 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.3-1
  272. - new upstream release
  273. * Sun Mar 13 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.2-1
  274. - new upstream release
  275. * Fri Feb 22 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.1-1
  276. - new upstream release
  277. * Fri Feb 18 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 3.0.0-1
  278. - initial build for Vine Linux