tcl-vl.spec 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493
  1. %define majorver 8.6
  2. %define minorver 9
  3. %define version %{majorver}.%{minorver}
  4. %define htmlver %{majorver}.%{minorver}
  5. %global itcl_version 4.1.2
  6. %global tdbc_version 1.1.0
  7. %global thread_version 2.8.4
  8. %{!?sdt:%define sdt 0}
  9. Summary: A Tcl/Tk development environment: tcl
  10. Summary(ja): Tcl/Tk 開発環境: tcl
  11. Name: tcl
  12. Version: %{version}
  13. Release: 1%{?_dist_release}
  14. Group: Development/Languages
  15. License: TCL
  16. URL: http://tcl.sourceforge.net/
  17. Source0: https://prdownloads.sourceforge.net/tcl/%{name}%{version}-src.tar.gz
  18. Source1: https://prdownloads.sourceforge.net/tcl/%{name}%{htmlver}-html.tar.gz
  19. # patches from Red Hat Enterprise Linux tcl-8.5.7-6.el6
  20. Patch100: tcl-8.5.1-autopath.patch
  21. Patch102: tcl-8.5.0-hidden.patch
  22. # Upstream ticket:
  23. # https://core.tcl.tk/tcl/tktview/7d0db7c388f52de81faf12da332bc97a24f7b9e5
  24. Patch103: tcl-8.6.5-parallel-make-fix.patch
  25. Buildroot: %{_tmppath}/%{name}-%{version}-root
  26. Buildrequires: autoconf
  27. BuildRequires: zlib-devel
  28. %if %sdt
  29. BuildRequires: systemtap-sdt-devel
  30. %endif
  31. Vendor: Project Vine
  32. Distribution: Vine Linux
  33. %description
  34. Tcl is a simple scripting language designed to be embedded into
  35. other applications. Tcl is designed to be used with Tk, a widget
  36. set, which is provided in the tk package. This package also includes
  37. tclsh, a simple example of a Tcl application.
  38. %description -l ja
  39. Tcl は様々なアプリケーションの実行を行うための、簡単なスクリプ
  40. ト言語です。Tclはウィジッド・セットであるTkとともに用いるように
  41. デザインしています。このパッケージにはTclの簡単な例として、tclsh
  42. も含んでいます。
  43. %package devel
  44. Summary: Tcl scripting language development environment
  45. Summary(ja): Tcl スクリプト言語の開発環境
  46. Group: Development/Libraries
  47. Requires: %{name} = %{version}-%{release}
  48. %description devel
  49. Tcl is a simple scripting language designed to be embedded into
  50. other applications. Tcl is designed to be used with Tk, a widget
  51. set, which is provided in the tk package. This package also includes
  52. tclsh, a simple example of a Tcl application.
  53. The package contains the development files and man pages for tcl.
  54. %package itcl
  55. Summary: Object oriented extensions to Tcl and Tk
  56. Summary(ja): Tcl/Tk のオブジェクト指向拡張
  57. Group: Development/Libraries
  58. Requires: %{name} = %{version}-%{release}
  59. Provides: itcl = %{itcl_version}
  60. Obsoletes: itcl < 4.0.0
  61. %description itcl
  62. [incr Tcl] is Tcl extension that provides object-oriented features that are
  63. missing from the Tcl language.
  64. %package itcl-devel
  65. Summary: Development headers and libraries for linking against tcl-itcl
  66. Summary(ja): tcl-itclとリンクするためのヘッダ・ライブラリ
  67. Group: Development/Libraries
  68. Requires: %{name}-itcl = %{version}-%{release}
  69. Provides: itcl-devel = %{itcl_version}
  70. Obsoletes: itcl-devel < 4.0.0
  71. %description itcl-devel
  72. Development headers and libraries for linking against itcl.
  73. %package tdbc
  74. Summary: database extensions to Tcl and Tk
  75. Summary(ja): Tcl/Tk のデータベース拡張
  76. Group: Development/Libraries
  77. Requires: %{name} = %{version}-%{release}
  78. Provides: tdbc = %{tdbc_version}
  79. %description tdbc
  80. tdbc is Tcl extension that provides database features to tcl/tk.
  81. %package tdbc-devel
  82. Summary: Development headers and libraries for linking against tcl-tdbc
  83. Summary(ja): tcl-tdbcとリンクするためのヘッダ・ライブラリ
  84. Group: Development/Libraries
  85. Requires: %{name}-tdbc = %{version}-%{release}
  86. Requires: sqlite3-tcl
  87. Provides: tdbc-devel = %{tdbc_version}
  88. %description tdbc-devel
  89. Development headers and libraries for linking against tdbc.
  90. %package thread
  91. Summary: thread extensions to Tcl and Tk
  92. Summary(ja): Tcl/Tk のスレッド拡張
  93. Group: Development/Libraries
  94. Requires: %{name} = %{version}-%{release}
  95. Provides: thread = %{thread_version}
  96. Obsoletes: thread < 2.8.0
  97. %description thread
  98. You can use this extension to gain script-level access to Tcl threading
  99. capabilities.
  100. %prep
  101. %setup -n %{name}%{version} -q -a 1
  102. mv tcl%{htmlver}/html .
  103. %patch100 -p1 -b .autopath
  104. %patch102 -p1 -b .hidden
  105. %patch103 -p1 -b .parallel-make-fix
  106. pushd unix
  107. sed -i -e 's/@SHLIB_LD@/@SHLIB_LD@ -fPIC -Wl,-soname,libtcl%{majorver}.so/' Makefile.in
  108. popd
  109. %build
  110. pushd unix
  111. autoconf
  112. %configure \
  113. --disable-rpath \
  114. %if %sdt
  115. --enable-dtrace \
  116. %endif
  117. --disable-threads \
  118. --enable-symbols \
  119. --enable-shared
  120. make %{?_smp_mflags} CFLAGS="%{optflags} -fPIC" TCL_LIBRARY=%{_datadir}/%{name}%{majorver}
  121. %install
  122. rm -rf $RPM_BUILD_ROOT
  123. make install -C unix INSTALL_ROOT=$RPM_BUILD_ROOT TCL_LIBRARY=%{_datadir}/%{name}%{majorver}
  124. ln -s tclsh%{majorver} $RPM_BUILD_ROOT%{_bindir}/tclsh
  125. # for linking with -lib%{name}
  126. ln -s lib%{name}%{majorver}.so $RPM_BUILD_ROOT%{_libdir}/lib%{name}.so
  127. mkdir -p $RPM_BUILD_ROOT/%{_libdir}/%{name}%{majorver}
  128. # postgresql and maybe other packages too need tclConfig.sh
  129. # paths don't look at /usr/lib for efficiency, so we symlink into tcl8.5 for now
  130. ln -s %{_libdir}/%{name}Config.sh $RPM_BUILD_ROOT/%{_libdir}/%{name}%{majorver}/%{name}Config.sh
  131. mkdir -p $RPM_BUILD_ROOT/%{_includedir}/%{name}-private/{generic,unix}
  132. find generic unix -name "*.h" -exec cp -p '{}' $RPM_BUILD_ROOT/%{_includedir}/%{name}-private/'{}' ';'
  133. pushd $RPM_BUILD_ROOT/%{_includedir}
  134. for i in *.h ; do
  135. [ -f $RPM_BUILD_ROOT/%{_includedir}/%{name}-private/generic/$i ] && ln -sf ../../$i $RPM_BUILD_ROOT/%{_includedir}/%{name}-private/generic ;
  136. done
  137. popd
  138. # remove buildroot traces
  139. sed -i -e "s|$PWD/unix|%{_libdir}|; s|$PWD|%{_includedir}/%{name}-private|" $RPM_BUILD_ROOT/%{_libdir}/%{name}Config.sh
  140. rm -rf $RPM_BUILD_ROOT/%{_datadir}/%{name}%{majorver}/tclAppInit.c
  141. rm -rf $RPM_BUILD_ROOT/%{_datadir}/%{name}%{majorver}/ldAix
  142. # sqlite3 extension is provided by sqlite3-tcl
  143. rm -rf %{buildroot}%{_libdir}/sqlite3*
  144. rm -f %{buildroot}%{_mandir}/mann/sqlite3*
  145. %clean
  146. rm -rf $RPM_BUILD_ROOT
  147. %post -p /sbin/ldconfig
  148. %postun -p /sbin/ldconfig
  149. %files
  150. %defattr(-,root,root,-)
  151. %license license.terms
  152. %doc README changes
  153. %doc html/*
  154. %{_bindir}/tclsh*
  155. %{_libdir}/libtcl%{majorver}.so
  156. %dir %{_libdir}/tcl%{majorver}
  157. %{_datadir}/%{name}8
  158. %{_datadir}/tcl%{majorver}
  159. %{_mandir}/man1/*
  160. %{_mandir}/mann/*
  161. # itcl
  162. %exclude %{_mandir}/mann/body.n*
  163. %exclude %{_mandir}/mann/class.n*
  164. %exclude %{_mandir}/mann/code.n*
  165. %exclude %{_mandir}/mann/configbody.n*
  166. %exclude %{_mandir}/mann/delete.n*
  167. %exclude %{_mandir}/mann/ensemble.n*
  168. %exclude %{_mandir}/mann/find.n*
  169. %exclude %{_mandir}/mann/is.n*
  170. %exclude %{_mandir}/mann/itcl*.n*
  171. %exclude %{_mandir}/mann/local.n*
  172. %exclude %{_mandir}/mann/scope.n*
  173. # tdbc
  174. %exclude %{_mandir}/mann/tdbc*
  175. # thread
  176. %exclude %{_mandir}/mann/thread.n*
  177. %exclude %{_mandir}/mann/tpool.n*
  178. %exclude %{_mandir}/mann/tsv.n*
  179. %exclude %{_mandir}/mann/ttrace.n*
  180. %files devel
  181. %defattr(-,root,root,-)
  182. %{_includedir}/*
  183. %{_libdir}/pkgconfig/tcl.pc
  184. %{_libdir}/libtcl.so
  185. %{_libdir}/libtclstub%{majorver}.a
  186. %{_libdir}/tclConfig.sh
  187. %{_libdir}/tclooConfig.sh
  188. %{_libdir}/tcl%{majorver}/tclConfig.sh
  189. %{_mandir}/man3/*
  190. %files itcl
  191. %{_libdir}/itcl*
  192. %exclude %{_libdir}/itcl*/itclConfig.sh
  193. %exclude %{_libdir}/itcl*/libitclstub*.a
  194. %{_mandir}/mann/body.n*
  195. %{_mandir}/mann/class.n*
  196. %{_mandir}/mann/code.n*
  197. %{_mandir}/mann/configbody.n*
  198. %{_mandir}/mann/delete.n*
  199. %{_mandir}/mann/ensemble.n*
  200. %{_mandir}/mann/find.n*
  201. %{_mandir}/mann/is.n*
  202. %{_mandir}/mann/itcl*.n*
  203. %{_mandir}/mann/local.n*
  204. %{_mandir}/mann/scope.n*
  205. %files itcl-devel
  206. %{_libdir}/itcl*/itclConfig.sh
  207. %{_libdir}/itcl*/libitclstub*.a
  208. %{_includedir}/itcl*.h
  209. %files tdbc
  210. %{_libdir}/tdbc*
  211. %exclude %{_libdir}/tdbc*/libtdbcstub*.a
  212. %exclude %{_libdir}/tdbc*/tdbcConfig.sh
  213. %{_bindir}/sqlite3_analyzer
  214. %{_libdir}/tcl8/%{majorver}/tdbc/sqlite3-*.tm
  215. %{_mandir}/mann/tdbc*
  216. %files tdbc-devel
  217. %{_libdir}/tdbc*/libtdbcstub*.a
  218. %{_libdir}/tdbc*/tdbcConfig.sh
  219. %{_includedir}/tdbc*.h
  220. %files thread
  221. %{_libdir}/thread*
  222. %{_mandir}/mann/thread.n*
  223. %{_mandir}/mann/tpool.n*
  224. %{_mandir}/mann/tsv.n*
  225. %{_mandir}/mann/ttrace.n*
  226. %changelog
  227. * Fri Oct 04 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 8.6.9-1
  228. - new upstream release.
  229. - dropped Patch101: get same effects by sed and configure options.
  230. - imported Patch103.
  231. - added subpackages: itcl{,-devel}, tdbc{,-devel} and thread.
  232. * Mon Jan 26 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 8.5.15-3
  233. - split development files into devel subpackage
  234. * Wed Jan 15 2014 NAKAMURA Kenta <kenta@vinelinux.org> 8.5.15-2
  235. - rebuilt with the current environment
  236. * Tue Oct 01 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 8.5.15-1
  237. - update to 8.5.15
  238. - update Patch101 (tcl-8.5.15-conf.patch)
  239. - remove Patch103 (tcl-8.5.7-sigabrt.patch)
  240. * Fri Jan 4 2013 IWAI, Masaharu <iwai@alib.jp> 8.5.7-1
  241. - update to 8.5.7: sync Red Hat Enterprise Linux 6 tcl-8.5.7-6.el6
  242. - update License: TCL
  243. - drop obsolete patches
  244. - tclm4-soname patch (Patch1)
  245. - lib-perm patch (Patch2)
  246. - configure patch (Patch3)
  247. - no rpath patch (Patch4)
  248. - init lib64 patch (Patch10)
  249. - add some patches from RHEL tcl-8.5.7-6.el6
  250. - autopath patch (Patch100)
  251. - conf patch (Patch101)
  252. - hidden patch (Patch102)
  253. - sigabrt patch (Patch103)
  254. - update build and install section: sync RHEL tcl-8.5.7-6.el6
  255. - add BR: systemtap-sdt-devel: default disable
  256. * Thu Apr 21 2011 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 8.4.19-4
  257. - added imake to BR:.
  258. * Sat Apr 16 2011 Shu KONNO <owa@bg.wakwak.com> 8.4.19-3
  259. - rebuilt with rpm-4.8.1-3
  260. * Tue Jun 29 2010 Shu KONNO <owa@bg.wakwak.com> 8.4.19-2
  261. - rebuilt with new environment
  262. - updated Patch3: tcl8.4.16-configure.patch
  263. * Tue Jun 09 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 8.4.19-1
  264. - new upstream release
  265. * Tue Sep 30 2008 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 8.4.18-2
  266. - spec in UTF-8
  267. - configure with disabled threads. See:
  268. https://bugzilla.redhat.com/show_bug.cgi?id=443246
  269. http://groups.google.com/group/comp.lang.tcl/msg/ce6a1324bada8db0
  270. * Mon May 12 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 8.4.18-1
  271. - rebuild with new environment
  272. * Sun Feb 17 2008 Shu KONNO <owa@bg.wakwak.com> 8.4.18-0vl1
  273. - updated tcl to 8.4.18
  274. - updated tcl-html to 8.4.18
  275. * Mon Oct 08 2007 Shu KONNO <owa@bg.wakwak.com> 8.4.16-0vl1
  276. - updated tcl to 8.4.16
  277. - updated tcl-html to 8.4.16
  278. - dropt Patch3: tcl8.3.5-tclConfig-package-path-90160.patch
  279. - added Patch3: tcl8.4.16-configure.patch
  280. * Wed Jun 13 2007 Shu KONNO <owa@bg.wakwak.com> 8.4.15-0vl1
  281. - updated tcl to 8.4.15
  282. - updated tcl-html to 8.4.15
  283. - dropt Patch1: tcl-8.3.5-tclm4-soname.patch
  284. - added Patch10: tcl-8.4.15-init.lib64.patch
  285. - rebuilt with new toolchain
  286. * Wed May 10 2006 IWAI, Masaharu <iwai@alib.jp> 8.4.13-0vl1
  287. - updated tcl to 8.4.13
  288. - updated tcl-html to 8.4.13
  289. * Sat Jan 28 2006 Shu KONNO <owa@bg.wakwak.com> 8.4.12-0vl1
  290. - updated tcl to 8.4.12
  291. - updated patch4
  292. * Sat Aug 13 2005 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 8.4.11-0vl1
  293. - updated tcl to 8.4.11
  294. - updated Patch4
  295. * Thu Jun 24 2004 Shu KONNO <owa@bg.wakwak.com> 8.4.6-0vl1
  296. - updated tcl to 8.4.6
  297. * Mon Jan 12 2004 KOBAYASHI R. Taizo <tkoba@vinelinux.org> 8.4.5-3vl2
  298. - merged with fedora
  299. * Mon Dec 1 2003 Thomas Woerner <twoerner@redhat.com> 8.4.5-3
  300. - removed rpath (patch 4)
  301. * Fri Nov 28 2003 Jens Petersen <petersen@redhat.com> - 8.4.5-2
  302. - put private header files under generic and unix subdirs
  303. - include real generic/tclPort.h not just a symlink to tclUnixPort.h
  304. - add tclMath.h to %{_includedir}/tcl-private/generic for building tk
  305. * Thu Nov 27 2003 Jens Petersen <petersen@redhat.com> - 8.4.5-1
  306. - new package split out from tcltk
  307. - update to tcl 8.4.5 (#88429)
  308. - drop tcl-8.3.3-heiierarchy.patch, tcl-8.3.3-dlopen.patch
  309. and tcl8.3.5-koi8-u.enc-88806.patch
  310. - include private include headers under %{_includedir}/tcl-private
  311. - filtered changelog for tcl
  312. - buildrequire autoconf213 (#110583) [mvd@mylinux.com.ua]
  313. * Sat Mar 29 2003 KOBAYASHI R. Taizo <tkoba@vinelinux.org> 8.4.2-0vl1
  314. - update based on BitWalk's tcltk-8.4.2-83bw
  315. * Thu Nov 15 2001 Kazuhisa TAKEI <takei@linux.or.jp>
  316. - split source package.
  317. * Sun Jul 15 2001 Daisuke SUZUKI <daisuke@linux.or.jp> 8.0.5_jp-10vl2
  318. - expand some macros.. (FIXME)
  319. * Sat Jul 14 2001 Daisuke SUZUKI <daisuke@linux.or.jp> 8.0.5_jp-10vl1
  320. - use %configure macros
  321. - add Patch 47,50
  322. * Thu May 31 2001 <sagami@vinelinux.org>
  323. - 8.0.5_jp-10
  324. - unexpand old %%{configure}, new one causes build failure
  325. - fixed missing libtkx.so libtclx.so symlink in /usr/lib
  326. - install manpages into %%{_mandir} and mode 644
  327. * Wed Jul 19 2000 MATSUBAYASHI 'Shaolin' Kohji <shaolin@rhythmaning.org>
  328. - 8.0.5_jp-9
  329. - modified %install section to handle compressed man pages
  330. - fixed /usr/lib/tk8.0jp/demos.jp/images symlink
  331. * Sun Jul 2 2000 Daisuke SUZUKI <daisuke@linux.or.jp>
  332. - changed default fonts
  333. * Tue Jan 25 2000 Jun Nishii <jun@vinelinux.org>
  334. - added defattr
  335. * Mon Jan 24 2000 Jun Nishii <jun@vinelinux.org>
  336. - added some symlinks, such as libtcl8.0.so.
  337. - obsoletes version number using _jp, now 8.0.5-31vl1
  338. * Wed Jan 5 2000 Norihito Ohmori <nono@vinelinux.org>
  339. - Apply Tcl/Tk 8.0 Japanese Patch 1.7
  340. * Tue Nov 30 1999 Jakub Jelinek <jakub@redhat.com>
  341. - fix tclX symlinks.
  342. - compile on systems where SIGPWR == SIGLOST.
  343. * Sat May 1 1999 Jeff Johnson <jbj@redhat.com>
  344. - update tcl/tk to 8.0.5.
  345. - avoid "containing" in Tix (#2332).
  346. * Thu Apr 8 1999 Jeff Johnson <jbj@redhat.com>
  347. - use /usr/bin/write in kibitz (#1320).
  348. - use cirrus.sprl.umich.edu in weather (#1926).
  349. * Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com>
  350. - auto rebuild in the new build environment (release 28)
  351. * Mon Mar 08 1999 Preston Brown <pbrown@redhat.com>
  352. - whoops, exec-prefix for itcl was set to '/foo', changed to '/usr'.
  353. * Tue Feb 16 1999 Jeff Johnson <jbj@redhat.com>
  354. - expect does unaligned access on alpha (#989)
  355. - upgrade tcl/tk/tclX to 8.0.4
  356. - upgrade expect to 5.28.
  357. - add itcl 3.0.1
  358. * Tue Jan 12 1999 Cristian Gafton <gafton@redhat.com>
  359. - call libtoolize to allow building on the arm
  360. - build for glibc 2.1
  361. - strip binaries
  362. * Thu Sep 10 1998 Jeff Johnson <jbj@redhat.com>
  363. - update tcl/tk/tclX to 8.0.3, expect is updated also.
  364. * Mon Jun 29 1998 Jeff Johnson <jbj@redhat.com>
  365. - expect: mkpasswd needs delay before sending password (problem #576)
  366. * Thu May 07 1998 Prospector System <bugs@redhat.com>
  367. - translations modified for de, fr, tr
  368. * Sat May 02 1998 Cristian Gafton <gafton@redhat.com>
  369. - fixed expect binaries exec permissions
  370. * Thu Apr 09 1998 Erik Troan <ewt@redhat.com>
  371. - updated to Tix 4.1.0.006
  372. - updated version numbers of tcl/tk to relflect includsion of p2
  373. * Wed Mar 25 1998 Cristian Gafton <gafton@redhat.com>
  374. - updated tcl/tk to patch level 2
  375. - updated tclX to 8.0.2
  376. * Thu Oct 30 1997 Otto Hammersmith <otto@redhat.com>
  377. - fixed filelist for tix... replacing path to the expect binary in scripts
  378. was leaving junk files around.
  379. * Wed Oct 22 1997 Otto Hammersmith <otto@redhat.com>
  380. - added patch to remove libieee test in configure.in for tcl and tk.
  381. Shoudln't be needed anymore for glibc systems, but this isn't the "proper"
  382. solution for all systems
  383. - fixed src urls
  384. * Mon Oct 06 1997 Erik Troan <ewt@redhat.com>
  385. - removed version numbers from descriptions
  386. * Mon Sep 22 1997 Erik Troan <ewt@redhat.com>
  387. - updated to tcl/tk 8.0 and related versions of packages
  388. * Tue Jun 17 1997 Erik Troan <ewt@redhat.com>
  389. - built against glibc
  390. - fixed dangling tclx/tkx symlinks