jimtcl/jimtcl.spec
Matwey Kornilov 73c1c57e98 Accepting request 1090656 from home:amanzini:branches:devel:languages:tcl
- added patch exclude_mtime_aiostat_test_on_32bit.patch to exclude mtime test on 32bit platforms

- Update to version 0.82
  * Bugs fixed:
    + dict - under some circumstances it was possible to add duplicate keys to a dict
    + file delete - -force and -- were handled incorrectly
    + aio: ssl - fix eof detection with openssl3
    + getref and setref - now accept fully qualified references
    + unset - don’t return a result with -nocomplain
    + Garbage collection - sometimes GC was overly zealous
    + regexp - builtin regexp fix for end of word check
    + dict with - now correctly returns the script result
    + Unicode ranges are closed intervals. This affected the character class of the end character of each range.
  * Features and improvements added:
    + aio gets - improve behaviour for non-blocking streams
    + aio TIP 603 - implement stat of an open file handle
    + aio socket pty - filename is now available
    + Included sqlite updated to version 3.38.0
    + redis extension - enable TCP_KEEPALIVE, add support for -type and -async
    + try - add support for trap
    + oo constructor is now more flexible (possible incompatibility with 0.81)
    + socket - add support for -async
    + Updated linenoise now has support for word forward, word backward
    + Updated Unicode to 14.0.0
    + file normalize - now supported on Windows
    + aio copyto - performance improvement for large copies
    + Memory allocator is now replaceable
    + info frame is now more Tcl compatible (incompatibility with 0.81)
    + New timerate command for improved benchmarking - largely compatible with TIP 527
    + vwait - add support for -signal for improved handling of signals in the event loop

OBS-URL: https://build.opensuse.org/request/show/1090656
OBS-URL: https://build.opensuse.org/package/show/devel:languages:tcl/jimtcl?expand=0&rev=7
2023-06-03 15:01:51 +00:00

112 lines
3.2 KiB
RPMSpec

#
# spec file for package jimtcl
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define libjim_name libjim0_82
Name: jimtcl
Version: 0.82
Release: 0
Summary: A small embeddable Tcl interpreter
License: BSD-2-Clause
Group: Development/Languages/Tcl
URL: http://jim.tcl.tk
Source: https://github.com/msteveb/jimtcl/archive/%{version}/%{name}-%{version}.tar.gz
Patch0: exclude_mtime_aiostat_test_on_32bit.patch
BuildRequires: asciidoc
BuildRequires: hostname
BuildRequires: libopenssl-devel
%description
Jim is an opensource small-footprint implementation of the Tcl programming
language. It implements a large subset of Tcl and adds new features like
references with garbage collection, closures, built-in Object Oriented
Programming system, Functional Programming commands, first-class arrays and
UTF-8 support.
%package devel
Summary: Development files for %{name}
Group: Development/Libraries/Tcl
Requires: %{libjim_name} = %{version}
Requires: %{name} = %{version}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package -n %{libjim_name}
Summary: A small embeddable Tcl interpreter
Group: System/Libraries
%description -n %{libjim_name}
Jim is an opensource small-footprint implementation of the Tcl programming language.
%prep
%autosetup -N -n %{name}-%{version}
# exclude aio-stat-1.1 mtime test on 32bit arch
%ifarch i586 armv8l
%autopatch -p1
%endif
# exclude SSL test because build env does not have internet connectivity
rm tests/ssl.test
iconv --from=ISO-8859-1 --to=UTF-8 AUTHORS > AUTHORS.new ; mv AUTHORS.new AUTHORS
iconv --from=ISO-8859-1 --to=UTF-8 LICENSE > LICENSE.new ; mv LICENSE.new LICENSE
%build
#configure is not able to locate the needed binaries, so specify it manualy
export CC=gcc
export LD=ld
export AR=ar
export RANLIB=ranlib
export STRIP=true
%configure --shared --disable-option-checking
%make_build
%check
%make_build test
%install
%make_install
rm -rf %{buildroot}%{_prefix}/docs
%post -n %{libjim_name} -p /sbin/ldconfig
%postun -n %{libjim_name} -p /sbin/ldconfig
%files
%license LICENSE
%doc AUTHORS README
%{_bindir}/jimsh
%{_bindir}/jimdb
%files -n %{libjim_name}
%license LICENSE
%{_libdir}/libjim.so.*
%dir %{_libdir}/jim
%{_libdir}/jim/README.extensions
%{_libdir}/jim/tcltest.tcl
%files devel
%license LICENSE
%doc DEVELOPING README.metakit README.namespaces README.oo README.utf-8 STYLE Tcl.html
%{_includedir}/*
%{_bindir}/build-jim-ext
%{_libdir}/libjim.so
%{_libdir}/pkgconfig/jimtcl.pc
%changelog