graphviz-vl.spec 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422
  1. %define _unpackaged_files_terminate_build 1
  2. Name: graphviz
  3. Summary: Graph Visualization Tools
  4. Summary(ja): グラフ可視化ツール
  5. Version: 2.42.2
  6. Release: 1%{?_dist_release}
  7. Group: Applications/Graphics
  8. License: EPL
  9. URL: http://www.graphviz.org/
  10. Source0: http://www.graphviz.org/pub/graphviz/ARCHIVE/%{name}-%{version}.tar.gz
  11. # rhbz#1505230
  12. Patch0: graphviz-2.42.2-dotty-menu-fix.patch
  13. Patch1: graphviz-2.42.2-coverity-scan-fixes.patch
  14. # Workaround for some const casting badness in the OCaml bindings.
  15. # Real fix will need a fix to SWIG.
  16. Patch2: graphviz-2.42.2-ocaml-allow-const-cast.patch
  17. BuildRoot: %{_tmppath}/%{name}-%{version}-root
  18. BuildRequires: bison
  19. BuildRequires: cairo-devel
  20. BuildRequires: expat-devel
  21. BuildRequires: flex
  22. BuildRequires: fontconfig-devel
  23. BuildRequires: freetype2-devel
  24. BuildRequires: gd-devel
  25. BuildRequires: gmp-devel
  26. BuildRequires: gtk2-devel
  27. BuildRequires: guile-devel
  28. BuildRequires: libjpeg-turbo-devel
  29. BuildRequires: libpng-devel
  30. BuildRequires: libSM-devel
  31. BuildRequires: libtool-ltdl-devel >= 2.2.6a
  32. BuildRequires: libXaw-devel
  33. BuildRequires: libXext-devel
  34. BuildRequires: librsvg2-devel
  35. BuildRequires: lua-devel
  36. BuildRequires: m4
  37. BuildRequires: perl
  38. BuildRequires: python-devel
  39. BuildRequires: python3-devel
  40. BuildRequires: python3-rpm-macros
  41. BuildRequires: python3-setuptools
  42. BuildRequires: ruby-devel
  43. BuildRequires: swig
  44. BuildRequires: tcl-devel >= 8.4
  45. BuildRequires: tk-devel >= 8.4
  46. BuildRequires: zlib-devel
  47. Requires: urw-fonts
  48. # only for this release
  49. # BuildConflicts: graphviz-devel
  50. Vendor: Project Vine
  51. Distribution: Vine Linux
  52. Packager: daisuke
  53. %description
  54. A collection of tools and tcl packages for the manipulation and layout
  55. of graphs (as in nodes and edges, not as in barcharts).
  56. %package devel
  57. Summary: Development tools for version %{version} of %{name}
  58. Group: Development/Libraries
  59. Requires: %{name} = %{version}
  60. %description devel
  61. The %{name}-devel package contains the header files
  62. and man3 pages necessary for developing programs
  63. using version %{version} of the %{name} libraries.
  64. %package doc
  65. Summary: PDF and HTML documents for graphviz
  66. Group: Applications/Documentation
  67. %description doc
  68. Provides some additional PDF and HTML documentation for graphviz.
  69. %package guile
  70. Group: Applications/Graphics
  71. Summary: Guile extension for graphviz
  72. Requires: %{name} = %{version}-%{release}, guile
  73. %description guile
  74. Guile extension for graphviz.
  75. %package lua
  76. Group: Applications/Graphics
  77. Summary: Lua extension for graphviz
  78. Requires: %{name} = %{version}-%{release}, lua
  79. %description lua
  80. Lua extension for graphviz.
  81. %package perl
  82. Group: Applications/Graphics
  83. Summary: Perl extension for graphviz
  84. Requires: %{name} = %{version}-%{release}
  85. Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
  86. %description perl
  87. Perl extension for graphviz.
  88. %package python
  89. Group: Applications/Graphics
  90. Summary: Python extension for graphviz
  91. Requires: %{name} = %{version}-%{release}
  92. Requires: python
  93. %description python
  94. Python extension for graphviz.
  95. %package python3
  96. Group: Applications/Graphics
  97. Summary: Python3 extension for graphviz
  98. Requires: %{name} = %{version}-%{release}
  99. Requires: python3
  100. %description python3
  101. Python3 extension for graphviz.
  102. %package ruby
  103. Group: Applications/Graphics
  104. Summary: Ruby extension for graphviz
  105. Requires: %{name} = %{version}-%{release}
  106. Requires: ruby
  107. %description ruby
  108. Ruby extension for graphviz.
  109. %package tcl
  110. Group: Applications/Graphics
  111. Summary: Tcl extension & tools for graphviz
  112. Requires: tcl >= 8.4, tk >= 8.4
  113. Requires: %{name} = %{version}
  114. %description tcl
  115. Various tcl packages (extensions) for the graphviz tools.
  116. %prep
  117. %setup -q -n graphviz-stable_release_%{version}
  118. %patch0 -p1 -b .dotty-menu-fix
  119. %patch1 -p1 -b .coverity-scan-fixes
  120. %patch2 -p1
  121. # Attempt to fix rpmlint warnings about executable sources
  122. find -type f -regex '.*\.\(c\|h\)$' -exec chmod a-x {} ';'
  123. %build
  124. ./autogen.sh
  125. # using archdir instead of sitearchdir for Vine
  126. sed -i -e "s|sitearchdir|archdir|g" config/config_ruby.rb
  127. # Rewrite config_ruby.rb to work with Ruby 2.1
  128. sed -i 's|expand(|expand(RbConfig::|' config/config_ruby.rb
  129. sed -i 's|sitearchdir|vendorarchdir|' config/config_ruby.rb
  130. # get the path to search for ruby/config.h to CPPFLAGS, so that configure can find it
  131. export CPPFLAGS=-I`ruby -e "puts File.join(RbConfig::CONFIG['includedir'], RbConfig::CONFIG['sitearch'])" || echo /dev/null`
  132. # XXX ix86 only used to have -ffast-math, let's use everywhere
  133. %{expand: %%define optflags %{optflags} -ffast-math}
  134. %configure \
  135. --with-x \
  136. --disable-static \
  137. --with-mylibgd \
  138. --with-ipsepcola \
  139. --with-pangocairo \
  140. --with-gdk-pixbuf \
  141. --without-mylibgd \
  142. --without-ming \
  143. --without-qt \
  144. --disable-sharp \
  145. --enable-guile \
  146. --disable-java \
  147. --enable-lua \
  148. --disable-ocaml \
  149. --enable-perl \
  150. --disable-php \
  151. --enable-python \
  152. --enable-python3 \
  153. --disable-r \
  154. --enable-ruby \
  155. --enable-swig \
  156. --enable-tcl \
  157. --with-visio
  158. make %{?_smp_mflags}
  159. %install
  160. rm -rf $RPM_BUILD_ROOT __doc
  161. make DESTDIR=$RPM_BUILD_ROOT \
  162. docdir=$RPM_BUILD_ROOT%{_docdir}/%{name} \
  163. pkgconfigdir=%{_libdir}/pkgconfig \
  164. install
  165. find ${RPM_BUILD_ROOT} -type f -name "*.la" -exec rm -f {} ';'
  166. chmod -x $RPM_BUILD_ROOT%{_datadir}/%{name}/lefty/*
  167. cp -a $RPM_BUILD_ROOT%{_datadir}/%{name}/doc __doc
  168. rm -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/doc
  169. rm -rf %{buildroot}%{_libdir}/graphviz/python2
  170. %clean
  171. rm -rf $RPM_BUILD_ROOT
  172. # run "dot -c" to generate plugin config in %{_libdir}/%{name}/config
  173. %post
  174. /sbin/ldconfig
  175. %{_bindir}/dot -c
  176. # if there is no dot after everything else is done, then remove config
  177. %postun
  178. if [ $1 -eq 0 ]; then
  179. rm -f %{_libdir}/graphviz/config || :
  180. fi
  181. /sbin/ldconfig
  182. %files
  183. %defattr(-,root,root)
  184. %license COPYING
  185. %doc AUTHORS ChangeLog NEWS README
  186. %{_bindir}/*
  187. %dir %{_datadir}/%{name}
  188. %{_datadir}/%{name}/gvpr
  189. %{_datadir}/%{name}/lefty
  190. %{_mandir}/man1/*
  191. %{_mandir}/man7/*
  192. %dir %{_libdir}/%{name}
  193. %{_libdir}/*.so.*
  194. %{_libdir}/%{name}/*.so.*
  195. %exclude %{_libdir}/graphviz/*/*
  196. %files devel
  197. %defattr(-,root,root)
  198. %{_includedir}/%{name}
  199. %{_libdir}/*.so
  200. %{_libdir}/%{name}/*.so
  201. %{_libdir}/pkgconfig/*.pc
  202. %{_datadir}/%{name}/graphs
  203. %{_mandir}/man3/*.3.gz
  204. %files doc
  205. %defattr(-,root,root,-)
  206. %doc __doc/*
  207. %files guile
  208. %defattr(-,root,root,-)
  209. %{_libdir}/graphviz/guile/
  210. %{_mandir}/man3/gv.3guile*
  211. %files lua
  212. %defattr(-,root,root,-)
  213. %{_libdir}/graphviz/lua/
  214. %{_libdir}/lua*/*
  215. %{_mandir}/man3/gv.3lua*
  216. %files perl
  217. %defattr(-,root,root,-)
  218. %{_libdir}/graphviz/perl/
  219. %{perl_vendorarch}/*
  220. %{_mandir}/man3/gv.3perl*
  221. %files python
  222. %defattr(-,root,root,-)
  223. %{_libdir}/graphviz/python/
  224. %{_libdir}/python2*/*
  225. %files python3
  226. %defattr(-,root,root,-)
  227. %{_libdir}/graphviz/python3/
  228. %{_libdir}/python3*/*
  229. %{_mandir}/man3/gv.3python*
  230. %files ruby
  231. %defattr(-,root,root,-)
  232. %{_libdir}/graphviz/ruby/
  233. %{_libdir}/*ruby*/*
  234. %{_mandir}/man3/gv.3ruby*
  235. %files tcl
  236. %defattr(-,root,root)
  237. %{_libdir}/%{name}/tcl/*
  238. %{_libdir}/tcl*/*
  239. %{_datadir}/%{name}/demo
  240. # hack to include gv.3tcl only if available
  241. # always includes tcldot.3tcl, gdtclft.3tcl
  242. %{_mandir}/man3/*.3tcl*
  243. %changelog
  244. * Mon Mar 16 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.42.2-1
  245. - built with ruby-2.6.5.
  246. - added python3 support.
  247. - dropped Patch0.
  248. - imported Patch0-2 from rawhide.
  249. * Tue Sep 10 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.40.1-2
  250. - rebuilt with guile-2.2.
  251. * Sat Jan 06 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.40.1-1
  252. - updated to 2.40.1.
  253. - dropped all patches.
  254. - imported Patch0 from rawhide.
  255. * Wed Jun 29 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> 2.38.0-4
  256. - rebuild with gcc-5.4.0
  257. * Sat Sep 12 2015 Yoji TOYODA <bsyamato@sea.plala.or.jp> 2.38.0-3
  258. - rebuild with ruby-2.2.3
  259. * Sun Mar 15 2015 Ryoichi INAGAKI <ryo1@toki.waaseda.jp> 2.38.0-2
  260. - added Patch0-5 from Fedora
  261. - rebuilt with guile 2.0.11
  262. - changed BR: tcl-devel, tk-devel instead of tcl, tk
  263. - added lua subpackage
  264. * Sat Jun 28 2014 Daisuke SUZUKI <daisuke@vinelinux.org> 2.38.0-1
  265. - update to 2.38.0
  266. * Wed Jan 15 2014 NAKAMURA Kenta <kenta@vinelinux.org> 2.36.0-1
  267. - new upstream release
  268. * Wed Oct 02 2013 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.30.1-2
  269. - rebuilt with gd-2.1.0.
  270. * Sun Mar 24 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 2.30.1-1
  271. - new upstream release
  272. * Mon Jan 7 2013 IWAI, Masaharu <iwai@alib.jp> 2.28.0-3
  273. - build with Tcl/Tk 8.5.7-1
  274. - stop running autoreconf
  275. - add Vendor and Distribution tags
  276. * Sun Nov 11 2012 Daisuke SUZUKI <daisuke@linux.or.jp> 2.28.0-2
  277. - re-enable ruby binding, which is accidentally disabled in 2.28.0-1
  278. - rewrite config_ruby.rb to build with ruby-1.9.3
  279. - add search path for ruby/config.h to CPPFLAGS for configure
  280. * Sat Nov 10 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 2.28.0-1
  281. - new upstream release
  282. - remove Patch10 (graphviz-2.26.3_dont_regard_tiger_as_the_only_ppc.patch)
  283. - add BuildRequires: librsvg2-devel
  284. * Sun Oct 10 2010 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 2.26.3-2
  285. - add Patch10 to avoid build failure on ppc
  286. * Sat Oct 9 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 2.26.3-1
  287. - new upstream release
  288. - built with rpm-4.8.1
  289. - split doc, guile, perl, python, ruby subpackage
  290. * Thu Apr 16 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 2.20.3-3
  291. - rebuild with libtool-2.2.6a
  292. * Sun Nov 09 2008 Shu KONNO <owa@bg.wakwak.com> 2.20.3-1
  293. - new upstream release
  294. * Sun Nov 09 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 2.20.2-2
  295. - rebuild with libXaw.so.7 (libXaw-1.0.5)
  296. * Wed Jul 16 2008 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 2.20.2-1
  297. - new upstream release
  298. * Wed Feb 20 2008 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 2.16.1-0vl1
  299. - new upstream release
  300. - build with expat-2.0.1
  301. - add man7
  302. * Tue Oct 09 2007 Shu KONNO <owa@bg.wakwak.com> 2.12-0vl2
  303. - rebuild with tcl/tk-8.4.16
  304. * Sun May 13 2007 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 2.12-0vl1
  305. - new upstream release
  306. - add BuildPrereq: swig
  307. - delete BuildPrereq: gd-progs gd-devel
  308. - add --with-mylibgd and --disable-FEATURE to configure option
  309. - update %%files
  310. * Sun Jul 30 2006 NAKAMURA Kenta <kenta@vinelinux.org> 2.6-0vl2
  311. - added BuildPrereq: ruby-devel
  312. * Tue Oct 11 2005 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 2.6-0vl1
  313. - new upstream release
  314. - add BuildPrereq: libtool-ltdl-devel
  315. - move pkgconfig files to %%{_libdir}/pkgconfig
  316. - add --disable-rpath --disable-static to configure option
  317. - add %%post to every package
  318. * Mon Jan 24 2005 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 2.2-0vl1
  319. - new upstream release
  320. - BuildPrereq: tcl >= 8.4, tk >= 8.4
  321. - add BuildPrereq: gd-progs gd-devel flex bison pkgconfig
  322. - update %%files
  323. - remove lines about Vine2.6
  324. - change License to CPL
  325. * Sun May 16 2004 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 1.12-0vl1
  326. - source upgrade
  327. - remove patch0 and commented lines
  328. * Tue Dec 16 2003 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 1.10-0vl2
  329. - build for VineSeed
  330. * Tue Dec 16 2003 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 1.10-0vl1
  331. - source upgrade
  332. - change spec to build both VineSeed and Vine2.5/2.6
  333. - add BuildPrereq: expat-devel and Requires: libexpat
  334. - add patch0 to build against freetype2-2.1.7
  335. - stop using autogen.sh script
  336. - add BuildPrereq: tcl >= 8.3 tk >= 8.3 (VineSeed)
  337. - add graphviz-tcl package (VineSeed)
  338. * Thu Aug 7 2003 USAMI Kosuke <usami-k@yc5.so-net.ne.jp> - 1.9-0vl2
  339. - rebuild for new Vine
  340. * Wed Mar 05 2003 Kunio Murasawa <murasawa@fa2.so-net.ne.jp> 1.9-0vl1
  341. - import from offical site (src.rpm)