Compare commits

...
Sign in to create a new pull request.

31 commits

Author SHA1 Message Date
Fedora Release Engineering
72d26b5c74 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 17:36:29 +00:00
Lukáš Zaoral
f17b418fdb
tests: migrate STI tests to TMT
Related: https://fedoraproject.org/wiki/Changes/DisableSTI
2025-07-04 10:40:33 +02:00
Mikel Olasagasti Uranga
82fdb05bc9 Update to 1.08.2 - Closes rhbz#2368486 2025-06-26 17:57:07 +02:00
Mikel Olasagasti Uranga
0fb9c8702b Misc changes
- Verify gpg signature
- Change to https links
- Misc changes to spec
2025-03-05 17:17:16 +01:00
Fedora Release Engineering
b9f98d075e Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 12:19:07 +00:00
Sérgio M. Basto
7d2458a246 Update to 1.08.1 (#2335123) 2025-01-14 12:51:26 +00:00
Fedora Release Engineering
14d5ed33c3 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 18:07:38 +00:00
Fedora Release Engineering
a0510c2628 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-23 00:11:02 +00:00
Fedora Release Engineering
18a1a12a83 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 14:14:15 +00:00
Fedora Release Engineering
a0c0551a54 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-19 14:25:51 +00:00
Sérgio M. Basto
d82ff7769a Migrate to SPDX license format 2023-06-25 01:04:35 +01:00
Fedora Release Engineering
73e922f702 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-18 22:43:22 +00:00
Fedora Release Engineering
82c0a8840b Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-20 21:49:39 +00:00
Fedora Release Engineering
c8911aacfc - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-19 22:11:13 +00:00
Pádraig Brady
c5e317aba0 echo empty lines
readline doesn't echo empty lines (when not using a prompt),
so adjust bc to echo empty lines, which is very useful
to delimit interactive input
2021-10-08 14:40:08 +01:00
Fedora Release Engineering
f0c7c363e3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 18:27:22 +00:00
Fedora Release Engineering
2359b455b7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 13:31:04 +00:00
Fedora Release Engineering
11789df9a4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 00:59:59 +00:00
Tom Stellard
569a290fe3 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2020-12-17 02:46:11 +00:00
Fedora Release Engineering
460fca1173 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-27 12:58:27 +00:00
Fedora Release Engineering
d0021b34a0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-28 12:46:29 +00:00
Fedora Release Engineering
b87f01fe8a - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-24 19:06:10 +00:00
Igor Gnatenko
63a70f531e Rebuild for readline 8.0 2019-02-17 09:30:49 +01:00
Fedora Release Engineering
961fa3dfdf - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-01-31 14:27:45 +00:00
Igor Gnatenko
e1cc383538
Remove obsolete scriptlets
References: https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2019-01-27 15:25:14 +01:00
Fedora Release Engineering
c8a3f66a01 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-12 20:58:41 +00:00
Igor Gnatenko
affd21a90b add BuildRequires: gcc
Reference: https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot
2018-07-09 19:06:42 +02:00
Serhii Turivnyi
7b9ad57ccd Add CI tests using the standard test interface 2018-05-07 17:38:28 +03:00
Serhii Turivnyi
e6977d878e Add CI tests using the standard test interface 2018-05-07 12:30:50 +03:00
Fedora Release Engineering
1b15ffcfbe - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-07 03:39:34 +00:00
Vascom
7f986e4bb2 Cleanup spec. 2017-09-13 14:05:44 +03:00
9 changed files with 211 additions and 35 deletions

1
.fmf/version Normal file
View file

@ -0,0 +1 @@
1

5
.gitignore vendored
View file

@ -1,3 +1,8 @@
bc-1.06.95.tar.bz2
/bc-1.07.tar.gz
/bc-1.07.1.tar.gz
/bc-1.08.1.tar.gz
/bc-1.08.1.tar.xz
/bc-1.08.1.tar.xz.sig
/bc-1.08.2.tar.gz
/bc-1.08.2.tar.gz.sig

View file

@ -0,0 +1,14 @@
diff -Naur bc-1.07.1/bc/scan.l bc-1.07.1-new/bc/scan.l
--- bc-1.07.1/bc/scan.l 2017-04-07 22:20:02.000000000 +0000
+++ bc-1.07.1-new/bc/scan.l 2021-08-14 12:12:33.860991777 +0000
@@ -170,6 +170,10 @@
if (rl_len != 1)
add_history (rl_line);
rl_line[rl_len-1] = '\n';
+ /* readline doesn't echo empty lines without a prompt,
+ so do so here. */
+ if (rl_len == 1)
+ putchar ('\n');
fflush (stdout);
}

134
bc.spec
View file

@ -1,16 +1,24 @@
Summary: GNU's bc (a numeric processing language) and dc (a calculator)
Name: bc
Version: 1.07.1
Release: 3%{?dist}
License: GPLv2+
URL: http://www.gnu.org/software/bc/
Group: Applications/Engineering
Source: http://ftp.gnu.org/gnu/bc/bc-%{version}.tar.gz
Version: 1.08.2
Release: 2%{?dist}
License: GPL-3.0-or-later
URL: https://www.gnu.org/software/bc/
Source0: https://ftp.gnu.org/gnu/bc/bc-%{version}.tar.gz
Source1: https://ftp.gnu.org/gnu/bc/bc-%{version}.tar.gz.sig
Source2: kevin_pizzini.asc
Patch1: bc-1.06-dc_ibase.patch
Patch2: bc-1.06.95-doc.patch
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
BuildRequires: readline-devel, flex, bison, texinfo, ed
Patch3: bc-1.07.1-readline-echo-empty.diff
BuildRequires: bison
BuildRequires: ed
BuildRequires: flex
BuildRequires: gcc
BuildRequires: make
BuildRequires: readline-devel
BuildRequires: texinfo
# for gpg verification
BuildRequires: gnupg2
%description
The bc package includes bc and dc. Bc is an arbitrary precision
@ -22,44 +30,102 @@ Install the bc package if you need its number handling capabilities or
if you would like to use its text mode calculator.
%prep
%setup -q
%patch1 -p1 -b .dc_ibase
%patch2 -p1 -b .doc
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
%autosetup -p1
%build
%configure --with-readline
make
%make_build
%install
make install DESTDIR=$RPM_BUILD_ROOT
rm -f $RPM_BUILD_ROOT/%{_infodir}/dir
%post
if [ -e %{_infodir}/bc.info.gz -a -e %{_infodir}/dc.info.gz ]; then
/sbin/install-info %{_infodir}/bc.info.gz %{_infodir}/dir \
--entry="* bc: (bc). The GNU calculator language." || :
/sbin/install-info %{_infodir}/dc.info.gz %{_infodir}/dir \
--entry="* dc: (dc). The GNU RPN calculator." || :
fi
%preun
if [ $1 = 0 -a -e %{_infodir}/bc.info.gz -a -e %{_infodir}/dc.info.gz ]; then
/sbin/install-info --delete %{_infodir}/bc.info.gz %{_infodir}/dir \
--entry="* bc: (bc). The GNU calculator language." || :
/sbin/install-info --delete %{_infodir}/dc.info.gz %{_infodir}/dir \
--entry="* dc: (dc). The GNU RPN calculator." || :
fi
%make_install
rm -f %{buildroot}/%{_infodir}/dir
%files
%defattr(-,root,root,-)
%license COPYING COPYING.LIB
%doc FAQ AUTHORS NEWS README Examples/
%{_bindir}/dc
%{_bindir}/bc
%{_mandir}/*/*
%{_infodir}/*
%{_mandir}/man1/bc.1*
%{_mandir}/man1/dc.1*
%{_infodir}/bc.info*
%{_infodir}/dc.info*
%changelog
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.08.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jun 26 2025 Mikel Olasagasti Uranga <mikel@olasagasti.info> - 1.08.2-1
- Update to 1.08.2 - rhbz#2368486
* Wed Mar 05 2025 Mikel Olasagasti Uranga <mikel@olasagasti.info> - 1.08.1-3
- Verify gpg signature
- Change to https links
- Misc changes
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.08.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Jan 06 2025 Fedora Release Monitoring <release-monitoring@fedoraproject.org> - 1.08.1-1
- Update to 1.08.1 (#2335123)
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Jan 23 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sun Jun 25 2023 Sérgio Basto <sergio@serjux.com> - 1.07.1-18
- Migrate to SPDX license format
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Sat Aug 14 2021 Pádraig Brady <P@draigBrady.com> - 1.07.1-14
- Echo empty lines, useful for delimiting work
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.07.1-8
- Rebuild for readline 8.0
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Sep 13 2017 Vasiliy N. Glazov <vascom2@gmail.com> - 1.07.1-4
- Cleanup spec
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.07.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

30
kevin_pizzini.asc Normal file
View file

@ -0,0 +1,30 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQENBEum60cBCADIZ/am0d96/2Is86VRUkNi4DReLYDzQqpuI1cCtCHKbBel6uYL
ERsTJUxgqEtYAzjQOaOOr8k7X/U8NzmmjAk/GR/coHFbGLVUI3O/TWZZ4u3bZLpC
4lhe303PZZDHMGGcUEmzhU9LDxeCYF2LfQQYWQNmc674VgOt+fcJJkty3tjWHag0
YWOPvugOg5SfqDtGPfnmoeSbdKmVgbmXLX5ab68jIRHfcQNlKgfQbkLN7CYi7ou7
f8aNIO/DQ1mFzzNc6fuP6i5zznL4FcKTzvx1z6+gtjUXWmqWuVw6qqiND7V1tjJd
b0cjl4BNoXPk3btKfYwHd9I9tTfilmWm5KNtABEBAAG0GUtlbiBQaXp6aW5pIDxr
ZW5AZ251Lm9yZz6JAVUEEwEKAD8CGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheA
FiEEMltU5GU/k1olzzK9oYYnjUJqOOkFAmclQjUFCSEh8W4ACgkQoYYnjUJqOOmj
vgf/QRqbDPdfm3+JcEQBZKjBby0syw70FrxL8oJpthTapN7vljyL1/QmrFukhScD
98mns1OJsbud11Qbdab5d3MGD9agQ4H7OGm48h4MAkkd7ekJR2ISxrNGw8pQiir8
Sr0+LsS+5l/W16GaGUegmNyirKv2//mb9IDBBmZ0Ui13x85fIwxe7PrjcLw5vIB9
qPr7bcCZaKrzuWygpbzUQwXtW1ipKierEk4C780QV3jJFw8wkTB6ul1Kk221oMo/
OeAOnLk5+d5tOtUMonyYSZmvkbEhFDpOF3J3qNomwmnBBUA+bn0hEsNjhmy3h4jS
SRRIuqRrMFF1GiFNuHa67uBI0bkBDQRLputHAQgAtCX015BdwVGX9IaO1Iv2FBkt
JSg4A/GV+0iZXVqafi5pe/oLQY7gXQUV/AuTqjj7168sb9s8ZJjzrE0CsBrcUtOU
eSKBQiCL81L6eO91tKBpwuPACEyzxiW5Bfh/dn3jiZikXBi9u7NSsLaDDj4AK6W7
6/fWz9984elxeIqZSiRuae0xTs+kaEw49ha8wrv6sE4H9CbWoz4276raGQmBJLky
NQlCZMxq6Z/a6NXTNiNNrVMueCCQmbW6iu8fV8W1IRMBnbWZjTcBBZztzW5T6mOE
3weuvYkuwy6yNcgrafG2WeW+wrYzQ38yYIH7o27pgQKySZHjZxaeoqRysW42gwAR
AQABiQE8BBgBCgAmAhsMFiEEMltU5GU/k1olzzK9oYYnjUJqOOkFAmclQkMFCSEh
8XwACgkQoYYnjUJqOOk55wf/W3p31v5zZtRyalRohfxUn9rrbucye38W+LzZGGoz
BU4CCcZhwtumkFgd3bB3t50e26VDBB3D3cVPyLDLU182eibKbgv4/6bjk09l1PRl
UhTHpWTqiz+lkmMEMsSFXWJjXssmAo5XOL4OxX/bgHUK5NgvaRg7WL1CVuLAL91s
VTasLP1XoOpZ85ec5YmzNciCU41XfGSIrkG+PbE7MJmjlUT0w4/Q59/5CiIv/XoM
UAiiIDozgvzDinVUBP8+Kl5QexEe3E3dHSNPRc4xlPsx5KTOCWJHEe00XgZgMuTZ
bzVD5uvJm95WssY37wZ2bt58iufB9sBsw2NFPr3eQIo12A==
=L3fP
-----END PGP PUBLIC KEY BLOCK-----

5
plans/ci.fmf Normal file
View file

@ -0,0 +1,5 @@
summary: Basic smoke test
discover:
how: fmf
execute:
how: tmt

View file

@ -1 +1,2 @@
SHA512 (bc-1.07.1.tar.gz) = 02126d0db6b6ed06d56cfc292d6f5475ff1e574779d7e69c7809bbb1e13f946f57ea07da2a7666baa092507a951a822044b0970075f75eefe65a5c1999b75d34
SHA512 (bc-1.08.2.tar.gz) = 0876a4c5bfc23da79479519c6a8e03ac9f59ae54077eb71ffdcc6ddaccb76c4b7595b088e89e6ad82d833c072eeff5b378178084276584813c00eedace4c6f8c
SHA512 (bc-1.08.2.tar.gz.sig) = 5987363ae617b46136d5fec45e302045d55ec43db1005d175ff78d4c9a8450a7a95c4ebce22a1f810c64f21a7a6f5eee764bfe84aa084cfe439c2f04775f4939

9
tests/sanity/main.fmf Normal file
View file

@ -0,0 +1,9 @@
summary: Basic sanity test
component:
- bc
test: python3 ./runtests.py -v
framework: shell
recommend:
- bc
- python3
duration: 1m

45
tests/sanity/runtests.py Normal file
View file

@ -0,0 +1,45 @@
import unittest
import os
import subprocess
def call_command(command_to_call):
result = subprocess.check_output(command_to_call, shell=True)
return result[:-1].decode("utf-8")
class TestBC(unittest.TestCase):
def test_divide(self):
result = call_command("echo '6.5 / 2.7' | bc")
self.assertEqual( result, '2')
def test_sum(self):
result = call_command("echo '2 + 5' | bc")
self.assertEqual( result, '7')
def test_difference(self):
result = call_command("echo '10 - 4' | bc")
self.assertEqual( result, '6')
def test_multiplying(self):
result = call_command("echo '3 * 8' | bc")
self.assertEqual( result, '24')
def test_scale(self):
result = call_command("echo 'scale = 2; 2 / 3' | bc")
self.assertEqual( result, '.66')
def test_remainder(self):
result = call_command("echo '6 % 4' | bc")
self.assertEqual( result, '2')
def test_exponent(self):
result = call_command("echo '10^2' | bc")
self.assertEqual( result, '100')
if __name__ == '__main__':
unittest.main()