diff options
Diffstat (limited to 'tcl.spec')
-rw-r--r-- | tcl.spec | 206 |
1 files changed, 206 insertions, 0 deletions
diff --git a/tcl.spec b/tcl.spec new file mode 100644 index 0000000..9649443 --- /dev/null +++ b/tcl.spec @@ -0,0 +1,206 @@ +%define MAJOR 8.6 + +Name: tcl +Version: 8.6.15 +Release: 3 +Epoch: 1 +Summary: The Tool Command Language implementation +License: TCL AND GPL-3.0-or-later WITH bison-exception-2.2 AND BSD-3-Clause +URL: https://sourceforge.net/projects/tcl/ +Source0: https://downloads.sourceforge.net/sourceforge/tcl/tcl-core%{version}-src.tar.gz +Source1: macros.tcl + +BuildRequires: autoconf zlib-devel systemtap-sdt-devel gcc +Provides: tcl(abi) = %{MAJOR} +Obsoletes: tcl-tcldict <= %{version} +Provides: tcl-tcldict = %{version} + +Patch0: tcl-8.6.15-autopath.patch +Patch1: tcl-8.6.15-conf.patch +Patch2: tcl-8.6.10-hidden.patch +Patch3: tcl-8.6.10-tcltests-path-fix.patch +Patch4: stay-out-of-internals-when-nice-interfaces-are-avail.patch +Patch5: oops.patch +Patch6: File-not-found-should-be-ignored-silently.patch +Patch7: tcl-8.6.15-fix-install-mode.patch + +%description +Tcl(Tool Command Language) provides a powerful platform for creating integration applications +that tie together diverse applications, protocols, devices, and frameworks. When paired with +the Tk toolkit, Tcl provides the fastest and most powerful way to create GUI applications that +run on linux, Unix, and Mac OS X. Tcl can also be used for a variety of web-related tasks and +for creating powerful command languages for applications. + +%package help +Summary: help document for tcl +Requires: %{name} = %{epoch}:%{version}-%{release} +BuildArch: noarch +Provides: %{name}-doc < %{version}-%{release} +Obsoletes: %{name}-doc = %{version}-%{release} + +%description help +Help document for tcl. + +%package devel +Summary: The development files for tcl +Requires: %{name} = %{epoch}:%{version}-%{release} + +%description devel +The development files for tcl. + +%prep +%autosetup -n %{name}%{version} -p1 + +%build +pushd unix +autoconf +%configure --enable-threads --enable-symbols --enable-shared --enable-dtrace +%ifnarch loongarch64 +%make_build CFLAGS="%{optflags}" TCL_LIBRARY=%{_datadir}/%{name}%{MAJOR} +%else +%make_build CFLAGS="-Wl,--whole-archive -lpthread -Wl,--no-whole-archive" TCL_LIBRARY=%{_datadir}/%{name}%{MAJOR} +%endif +popd + +%install +pushd unix +make INSTALL_ROOT=$RPM_BUILD_ROOT TCL_LIBRARY=%{_datadir}/%{name}%{MAJOR} install +popd + +ln -s tclsh%{MAJOR} %{buildroot}%{_bindir}/tclsh +ln -s lib%{name}%{MAJOR}.so $RPM_BUILD_ROOT%{_libdir}/lib%{name}.so + +mkdir -p $RPM_BUILD_ROOT%{_libdir}/%{name}%{MAJOR} +ln -s %{_libdir}/%{name}Config.sh $RPM_BUILD_ROOT%{_libdir}/%{name}%{MAJOR}/%{name}Config.sh + +mv license.terms COPYING +mkdir -p $RPM_BUILD_ROOT%{_includedir}/%{name}-private/generic +mkdir -p $RPM_BUILD_ROOT%{_includedir}/%{name}-private/unix + +find generic unix -name "*.h" -exec cp -p '{}' %{buildroot}/%{_includedir}/%{name}-private/'{}' ';' +( +cd %{buildroot}/%{_includedir} +for header in *.h ; do + if [ -f %{buildroot}/%{_includedir}/%{name}-private/generic/$header ]; then + ln -sf ../../$header %{buildroot}/%{_includedir}/%{name}-private/generic + fi +done +) +sed -i -e "s|$PWD/unix|%{_libdir}|; s|$PWD|%{_includedir}/%{name}-private|" %{buildroot}/%{_libdir}/%{name}Config.sh +rm -rf %{buildroot}/%{_datadir}/%{name}%{MAJOR}/ldAix + +install -D -m644 %{S:1} %{buildroot}%{_rpmmacrodir}/macros.tcl + +%check +pushd unix +%make_build test +popd + +%files +%license COPYING +%doc README.md changes +%{_bindir}/tclsh* +%dir %{_libdir}/%{name}%{MAJOR} +%{_datadir}/%{name}%{MAJOR} +%{_datadir}/%{name}8 +%{_libdir}/lib%{name}%{MAJOR}.so +%exclude %{_datadir}/%{name}%{MAJOR}/tclAppInit.c +%{_rpmmacrodir}/macros.tcl + +%files devel +%{_includedir}/* +%{_libdir}/lib%{name}stub%{MAJOR}.a +%{_libdir}/lib%{name}.so +%{_libdir}/%{name}Config.sh +%{_libdir}/%{name}ooConfig.sh +%{_libdir}/%{name}%{MAJOR}/%{name}Config.sh +%{_libdir}/pkgconfig/tcl.pc +%{_datadir}/%{name}%{MAJOR}/tclAppInit.c + +%files help +%{_mandir}/man?/* + +%changelog +* Tue Nov 12 2024 Funda Wang <fundawang@yeah.net> - 1:8.6.15-3 +- fix library and excutable install mode, which will confuse new debugedit + +* Wed Oct 16 2024 Funda Wang <fundawang@yeah.net> - 1:8.6.15-2 +- add macros.tcl for downstream packages + +* Tue Sep 17 2024 Funda Wang <fundawang@yeah.net> - 1:8.6.15-1 +- update to 8.6.15 + +* Thu Feb 29 2024 wangqia <wangqia@uniontech.com> - 1:8.6.14-1 +- Update to version 8.6.14 + +* Wed Feb 08 2023 fuanan <fuanan3@h-partners.com> - 1:8.6.13-2 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:drop the old symbol + +* Sun Jan 29 2023 zhangruifang2020 <zhangruifang1@h-partners.com> - 1:8.6.13-1 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:update to 8.6.13 + +* Tue Nov 15 2022 huajingyun <huajingyun@loongson.cn> - 1:8.6.12-2 +- add build flags for weak symbols on loongarch64 + +* Thu Apr 21 2022 zoulin <zoulin13@h-partners.com> - 1:8.6.12-1 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:update to 8.6.12 + +* Fri May 28 2021 yangzhuangzhuang <yangzhuangzhaung1@huawei.com> - 1:8.6.10-3 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:The "no acceptable C compiler found" error message is displayed during compilation.Therefore,add buildrequires gcc. + +* Tue Oct 27 2020 Guoshuai Sun <sunguoshuai@huawei.com> - 1:8.6.10-2 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC: File not found should be ignored silently + +* Wed Jul 29 2020 zhangxingliang <zhangxingliang3@huawei.com> - 1:8.6.10-1 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:update to 8.6.10 + +* Tue Mar 17 2020 chengquan<chengquan3@huawei.com> - 1:8.6.8.8 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:Rollback some patches & add /usr/lib64/tcl* + +* Sat Jan 11 2020 zhangguangzhi<zhangguangzhi3@huawei.com> - 1:8.6.8.7 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:del patch to be consistent with open source + +* Wed Dec 25 2019 chengquan <chengquan3@huawei.com> - 1:8.6.8.6 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:fix bug in update help package + +* Mon Nov 4 2019 shenyangyang <shenyangyang4@huawei.com> - 1:8.6.8.5 +- Type:NA +- ID:NA +- SUG:NA +- DESC:add use/bin/tclsh8.6 + +* Fri Nov 1 2019 caomeng <caomeng5@huawei.com> - 1:8.6.8.4 +- Type:NA +- ID:NA +- SUG:NA +- DESC:fix tclConfig.sh problem + +* Mon Sep 09 2019 Huiming Xie <xiehuiming@huawei.com> - 1:8.6.8.3 +- Package init |