835840e
#%%global _default_patch_fuzz 2
Ricky Elrod 87e6781
835840e
%global bootstrap 1
Ricky Elrod 6069c07
f3837cf
%global shortversion 5.3.0
835840e
%global libver 11
Ricky Elrod 7db5f11
Ricky Elrod 6069c07
Name:           chicken
Ricky Elrod 7db5f11
Version:        %{shortversion}
0915cb2
Release:        6%{?dist}
Ricky Elrod 6069c07
Summary:        A practical and portable Scheme system
Ricky Elrod 6069c07
Ricky Elrod 6069c07
License:        BSD
Ricky Elrod 6069c07
URL:            http://call-cc.org
Ricky Elrod 7db5f11
Source0:        http://code.call-cc.org/releases/%{shortversion}/%{name}-%{version}.tar.gz
Ricky Elrod 25727bb
Patch0:         make_cflags_work.patch
aa35994
BuildRequires:  gcc
Ricky Elrod e9ad65b
BuildRequires:  chrpath
Ricky Elrod daa0f51
Requires:       chicken-libs%{?_isa} = %{version}-%{release}
Ricky Elrod e65a417
Ricky Elrod e65a417
# Old docs subpackage, which is no longer a subpackage
Ricky Elrod e65a417
Obsoletes:      chicken-doc < 4.8.0.5-3
Ricky Elrod daa0f51
Provides:       chicken-doc = %{version}-%{release}
Ricky Elrod e65a417
Ricky Elrod e9ad65b
%if 0%{?rhel}
Ricky Elrod eace04d
BuildRequires:  net-tools
Ricky Elrod e9ad65b
%else
Ricky Elrod e9ad65b
BuildRequires:  hostname
Ricky Elrod e9ad65b
%endif
Ricky Elrod 6069c07
Ricky Elrod 366b453
%if %{bootstrap} == 0
Ricky Elrod c67af50
BuildRequires:  chicken
Ricky Elrod c67af50
%endif
d731711
BuildRequires: make
Ricky Elrod c67af50
e0bd49f
%package libs
e0bd49f
Summary:        Chicken Scheme runtime library
e0bd49f
e0bd49f
%description libs
e0bd49f
The Chicken Scheme runtime library, linked to by programs compiled with
e0bd49f
Chicken.
e0bd49f
f3837cf
%package static
f3837cf
Summary:	Static library for Chicken
f3837cf
Requires:	chicken%{?_isa} = %{version}-%{release}
f3837cf
f3837cf
%description static
f3837cf
The Chicken Scheme runtime library, as a static library for users
f3837cf
to link against
f3837cf
Ricky Elrod 6069c07
%description
Ricky Elrod 6069c07
CHICKEN is a compiler for the Scheme programming language.
Ricky Elrod 6069c07
CHICKEN produces portable, efficient C, supports almost all of the R5RS
Ricky Elrod 6069c07
Scheme language standard, and includes many enhancements and extensions.
Ricky Elrod 6069c07
Ricky Elrod 6069c07
%prep
835840e
%autosetup -n %{name}-%{version}
Ricky Elrod 76e6c05
Ricky Elrod 6069c07
%build
Ricky Elrod 6069c07
%if %{bootstrap} == 0
Ricky Elrod 6069c07
Ricky Elrod 6069c07
# This removes all C code from the repo, and leaves us only with Scheme code.
Ricky Elrod 6069c07
# Otherwise, it will try to compile C, defeating the point of bootstrapping.
Ricky Elrod 6069c07
make PLATFORM=linux spotless
Ricky Elrod 6069c07
Ricky Elrod 6069c07
# The above command nukes a necessary buildtag file, and there's no way that
Ricky Elrod 6069c07
# I can find to regenerate it - so instead we just generate it ourselves.
Ricky Elrod 6069c07
echo "#define C_BUILD_TAG \"compiled $(date '+%Y-%m-%d') on $(hostname)\"" > buildtag.h
Ricky Elrod 6069c07
Ricky Elrod 6069c07
%endif
Ricky Elrod 6069c07
Ricky Elrod 14b8098
# Chicken's build system is freaking horrible.
Ricky Elrod 14b8098
# So, Fedora requires that we use optflags here - makes sense, they contain
Ricky Elrod 14b8098
# some security related flags, etc. The issue is that Chicken uses the same
Ricky Elrod 14b8098
# flags that it was compiled with when it compiles code for the end-user.
Ricky Elrod 14b8098
# So if we pass -Wall here, it'll give the user a bunch of warnings when they
Ricky Elrod 14b8098
# compile anything at all with `csc`. So that's lovely. -codeblock
835840e
835840e
# Can't even use %%{make_build} or anything, since everything breaks... -sham1
Ricky Elrod cae8317
make CFLAGS="$(echo "%{optflags}" | sed 's/-Wall//') -Wformat" \
Ricky Elrod 6069c07
     PREFIX=%{_prefix} \
Ricky Elrod 6069c07
     BINDIR=%{_bindir} \
Ricky Elrod 6069c07
     LIBDIR=%{_libdir} \
Ricky Elrod 6069c07
     DATADIR=%{_datadir}/chicken \
835840e
     INCLUDEDIR=%{_includedir} \
Ricky Elrod 6069c07
     INFODIR=%{_infodir}/chicken \
Ricky Elrod 6069c07
     TOPMANDIR=%{_mandir} \
Ricky Elrod 6069c07
     DOCDIR=%{_docdir}/chicken \
Ricky Elrod 6069c07
     PLATFORM=linux
Ricky Elrod 6069c07
Ricky Elrod 6069c07
%install
Ricky Elrod cae8317
make CFLAGS="$(echo "%{optflags}" | sed 's/-Wall//') -Wformat" \
Ricky Elrod 6069c07
     PREFIX=%{_prefix} \
Ricky Elrod 6069c07
     BINDIR=%{_bindir} \
Ricky Elrod 6069c07
     LIBDIR=%{_libdir} \
Ricky Elrod 6069c07
     DATADIR=%{_datadir}/chicken \
835840e
     INCLUDEDIR=%{_includedir} \
Ricky Elrod 6069c07
     INFODIR=%{_infodir}/chicken \
Ricky Elrod 6069c07
     TOPMANDIR=%{_mandir} \
Ricky Elrod 6069c07
     DOCDIR=%{_docdir}/chicken \
Ricky Elrod 6069c07
     DESTDIR=%{buildroot} \
Ricky Elrod 6069c07
     PLATFORM=linux install
Ricky Elrod 6069c07
Ricky Elrod 6069c07
rm -f %{buildroot}/%{_docdir}/%{name}/LICENSE %{buildroot}/%{_docdir}/%{name}/README
Ricky Elrod 6069c07
Ricky Elrod 6069c07
find %{buildroot} -name \*.so -exec chrpath --delete \{\} \;
Ricky Elrod 1ed74fc
chrpath --delete %{buildroot}/%{_bindir}/chicken*
Ricky Elrod 1ed74fc
chrpath --delete %{buildroot}/%{_bindir}/csc
Ricky Elrod 1ed74fc
chrpath --delete %{buildroot}/%{_bindir}/csi
Ricky Elrod 6069c07
Ricky Elrod dc819c8
%check
Ricky Elrod dc819c8
make PLATFORM=linux check
Ricky Elrod dc819c8
fe53076
%ldconfig_scriptlets libs
Ricky Elrod 6069c07
Ricky Elrod 6069c07
%files
Ricky Elrod 6069c07
%doc README LICENSE
Ricky Elrod 6069c07
%dir %{_datadir}/chicken
Ricky Elrod 6069c07
%{_datadir}/chicken/setup.defaults
Ricky Elrod 6069c07
%{_bindir}/chicken*
Ricky Elrod 6069c07
%{_bindir}/csc
Ricky Elrod 6069c07
%{_bindir}/csi
Ricky Elrod e937dc1
%{_bindir}/feathers
Ricky Elrod 6069c07
%dir %{_includedir}/chicken
Ricky Elrod 6069c07
%{_includedir}/chicken/chicken-config.h
Ricky Elrod 6069c07
%{_includedir}/chicken/chicken.h
Ricky Elrod e937dc1
%{_datarootdir}/chicken/feathers.tcl
Ricky Elrod 6069c07
%dir %{_libdir}/chicken
Ricky Elrod e937dc1
%dir %{_libdir}/chicken/%{libver}
Ricky Elrod e937dc1
%{_libdir}/chicken/%{libver}/*
Ricky Elrod 6069c07
%{_mandir}/man1/*
Ricky Elrod f2881a5
%{_docdir}/chicken
Ricky Elrod 6069c07
Ricky Elrod e65a417
%files libs
Ricky Elrod e65a417
%{_libdir}/libchicken.so*
Ricky Elrod e65a417
f3837cf
%files static
f3837cf
%{_libdir}/libchicken.a
f3837cf
Ricky Elrod 6069c07
%changelog
0915cb2
* Tue Jan 23 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.3.0-6
0915cb2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
0915cb2
cbcd731
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.3.0-5
cbcd731
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
cbcd731
e6d2df9
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.3.0-4
e6d2df9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
e6d2df9
aefe327
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.3.0-3
aefe327
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
aefe327
1814471
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.3.0-2
1814471
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
1814471
f3837cf
* Tue May 10 2022 Jani Juhani Sinervo <jani@sinervo.fi> - 5.3.0-1
f3837cf
- Update to latest upstream version (RHBZ#2024501)
f3837cf
- Add -static subpackage for users to link against (RHBZ#2083300)
f3837cf
9f4f6cb
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.0-3
9f4f6cb
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
9f4f6cb
27c3b3a
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.0-2
27c3b3a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
27c3b3a
835840e
* Fri May 28 2021 Jani Juhani Sinervo <jani@sinervo.fi> - 5.2.0-1
835840e
- Update to latest upstream release
835840e
- Fix a bunch of bugs
835840e
a033051
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.0-6
a033051
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
a033051
907c71a
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.0-5
907c71a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
907c71a
023737a
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.0-4
023737a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
023737a
704f896
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.0-3
704f896
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
704f896
Rick Elrod 41774f0
* Fri Mar 15 2019 Rick Elrod <relrod@redhat.com> - 5.0.0-2
Rick Elrod 41774f0
- Build from the bootstrap.
Rick Elrod 41774f0
Rick Elrod 6bac8b6
* Fri Mar 15 2019 Rick Elrod <relrod@redhat.com> - 5.0.0-1
Rick Elrod 6bac8b6
- Bump for latest release
Rick Elrod 6bac8b6
- Drop CVE patches
Rick Elrod 6bac8b6
- Bump libver.
Rick Elrod 6bac8b6
815ed89
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.12.0-8
815ed89
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
815ed89
134697e
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.12.0-7
134697e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
134697e
3a171bf
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.12.0-6
3a171bf
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
3a171bf
e0e9cb4
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.12.0-5
e0e9cb4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
e0e9cb4
5aef014
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.12.0-4
5aef014
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
5aef014
Ricky Elrod 307351c
* Mon Jul 17 2017 Ricky Elrod <relrod@redhat.com> - 4.12.0-3
Ricky Elrod 307351c
- Fix for CVE-2017-11343
Ricky Elrod 307351c
Ricky Elrod 7122dfa
* Thu May 11 2017 Ricky Elrod <relrod@redhat.com> - 4.12.0-2
Ricky Elrod 7122dfa
- And use the bootstrap.
Ricky Elrod 7122dfa
Ricky Elrod 76e6c05
* Thu May 11 2017 Ricky Elrod <relrod@redhat.com> - 4.12.0-1
Ricky Elrod 76e6c05
- Latest upstream release.
Ricky Elrod 50aa69d
- Bootstrap for el7 aarch64.
Ricky Elrod 50aa69d
Ricky Elrod be81e0d
* Tue Mar 21 2017 Ricky Elrod <relrod@redhat.com> - 4.11.0-5
Ricky Elrod 9ae36c4
- Fix for CVE-2017-6949
Ricky Elrod 9ae36c4
46ac17d
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.11.0-4
46ac17d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
46ac17d
Ricky Elrod 2441785
* Tue Aug 23 2016 Ricky Elrod <relrod@redhat.com> - 4.11.0-3
Ricky Elrod 2441785
- Patch around CVE-2016-6830 and CVE-2016-6831
Ricky Elrod 2441785
Ricky Elrod 7d3ecdb
* Fri Jul 08 2016 Ricky Elrod <relrod@redhat.com> - 4.11.0-2
Ricky Elrod 7d3ecdb
- Rebuild.
Ricky Elrod 7d3ecdb
Ricky Elrod dc08dc3
* Tue Jul 05 2016 Ricky Elrod <relrod@redhat.com> - 4.11.0-1
Ricky Elrod dc08dc3
- Latest upstream release.
Ricky Elrod dc08dc3
ed0e42c
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4.10.0-2
ed0e42c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
ed0e42c
Ricky Elrod 7db5f11
* Mon Aug 10 2015 Ricky Elrod <relrod@redhat.com> - 4.10.0-1
Ricky Elrod 7db5f11
- Latest upstream release.
Ricky Elrod 7db5f11
- Drop former patches.
Ricky Elrod 7db5f11
Ricky Elrod a78f9a6
* Mon Jun 15 2015 Ricky Elrod <relrod@redhat.com> - 4.9.0.1-4
Ricky Elrod 1040bcb
- Apply patch to work around out of bounds bug:
Ricky Elrod 1040bcb
  https://bugzilla.redhat.com/show_bug.cgi?id=1231871
Ricky Elrod 1040bcb
Ricky Elrod 886ab75
* Tue Jan 13 2015 Ricky Elrod <relrod@redhat.com> - 4.9.0.1-3
Ricky Elrod 24cfce7
- Apply patch to work around buffer overrun:
Ricky Elrod 24cfce7
  https://bugzilla.redhat.com/show_bug.cgi?id=1181483
Ricky Elrod 24cfce7
04ed663
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.9.0.1-2
04ed663
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
04ed663
Ricky Elrod 24cfce7
* Thu Aug 07 2014 Ricky Elrod <relrod@redhat.com> - 4.9.0.1-1
Ricky Elrod fce6d86
- Latest upstream release.
Ricky Elrod fce6d86
Ricky Elrod 9264507
* Sat Jun 07 2014 Ricky Elrod <relrod@redhat.com> - 4.9.0-4
Ricky Elrod 9264507
- Rebuild from previous bootstrap.
Ricky Elrod 9264507
Ricky Elrod 3264883
* Sat Jun 07 2014 Ricky Elrod <relrod@redhat.com> - 4.9.0-3
Ricky Elrod 3264883
- Bootstrap for el7.
Ricky Elrod 3264883
056beec
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.9.0-2
056beec
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
056beec
Ricky Elrod a602da8
* Wed Jun 4 2014 Ricky Elrod <codeblock@fedoraproject.org> - 4.9.0-1
Ricky Elrod a602da8
- Latest upstream release.
Ricky Elrod a602da8
Ricky Elrod 2922773
* Tue May 20 2014 Ricky Elrod <codeblock@fedoraproject.org> - 4.8.0.6-2
Ricky Elrod 2922773
- Patch for CVE-2014-3776.
Ricky Elrod 2922773
Ricky Elrod 78aacb4
* Thu Apr 24 2014 Ricky Elrod <codeblock@fedoraproject.org> - 4.8.0.6-1
Ricky Elrod 78aacb4
- Upstream 4.8.0.6.
Ricky Elrod 78aacb4
Ricky Elrod e65a417
* Sat Dec 14 2013 Ricky Elrod <codeblock@fedoraproject.org> - 4.8.0.5-3
Ricky Elrod e65a417
- Get rid of docs subpackage.
Ricky Elrod e65a417
- Add a -libs subpackage for the runtime library.
Ricky Elrod e65a417
Ricky Elrod cae8317
* Sun Dec 8 2013 Ricky Elrod <codeblock@fedoraproject.org> - 4.8.0.5-2
Ricky Elrod cae8317
- Add -Wformat for BZ #1037013.
Ricky Elrod cae8317
Ricky Elrod d1cc6ce
* Sun Nov 24 2013 Ricky Elrod <codeblock@fedoraproject.org> - 4.8.0.5-1
Ricky Elrod d1cc6ce
- Upstream 4.8.0.5.
Ricky Elrod d1cc6ce
Ricky Elrod 0edfd5e
* Fri Sep 27 2013 Ricky Elrod <codeblock@fedoraproject.org> - 4.8.0.4-4
Ricky Elrod 0edfd5e
- Add upstream patch for CVE-2013-4385, until 4.8.0.5 is released.
Ricky Elrod 0edfd5e
  http://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-core.git;a=commitdiff;h=cd1b9775005ebe220ba11265dbf5396142e65f26
Ricky Elrod 0edfd5e
Ricky Elrod 74611aa
* Mon Sep 02 2013 Ricky Elrod <codeblock@fedoraproject.org> - 4.8.0.4-3
Ricky Elrod 74611aa
- Nuke -Wall from optflags.
Ricky Elrod 74611aa
4efd01b
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.8.0.4-2
4efd01b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
4efd01b
Ricky Elrod aad7c77
* Wed Jul 17 2013 Ricky Elrod <codeblock@fedoraproject.org> 4.8.0.4-1
Ricky Elrod aad7c77
- Upstream 4.8.0.4.
Ricky Elrod aad7c77
Ricky Elrod 25727bb
* Sat May 11 2013 Ricky Elrod <codeblock@fedoraproject.org> 4.8.0.3-4
Ricky Elrod 25727bb
- Bootstrap again, with working CFLAGS.
Ricky Elrod 25727bb
Ricky Elrod a26bed0
* Wed May 08 2013 Ricky Elrod <codeblock@fedoraproject.org> 4.8.0.3-3
Ricky Elrod a26bed0
- Bootstrap.
Ricky Elrod a26bed0
Ricky Elrod e9ad65b
* Wed May 08 2013 Ricky Elrod <codeblock@fedoraproject.org> 4.8.0.3-2
Ricky Elrod e9ad65b
- Fix BuildRequires for RHEL building.
Ricky Elrod e9ad65b
Ricky Elrod 6069c07
* Sun May 05 2013 Ricky Elrod <codeblock@fedoraproject.org> 4.8.0.3-1
Ricky Elrod 6069c07
- Clean spec file up a lot.
Ricky Elrod 6069c07
- Bump to latest upstream release.
Ricky Elrod 6069c07
Ricky Elrod 6069c07
* Thu May 03 2012 J R Jones <fedora@zaniyah.org> 4.7.0-2
Ricky Elrod 6069c07
- Separated into separate sub-packages
Ricky Elrod 6069c07
Ricky Elrod 6069c07
* Thu May 03 2012 J R Jones <fedora@zaniyah.org> 4.7.0-1
Ricky Elrod 6069c07
- Specfile created.